diff --git a/API_NetFramework/bin/DOCGEN.dll b/API_NetFramework/bin/DOCGEN.dll index faee35b0..34a325a0 100644 Binary files a/API_NetFramework/bin/DOCGEN.dll and b/API_NetFramework/bin/DOCGEN.dll differ diff --git a/API_NetFramework/bin/DOCGEN.pdb b/API_NetFramework/bin/DOCGEN.pdb index 6f32beb9..cb1c7d7c 100644 Binary files a/API_NetFramework/bin/DOCGEN.pdb and b/API_NetFramework/bin/DOCGEN.pdb differ diff --git a/API_NetFramework/bin/Database.dll b/API_NetFramework/bin/Database.dll index e68065b2..f15f063a 100644 Binary files a/API_NetFramework/bin/Database.dll and b/API_NetFramework/bin/Database.dll differ diff --git a/API_NetFramework/bin/Database.pdb b/API_NetFramework/bin/Database.pdb index 377d6b18..ab28dfec 100644 Binary files a/API_NetFramework/bin/Database.pdb and b/API_NetFramework/bin/Database.pdb differ diff --git a/API_NetFramework/bin/Model.dll b/API_NetFramework/bin/Model.dll index fed19b4e..e9b2b2dd 100644 Binary files a/API_NetFramework/bin/Model.dll and b/API_NetFramework/bin/Model.dll differ diff --git a/API_NetFramework/bin/Model.pdb b/API_NetFramework/bin/Model.pdb index 99bfce67..db579073 100644 Binary files a/API_NetFramework/bin/Model.pdb and b/API_NetFramework/bin/Model.pdb differ diff --git a/API_NetFramework/bin/OnDocOffice.dll b/API_NetFramework/bin/OnDocOffice.dll index d458bc13..64ddb38b 100644 Binary files a/API_NetFramework/bin/OnDocOffice.dll and b/API_NetFramework/bin/OnDocOffice.dll differ diff --git a/API_NetFramework/bin/OnDocOffice.pdb b/API_NetFramework/bin/OnDocOffice.pdb index 820bf5ff..bdc13a34 100644 Binary files a/API_NetFramework/bin/OnDocOffice.pdb and b/API_NetFramework/bin/OnDocOffice.pdb differ diff --git a/API_NetFramework/bin/OnDoc_NetFramework.dll b/API_NetFramework/bin/OnDoc_NetFramework.dll index 33e43e62..e3cb4329 100644 Binary files a/API_NetFramework/bin/OnDoc_NetFramework.dll and b/API_NetFramework/bin/OnDoc_NetFramework.dll differ diff --git a/API_NetFramework/bin/OnDoc_NetFramework.pdb b/API_NetFramework/bin/OnDoc_NetFramework.pdb index e0691495..e1eb0d6b 100644 Binary files a/API_NetFramework/bin/OnDoc_NetFramework.pdb and b/API_NetFramework/bin/OnDoc_NetFramework.pdb differ diff --git a/API_NetFramework/log.txt b/API_NetFramework/log.txt index 1d6d65f0..a68ba4e1 100644 --- a/API_NetFramework/log.txt +++ b/API_NetFramework/log.txt @@ -5848,3 +5848,7 @@ done 2025-03-16 08:20:53.5058|DEBUG|OnDoc| 2025-03-16 08:20:53.5288|DEBUG|OnDoc| 2025-03-16 08:20:53.5288|INFO|OnDoc|Dokumentarchivierung via EDKB02_DMS ausgelöstOFFEDK0082025002491424 +2025-03-19 17:34:30.3103|DEBUG|OnDoc|Mailversand: 2 +2025-03-19 17:34:30.3949|DEBUG|OnDoc| +2025-03-19 17:34:30.4079|DEBUG|OnDoc| +2025-03-19 17:34:30.4244|DEBUG|OnDoc|Mail Versand NOK: Spalte 1 wurde nicht gefunden. diff --git a/API_NetFramework/obj/Debug/API_NetFramework.csproj.AssemblyReference.cache b/API_NetFramework/obj/Debug/API_NetFramework.csproj.AssemblyReference.cache index 673e10e9..b7c113f0 100644 Binary files a/API_NetFramework/obj/Debug/API_NetFramework.csproj.AssemblyReference.cache and b/API_NetFramework/obj/Debug/API_NetFramework.csproj.AssemblyReference.cache differ diff --git a/API_NetFramework/obj/Debug/OnDoc_NetFramework.dll b/API_NetFramework/obj/Debug/OnDoc_NetFramework.dll index 33e43e62..e3cb4329 100644 Binary files a/API_NetFramework/obj/Debug/OnDoc_NetFramework.dll and b/API_NetFramework/obj/Debug/OnDoc_NetFramework.dll differ diff --git a/API_NetFramework/obj/Debug/OnDoc_NetFramework.pdb b/API_NetFramework/obj/Debug/OnDoc_NetFramework.pdb index e0691495..e1eb0d6b 100644 Binary files a/API_NetFramework/obj/Debug/OnDoc_NetFramework.pdb and b/API_NetFramework/obj/Debug/OnDoc_NetFramework.pdb differ diff --git a/BarcodeLib/bin/Debug/Database.dll b/BarcodeLib/bin/Debug/Database.dll index e68065b2..f15f063a 100644 Binary files a/BarcodeLib/bin/Debug/Database.dll and b/BarcodeLib/bin/Debug/Database.dll differ diff --git a/BarcodeLib/bin/Debug/Database.pdb b/BarcodeLib/bin/Debug/Database.pdb index 377d6b18..ab28dfec 100644 Binary files a/BarcodeLib/bin/Debug/Database.pdb and b/BarcodeLib/bin/Debug/Database.pdb differ diff --git a/BarcodeLib/bin/Debug/Model.dll b/BarcodeLib/bin/Debug/Model.dll index fed19b4e..e9b2b2dd 100644 Binary files a/BarcodeLib/bin/Debug/Model.dll and b/BarcodeLib/bin/Debug/Model.dll differ diff --git a/BarcodeLib/bin/Debug/Model.pdb b/BarcodeLib/bin/Debug/Model.pdb index 99bfce67..db579073 100644 Binary files a/BarcodeLib/bin/Debug/Model.pdb and b/BarcodeLib/bin/Debug/Model.pdb differ diff --git a/BarcodeLib/obj/Debug/BarcodeLib.csproj.AssemblyReference.cache b/BarcodeLib/obj/Debug/BarcodeLib.csproj.AssemblyReference.cache index 9670bbae..ee3c3e3e 100644 Binary files a/BarcodeLib/obj/Debug/BarcodeLib.csproj.AssemblyReference.cache and b/BarcodeLib/obj/Debug/BarcodeLib.csproj.AssemblyReference.cache differ diff --git a/BarcodeLibVBDatamatrix/bin/Debug/Model.dll b/BarcodeLibVBDatamatrix/bin/Debug/Model.dll index cfb0e4be..fed19b4e 100644 Binary files a/BarcodeLibVBDatamatrix/bin/Debug/Model.dll and b/BarcodeLibVBDatamatrix/bin/Debug/Model.dll differ diff --git a/BarcodeLibVBDatamatrix/bin/Debug/Model.pdb b/BarcodeLibVBDatamatrix/bin/Debug/Model.pdb index 4e6ffae7..99bfce67 100644 Binary files a/BarcodeLibVBDatamatrix/bin/Debug/Model.pdb and b/BarcodeLibVBDatamatrix/bin/Debug/Model.pdb differ diff --git a/BarcodeLibVBDatamatrix/obj/Debug/BarcodeLibVBDatamatrix.vbproj.AssemblyReference.cache b/BarcodeLibVBDatamatrix/obj/Debug/BarcodeLibVBDatamatrix.vbproj.AssemblyReference.cache index eb466500..c0207da4 100644 Binary files a/BarcodeLibVBDatamatrix/obj/Debug/BarcodeLibVBDatamatrix.vbproj.AssemblyReference.cache and b/BarcodeLibVBDatamatrix/obj/Debug/BarcodeLibVBDatamatrix.vbproj.AssemblyReference.cache differ diff --git a/Client/Diverses/SplashScreen.Designer.cs b/Client/Diverses/SplashScreen.Designer.cs index d4a0e0e2..c8352f25 100644 --- a/Client/Diverses/SplashScreen.Designer.cs +++ b/Client/Diverses/SplashScreen.Designer.cs @@ -64,7 +64,7 @@ this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(150, 26); this.label2.TabIndex = 2; - this.label2.Text = "16. März 2025"; + this.label2.Text = "19. März 2025"; // // SplashScreen // diff --git a/Client/DocMgmt/frmNote.Designer.cs b/Client/DocMgmt/frmNote.Designer.cs index d1cd6b4d..7fc1529d 100644 --- a/Client/DocMgmt/frmNote.Designer.cs +++ b/Client/DocMgmt/frmNote.Designer.cs @@ -90,6 +90,7 @@ this.button2.TabIndex = 5; this.button2.Text = "Abbrechen"; this.button2.UseVisualStyleBackColor = true; + this.button2.Click += new System.EventHandler(this.button2_Click); // // frmNote // diff --git a/Client/DocMgmt/frmNote.cs b/Client/DocMgmt/frmNote.cs index d5217f8e..de724c0a 100644 --- a/Client/DocMgmt/frmNote.cs +++ b/Client/DocMgmt/frmNote.cs @@ -55,5 +55,11 @@ namespace OnDoc.DocMgmt this.betreff = txtbetreff.Text; DialogResult = DialogResult.OK; } + + private void button2_Click(object sender, EventArgs e) + { + DialogResult = DialogResult.Cancel; + this.Close(); + } } } diff --git a/Client/UIControls/DokList.Designer.cs b/Client/UIControls/DokList.Designer.cs index 02d0bec7..5bb789d0 100644 --- a/Client/UIControls/DokList.Designer.cs +++ b/Client/UIControls/DokList.Designer.cs @@ -183,6 +183,7 @@ namespace OnDoc.UICintrols // // ctxMenuDokList // + this.ctxMenuDokList.ImageScalingSize = new System.Drawing.Size(20, 20); this.ctxMenuDokList.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.dokumentAnzeigenToolStripMenuItem, this.dokumentBearbeitenToolStripMenuItem, @@ -208,14 +209,14 @@ namespace OnDoc.UICintrols this.gruppenÖffnenToolStripMenuItem, this.gruppenSchliessenToolStripMenuItem}); this.ctxMenuDokList.Name = "ctxMenuDokList"; - this.ctxMenuDokList.Size = new System.Drawing.Size(280, 446); + this.ctxMenuDokList.Size = new System.Drawing.Size(342, 522); this.ctxMenuDokList.Opening += new System.ComponentModel.CancelEventHandler(this.ctxMenuDokList_Opening); // // dokumentAnzeigenToolStripMenuItem // this.dokumentAnzeigenToolStripMenuItem.Image = global::OnDoc.Properties.Resources.ShowDoc_16x16_32; this.dokumentAnzeigenToolStripMenuItem.Name = "dokumentAnzeigenToolStripMenuItem"; - this.dokumentAnzeigenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.dokumentAnzeigenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.dokumentAnzeigenToolStripMenuItem.Text = "Dokument anzeigen"; this.dokumentAnzeigenToolStripMenuItem.Click += new System.EventHandler(this.dokumentAnzeigenToolStripMenuItem_Click); // @@ -223,7 +224,7 @@ namespace OnDoc.UICintrols // this.dokumentBearbeitenToolStripMenuItem.Image = global::OnDoc.Properties.Resources.EditDoc_16x16_32; this.dokumentBearbeitenToolStripMenuItem.Name = "dokumentBearbeitenToolStripMenuItem"; - this.dokumentBearbeitenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.dokumentBearbeitenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.dokumentBearbeitenToolStripMenuItem.Text = "Dokument bearbeiten"; this.dokumentBearbeitenToolStripMenuItem.Click += new System.EventHandler(this.dokumentBearbeitenToolStripMenuItem_Click); // @@ -231,27 +232,27 @@ namespace OnDoc.UICintrols // this.dokumentLöschenToolStripMenuItem.Image = global::OnDoc.Properties.Resources.DeleteDoc_16x16_32; this.dokumentLöschenToolStripMenuItem.Name = "dokumentLöschenToolStripMenuItem"; - this.dokumentLöschenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.dokumentLöschenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.dokumentLöschenToolStripMenuItem.Text = "Dokument löschen"; this.dokumentLöschenToolStripMenuItem.Click += new System.EventHandler(this.dokumentLöschenToolStripMenuItem_Click); // // toolStripMenuItem2 // this.toolStripMenuItem2.Name = "toolStripMenuItem2"; - this.toolStripMenuItem2.Size = new System.Drawing.Size(276, 6); + this.toolStripMenuItem2.Size = new System.Drawing.Size(338, 6); // // zurUnterschriftenPrüfungToolStripMenuItem // this.zurUnterschriftenPrüfungToolStripMenuItem.Image = global::OnDoc.Properties.Resources.Approval_16x16_32; this.zurUnterschriftenPrüfungToolStripMenuItem.Name = "zurUnterschriftenPrüfungToolStripMenuItem"; - this.zurUnterschriftenPrüfungToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.zurUnterschriftenPrüfungToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.zurUnterschriftenPrüfungToolStripMenuItem.Text = "Zur Unterschriften-Prüfung"; this.zurUnterschriftenPrüfungToolStripMenuItem.Click += new System.EventHandler(this.zurUnterschriftenPrüfungToolStripMenuItem_Click); // // dokumentUnterzeichnenToolStripMenuItem // this.dokumentUnterzeichnenToolStripMenuItem.Name = "dokumentUnterzeichnenToolStripMenuItem"; - this.dokumentUnterzeichnenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.dokumentUnterzeichnenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.dokumentUnterzeichnenToolStripMenuItem.Text = "Dokument unterzeichnen"; this.dokumentUnterzeichnenToolStripMenuItem.Visible = false; this.dokumentUnterzeichnenToolStripMenuItem.Click += new System.EventHandler(this.dokumentUnterzeichnenToolStripMenuItem_Click); @@ -260,7 +261,7 @@ namespace OnDoc.UICintrols // this.archivierenToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("archivierenToolStripMenuItem.Image"))); this.archivierenToolStripMenuItem.Name = "archivierenToolStripMenuItem"; - this.archivierenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.archivierenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.archivierenToolStripMenuItem.Text = "Archivieren"; this.archivierenToolStripMenuItem.Click += new System.EventHandler(this.archivierenToolStripMenuItem_Click); // @@ -268,7 +269,7 @@ namespace OnDoc.UICintrols // this.druckenToolStripMenuItem.Image = global::OnDoc.Properties.Resources.Printer_16x16_32; this.druckenToolStripMenuItem.Name = "druckenToolStripMenuItem"; - this.druckenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.druckenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.druckenToolStripMenuItem.Text = "Drucken"; this.druckenToolStripMenuItem.Visible = false; this.druckenToolStripMenuItem.Click += new System.EventHandler(this.druckenToolStripMenuItem_Click); @@ -276,13 +277,13 @@ namespace OnDoc.UICintrols // toolStripMenuItem4 // this.toolStripMenuItem4.Name = "toolStripMenuItem4"; - this.toolStripMenuItem4.Size = new System.Drawing.Size(276, 6); + this.toolStripMenuItem4.Size = new System.Drawing.Size(338, 6); // // dokumentFürPartnerErstellenToolStripMenuItem // this.dokumentFürPartnerErstellenToolStripMenuItem.Image = global::OnDoc.Properties.Resources.NewDoc_16x16_32; this.dokumentFürPartnerErstellenToolStripMenuItem.Name = "dokumentFürPartnerErstellenToolStripMenuItem"; - this.dokumentFürPartnerErstellenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.dokumentFürPartnerErstellenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.dokumentFürPartnerErstellenToolStripMenuItem.Text = "Dokument für Kunde erstellen"; this.dokumentFürPartnerErstellenToolStripMenuItem.Click += new System.EventHandler(this.dokumentFürPartnerErstellenToolStripMenuItem_Click); // @@ -290,19 +291,19 @@ namespace OnDoc.UICintrols // this.dokumentKopierenToolStripMenuItem.Image = global::OnDoc.Properties.Resources.Copy_16x16_32; this.dokumentKopierenToolStripMenuItem.Name = "dokumentKopierenToolStripMenuItem"; - this.dokumentKopierenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.dokumentKopierenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.dokumentKopierenToolStripMenuItem.Text = "Dokument kopieren"; this.dokumentKopierenToolStripMenuItem.Click += new System.EventHandler(this.dokumentKopierenToolStripMenuItem_Click); // // toolStripMenuItem1 // this.toolStripMenuItem1.Name = "toolStripMenuItem1"; - this.toolStripMenuItem1.Size = new System.Drawing.Size(276, 6); + this.toolStripMenuItem1.Size = new System.Drawing.Size(338, 6); // // barcodeDemoToolStripMenuItem // this.barcodeDemoToolStripMenuItem.Name = "barcodeDemoToolStripMenuItem"; - this.barcodeDemoToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.barcodeDemoToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.barcodeDemoToolStripMenuItem.Text = "Barcode-Demo"; this.barcodeDemoToolStripMenuItem.Visible = false; this.barcodeDemoToolStripMenuItem.Click += new System.EventHandler(this.barcodeDemoToolStripMenuItem_Click); @@ -310,7 +311,7 @@ namespace OnDoc.UICintrols // vertragPDFDEMOToolStripMenuItem // this.vertragPDFDEMOToolStripMenuItem.Name = "vertragPDFDEMOToolStripMenuItem"; - this.vertragPDFDEMOToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.vertragPDFDEMOToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.vertragPDFDEMOToolStripMenuItem.Text = "Vertrag_PDF_DEMO"; this.vertragPDFDEMOToolStripMenuItem.Visible = false; this.vertragPDFDEMOToolStripMenuItem.Click += new System.EventHandler(this.vertragPDFDEMOToolStripMenuItem_Click); @@ -318,14 +319,14 @@ namespace OnDoc.UICintrols // zellenwertInZwischenablageKopierenToolStripMenuItem // this.zellenwertInZwischenablageKopierenToolStripMenuItem.Name = "zellenwertInZwischenablageKopierenToolStripMenuItem"; - this.zellenwertInZwischenablageKopierenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.zellenwertInZwischenablageKopierenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.zellenwertInZwischenablageKopierenToolStripMenuItem.Text = "Zellenwert in Zwischenablage kopieren"; this.zellenwertInZwischenablageKopierenToolStripMenuItem.Click += new System.EventHandler(this.zellenwertInZwischenablageKopierenToolStripMenuItem_Click); // // pDFGenerierenToolStripMenuItem // this.pDFGenerierenToolStripMenuItem.Name = "pDFGenerierenToolStripMenuItem"; - this.pDFGenerierenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.pDFGenerierenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.pDFGenerierenToolStripMenuItem.Text = "PDF generieren"; this.pDFGenerierenToolStripMenuItem.Visible = false; this.pDFGenerierenToolStripMenuItem.Click += new System.EventHandler(this.pDFGenerierenToolStripMenuItem_Click); @@ -333,14 +334,14 @@ namespace OnDoc.UICintrols // dokumentAnVersandstrasseToolStripMenuItem // this.dokumentAnVersandstrasseToolStripMenuItem.Name = "dokumentAnVersandstrasseToolStripMenuItem"; - this.dokumentAnVersandstrasseToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.dokumentAnVersandstrasseToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.dokumentAnVersandstrasseToolStripMenuItem.Text = "Dokument an Versandstrasse"; this.dokumentAnVersandstrasseToolStripMenuItem.Visible = false; // // wordInterOPEditToolStripMenuItem // this.wordInterOPEditToolStripMenuItem.Name = "wordInterOPEditToolStripMenuItem"; - this.wordInterOPEditToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.wordInterOPEditToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.wordInterOPEditToolStripMenuItem.Text = "Word InterOP Edit"; this.wordInterOPEditToolStripMenuItem.Visible = false; this.wordInterOPEditToolStripMenuItem.Click += new System.EventHandler(this.wordInterOPEditToolStripMenuItem_Click); @@ -349,39 +350,40 @@ namespace OnDoc.UICintrols // this.attributeAnzeigenVersteckenToolStripMenuItem.Image = global::OnDoc.Properties.Resources.Attribut_16x16_32; this.attributeAnzeigenVersteckenToolStripMenuItem.Name = "attributeAnzeigenVersteckenToolStripMenuItem"; - this.attributeAnzeigenVersteckenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.attributeAnzeigenVersteckenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.attributeAnzeigenVersteckenToolStripMenuItem.Text = "Attribute ein- / ausblenden"; this.attributeAnzeigenVersteckenToolStripMenuItem.Click += new System.EventHandler(this.attributeAnzeigenVersteckenToolStripMenuItem_Click); // // historyToolStripMenuItem // this.historyToolStripMenuItem.Name = "historyToolStripMenuItem"; - this.historyToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.historyToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.historyToolStripMenuItem.Text = "History"; this.historyToolStripMenuItem.Click += new System.EventHandler(this.historyToolStripMenuItem_Click); // // toolStripMenuItem3 // this.toolStripMenuItem3.Name = "toolStripMenuItem3"; - this.toolStripMenuItem3.Size = new System.Drawing.Size(276, 6); + this.toolStripMenuItem3.Size = new System.Drawing.Size(338, 6); // // gruppenÖffnenToolStripMenuItem // this.gruppenÖffnenToolStripMenuItem.Name = "gruppenÖffnenToolStripMenuItem"; - this.gruppenÖffnenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.gruppenÖffnenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.gruppenÖffnenToolStripMenuItem.Text = "Alle Gruppen aufklappen"; this.gruppenÖffnenToolStripMenuItem.Click += new System.EventHandler(this.gruppenÖffnenToolStripMenuItem_Click); // // gruppenSchliessenToolStripMenuItem // this.gruppenSchliessenToolStripMenuItem.Name = "gruppenSchliessenToolStripMenuItem"; - this.gruppenSchliessenToolStripMenuItem.Size = new System.Drawing.Size(279, 22); + this.gruppenSchliessenToolStripMenuItem.Size = new System.Drawing.Size(341, 26); this.gruppenSchliessenToolStripMenuItem.Text = "Alle Gruppen einklappen"; this.gruppenSchliessenToolStripMenuItem.Click += new System.EventHandler(this.gruppenSchliessenToolStripMenuItem_Click); // // toolStrip1 // this.toolStrip1.Dock = System.Windows.Forms.DockStyle.Bottom; + this.toolStrip1.ImageScalingSize = new System.Drawing.Size(20, 20); this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.toolStripLabel1, this.tsrbvorschau, @@ -398,7 +400,7 @@ namespace OnDoc.UICintrols // toolStripLabel1 // this.toolStripLabel1.Name = "toolStripLabel1"; - this.toolStripLabel1.Size = new System.Drawing.Size(116, 22); + this.toolStripLabel1.Size = new System.Drawing.Size(143, 22); this.toolStripLabel1.Text = "Dokument-Vorschau"; // // tsrbvorschau @@ -425,7 +427,7 @@ namespace OnDoc.UICintrols this.tsbtnpreviewno.Image = ((System.Drawing.Image)(resources.GetObject("tsbtnpreviewno.Image"))); this.tsbtnpreviewno.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbtnpreviewno.Name = "tsbtnpreviewno"; - this.tsbtnpreviewno.Size = new System.Drawing.Size(23, 22); + this.tsbtnpreviewno.Size = new System.Drawing.Size(29, 22); this.tsbtnpreviewno.Text = "Keine Vorschau"; // // tsbtnpreviewbottom @@ -434,7 +436,7 @@ namespace OnDoc.UICintrols this.tsbtnpreviewbottom.Image = ((System.Drawing.Image)(resources.GetObject("tsbtnpreviewbottom.Image"))); this.tsbtnpreviewbottom.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbtnpreviewbottom.Name = "tsbtnpreviewbottom"; - this.tsbtnpreviewbottom.Size = new System.Drawing.Size(23, 22); + this.tsbtnpreviewbottom.Size = new System.Drawing.Size(29, 22); this.tsbtnpreviewbottom.Text = "Vorschau unten"; // // tsbtnpreviewright @@ -443,7 +445,7 @@ namespace OnDoc.UICintrols this.tsbtnpreviewright.Image = ((System.Drawing.Image)(resources.GetObject("tsbtnpreviewright.Image"))); this.tsbtnpreviewright.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbtnpreviewright.Name = "tsbtnpreviewright"; - this.tsbtnpreviewright.Size = new System.Drawing.Size(23, 22); + this.tsbtnpreviewright.Size = new System.Drawing.Size(29, 22); this.tsbtnpreviewright.Text = "Vorschau rechts"; // // splitContainer1 @@ -476,6 +478,7 @@ namespace OnDoc.UICintrols this.sfDataGrid1.ExpanderColumnWidth = 288D; this.sfDataGrid1.Location = new System.Drawing.Point(0, 0); this.sfDataGrid1.Name = "sfDataGrid1"; + this.sfDataGrid1.PreviewRowHeight = 35; this.sfDataGrid1.RowHeight = 30; this.sfDataGrid1.SelectionMode = Syncfusion.WinForms.DataGrid.Enums.GridSelectionMode.Extended; this.sfDataGrid1.ShowGroupDropArea = true; @@ -1376,23 +1379,24 @@ namespace OnDoc.UICintrols // // ctxMenuGroups // + this.ctxMenuGroups.ImageScalingSize = new System.Drawing.Size(20, 20); this.ctxMenuGroups.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.gruppenÖffnenToolStripMenuItem1, this.gruppenSchliessenToolStripMenuItem1}); this.ctxMenuGroups.Name = "ctxMenuGroups"; - this.ctxMenuGroups.Size = new System.Drawing.Size(206, 48); + this.ctxMenuGroups.Size = new System.Drawing.Size(244, 52); // // gruppenÖffnenToolStripMenuItem1 // this.gruppenÖffnenToolStripMenuItem1.Name = "gruppenÖffnenToolStripMenuItem1"; - this.gruppenÖffnenToolStripMenuItem1.Size = new System.Drawing.Size(205, 22); + this.gruppenÖffnenToolStripMenuItem1.Size = new System.Drawing.Size(243, 24); this.gruppenÖffnenToolStripMenuItem1.Text = "Alle Gruppen aufklappen"; this.gruppenÖffnenToolStripMenuItem1.Click += new System.EventHandler(this.gruppenÖffnenToolStripMenuItem1_Click); // // gruppenSchliessenToolStripMenuItem1 // this.gruppenSchliessenToolStripMenuItem1.Name = "gruppenSchliessenToolStripMenuItem1"; - this.gruppenSchliessenToolStripMenuItem1.Size = new System.Drawing.Size(205, 22); + this.gruppenSchliessenToolStripMenuItem1.Size = new System.Drawing.Size(243, 24); this.gruppenSchliessenToolStripMenuItem1.Text = "Alle Gruppen einklappen"; this.gruppenSchliessenToolStripMenuItem1.Click += new System.EventHandler(this.gruppenSchliessenToolStripMenuItem1_Click); // diff --git a/Client/UIControls/DokList.cs b/Client/UIControls/DokList.cs index c179bfeb..79b17280 100644 --- a/Client/UIControls/DokList.cs +++ b/Client/UIControls/DokList.cs @@ -760,7 +760,7 @@ namespace OnDoc.UICintrols if (interop == true) { OnDocOffice.clsExcelEdit ExcelInterOP = new OnDocOffice.clsExcelEdit(AppParams.connectionstring, tempfilename, selected_dokumentid); - ExcelInterOP.Edit_Document(); + ExcelInterOP.Edit_Document(runmacros); ExcelInterOP = null; } else @@ -2217,7 +2217,7 @@ namespace OnDoc.UICintrols { Syncfusion.WinForms.Controls.ToolTipItem t = new Syncfusion.WinForms.Controls.ToolTipItem(); t.Text = db.dsdaten.Tables[0].Rows[0]["mutiert_am"].ToString() + - Environment.NewLine + Environment.NewLine + db.dsdaten.Tables[0].Rows[0]["betreff"].ToString() + + //Environment.NewLine + Environment.NewLine + db.dsdaten.Tables[0].Rows[0]["betreff"].ToString() + Environment.NewLine + Environment.NewLine + db.dsdaten.Tables[0].Rows[0]["Notizgrund"].ToString(); System.Drawing.Font tf = new System.Drawing.Font(t.Style.Font.FontFamily, 10,FontStyle.Bold); diff --git a/Client/UIControls/DokList.resx b/Client/UIControls/DokList.resx index f2916b69..ce35584f 100644 --- a/Client/UIControls/DokList.resx +++ b/Client/UIControls/DokList.resx @@ -190,7 +190,7 @@ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK + YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X /aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM @@ -205,7 +205,7 @@ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK + YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X /aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM @@ -220,7 +220,7 @@ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK + YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X /aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM diff --git a/Client/UIControls/Dokwerte.cs b/Client/UIControls/Dokwerte.cs index cd3c292f..741c1380 100644 --- a/Client/UIControls/Dokwerte.cs +++ b/Client/UIControls/Dokwerte.cs @@ -86,7 +86,7 @@ namespace OnDoc.UIControls private void sfDataGrid1_CopyCellContent(object sender, Syncfusion.WinForms.DataGrid.Events.CellCutCopyPasteEventArgs e) { - MessageBox.Show(e.ClipboardValue.ToString()); + //MessageBox.Show(e.ClipboardValue.ToString()); } diff --git a/Client/UIControls/UCAllgemeineDokumentParam.cs b/Client/UIControls/UCAllgemeineDokumentParam.cs index be00114e..32f5375c 100644 --- a/Client/UIControls/UCAllgemeineDokumentParam.cs +++ b/Client/UIControls/UCAllgemeineDokumentParam.cs @@ -340,6 +340,8 @@ namespace OnDoc.UIControls } + public List List_avqref { get; set; } = new List(); + private void Get_DokWertList(ref DB db, string dokumentid, int createnew) { System.Data.DataTable dokwertlist = new System.Data.DataTable(); @@ -356,6 +358,13 @@ namespace OnDoc.UIControls { string val = EDK_Data.GetAVQ_Value(dr[0].ToString(), dr[12].ToString()); if (val != "") { dr[2] = val; } + if (dr[0].ToString().ToLower().Contains("extl") && dr[0].ToString().ToLower().Contains("auth")&&dr[0].ToString().ToLower().Contains("ref")) + { + clsav_authl_ref avqref = new clsav_authl_ref(); + Logging.Logging.Debug("avq_ref", "OnDoc", val); + avqref.auth_ref = val; + List_avqref.Add(avqref); + } } dokwertlist.AcceptChanges(); @@ -769,7 +778,7 @@ namespace OnDoc.UIControls catch { dokdata.postzustellung = "0"; } - + if (List_avqref.Count > 0) { dokdata.avq_authl_ref=List_avqref; } dokdata.DokumenttypNr = docgendata.dokumenttypnr; dokdata.Unterschrift_Links = docgendata.unterschriftLinks; dokdata.Unterschrift_Rechts = docgendata.unterschriftRehts; diff --git a/Client/bin/Debug/DOCGEN.dll b/Client/bin/Debug/DOCGEN.dll index faee35b0..34a325a0 100644 Binary files a/Client/bin/Debug/DOCGEN.dll and b/Client/bin/Debug/DOCGEN.dll differ diff --git a/Client/bin/Debug/DOCGEN.pdb b/Client/bin/Debug/DOCGEN.pdb index 6f32beb9..cb1c7d7c 100644 Binary files a/Client/bin/Debug/DOCGEN.pdb and b/Client/bin/Debug/DOCGEN.pdb differ diff --git a/Client/bin/Debug/Database.dll b/Client/bin/Debug/Database.dll index e68065b2..f15f063a 100644 Binary files a/Client/bin/Debug/Database.dll and b/Client/bin/Debug/Database.dll differ diff --git a/Client/bin/Debug/Database.pdb b/Client/bin/Debug/Database.pdb index 377d6b18..ab28dfec 100644 Binary files a/Client/bin/Debug/Database.pdb and b/Client/bin/Debug/Database.pdb differ diff --git a/Client/bin/Debug/Model.dll b/Client/bin/Debug/Model.dll index fed19b4e..e9b2b2dd 100644 Binary files a/Client/bin/Debug/Model.dll and b/Client/bin/Debug/Model.dll differ diff --git a/Client/bin/Debug/Model.pdb b/Client/bin/Debug/Model.pdb index 99bfce67..db579073 100644 Binary files a/Client/bin/Debug/Model.pdb and b/Client/bin/Debug/Model.pdb differ diff --git a/Client/bin/Debug/OnDoc.exe b/Client/bin/Debug/OnDoc.exe index 436cef73..4f02fe08 100644 Binary files a/Client/bin/Debug/OnDoc.exe and b/Client/bin/Debug/OnDoc.exe differ diff --git a/Client/bin/Debug/OnDoc.pdb b/Client/bin/Debug/OnDoc.pdb index 90850c51..826cbafd 100644 Binary files a/Client/bin/Debug/OnDoc.pdb and b/Client/bin/Debug/OnDoc.pdb differ diff --git a/Client/bin/Debug/OnDocClient.zip b/Client/bin/Debug/OnDocClient.zip index ee9ca0d6..27f8ab22 100644 Binary files a/Client/bin/Debug/OnDocClient.zip and b/Client/bin/Debug/OnDocClient.zip differ diff --git a/Client/bin/Debug/OnDocOffice.dll b/Client/bin/Debug/OnDocOffice.dll index d458bc13..64ddb38b 100644 Binary files a/Client/bin/Debug/OnDocOffice.dll and b/Client/bin/Debug/OnDocOffice.dll differ diff --git a/Client/bin/Debug/OnDocOffice.pdb b/Client/bin/Debug/OnDocOffice.pdb index 820bf5ff..bdc13a34 100644 Binary files a/Client/bin/Debug/OnDocOffice.pdb and b/Client/bin/Debug/OnDocOffice.pdb differ diff --git a/Client/bin/Debug/de-DE/OnDoc.resources.dll b/Client/bin/Debug/de-DE/OnDoc.resources.dll index d1d7cfc8..2534970d 100644 Binary files a/Client/bin/Debug/de-DE/OnDoc.resources.dll and b/Client/bin/Debug/de-DE/OnDoc.resources.dll differ diff --git a/Client/obj/Debug/Client.csproj.AssemblyReference.cache b/Client/obj/Debug/Client.csproj.AssemblyReference.cache index 5f1d5b91..d70757c4 100644 Binary files a/Client/obj/Debug/Client.csproj.AssemblyReference.cache and b/Client/obj/Debug/Client.csproj.AssemblyReference.cache differ diff --git a/Client/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/Client/obj/Debug/DesignTimeResolveAssemblyReferences.cache index 30c8ab00..8138952d 100644 Binary files a/Client/obj/Debug/DesignTimeResolveAssemblyReferences.cache and b/Client/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/Client/obj/Debug/OnDoc.UICintrols.DokList.resources b/Client/obj/Debug/OnDoc.UICintrols.DokList.resources index 89b7730c..7f64b695 100644 Binary files a/Client/obj/Debug/OnDoc.UICintrols.DokList.resources and b/Client/obj/Debug/OnDoc.UICintrols.DokList.resources differ diff --git a/Client/obj/Debug/OnDoc.exe b/Client/obj/Debug/OnDoc.exe index 436cef73..4f02fe08 100644 Binary files a/Client/obj/Debug/OnDoc.exe and b/Client/obj/Debug/OnDoc.exe differ diff --git a/Client/obj/Debug/OnDoc.pdb b/Client/obj/Debug/OnDoc.pdb index 90850c51..826cbafd 100644 Binary files a/Client/obj/Debug/OnDoc.pdb and b/Client/obj/Debug/OnDoc.pdb differ diff --git a/Client/obj/Debug/de-DE/OnDoc.resources.dll b/Client/obj/Debug/de-DE/OnDoc.resources.dll index d1d7cfc8..2534970d 100644 Binary files a/Client/obj/Debug/de-DE/OnDoc.resources.dll and b/Client/obj/Debug/de-DE/OnDoc.resources.dll differ diff --git a/DOCGEN/Klassen/DocGenerator_from_EDOKA.cs b/DOCGEN/Klassen/DocGenerator_from_EDOKA.cs index c47b9ca2..e41ab6b6 100644 --- a/DOCGEN/Klassen/DocGenerator_from_EDOKA.cs +++ b/DOCGEN/Klassen/DocGenerator_from_EDOKA.cs @@ -139,6 +139,7 @@ if (docdata.Bezeichnung.Contains("QDF")) //if (dok.extension.ToUpper()=="DOTM") { dok.extension = "docm"; } return dok; case "XLSM": case "XLSX": case "XLST": case "XLS": case "XLT": + case "XLTM": case "EXCEL": SyncFExcel sfexcel = new SyncFExcel(); @@ -146,7 +147,7 @@ if (docdata.Bezeichnung.Contains("QDF")) clsdok dokexcel = new clsdok("", "", "", ""); if (useoffice == false) { - dokexcel.dokument = sfexcel.Generate_Excel(dt.Rows[0][0].ToString(), docdata); + dokexcel.dokument = sfexcel.Generate_Excel(dt.Rows[0][0].ToString(), docdata, Apptype.ToUpper()); dokexcel.doktype = "X"; dokexcel.extension = dt2.Rows[0][1].ToString(); } diff --git a/DOCGEN/Klassen/SyncFExcel.cs b/DOCGEN/Klassen/SyncFExcel.cs index 2c6da7d8..52657725 100644 --- a/DOCGEN/Klassen/SyncFExcel.cs +++ b/DOCGEN/Klassen/SyncFExcel.cs @@ -47,15 +47,13 @@ namespace DOCGEN.Klassen } - public string Generate_Excel(string base64, clsDocData docdata) + public string Generate_Excel(string base64, clsDocData docdata, string apptype) { ExcelEngine ex = new ExcelEngine(); IApplication app = ex.Excel; MemoryStream ms = new MemoryStream(Helper.EncodeExtensions.DecodeBase642ByteArray(base64)); IWorkbook workBook = app.Workbooks.Open(ms, ExcelOpenType.Automatic); - - string formattype = ""; - + foreach (clsDocValue dv in docdata.DocValues) { foreach (IWorksheet worksheet in workBook.Worksheets) @@ -86,7 +84,14 @@ namespace DOCGEN.Klassen } MemoryStream destms = new MemoryStream(); - workBook.SaveAs(destms); + if (apptype == "XLTM") + { + workBook.SaveAs(destms, ExcelSaveType.SaveAsMacroTemplate); + } else + { + workBook.SaveAs(destms); + } + workBook.Close(); workBook = null; ex.Dispose(); diff --git a/DOCGEN/bin/Debug/DOCGEN.dll b/DOCGEN/bin/Debug/DOCGEN.dll index faee35b0..34a325a0 100644 Binary files a/DOCGEN/bin/Debug/DOCGEN.dll and b/DOCGEN/bin/Debug/DOCGEN.dll differ diff --git a/DOCGEN/bin/Debug/DOCGEN.pdb b/DOCGEN/bin/Debug/DOCGEN.pdb index 6f32beb9..cb1c7d7c 100644 Binary files a/DOCGEN/bin/Debug/DOCGEN.pdb and b/DOCGEN/bin/Debug/DOCGEN.pdb differ diff --git a/DOCGEN/bin/Debug/Database.dll b/DOCGEN/bin/Debug/Database.dll index e68065b2..f15f063a 100644 Binary files a/DOCGEN/bin/Debug/Database.dll and b/DOCGEN/bin/Debug/Database.dll differ diff --git a/DOCGEN/bin/Debug/Database.pdb b/DOCGEN/bin/Debug/Database.pdb index 377d6b18..ab28dfec 100644 Binary files a/DOCGEN/bin/Debug/Database.pdb and b/DOCGEN/bin/Debug/Database.pdb differ diff --git a/DOCGEN/bin/Debug/Model.dll b/DOCGEN/bin/Debug/Model.dll index fed19b4e..e9b2b2dd 100644 Binary files a/DOCGEN/bin/Debug/Model.dll and b/DOCGEN/bin/Debug/Model.dll differ diff --git a/DOCGEN/bin/Debug/Model.pdb b/DOCGEN/bin/Debug/Model.pdb index 99bfce67..db579073 100644 Binary files a/DOCGEN/bin/Debug/Model.pdb and b/DOCGEN/bin/Debug/Model.pdb differ diff --git a/DOCGEN/bin/Debug/OnDocOffice.dll b/DOCGEN/bin/Debug/OnDocOffice.dll index d458bc13..64ddb38b 100644 Binary files a/DOCGEN/bin/Debug/OnDocOffice.dll and b/DOCGEN/bin/Debug/OnDocOffice.dll differ diff --git a/DOCGEN/bin/Debug/OnDocOffice.pdb b/DOCGEN/bin/Debug/OnDocOffice.pdb index 820bf5ff..bdc13a34 100644 Binary files a/DOCGEN/bin/Debug/OnDocOffice.pdb and b/DOCGEN/bin/Debug/OnDocOffice.pdb differ diff --git a/DOCGEN/obj/Debug/DOCGEN.dll b/DOCGEN/obj/Debug/DOCGEN.dll index faee35b0..34a325a0 100644 Binary files a/DOCGEN/obj/Debug/DOCGEN.dll and b/DOCGEN/obj/Debug/DOCGEN.dll differ diff --git a/DOCGEN/obj/Debug/DOCGEN.pdb b/DOCGEN/obj/Debug/DOCGEN.pdb index 6f32beb9..cb1c7d7c 100644 Binary files a/DOCGEN/obj/Debug/DOCGEN.pdb and b/DOCGEN/obj/Debug/DOCGEN.pdb differ diff --git a/DOCGEN/obj/Debug/DocGen.csproj.AssemblyReference.cache b/DOCGEN/obj/Debug/DocGen.csproj.AssemblyReference.cache index 175db4b4..fb91178a 100644 Binary files a/DOCGEN/obj/Debug/DocGen.csproj.AssemblyReference.cache and b/DOCGEN/obj/Debug/DocGen.csproj.AssemblyReference.cache differ diff --git a/Database/bin/Debug/Database.dll b/Database/bin/Debug/Database.dll index e68065b2..f15f063a 100644 Binary files a/Database/bin/Debug/Database.dll and b/Database/bin/Debug/Database.dll differ diff --git a/Database/bin/Debug/Database.pdb b/Database/bin/Debug/Database.pdb index 377d6b18..ab28dfec 100644 Binary files a/Database/bin/Debug/Database.pdb and b/Database/bin/Debug/Database.pdb differ diff --git a/Database/bin/Debug/Model.dll b/Database/bin/Debug/Model.dll index fed19b4e..e9b2b2dd 100644 Binary files a/Database/bin/Debug/Model.dll and b/Database/bin/Debug/Model.dll differ diff --git a/Database/bin/Debug/Model.pdb b/Database/bin/Debug/Model.pdb index 99bfce67..db579073 100644 Binary files a/Database/bin/Debug/Model.pdb and b/Database/bin/Debug/Model.pdb differ diff --git a/Database/db.cs b/Database/db.cs index ade71f5f..d740a83d 100644 --- a/Database/db.cs +++ b/Database/db.cs @@ -650,6 +650,24 @@ namespace Database db.Exec_SQL("Update dokument set faksimile=" + as_faksimile.ToString() + ", bearbeitung_zwingend = " + bearbeitung_zwingend.ToString() + ", toapprove=" + toapprove.ToString() + ", approved=" + approved.ToString() + ", approval1=" + approved1.ToString() + ", approval2=" + approved2.ToString() + ", signiert="+signiert.ToString()+" where dokumentid = '" + dokumentid + "'"); + try + { + if (DocData.avq_authl_ref.Count() > 0) + { + foreach (clsav_authl_ref avqref in DocData.avq_authl_ref) + { + db.clear_parameter(); + db.add_parameter("@dokumentid", dokumentid); + db.add_parameter("@avq_auto_extl_refr", avqref.auth_ref.ToString()); + db.add_parameter("@FNKT", "1"); + db.add_parameter("@newdocid", ""); + db.add_parameter("@manr", dok.iErsteller.ToString()); + db.Get_Tabledata("dbo.sp_insert_update_avq_auth_extl_ref", true, false); + + } + } + } catch { } + return dokumentid; } public void set_approvalstate(string dokumentid, bool init = false) diff --git a/Database/obj/Debug/Database.csproj.AssemblyReference.cache b/Database/obj/Debug/Database.csproj.AssemblyReference.cache index 8ecc8882..636c2669 100644 Binary files a/Database/obj/Debug/Database.csproj.AssemblyReference.cache and b/Database/obj/Debug/Database.csproj.AssemblyReference.cache differ diff --git a/Database/obj/Debug/Database.dll b/Database/obj/Debug/Database.dll index e68065b2..f15f063a 100644 Binary files a/Database/obj/Debug/Database.dll and b/Database/obj/Debug/Database.dll differ diff --git a/Database/obj/Debug/Database.pdb b/Database/obj/Debug/Database.pdb index 377d6b18..ab28dfec 100644 Binary files a/Database/obj/Debug/Database.pdb and b/Database/obj/Debug/Database.pdb differ diff --git a/DocIO_Demo_SHU/obj/Debug/DocIO_Demo_SHU.csproj.AssemblyReference.cache b/DocIO_Demo_SHU/obj/Debug/DocIO_Demo_SHU.csproj.AssemblyReference.cache index 52c3ff20..1e82db9f 100644 Binary files a/DocIO_Demo_SHU/obj/Debug/DocIO_Demo_SHU.csproj.AssemblyReference.cache and b/DocIO_Demo_SHU/obj/Debug/DocIO_Demo_SHU.csproj.AssemblyReference.cache differ diff --git a/Excel_Test/obj/Debug/Excel_Test.csproj.AssemblyReference.cache b/Excel_Test/obj/Debug/Excel_Test.csproj.AssemblyReference.cache index bbff84a3..f98ecad9 100644 Binary files a/Excel_Test/obj/Debug/Excel_Test.csproj.AssemblyReference.cache and b/Excel_Test/obj/Debug/Excel_Test.csproj.AssemblyReference.cache differ diff --git a/Model/bin/Debug/Model.dll b/Model/bin/Debug/Model.dll index fed19b4e..e9b2b2dd 100644 Binary files a/Model/bin/Debug/Model.dll and b/Model/bin/Debug/Model.dll differ diff --git a/Model/bin/Debug/Model.pdb b/Model/bin/Debug/Model.pdb index 99bfce67..db579073 100644 Binary files a/Model/bin/Debug/Model.pdb and b/Model/bin/Debug/Model.pdb differ diff --git a/Model/clsDocData.cs b/Model/clsDocData.cs index 4cd57d5b..b37aefa0 100644 --- a/Model/clsDocData.cs +++ b/Model/clsDocData.cs @@ -84,6 +84,8 @@ namespace Model public bool remove_signature { get; set; } = false; public bool sign { get; set; } = false; + public List avq_authl_ref { get; set; } + public string prefix { get; set; } = ""; public List DocValues {get;set;} public List DocMacros { get; set; } @@ -94,6 +96,10 @@ namespace Model } + public class clsav_authl_ref + { + public string auth_ref { get; set; } + } public class clsNameVOrnameTM { public string TM { get; set; } diff --git a/Model/obj/Debug/Model.dll b/Model/obj/Debug/Model.dll index fed19b4e..e9b2b2dd 100644 Binary files a/Model/obj/Debug/Model.dll and b/Model/obj/Debug/Model.dll differ diff --git a/Model/obj/Debug/Model.pdb b/Model/obj/Debug/Model.pdb index 99bfce67..db579073 100644 Binary files a/Model/obj/Debug/Model.pdb and b/Model/obj/Debug/Model.pdb differ diff --git a/NativVorlagen/obj/Debug/NativVorlagen.csproj.AssemblyReference.cache b/NativVorlagen/obj/Debug/NativVorlagen.csproj.AssemblyReference.cache index 9548f2ff..fa1d7ba8 100644 Binary files a/NativVorlagen/obj/Debug/NativVorlagen.csproj.AssemblyReference.cache and b/NativVorlagen/obj/Debug/NativVorlagen.csproj.AssemblyReference.cache differ diff --git a/OnDocOffice/bin/Debug/DOCGEN.dll b/OnDocOffice/bin/Debug/DOCGEN.dll index faee35b0..34a325a0 100644 Binary files a/OnDocOffice/bin/Debug/DOCGEN.dll and b/OnDocOffice/bin/Debug/DOCGEN.dll differ diff --git a/OnDocOffice/bin/Debug/DOCGEN.pdb b/OnDocOffice/bin/Debug/DOCGEN.pdb index 6f32beb9..cb1c7d7c 100644 Binary files a/OnDocOffice/bin/Debug/DOCGEN.pdb and b/OnDocOffice/bin/Debug/DOCGEN.pdb differ diff --git a/OnDocOffice/bin/Debug/Database.dll b/OnDocOffice/bin/Debug/Database.dll index e68065b2..f15f063a 100644 Binary files a/OnDocOffice/bin/Debug/Database.dll and b/OnDocOffice/bin/Debug/Database.dll differ diff --git a/OnDocOffice/bin/Debug/Database.pdb b/OnDocOffice/bin/Debug/Database.pdb index 377d6b18..ab28dfec 100644 Binary files a/OnDocOffice/bin/Debug/Database.pdb and b/OnDocOffice/bin/Debug/Database.pdb differ diff --git a/OnDocOffice/bin/Debug/Model.dll b/OnDocOffice/bin/Debug/Model.dll index fed19b4e..e9b2b2dd 100644 Binary files a/OnDocOffice/bin/Debug/Model.dll and b/OnDocOffice/bin/Debug/Model.dll differ diff --git a/OnDocOffice/bin/Debug/Model.pdb b/OnDocOffice/bin/Debug/Model.pdb index 99bfce67..db579073 100644 Binary files a/OnDocOffice/bin/Debug/Model.pdb and b/OnDocOffice/bin/Debug/Model.pdb differ diff --git a/OnDocOffice/bin/Debug/OnDocOffice.dll b/OnDocOffice/bin/Debug/OnDocOffice.dll index d458bc13..64ddb38b 100644 Binary files a/OnDocOffice/bin/Debug/OnDocOffice.dll and b/OnDocOffice/bin/Debug/OnDocOffice.dll differ diff --git a/OnDocOffice/bin/Debug/OnDocOffice.pdb b/OnDocOffice/bin/Debug/OnDocOffice.pdb index 820bf5ff..bdc13a34 100644 Binary files a/OnDocOffice/bin/Debug/OnDocOffice.pdb and b/OnDocOffice/bin/Debug/OnDocOffice.pdb differ diff --git a/OnDocOffice/clsoffice.cs b/OnDocOffice/clsoffice.cs index d1af9962..ba2b10ad 100644 --- a/OnDocOffice/clsoffice.cs +++ b/OnDocOffice/clsoffice.cs @@ -68,11 +68,31 @@ namespace OnDocOffice } } - public void Edit_Document() + public void Edit_Document(bool runmacros) { Start_Application(); workBook = excel.Workbooks.Open(filename); excel.Visible = true; + if (runmacros == true) + { + Logging.Logging.Debug("Makros auslesen", "Edit_Document", dokumentid); + Database.DB db = new Database.DB(connectstring); + db.Get_Tabledata("Select * from ondoc_macros where dokumentid='" + dokumentid + "' order by reihenfolge", false, true); + foreach (DataRow dr in db.dsdaten.Tables[0].Rows) + { + try + { + Logging.Logging.Debug("Makro ", "Edit_Document", dr[0].ToString()); + excel.Run(dr[0].ToString()); + } + catch (Exception e) + { + Logging.Logging.Debug("MakroError ", "Edit_Document", e.Message); + string a = e.Message; + } + } + } + //clsProcessWatch.AddToList(dokumentid, filename, "Word"); bool isClosed = IsDocumentClosed(excel, workBook); workBook = null; @@ -192,7 +212,8 @@ namespace OnDocOffice Helper.clsFileHelper fh = new Helper.clsFileHelper(); fh.SaveBase64ToFile(vorlage, filename); Start_Application(); - workBook = excel.Workbooks.Open(filename); + workBook = excel.Workbooks.Add(filename); + //workBook = excel.Workbooks.Open(filename); foreach (Worksheet ws in workBook.Sheets) { ws.Activate(); @@ -200,6 +221,7 @@ namespace OnDocOffice { try { + Logging.Logging.Debug("Excel: "+dv.FieldName+" / "+dv.Value,"OnDocOffice",""); if (dv.TMBeginn == "TGEDKCursor" || dv.TMBeginn == "TGEDKCursorB" || dv.FieldName == "TGEDKCursor" || dv.FieldName == "TGEDKCursorB") { try @@ -253,6 +275,24 @@ namespace OnDocOffice } } + + Database.DB db = new Database.DB(connectstring); + db.Get_Tabledata("Select * from ondoc_macros where dokumentid='" + dokumentid + "' order by reihenfolge", false, true); + foreach (DataRow dr in db.dsdaten.Tables[0].Rows) + { + try + { + Logging.Logging.Debug("Makro ", "Create", dr[0].ToString()); + excel.Run(dr[0].ToString()); + } + catch (Exception e) + { + Logging.Logging.Debug("MakroError ", "Create", e.Message); + string a = e.Message; + } + } + db = null; + workBook.Save(); workBook.Close(); workBook = null; diff --git a/OnDocOffice/obj/Debug/OnDocOffice.csproj.AssemblyReference.cache b/OnDocOffice/obj/Debug/OnDocOffice.csproj.AssemblyReference.cache index 670a3c00..8c34b7cb 100644 Binary files a/OnDocOffice/obj/Debug/OnDocOffice.csproj.AssemblyReference.cache and b/OnDocOffice/obj/Debug/OnDocOffice.csproj.AssemblyReference.cache differ diff --git a/OnDocOffice/obj/Debug/OnDocOffice.dll b/OnDocOffice/obj/Debug/OnDocOffice.dll index d458bc13..64ddb38b 100644 Binary files a/OnDocOffice/obj/Debug/OnDocOffice.dll and b/OnDocOffice/obj/Debug/OnDocOffice.dll differ diff --git a/OnDocOffice/obj/Debug/OnDocOffice.pdb b/OnDocOffice/obj/Debug/OnDocOffice.pdb index 820bf5ff..bdc13a34 100644 Binary files a/OnDocOffice/obj/Debug/OnDocOffice.pdb and b/OnDocOffice/obj/Debug/OnDocOffice.pdb differ diff --git a/ToolsDoksImportExport/obj/Debug/ToolsDoksImportExport.csproj.AssemblyReference.cache b/ToolsDoksImportExport/obj/Debug/ToolsDoksImportExport.csproj.AssemblyReference.cache index 3927e384..9a733db8 100644 Binary files a/ToolsDoksImportExport/obj/Debug/ToolsDoksImportExport.csproj.AssemblyReference.cache and b/ToolsDoksImportExport/obj/Debug/ToolsDoksImportExport.csproj.AssemblyReference.cache differ diff --git a/VBOffice/bin/Debug/Database.dll b/VBOffice/bin/Debug/Database.dll index 38ae82c6..e68065b2 100644 Binary files a/VBOffice/bin/Debug/Database.dll and b/VBOffice/bin/Debug/Database.dll differ diff --git a/VBOffice/bin/Debug/Database.pdb b/VBOffice/bin/Debug/Database.pdb index 3de10ea3..377d6b18 100644 Binary files a/VBOffice/bin/Debug/Database.pdb and b/VBOffice/bin/Debug/Database.pdb differ diff --git a/VBOffice/bin/Debug/Model.dll b/VBOffice/bin/Debug/Model.dll index cfb0e4be..fed19b4e 100644 Binary files a/VBOffice/bin/Debug/Model.dll and b/VBOffice/bin/Debug/Model.dll differ diff --git a/VBOffice/bin/Debug/Model.pdb b/VBOffice/bin/Debug/Model.pdb index 4e6ffae7..99bfce67 100644 Binary files a/VBOffice/bin/Debug/Model.pdb and b/VBOffice/bin/Debug/Model.pdb differ diff --git a/VBOffice/obj/Debug/VBOffice.vbproj.AssemblyReference.cache b/VBOffice/obj/Debug/VBOffice.vbproj.AssemblyReference.cache index f21ad58a..6e481208 100644 Binary files a/VBOffice/obj/Debug/VBOffice.vbproj.AssemblyReference.cache and b/VBOffice/obj/Debug/VBOffice.vbproj.AssemblyReference.cache differ diff --git a/Versandstrasse/bin/Debug/DOCGEN.dll b/Versandstrasse/bin/Debug/DOCGEN.dll index faee35b0..284ccb81 100644 Binary files a/Versandstrasse/bin/Debug/DOCGEN.dll and b/Versandstrasse/bin/Debug/DOCGEN.dll differ diff --git a/Versandstrasse/bin/Debug/DOCGEN.pdb b/Versandstrasse/bin/Debug/DOCGEN.pdb index 6f32beb9..e71611d4 100644 Binary files a/Versandstrasse/bin/Debug/DOCGEN.pdb and b/Versandstrasse/bin/Debug/DOCGEN.pdb differ diff --git a/Versandstrasse/bin/Debug/Model.dll b/Versandstrasse/bin/Debug/Model.dll index cfb0e4be..fed19b4e 100644 Binary files a/Versandstrasse/bin/Debug/Model.dll and b/Versandstrasse/bin/Debug/Model.dll differ diff --git a/Versandstrasse/bin/Debug/Model.pdb b/Versandstrasse/bin/Debug/Model.pdb index 4e6ffae7..99bfce67 100644 Binary files a/Versandstrasse/bin/Debug/Model.pdb and b/Versandstrasse/bin/Debug/Model.pdb differ diff --git a/Versandstrasse/bin/Debug/OnDocOffice.dll b/Versandstrasse/bin/Debug/OnDocOffice.dll index d458bc13..ff515bbb 100644 Binary files a/Versandstrasse/bin/Debug/OnDocOffice.dll and b/Versandstrasse/bin/Debug/OnDocOffice.dll differ diff --git a/Versandstrasse/bin/Debug/OnDocOffice.pdb b/Versandstrasse/bin/Debug/OnDocOffice.pdb index 820bf5ff..9a8ea041 100644 Binary files a/Versandstrasse/bin/Debug/OnDocOffice.pdb and b/Versandstrasse/bin/Debug/OnDocOffice.pdb differ diff --git a/Versandstrasse/obj/Debug/Versandstrasse.csproj.AssemblyReference.cache b/Versandstrasse/obj/Debug/Versandstrasse.csproj.AssemblyReference.cache index fb510cde..30a05df9 100644 Binary files a/Versandstrasse/obj/Debug/Versandstrasse.csproj.AssemblyReference.cache and b/Versandstrasse/obj/Debug/Versandstrasse.csproj.AssemblyReference.cache differ diff --git a/Vorlagen_Viewer/obj/Debug/Vorlagen_Viewer.csproj.AssemblyReference.cache b/Vorlagen_Viewer/obj/Debug/Vorlagen_Viewer.csproj.AssemblyReference.cache index 6f6eb982..d2d204ad 100644 Binary files a/Vorlagen_Viewer/obj/Debug/Vorlagen_Viewer.csproj.AssemblyReference.cache and b/Vorlagen_Viewer/obj/Debug/Vorlagen_Viewer.csproj.AssemblyReference.cache differ diff --git a/ZZPDFTest/bin/Debug/ZZPDFTest.exe b/ZZPDFTest/bin/Debug/ZZPDFTest.exe index 14b91c19..27b95120 100644 Binary files a/ZZPDFTest/bin/Debug/ZZPDFTest.exe and b/ZZPDFTest/bin/Debug/ZZPDFTest.exe differ diff --git a/ZZPDFTest/bin/Debug/ZZPDFTest.pdb b/ZZPDFTest/bin/Debug/ZZPDFTest.pdb index 33140aa9..38613271 100644 Binary files a/ZZPDFTest/bin/Debug/ZZPDFTest.pdb and b/ZZPDFTest/bin/Debug/ZZPDFTest.pdb differ diff --git a/ZZPDFTest/obj/Debug/ZZPDFTest.exe b/ZZPDFTest/obj/Debug/ZZPDFTest.exe index 14b91c19..27b95120 100644 Binary files a/ZZPDFTest/obj/Debug/ZZPDFTest.exe and b/ZZPDFTest/obj/Debug/ZZPDFTest.exe differ diff --git a/ZZPDFTest/obj/Debug/ZZPDFTest.pdb b/ZZPDFTest/obj/Debug/ZZPDFTest.pdb index 33140aa9..38613271 100644 Binary files a/ZZPDFTest/obj/Debug/ZZPDFTest.pdb and b/ZZPDFTest/obj/Debug/ZZPDFTest.pdb differ diff --git a/ZZ_BarcpdeFromFont/bin/Debug/Database.dll b/ZZ_BarcpdeFromFont/bin/Debug/Database.dll index 38ae82c6..e68065b2 100644 Binary files a/ZZ_BarcpdeFromFont/bin/Debug/Database.dll and b/ZZ_BarcpdeFromFont/bin/Debug/Database.dll differ diff --git a/ZZ_BarcpdeFromFont/bin/Debug/Database.pdb b/ZZ_BarcpdeFromFont/bin/Debug/Database.pdb index 3de10ea3..377d6b18 100644 Binary files a/ZZ_BarcpdeFromFont/bin/Debug/Database.pdb and b/ZZ_BarcpdeFromFont/bin/Debug/Database.pdb differ diff --git a/ZZ_BarcpdeFromFont/bin/Debug/Model.dll b/ZZ_BarcpdeFromFont/bin/Debug/Model.dll index cfb0e4be..fed19b4e 100644 Binary files a/ZZ_BarcpdeFromFont/bin/Debug/Model.dll and b/ZZ_BarcpdeFromFont/bin/Debug/Model.dll differ diff --git a/ZZ_BarcpdeFromFont/bin/Debug/Model.pdb b/ZZ_BarcpdeFromFont/bin/Debug/Model.pdb index 4e6ffae7..99bfce67 100644 Binary files a/ZZ_BarcpdeFromFont/bin/Debug/Model.pdb and b/ZZ_BarcpdeFromFont/bin/Debug/Model.pdb differ diff --git a/ZZ_BarcpdeFromFont/obj/Debug/ZZ_BarcpdeFromFont.csproj.AssemblyReference.cache b/ZZ_BarcpdeFromFont/obj/Debug/ZZ_BarcpdeFromFont.csproj.AssemblyReference.cache index fd422f83..6bef81c1 100644 Binary files a/ZZ_BarcpdeFromFont/obj/Debug/ZZ_BarcpdeFromFont.csproj.AssemblyReference.cache and b/ZZ_BarcpdeFromFont/obj/Debug/ZZ_BarcpdeFromFont.csproj.AssemblyReference.cache differ diff --git a/ZZ_Signature_C/bin/Debug/DOCGEN.dll b/ZZ_Signature_C/bin/Debug/DOCGEN.dll new file mode 100644 index 00000000..284ccb81 Binary files /dev/null and b/ZZ_Signature_C/bin/Debug/DOCGEN.dll differ diff --git a/ZZ_Signature_C/bin/Debug/DOCGEN.dll.config b/ZZ_Signature_C/bin/Debug/DOCGEN.dll.config new file mode 100644 index 00000000..3751d1f0 --- /dev/null +++ b/ZZ_Signature_C/bin/Debug/DOCGEN.dll.config @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ZZ_Signature_C/bin/Debug/DOCGEN.pdb b/ZZ_Signature_C/bin/Debug/DOCGEN.pdb new file mode 100644 index 00000000..e71611d4 Binary files /dev/null and b/ZZ_Signature_C/bin/Debug/DOCGEN.pdb differ diff --git a/ZZ_Signature_C/bin/Debug/DOCGEN.xml b/ZZ_Signature_C/bin/Debug/DOCGEN.xml new file mode 100644 index 00000000..989f1867 --- /dev/null +++ b/ZZ_Signature_C/bin/Debug/DOCGEN.xml @@ -0,0 +1,13 @@ + + + + DOCGEN + + + + Word to PDF-Konverter + Das sind die Remarks + Base64-Dokument + + + diff --git a/ZZ_Signature_C/bin/Debug/Database.dll b/ZZ_Signature_C/bin/Debug/Database.dll index 38ae82c6..e68065b2 100644 Binary files a/ZZ_Signature_C/bin/Debug/Database.dll and b/ZZ_Signature_C/bin/Debug/Database.dll differ diff --git a/ZZ_Signature_C/bin/Debug/Database.pdb b/ZZ_Signature_C/bin/Debug/Database.pdb index 3de10ea3..377d6b18 100644 Binary files a/ZZ_Signature_C/bin/Debug/Database.pdb and b/ZZ_Signature_C/bin/Debug/Database.pdb differ diff --git a/ZZ_Signature_C/bin/Debug/Model.dll b/ZZ_Signature_C/bin/Debug/Model.dll index cfb0e4be..fed19b4e 100644 Binary files a/ZZ_Signature_C/bin/Debug/Model.dll and b/ZZ_Signature_C/bin/Debug/Model.dll differ diff --git a/ZZ_Signature_C/bin/Debug/Model.pdb b/ZZ_Signature_C/bin/Debug/Model.pdb index 4e6ffae7..99bfce67 100644 Binary files a/ZZ_Signature_C/bin/Debug/Model.pdb and b/ZZ_Signature_C/bin/Debug/Model.pdb differ diff --git a/ZZ_Signature_C/bin/Debug/OfficePrinter.dll b/ZZ_Signature_C/bin/Debug/OfficePrinter.dll new file mode 100644 index 00000000..f3cb9b7b Binary files /dev/null and b/ZZ_Signature_C/bin/Debug/OfficePrinter.dll differ diff --git a/ZZ_Signature_C/bin/Debug/OfficePrinter.pdb b/ZZ_Signature_C/bin/Debug/OfficePrinter.pdb new file mode 100644 index 00000000..19e3f197 Binary files /dev/null and b/ZZ_Signature_C/bin/Debug/OfficePrinter.pdb differ diff --git a/ZZ_Signature_C/bin/Debug/OnDocOffice.dll b/ZZ_Signature_C/bin/Debug/OnDocOffice.dll index e8432855..ff515bbb 100644 Binary files a/ZZ_Signature_C/bin/Debug/OnDocOffice.dll and b/ZZ_Signature_C/bin/Debug/OnDocOffice.dll differ diff --git a/ZZ_Signature_C/bin/Debug/OnDocOffice.pdb b/ZZ_Signature_C/bin/Debug/OnDocOffice.pdb index 5572f381..9a8ea041 100644 Binary files a/ZZ_Signature_C/bin/Debug/OnDocOffice.pdb and b/ZZ_Signature_C/bin/Debug/OnDocOffice.pdb differ diff --git a/ZZ_Signature_C/bin/Debug/Syncfusion.ExcelToPDFConverter.Base.dll b/ZZ_Signature_C/bin/Debug/Syncfusion.ExcelToPDFConverter.Base.dll new file mode 100644 index 00000000..95eab880 Binary files /dev/null and b/ZZ_Signature_C/bin/Debug/Syncfusion.ExcelToPDFConverter.Base.dll differ diff --git a/ZZ_Signature_C/bin/Debug/Syncfusion.ExcelToPDFConverter.Base.xml b/ZZ_Signature_C/bin/Debug/Syncfusion.ExcelToPDFConverter.Base.xml new file mode 100644 index 00000000..941773a6 --- /dev/null +++ b/ZZ_Signature_C/bin/Debug/Syncfusion.ExcelToPDFConverter.Base.xml @@ -0,0 +1,5773 @@ + + + + Syncfusion.ExcelToPDFConverter.Base + + + + + Represents the method that handles the CurrentProgressChanged Event. + + + + + Represents the method that handles the SheetBeforDrawn Event. + + + + + Represents the method that handles the sheetAfterDrawn Event. + + + + + Event occurs when current progress changed. + + + + + Initializes a new instance of the class. + + The no of sheets. + Index of the active sheet. + The source. + + + + Gets the current progress changed. + + The current progress changed. + + + + Event occurs before sheet is drawn. + + + + + Initializes a new instance of the class. + + The current sheet. + The source. + + + + Gets or sets the current sheet. + + The current sheet. + + + + Gets or sets a value indicating whether to skip . The default value is false. + + true if skip; otherwise, false. + + + + Event occurs after sheet is drawn. + + + + + Initializes a new instance of the class. + + The after sheet. + The source. + + + + Gets the current sheet. + + The current sheet. + + + + The Syncfusion.ExcelToPdfConverter namespace contains classes for converting Excel documents into PDF. + + + + + Represent for maintain the header and footer details + + + + + Represent the PDF section. + + + + + Represent header and footer collection. + + + + + Represent page setup of worksheet. + + + + + Represent top margin of PDF page. + + + + + Represent bottom margin of PDF page. + + + + + Represent layout option of worksheet + + + + + True, if header is shown, false otherwise. + + + + + True, if footer is shown, false otherise. + + + + + Represent the PDF page template collection. + + + + + Represent footer margin or PDF page. + + + + + Represent header margin or PDF page. + + + + + Gets or sets PDF page template collection. + + + + + Gets or sets to show header in PDF page. + + + + + Gets or sets to show footer in PDF page. + + + + + Gets or sets layout option of PDF page. + + + + + Gets or sets PDF section. + + + + + Gets or sets header and footer collection. + + + + + Gets or sets page setup in PDF. + + + + + Gets or sets top margin of PDF page. + + + + + Gets or sets bottom margin of PDF page. + + + + + Gets or sets footer margin of PDF page. + + + + + Gets or sets header margin of PDF page. + + + + + Represents the conversion of Excel document to a PDF document. + + + Excel To Pdf Conversion is not supported in WinRT, Windows Phone, Universal, Portable and Silverlight platforms. + + + + + Defines a default script factor. + + + + + Defines a default number format. + + + + + Defines a text number format. + + + + + Number of bits in cell index that holds column value. + + + + + Indicates whether header has page count or not. + + + + + Indicates whether footer has page count or not. + + + + + Represent HeaderFooterImpl class collection. + + + + + Indicates the number of sections in PDF. + + + + + Indicates whether the Excel to PDF process cancelled. + + + + + Cancellation source + + + + + Defines a default coordinates for TextBox. + + + + + Represents the object of Excel sheet conditional formatting . + + + + + Indicates the object of the pdf document. + + + + + Indicates the current rendering pdf page in the document. + + + + + Indicates the active workbook of the input document. + + + + + Indicates the active worksheet of the workbook. + + + + + Indicates the chart object. + + + + + Indicates the object of the workbook Implementation class. + + + + + This object is used for the conversion between the units. + + + + + Indicates the object of the Excel to pdf converter settings object. + + + + + Indicates the object of the pdf template in which the document is drawn first. + + + + + Indicates the object of the pdf graphics of the current pdf page. + + + + + Indicates the object of the excel engine. + + + + + Indicates the object of the current Pdf section. + + + + + Represents the collection of Pdf templates. + + + + + Represents the collection of Header and Footer representations and their respecive values. + + + + + Represents the collection of table style border color list. + + + + + Reprents the collection of table style borders. + + + + + Represents the collection of the table style font list. + + + + + Represents the collection of bordrs and its XF index. + + + + + Represents the collection of the header and footer objects. + + + + + Indicates the Excelborder index width. + + + + + Indicates the no of page counts in the Pdf/ + + + + + Indicates the Bookmark for the Pdf page. + + + + + Indicates the scaled page width to which the template should be drawn. + + + + + Indicates the scaled page height to which the template should be drawn. + + + + + Indicates the list of the fonts collections to which the fonts are need to substituted. + + + + + Indicates the list of the fonts to exclude in SwitchFont + + + + + Indicates the list of the fonts supported by latin font + + + + + Indicates the object of the Table style. + + + + + Indicates the wrapped cell display text for a rotated text. + + + + + Indicates the sortedList for conditional Formatting + + + + + Indicates the unicode fonts. + + + + + It contains the alternate PdfFont collection using alternatefontstream + + + + + Style collection which dont have visible fill and borders + + + + + It's define the Pdf Page-setup. + + + + + It's define the page layout settings. + + + + + It's define the used range coloum width + + + + + It's define the used range row height + + + + + It's define the current draw sheet pagesetup information's + + + + + Represents the list of sorted border values. + + + + + Represents the list of border line styles. + + + + + Helper Methods. + + + + + Find Header Footer having the Rich Text. + + + + + Represents maximum font size in a row + + + + + Merged regions. + + + + + Represents Right width + + + + + Represents Left width + + + + + Represents Header Footer Image bounds. + + + + + Represents Header Footer RTF process. + + + + + Represents the collection of PrintTitle Pdf templates. + + + + + Indicates the object of the pdf template in which the PrintTitle is drawn first. + + + + + Indicates the first row of each page. + + + + + Indicates the first column of each page. + + + + + Indicates the current cell is merged. + + + + + Denotes the scaled page width value when the page is centered Horizontally. + + + + + Denotes the scaled page height value when the page is centered Vertically. + + + + + PDF loaded document object. + + + + + Start index of print page. + + + + + Last index of print page. + + + + + Indicates whether the document is already converted. + + + + + Represent system font name collection. + + + + + Represent style for the Option Button + + + + + Represents the substitute pdf font. + + + + + Dictionary to maintain parent elements + + + + + Dictionary to maintain the parent table elements. + + + + + Dictionary to maintain the target parent elements. + + + + + Represents the conditional format is DataBar. + + + + + List to maintain the PdfGraphicsState elements. + + + + + Indicates whether the sheet is contains chart or not. + + + + + Start position of the print page.. + + + + + List to maintain the footer template. + + + + + List to maintain the footer Bounds. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified workbook. + + The workbook. + + + + Initializes a new instance of the class with the specified worksheet. + + The worksheet. + + + + Initializes a new instance of the class with the specified chart. + + The chart. + + + + Initializes a new instance of the class with the specified file name. + + The file path. + + + + Initializes a new instance of the class with the specified stream. + + The workbook stream. + + + + Gets the LayoutOptions based on PageSetup. + + Current Page setup. + Returns the LayoutOptions. + + + + Raises a warning with the description and warning type. + + Warning detail + Type of warning + + + + Converts the document. + + Returns the PDFDocument Object + + The following code snippet illustrates how to convert the workbook. + + using Syncfusion.XlsIO; + using Syncfusion.Pdf; + using Syncfusion.ExcelToPdfConverter; + class Example + { + static void Main() + { + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + PdfDocument doc = converter.Convert(); + doc.Save("Output.pdf"); + } + } + } + + + + + + Convert the Excel document to PDF + + + + + Draw worksheet comments in new Page. + + + + + Print the Excel document. + + + The following code snippet illustrates how to print the Excel document. + + using Syncfusion.XlsIO; + using Syncfusion.ExcelToPdfConverter; + class Example + { + static void Main() + { + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + converter.Print(); + } + } + } + + + The assemblies Syncfusion.ExcelToPDFConverter.dll and Syncfusion.PDF.Base.dll is essential to print Excel documents. + + + + + + Print the Excel document with specified printer settings. + + The printer settings. + + The following code snippet illustrates how to print the Excel document. + + using Syncfusion.XlsIO; + using Syncfusion.ExcelToPdfConverter; + using System.Drawing.Printing; + class Example + { + static void Main() + { + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + PrinterSettings printerSettings = new PrinterSettings(); + converter.Print(printerSettings); + } + } + } + + + The assemblies Syncfusion.ExcelToPDFConverter.dll and Syncfusion.PDF.Base.dll is essential to print Excel documents. + + + + + + Print the Excel document with specified Excel to PDF converter settings. + + The converter settings. This will be ignored if the document is already converted. + + The following code snippet illustrates how to print the Excel document. + + using Syncfusion.XlsIO; + using Syncfusion.ExcelToPdfConverter; + class Example + { + static void Main() + { + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + + ExcelToPdfConverterSettings converterSettings = new ExcelToPdfConverterSettings(); + converterSettings.LayoutOptions = LayoutOptions.FitAllColumnsOnOnePage; + converter.Print(converterSettings); + } + } + } + + + The assemblies Syncfusion.ExcelToPDFConverter.dll and Syncfusion.PDF.Base.dll is essential to print Excel documents. + + + + + + Print the Excel document with specified printer and Excel to PDF converter settings. + + The printer settings. + The converter settings. This will be ignored if the document is already converted. + + The following code snippet illustrates how to print the Excel document. + + using Syncfusion.XlsIO; + using Syncfusion.ExcelToPdfConverter; + using System.Drawing.Printing; + class Example + { + static void Main() + { + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + + PrinterSettings printerSettings = new PrinterSettings(); + ExcelToPdfConverterSettings converterSettings = new ExcelToPdfConverterSettings(); + converterSettings.LayoutOptions = LayoutOptions.FitAllColumnsOnOnePage; + converter.Print(printerSettings, converterSettings); + } + } + } + + + The assemblies Syncfusion.ExcelToPDFConverter.dll and Syncfusion.PDF.Base.dll is essential to print Excel documents. + + + + + + Print the PDF document. + + The PDF document to be print. + The printer settings. + + + + Helper method for Printing the document page. + + + + + Add the styles (Index) dont have visible fill and border + + + + + To draw the chart Sheet in to pdf + + workbook chart + sheets count + layout options for the chart sheet + + + + + To draw the workbook chart in pdf + + It's represent the chart object + pdf template for the workbook chart + + + + Converts the document with the specified converter settings. + + The converter settings. + Returns the PDFdocument object + + The following code snippet illustrates how to convert the workbook. + + using Syncfusion.XlsIO; + using Syncfusion.ExcelToPdfConverter; + class Example + { + static void Main() + { + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + + ExcelToPdfConverterSettings converterSettings = new ExcelToPdfConverterSettings(); + converterSettings.LayoutOptions = LayoutOptions.FitAllColumnsOnOnePage; + PdfDocument doc = converter.Convert(converterSettings); + doc.Save("Output.pdf"); + } + } + } + + + + + + Called when [progress changed]. + + The no of sheets. + Index of the active sheet. + + + + Raises the event. + + + The instance containing the + event data. + + + + + Called when [sheet after drawn]. + + Index of the active sheet. + + + + Raises the sheet before drawn. + + Index of the active sheet. + the boolean values + + + + Releases both unmanaged and managed resources. + + + + + Releases unmanaged and optionally managed resources + + + true to release both managed and unmanaged resources; false to release only + unmanaged resources. + + + + + Draws the sheet. + + The work sheet. + Ranges to be Drawn + pdfdocument object + + + + Update the Sheet width and height. + + The first column. + The first row. + + + + Gets center width and height values according to the page templates. + + First row that can be drawn in the Pdf page + First column that can be drawn in the Pdf page + Last row that can be drawn in the Pdf page + Last column that can be drawn in Pdfpage + List of center width values + List of center height values + + + + It's finding the scaled page width and height + + + + + + + + + + + + Add HeaderFooterImpl class in header footer collection + + header footer collection + Worksheet + Chart sheetc + PDF page template + + + + Calculates the scaled page height value when centered vertically property is set. + + + + Returns the scaled page height value + + + + Calculates the scaled page width value when centered horizontally property is set. + + + + Returns the scaled page width value + + + + Get margins for center alignment. + + + + + Draws the split text. + + Center width values. + Center height values. + + + + Returns PDF font from system font. + + System Font. + Is font embeded. + Alternate font stream. + returns the PF font + + + + Draws the split text. + + The split text. + + + + Draws the Header and Footer to the PDF page . + + The Pdf section. + The header footer collection. + The Worksheet. + The Pdf page. + Height of the header. + Height of the footer. + Top Margin + Bottom Margin + + + + Returns header footer teample. + + The sheet page setup. + The pdf page. + Template height. + Pdf template. + + + + Draws the row. + + The wk sheet. + The start column. + The end column. + The start row. + The end row. + The x value. + The y value. + Width of the original. + The Object of Pdf Document. + + + + Draws the row. + + The wk sheet. + The start column. + The end column. + The start row. + The end row. + The x value. + The y value. + The start x value. + The start y value. + The height of range + The Width of range + Width of the original. + The Object of Pdf Document. + + + + Draws all necessary shapes. + + It's represent the worksheet + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + The x value. + The y value. + + + + Draws all necessary shapes. + + It's represent the worksheet + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + The x value. + The y value. + + + + Draws all the shape in the shape collection. + + It's represent the worksheet + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + The x value. + The y value. + + + + Get Range Border X and Y + + Cell + Identify the X or Y axis + + + + + Transparancy is applied if it is required + + The graphics + The shape + Apply transparency for line + + + + Draws the shape. + + It's represent the Textbox + Pdf Graphics + First row + First Column + Last row of chart shape + Last column of chart shape + Starting point of chartshape-X Point + starting point of chartshape - Y point + + + + Check whether the AutoShape type is line. + + AutoShape to be checked. + Returns true if the AutoShape is a type of line else returns false. + + + + + + + + + + + + + + + + + + + + + + + + + + + Draws the ComboBox. + + Rectangle bounds of the combobox to be rendered + It's represents the combobox properties + It's represents the pen to draw the combo box + It's used to set the color for combobox pen + Represents the path for rendering the Combobox + It's represents the bounds of the Combo box filled with gray color + Pdf Graphics + + + + Draws the CheckBox. + + Rectangle bounds of the checkbox to be rendered + It's represents the checkbox properties + Represents the path for rendering the Checkbox + It's represents the pen to draw the checkbox + It's used to set the color for checkbox pen + Pdf Graphics + + + + Draws the Option Button. + + Rectangle bounds of the optionButton to be rendered + It's represents the optionButton properties + Represents the path for rendering the optionButton + It's represents the pen to draw the optionButton + It's represents the pen to draw the optionButton + It's used to set the color for optionButton pen + Pdf Graphics + + + + Check whether the AutoShape type is line. + + AutoShape to be checked. + Returns true if the AutoShape is a type of line else returns false. + + + + Draw Rich text inside the AutoShape. + + RichText object that holds the formatted text. + AutoShape for which text should be rendered. + Rectangle bounds of the text to be rendered.. + PdfGraphics object to render the RichText. + + + + Get the anchor position from text direction and alignment + + input text direction of the text body + input text body vertical alignment + input text body horizontal alignment + + + + Updates the bound's of the text inside the AutoShape. + + Rectangle bounds of the text inside the AutoShape. + Rectangle bounds of the AutoShape. + AutoShape for which text bounds should be updated. + + + + Gets the text layout's bounds for the AutoShape. + + AutoShape for which the text bounds should be obtained. + Bound value of the shape from which text bounds to be calculated. + Rectangle bound values for the text inside the AutoShape. + + + + Check whether shape can be set fill or not. + + Shape to check. + Returns true if fill can be applied to shape else returns false. + + + + Checks and applies fill to autoshapes and textboxes. + + pdfPath of the autoshape/textbox. + shape for which fill has to be applied. + pdfPen to draw autoshape. + pdfGraphics to draw autoshape into. + Rectangle bounds of the shape. + + + + Creates image in the meta format. + + Boundary values of the image. + Memorystream to save the image to. + Newly created image stream. + + + + Fills the shape background. + + pdfGraphics to apply fill to. + Shape for which fill should be applied. + Path of the shape on the PdfGraphics. + Fill format of the shape. + + + + Get Gradient Brush for shapes + + Shape for which fill should be applied. + Path of the shape on the PdfGraphics. + Fill format of the shape. + + + + + Linear Gradient Fill implementation. + + + Collection of colors with respective positions + Path of the shape on the PdfGraphics. + Fill format of the shape. + + + + + Radial Gradient Fill implementation. + + + Collection of colors with respective positions + Path of the shape on the PdfGraphics. + Fill format of the shape. + + + + + Gets the Pdf hatch brush for the given fill format. + + Format for which hatch brush should be obtained. + Newly created pdf hatch brush. + + + + Gets the hatch style for the Pdf brush. + + Pattern for which the brush should be obtained. + Equivalent pdf hatch style for the pattern. + + + + Gets the graphics path for autoshapes. + + Bounds to indicate the size of the autoshape. + PdfPen to draw outlines of the autoshapes. + pdfGraphics object in which autoshapes has to be drawn. + Autoshape for which path should be obtained. + Newly created pdfPath for the autoshape. + + + + Get drark color. + + Fill color + Increase or decrease the color vlaue based on given value. + Fill color + + + + Gets the graphics path for autoshapes. + + Bounds to indicate the size of the autoshape. + PdfPen to draw outlines of the autoshapes. + pdfGraphics object in which autoshapes has to be drawn. + Autoshape for which path should be obtained. + Newly created pdfPath for the autoshape. + + + + Caches range's merges. + + First Row. + First Column. + Last Row. + Last Column. + List to save merges in + + + + Creates the pen. + + The format of the line. + The PdfPen object. + + + + Creates pen with line format + + shape which line format is to be created. + line format of the shape. + + + + + Creates pen with line format + + shape which line format is to be created. + line format of the shape. + + + + + Gets the dash style. + + The format of the line. + The PdfDashStyle value. + + + + Gets the custom line head style. + + Head style of the arrow. + Head lenght of the arrow. + Head width of the arrow. + + + + + Gets the custom line style's graphics path. + + Arrow head style of the line. + Arrow head length of the line. + Arrow head width of the line. + Base in set value. + + + + + Gets the Arrow head's style value. + + Arrow head's style. + Graphics path to draw. + Style value to be returned. + Returns true if not drawn else returns false. + + + + Gets the custom line head style. + + Head style of the arrow. + Head lenght of the arrow. + Head width of the arrow. + + + + + Gets the custom line style's graphics path. + + Arrow head style of the line. + Arrow head length of the line. + Arrow head width of the line. + Base in set value. + + + + + Gets the Arrow head's style value. + + Arrow head's style. + Graphics path to draw. + Style value to be returned. + Returns true if not drawn else returns false. + + + + Gets the width of the line + + The format of the line. + The borderWidth of the line index. + + + + Draws the headers and footers. + + The PDF section. + The sheet impl. + The chart to be drawn + The collection of the header and footer objects. + + + + Draws the lines. + + The sheet. + The first row. + The first column. + The last row. + The last column. + The graphics. + The x value. + The y value. + The width. + The height. + + + + Iterates the merges. + + The sheet. + The first row. + The first column. + The last row. + The last column. + The graphics. + The x value. + The y value. + The method. + Width of the i original. + + + + Draws the merge. + + The sheet. + The merged region. + The first row. + The first column. + The graphics. + The x value. + The y value. + The last row. + The last column. + Width of the i original. + + + + Converts page setup PrintErrors option into string representation used by Excel 2007. + + Cell to get print value. + Converted value. + + + + Draws the back ground. + + The sheet. + The first row. + The first column. + The last row. + The last column. + The graphics. + The x value. + The y value. + The method. + Width of the i original. + + + + Draw the data bar + + ExtendedFormatStandAlone + percent of the data bar + left of the rectangle + right of the rectangle + top of the rectangle + bottom of the rectangle + x of the rectangle + y of the rectangle + width of the rectangle + height of the rectangle + The sheet + The graphics + the cell range + Return the rectangle in float + + + + Indicates whether the cell is merged or not. + + Cell. + Returns true if the cell is merged otherwise false. + + + + Draws the background. + + The cell range. + The cell rectangle. + The pdf page graphics object. + + + + Draws the background. + + The internal extended format. + The cell rectangle. + The pdf page graphics. + The cell range. + + + + Get Gradient Brush + + The cell gradient fill. + The cell rectangle. + the PdfBrush object + + + + Draws the merged background. + + The sheet. + The merged region. + The first row. + The first column. + The graphics. + The x value. + The y value. + The last row. + The last column. + Width of the i original. + + + + Gets the width of the merged cells. + + The first column. + The last column. + The merged first column. + The merged last column. + + + + + Draws the cells. + + The sheet. + The first row. + The first column. + The last row. + The last column. + The graphics. + The x value. + The y value. + Width of the i original. + Width of the cell + + + + Draws the cell. + + The migrant cell range. + The cell rectangle. + The adjacent cell rectangle. + The pdf page graphics. + The width of Merged Cell + The cell is last cell of the sheet or not + + + + Add tag elementes to Table. + + + + + Add tag elementes to Pivot Table. + + + + + Draws the cell. + + The extended format impl. + The cell range. + The cell rectangle. + The adjacent cell rect. + The pdf page graphics. + The width of Merged Cell + The cell is last cell of the sheet or not + + + + Add tag elemnets for new Table + + + + + Add tag elemnets for Table With ConditionalFormat + + + + + Get the text margin based on font size. + + Cell text font size + Text margin based on font size. + + + + Returns PDF font from system font. + + System Font. + Is font embeded. + Alternate font stream. + returns the PF font + + + + Draws IconSet image. + + The pdf page graphics. + The extended format of the cell. + The adjacent cell rect. + The Pdf font in the cell. + The display text of the cell. + + + + Returns right alignment if the first character is rtl otherwise left. + + Cell text character codes. + returns PdfTextAlignment. + + + + Fill the text into the given bounds. + + Cell bounds + Cell text + Pdf font + + + + + Draw the RTf text. + + The cell rectangle. + The cell adjacent rectangle. + The pdf graphics. + Font collection. + DrawString collection. + Indicating wheather shape or not. + Indicating wheather is wrapText or not + Indicating wheather shape Horizontal Text is overflow or not + Indicating wheather shape vertical Text is overflow or not. + Indicating wheather the header footer or not + + + + Draws the rotated text. + + The adjacent cell rect. + The extended format impl of the cell. + The cell range. + The cell display text. + The pdf page graphics. + The native font. + The pdf brush. + The pdf string format. + First char width of the display text . + The total width of the display text. + Last char size of the display text . + + + + Aligns the rotated text based on pdf string format. + + Pdf string format. + Rotation angle. + Shape object + returns Pdf string format. + + + + Draws the borders. + + The border collections of the cell. + The rectangle of the cell. + The pdf page graphics. + The cell range. + + + + Draws the borders as MS Excel. + + The border collections of the cell. + The rectangle of the cell. + The pdf page graphics. + The cell range. + The cell is last cell of the sheet or not + + + + Sort border line style. + + + + + Fill border line style. + + + + + Calculate the color contrast of the cell borders. + + The border collections of the cell. + Border index. + + + + Sort the dictionary by its values. + + + + + Draw all border lines. + + + + + Draw single border. + + The borders collection of the cell. + The cell Excel border indez. + The x1 point of the border line. + The y1 point of the border line. + The x2 point of the border line. + The y2 point of the border line. + The pdf page graphics. + The cell range. + Color of the cell border. + border index. + check is this is first border. + Border index to fill edge. + + + + Checks conditional formats and updates if border is to be drawn + + Border index of the cell + Current cell being manipulated + Boolean value indicating if teh specified border index can be drawn + + + + + Draws the border. + + The borders collection of the cell. + The cell Excel border indez. + The x1 point of the border line. + The y1 point of the border line. + The x2 point of the border line. + The y2 point of the border line. + The pdf page graphics. + The cell range. + Color of the cell border. + Border Index of the cell + + + + Gets left adjecent cell. + + Range + + + + Gets rigth adjecent cell. + + Range + + + + Gets top adjecent cell. + + Range + + + + Gets bottom adjecent cell. + + Range + + + + Gets relative cell. + + Row + Column + Range + Range + + + + Draws the double border. + + The borders collection of the cell. + The Excel cell border Index. + The x1 point of the border line. + The y1 point of the border line. + The x2 point of the border line. + The y2 point of the border line. + The pdf page graphics. + The cell range. + Color of the cell border. + + + + Draws the outer line. + + The pdf page graphics. + The pdf pen to draw the border. + Index of the border . + The x1 point of the border line. + The y1 point of the border line. + The x2 point of the border line. + The y2 point of the border line. + The delta X. + The delta Y. + The cell range. + + + + Draws the inner line. + + The pdf page graphics. + The pdf pen to draw the border. + The borders collection of the cell. + Index of the border . + The x1 point of the border line. + The y1 point of the border line. + The x2 point of the border line. + The y2 point of the border line. + The delta X. + The delta Y. + The cell range. + + + + Draws the ordinary border. + + The Excel border index. + The x1 point of the border line. + The y1 point of the border line. + The x2 point of the border line. + The y2 point of the border line. + The pdf page graphics. + Color of the border. + Border index of the cell + + + + Draws the images. + + The sheet. + Return the Pdf document with the image. + + + + Draws all necessary images. + + Shape to draw as image. + Image to draw in pdf page. + PdfGraphics to draw cells at. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + The x value. + The y value. + + + + Get Image has external properties or not. + + BitmapShape + Image rectangle + Image width + Image height + True if image has external properties style, otherwise false + + + + Apply Image transparency. + + In where the transparency need to apply. + Transparency to apply. + + + + Apply recolor to the give image. + + In where the recolor need to apply. + Picture shape. + Recolored image. + + + + Apply duotone to the give image. + + Picture shape. + ImageAttributes need to be applied. + Color changed ImageAttributes. + + + + Apply duotone to the give image. + + In where the duotone need to apply. + duotone color informations. + Duotone applied image. + + + + Executes Linear interpolation for Duotone. + + In where the factor is applied. + In where the factor is applied. + Factor value. + Final factorized color. + + + + Create Non-Index image from source image. + + Source Image. + Created Non-Indexed image. + + + + Convert EMU to Point. + + EMU value. + Point value. + + + + Update the image width in points. + + The image. + Image width. + + + + Update the image height in points. + + The image. + Image height. + + + + Rotate Shape. + + Pdf page graphics. + Shape. + Shape bounds. + + + + Checked whether the group shape contains Horizontal flip. + + Group Shape. + True if the group shape contains flip.. + + + + Checked whether the group shape contains Vertical flip. + + Group Shape. + True if the group shape contains flip.. + + + + Get Horizontal flip count. + + Group Shape. + Flip count. + Flip count. + + + + Get Vertical flip count. + + Group Shape. + Flip count. + Flip count. + + + + Gets the lattitude value of the shape from Scene 3D. + + AutoShape for which the lattitude value should be obtained. + Boolean value indicates whether AutoShape is flipped horizontally. + Rotation angle of the AutoShape. + + + + Applies rotation for the AutoShape/Textbox. + + Shape for which rotation should be applied. + Rectangle bound values of the Shape. + Rotation angle to apply the rotation. + PdfGraphics to render the Shape. + + + + Rotates the text bounds of the Shape. + + Current rectangle bound. + Direction of the text. + + + + Gets the transformation matrix for the AutoShape. + + Rectangle bounds of the AutoShape. + Rotation angle to be applied. + Horizontal flip. + Vertical flip. + Transformed matrix value in which shape will be rendered. + + + + Prepares a matrix to PDF. + + Render bounds. + Rotation Angle. + + A properly prepared PdfTransformationMatrix class instance. + + + + + Set hyperlink to shape + + The shape. + Shape bounds. + + + + It's draw the worksheet chart's to the pdf + + It's represent the chartshape + Pdf Graphics + First row + First Column + Last row of chart shape + Last column of chart shape + Starting point of chartshape-X Point + starting point of chartshape - Y point + + + + Crops the image with the specified offset. + + Source image to crop. + Left offset to crop from. + Top offset to crop from. + Right offset to crop. + Bottom offset to crop. + Indicates whether the destination image is transparent. + Returns the cropped image for the offsets specified. + + + + returns float array which contains preserved height and width. + + preserved style for header and footer + height and width of header/footer image + + + + returns float value from preserved style. + + Preserved style for width and height + + + + Draws the header and footer images. + + The worksheet object. + Image width. + Image height. + The pdf page template. + The alignment of the header and footer text. + The name represents the header part or footer part. + The PDF section. + + + + + + + + + + + Initializes the PDF page. + + + + + Intializes the header and footer. + + The sheet. + + + + Initialize the default header and footer for chartsheet + + + + + + Intializes the fonts. + + + + + Represent the system font name added the collection. + + + + + Intializes the Remoable Characters + + + + + Gets the adjacent cell size. + + The cell rnage. + The cell rectangle. + Denotes whether the last column is changed or not + The first column of the range. + The adjacent cell. + Width of the sheet. + The Adjacent cell RectangleF + + + + Gets the vertical coordinates of image background. + + The X coordinate. + The Y coordinate. + Width of the image. + Height of the image. + The image coordinate. + The PDF page. + + returns the vertical coordinates of image background. + + + + + Gets the horizontal coordinates of image background. + + The X coordinate. + The Y coordinate. + Width of the image. + Height of the image. + The image coordinate. + The PDF page. + + Returns the horizontal coordinates of background image. + + + + + Gets the width of the border. + + The border. + The borderWidth of the Excel border Index. + + + + Get the border based on priority for using compare the two border. + + Boder lineStyle + + + + Get the brightness of color. + + + + + + + Gets the bottom text. + + The value. + The rotation angle. + The text to be displayed in the rotated Text. + + + + Gets the brush. + + The internal extended format of the cell. + The PdfBrush object. + + + + Gets the counter clockwise rotation. + + The rotation angle. + The rotation angle as an MS Excel representation. + + + + Gets the dash style. + + The border. + The PdfDashStyle value. + + + + Checks the index. + + The index. + The text. + The split value. + The value. + + + + + Gets the display wrap text list. + + The PDF font. + The PDF string format. + The cell text value. + The cell rectangle. + The list of wrapped text. + + + + Gets the display wrap text list. + + The PDF font. + The PDF string format. + The cell text value. + The cell rectangle. + The split text list. + The List of wrapped text. + + + + Gets the font. + + The font object of the cell. + Name of the font. + The size of the font. + Font object + + + + Gets the font. + + The name of the font. + The size of the font. + The settings of the font + Denotes whether the font has underline or not + Font object + + + + Gets the font. + + The name of the font. + The size of the font. + Font object + + + + Gets the header footer information. + + The header footer collection. + The header footer section + The PDF section. + The font color settings. + The PDF template. + The width of the header or footer. + The height of the header or footer. + The alignment of the header and footer text. + The name represents either the header or footer. + The page number of the pdf document. + The page setup for pdf document + + + + Update Header and footer text. + + Headerfooter section + current string + RichTexting + Rich text collection + current richtext index + + + + Gets the header information. + + The font color settings. + The alignment of the header and footer Text. + The name represets either the header part or the footer part. + The height of the Header or Footer. + The width of the Header or Footer. + Width of the page. + The page setup for pdf document + + + + Returns size of the string part. + + Start position. + End position. + Rich text string. + Size of the string part. + + + + Measure and return the size of the given text. + + String to measure + System Font. + Size of the string. + + + + Gets the header footer options. + + The dictionart collection of the header and footer page setups. + The PDF section. + The worksheet object. + Width of the template. + The name represents either the header part or the footer part. + It's Represent the sheet or chart name + + + + + Modifies the specified string to pass String.Format(). + + The header or footer string to be modified to escape '{' or '}'. + Modified header/footer string. + + + + To get the headerfooter font color settings + + The splitted header footer values. + Header footer values count. + The color settings for the header footer. + Specifies a boolean value indicating if ampersand (&) is removed in header footer string. + The color settings loaded from header footer string. + + + + Gets the color of the header footer text color. + + The color value. + The HeaderFooter Text color. + + + + Checks whether the string contains the digit or not. + + string values + + + + Checks whether the string contains the digit or not. + + font value + + + + Gets the horizontal alignment from extended format. + + The extended format style. + The cell range. + The PdfTextAlignment value. + + + + Gets the horizontal left. + + The rotation angle of the cell display text. + Length of the string. + The cell rectangle. + The vertical alignment of the cell text. + First char size of the display text . + The native font of the cell text. + The pdf string format. + The vector for the text rotation. + + + + Gets the horizontal right. + + The rotation angle of the cell display text. + Length of the string. + The cell rectangle. + The vertical alignment of the cell text. + Last char size of the display text. + First char size of the display text . + The native font of the cell text. + The pdf string format. + The vector for the text rotation. + + + + Gets the horizontal center. + + The rotation angle of the cell display text. + Length of the string. + The cell rectangle. + The vertical alignment of the cell text. + Last char size of the display text. + First char size of the display text . + The native font of the cell text. + The pdf string format. + The vector for the text rotation. + + + + Gets the Max height of the HeaderFooterSection. + + The sections. + The Maximum value. + + + + Gets the width of the max. + + The sizes. + + + + + Gets the max value. + + The max list. + The maximum value + + + + Gets the max value. + + The max list. + The maximum value. + + + + Gets the merged rectangle. + + The sheet. + The merged region. + The first row. + The first column. + The last row. + The last column. + The start x value. + The start y value. + The Merge Rectangle Coordinates. + + + + Gets the resized image. + + The original image. + The width. + The height. + The resized Image. + + + + Gets the adjacent range. + + The cell. + + + + + Gets the scaled page. + + Width of the original. + Height of the original. + Width of the max. + Height of the max. + if set to true [fit page]. + + + + Gets the scaled page. + + Width of the original. + Height of the original. + Width of the max. + Height of the max. + if set to true [fit page]. + + + + Gets the scaled picture. + + The original image. + Width of the max. + Height of the max. + The scaled Image + + + + Gets the scaled picture width height. + + The original image. + Width of the max. + Height of the max. + The scaled Image + + + + Gets the width of the sorted. + + The align. + The temps. + Width of the divided. + + + + + Gets the splitted header and footer text. + + The page setup. + The Array of splitted strings + + + + Replaces ascii character in the string with Dollar ($) symbol. + + Array of header/footer strings. + Modified array of header/footer strings. + + + + Gets the start index of the end border. + + Index of the Excel border. + The start Excelborder index. + The end Excel border index. + + + + Gets the height of the template. + + The page setup object of the sheet. + The name represents either the header part or the footer part. + The alignent of the header and footer text. + Height of the image. + Width of the image. + + + + Update the image width and height in points. + + The image. + Image height. + Image width. + + + + Gets the text alignment from shape. + + The shape. + The PdfTextAlignment value. + + + + Gets the vector. + + The rotation angle of the cell display text. + Length of the string. + The cell rectangle. + The horizontal alignment of the cell text. + The vertical alignment of the cell text. + Last char size of the display text. + First char size of the display text . + The native font of the cell text. + The pdf string format. + The vector for the text rotation. + + + + Gets the vector. + + The rotation angle of the text within the cell. + The total width of the display text. + The adjacent cell rect. + The extended format impl of the cell. + Last char size of the display text. + First char size of the display text . + The native font of the cell. + The pdf string format. + The vector for the text rotation + + + + Gets the vertical alignment from extended format. + + The style. + The PdfVerticalAlignment value + + + + Gets the vertical alignment from shape. + + The text box shape. + The pdfVerticalAlignment value + + + + Sets the document properties. + + + + + Sets the hyper link. + + The cell rectangle. + The range to which hyperlink is to be set + + + + Sets the hyper link from formula. + + The cell rectangle. + The range to which hyperlink is to be set + Formula of the cell + + + + Updates the friendly name part to URI part to calculate the URI value + + cell hyperlink formula + + + + + To Resize the hyperlink position for fit in the pdf page. + + + + + + + Gets the actual used range. + + The sheet. + The IRange object + + + + Updates the used Range + + The Worksheet + Actual used range of worksheet + Returns the updated used range + + + + Check whether the given range is empty or not. + Exclude hidden rows and columns. + + The range. + Returns True if the range is Blank otherwise False. + + + + Adds the book mark. + + + + + Checks the range. + + The table range. + The sheet range. + True if the sheet range is within the table range else false will be returned. + + + + Checks the unicode. + + The unicode text. + + True if the text is an unicode else false will returned. + + + + + Checks whether the unicode characters are only punctuations + 8208,8286 are the starting and ending utf-8 value of punctuations + + + + + + + Determines whether [has merged region] [the specified i range]. + + The i range. + + true if [has merged region] [the specified i range]; otherwise, false. + + + + + Checks if array of flags contains at least on RTL symbol. + + Array of flags. + True if array of flags contains at least on RTL symbol, False otherwise. + + + + Creates the pen. + + The border. + Color of the border. + The PdfPen object. + + + + Degrees to radian. + + The angle. + Radian value + + + + Normalizes the color. + + The color. + The Normailzed Color + + + + The function used to identify the required width. + + Width of the excel sheet. + Height of the sheet. + Height of the excel sheet. + Returns the required width + + + + The function used to identify the required height. + + Width of the excel sheet. + Width of the sheet. + Height of the excel sheet. + Returns the required height + + + + Updates the border delta. + + The sheet. + The row of the excel sheet. + The column of the excel sheet. + The delta X. + The delta Y. + The delta x1. + The delta y1. + if set to true [is invert condition]. + The borders collection of the cell. + The start Excel border index. + The end Excel border index. + if set to true [is line start]. + + + + Updates the rectangle coordinates. + + The cell rectangle. + The borders collection of the cell. + The updated Rectangle coordinates + + + + To update the used range for the shape + + Represents the worksheet + Represents the actual range + + + + + To update the used range for the chart shape + + + + + + + + Draw the Pdf HeaderFooter + + The page setup for pdf document + Represent the pdf Section for drawing the HeaderOrFooter + Used to identify the Header or Footer + Used to identify the chart + Return the pdfpagetemplete element + + + + Draw the Pdf Header Footer string + + PdfPagetemplate-HeaderOrFooter + HeaderOrFooter Section + + + + Modifies font name so as to render Unicode characters. + + The sting in test for Unicode characters. + The Charset of the font. + The name of the font. + + + + + Gets fall back font extension to preserve the text in converted Image. + + Represent fontName. + Represent testString. + Represent FallbackFonts. + Returns a fall back font instance, if it has; otherwise returns original Font. + + + + Check unicode symbols for unicode string + + string + True, if string value as unicode symbol, otherwise false. + + + + The text string is can draw current font name or not. + + The current font name + the current cell text + Returns the current cell text font name + + + + Get the text have symbols + + The given text + If text have symbols return true + + + + Checks for Segoe UI symbols characters in the Unicode string + + Input Unicode string + True if the Unicode string contain Segoe UI symbols characters. False otherwise + + + + Checks for Segoe UI Emoji symbols characters in the Unicode string + + Input Unicode string + True if the Unicode string contain Segoe UI Emoji Symbols characters. False otherwise + + + + Checks for Segoe UI Emoji symbols characters in the Unicode string + + Input Unicode string + True if the Unicode string contain Segoe UI Emoji symbols characters. False otherwise + + + + Checks for Segoe UI Emoji symbols characters in the Unicode string + + Input Unicode string + True if the Unicode string contain Segoe UI Emoji symbols characters. False otherwise + + + + Checks for amharic characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Amharic characters. False otherwise. + + + + Checks for khmer characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Khmer characters. False otherwise. + + + + Checks for thai characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Thai characters. False otherwise. + + + + Checks for sinhala characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Sinhala characters. False otherwise. + + + + Checks for myanmar characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Myanmar characters. False otherwise. + + + + Checks for tamil characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Tamil characters. False otherwise. + + + + Checks for telugu characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Telugu characters. False otherwise. + + + + Checks for punjabi characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Punjabi characters. False otherwise. + + + + Checks for malayalam characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Malayalam characters. False otherwise. + + + + Checks for kannada characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Kannada characters. False otherwise. + + + + Checks for gujarati characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Gujarati characters. False otherwise. + + + + Checks for marathi characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Marathi characters. False otherwise. + + + + Checks for bengali characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Bengali characters. False otherwise. + + + + Checks for odia characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Odia characters. False otherwise. + + + + Checks for Latin characters in the Unicode string. + + Input Unicode string. + True if the Unicode string does not contain Latin characters. False otherwise. + + + + Checks for CJK characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contains CJK characters. False otherwise. + + + + Checks for Hebrew or Arabic characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contains Arabic or Hebrew characters. False otherwise. + + + + Checks for Korean characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contains Korean characters. False otherwise. + + + + Checks whether the image is transparent or not. + + Input Image + Returns whether the image is transparent or not + + + + Get the Scale Transform value + + + + + Set the tag element + + + + + Get system font name collection. + + + + + Represents the warning detail about unsupported and substituted elements in Excel to PDF conversion. + + + + + Represents Header Footer RTF Process. + + + + + Represents Left width. + + + + + Represents Right width. + + + + + Represents Excel to pdf converter settings. + + + + + Represents Header Footer Image bounds. + + + + + Get or set the alternate pdf font while applying substitute font. + + + + + Occurs when current progress changed. + + + + + Occurs before the sheet is drawn. + + + + + Occurs after the sheet is drawn. + + + + + Represents the chart to image converter instance. + + + + + Gets a value indicating whether this instance is print title row page. + + + true if this instance is print title row page; otherwise, false. + + + + + Gets a value indicating whether this instance is print title column page. + + + true if this instance is print title column page; otherwise, false. + + + + + Gets the row height getter. + + + + + Gets the column width getter. + + + + + PDF Unit Converter. + + + + + Delegate for Merged cell rendering. + + + + + Delegate for background cell rendering. + + + + + Returns the when trying to convert the Excel document to a PDF document. + + + + + Default message. + + + + + Initializes a new instance of the class with an empty error message. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + True if rendering sheet by sheet, otherwise false. + + + + + Enables the complex script detection. + + + + + Represents the Header footer option of the output document. + + + + + Represents the display style of the gridlines in the output document. + + + + + Indicates whether to embed the fonts to the output pdf document. + + + + + Indicates whether the output pdf sheet should be rendered from right to left. + + + + + Indicates whether to export the bookmarks to the output pdf document. + + + + + Indicates whether to export the document properties to the output pdf document. + + + + + TRUE - Use TIFF Quality Image while converting Excel to PDF document,otherwise FALSE + + + + + Represents the layout mode of the output sheet. + + + + + Represents the Need Blank Option + + + + + Indicates whether to export the blank PDF page in the output pdf document. + + + + + Represents the Pdf document object. + + + + + TRUE - Throw exception when excel file is empty,otherwise FALSE + + + + + Represents the custom paper size + + + + + Represents Conformance level of PDF + + + + + Represents the warning details. + + + + + Enables the form fields conversion + + + + + Boolean value indicating whether the accessibility tags should be enabled + + + + + Enables the file extension in header and footer + + + + + Initializes a new instance of the class. + + + + + Gets the size of the excel sheet. + + Size of the paper. + Excel to PDF converter settings.> + The Size of the output pdf page. + + + + Gets or sets value to indicate whether the PDF rendering to be done sheet-by-sheet or not. + + + + + Gets or sets a value indicating whether to display the file extension along with file name in the header footer or not, when converting an Excel to PDF. The default value is false. + + + + using Syncfusion.XlsIO; + using System.Text; + using Syncfusion.Pdf; + using Syncfusion.ExcelToPdfConverter; + class Example + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Fund_Calendar_KF-US_2018.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ExcelToPdfConverterSettings setting = new ExcelToPdfConverterSettings(); + setting.ShowFileNameWithExtension = true; + + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + PdfDocument doc = converter.Convert(setting); + doc.Save("Output.pdf"); + } + + + + + + + Gets or sets a value to enable complex script validation for the text present in the Excel document and render it in PDF conversion. + Default value is FALSE. + + + + using Syncfusion.XlsIO; + using System.Text; + using Syncfusion.Pdf; + using Syncfusion.ExcelToPdfConverter; + class Example + { + static void Main() + { + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Fund_Calendar_KF-US_2018.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ExcelToPdfConverterSettings setting = new ExcelToPdfConverterSettings(); + setting.AutoDetectComplexScript = true; + + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + PdfDocument doc = converter.Convert(setting); + doc.Save("Output.pdf"); + } + } + } + + + + + + Gets or sets the PDF template document. + + + + + Gets or sets the style of grid lines. + + + + + True if the font is an embedded font. The default value is False. + + + + + Gets or sets a value indicating whether to export bookmarks. The default value is True. + + + + + Gets or sets a value indicating whether to export document properties. The default value is True. + + + + + Gets the header and footer option. + + + + + Gets or sets the layout mode. + + The layout mode. + + The following code snippet illustrates how to set the lay out options. + + using Syncfusion.XlsIO; + using Syncfusion.ExcelToPdfConverter; + class Example + { + static void Main() + { + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + + ExcelToPdfConverterSettings converterSettings = new ExcelToPdfConverterSettings(); + converterSettings.LayoutOptions = LayoutOptions.FitAllColumnsOnOnePage; + PdfDocument doc = converter.Convert(converterSettings); + doc.Save("Output.pdf"); + } + } + } + + + + + + Gets or sets a value indicating whether [enable RTL]. + + true if [enable RTL]; otherwise, false. + + + + Gets or sets a value indicating whether to throw exception when empty Excel document is being converted to a PDF + document. + + + + + Gets or sets a value indicating whether to export quality image. The default value is False. + + + + + Gets or sets a value indicating whether to convert blank sheet. The default value is true. + + + + + Gets or sets a value indicating whether to convert blank PDF page. The default value is true. + + + + + Gets or sets a Custom paper size in inches. The default value is empty(i.e.,{Width = 0.0 Height = 0.0}) + + + The following code snippet illustrates how to set the custom page size for the document. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + + //Open the file as Stream + FileStream excelStream = new FileStream("Template.xlsx", FileMode.Open, FileAccess.Read); + IWorkbook workbook = application.Workbooks.Open(excelStream); + ExcelToPdfConverterSettings settings = new ExcelToPdfConverterSettings(); + //Setting custom paper size to the document + settings.CustomPaperSize = new SizeF(10, 20); + //Convert the workbook into PDF. + PdfDocument document = converter.Convert(settings); + + //Saving the PDF as stream + FileStream stream = new FileStream("Output.pdf", FileMode.Create, FileAccess.ReadWrite); + document.Save(pdfStream); + + pdfStream.Dispose(); + excelStream.Dispose(); + document.Close(); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the Pdf document's Conformance-level. + + The of the PDF document. + + The following code snippet illustrates how to set set the PdfConformanceLevel while converting Excel workbook to PDF. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open(DEFAULTPATH + "sample.xlsx"); + + //Open the Excel document to Convert + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + ExcelToPdfConverterSettings settings = new ExcelToPdfConverterSettings(); + + // Set the conformance for PDF/A-1b conversion. + settings.PdfConformanceLevel = PdfConformanceLevel.Pdf_A1B; + + //Initialize PDF document + PdfDocument pdfDocument = converter.Convert(settings); + + //Save the PDF file + pdfDocument.Save("Output.pdf"); + pdfDocument.Close(); + + + + + + Gets or sets value to indicate whether the PDF rendering to be done by form fields or not. + + + + + Gets or sets a boolean value indicating whether the accessibility tags should be enabled in the converted PDF document. Default value is false + + + + + The class has the functions and properties to manipulate the Header and footers of the output page. + + + + + Indicates the name of the HeaderFooter. + + + + + Indicates the HeaderFooter Section collections. + + + + + Indicates the template size of the HeaderFooter. + + + + + Initializes a new instance of the class. + + + + + Clone corresponding headerFooter + + + + + + Gets or sets the size of the template. + + The size of the template. + + + + Gets or sets the name of the header footer. + + The name of the header footer. + + + + Gets or sets the header footer sections. + + The header footer sections. + + + + The class has the properties to hold the header and footer section settings. + + + + + Represents the collection of the HF. + + + + + Represents the height of the HF Section. + + + + + Represents the HF Section name. + + + + + Represents the width of the HF section. + + + + + Represents the collection of Richtext string. + + + + + Text Alignment of Header Footer String. + + + + + True, if header/footer having page count, false otherwise. + + + + + Clone corresponding HeaderFooterSection. + + + + + + Gets and Sets to indicate if header or footer having page count. + + + + + Gets or sets the width. + + The width. + + + + Gets or sets the height. + + The height. + + + + Gets or sets the name of the section. + + The name of the section. + + + + Gets or sets the header footer collections. + + The header footer collections. + + + + Gets or sets the RTF. + + The RTF. + + + + Represents the Header Footer Section text alignmet + + + + + The class has the properties and functions for the HF color and font settings. + + + + + Represents the font of the header and footer text. + + + + + Represents the font color of the header and footer text. + + + + + Represents the Underline for the header and footer text. + + + + + Represents the StrikeThrough for the header and footer text. + + + + + Represents the superscript for the header and footer text. + + + + + Represents the subscript for the header and footer text. + + + + + Initializes a new instance of the class. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Gets or sets the font. + + The font of the header and footer text. + + + + Gets or sets a value indicating whether this instance has underline. + + + true if this instance has underline; otherwise, false. + + + + + Gets or sets a value indicating whether this instance has StrikeThrough. + + + true if this instance has StrikeThrough; otherwise, false. + + + + + Get or set a value indicating wheather this instance has superscript. + + + + + Get or set a value indicating wheather this instance has subscript. + + + + + Gets or sets the color of the font. + + The color of the font. + + + + Represents the display style of the grid lines. + + + + + Grid line is not rendered in the output page. The default value is Invisible. + + + + + Grid line is rendered in the output page. + + + + + Grid line is not rendered in the output page. + + + + + Represents the layout of the output document. + + + + + Renders the sheet in one page. + + + + + Print sheets at their actual size. + + + + + Renders all columns in one page. + + + + + Renders all rows in one page. + + + + + Print sheets at specified scaling option. + + + + + Print sheets at their actual size. The default value is NoScaling. + + + + + Represents the options for Header and footer. + + + The options of header and footer are show header and footer. + + + + + + + + + + + + + The options for showing header and footer are set. + + + + + Gets or sets a value indicating whether to show header. The default value is true. + + + + + Gets or sets a value indicating whether to show footer. The default value is true. + + + + + Class used for Table style rendering in the pdf page. + + + + + Collection of List object ranges and their respective borders and bordercolors. + + + + + Collection of built in styles bordercolors. + + + + + Collection of font colors of listobjects. + + + + + Collection of Dark built in styles for the Last and first column. + + + + + Collection of double border built in styles. + + + + + Collection of list object ranges and their font colors. + + + + + Collection of Light buit in Styles for the Row and column stripes. + + + + + Sheet List objects. + + + + + Collection of Medium styles for the column stripes. + + + + + Collection of Medium built in Styles for the Last and first column that has border settings. + + + + + Collection of Medium built in Styles for the Last and first column that has no border settings. + + + + + Collection of built in styles that has top border as solid. + + + + + List object built in style. + + + + + Indicates whether the Column Stripes are shown. + + + + + Indicates whether First Column is shown. + + + + + List Object Header color + + + + + Indicates whether Header Row is shown. + + + + + Indicates whether Last Column is shown. + + + + + Indicates whether the Row stripes are shown. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The sheet list objects. + + + + Applies the styles. + + The sheet. + The font color collection. + Range collection with the borders and their respective colors + + + + Initializes the light style. + + + + + Initializes the borders. + + + + + Initializes the color fonts. + + + + + Initializes the double borders. + + + + + Initializes the top solid. + + + + + Initializes the column settings. + + + + + Initializes the medium style. + + + + + Apply related table tyle element and range to set the border, font and back ground color and format. + + Current work sheet from work book + Table style element object + Related table range + True, If table style element total row is applied, Other wise false. + FirstColumnStripeStyle stripe size + SecondColumnStripeStyle stripe size + FirstRowStripeStyle stripe size + SecondRowStripeStyle stripe size + + + + custom table style element in whole table element range to get and set the border, back ground and font color, format. + + current sheet in work book + whole table element range + custom table style element + + + + Custom table style elements range get and set the border, back ground and font color, format. + + current sheet in work book + whole table element range + custom table style element + + + + Custom table style in first column stripe element range to set the border, back ground and font color and format. + + + + + + SecondColumnStripeStyle stripe size + + + + Custom table style in second column stripe element range to set the border, back ground and font color and format. + + + + + + FirstColumnStripeStyle stripe size + + + + Custom table style in first row stripe element range to set the border, back ground and font color and format. + + + + + + SecondRowStripeStyle strip size + + + + Custom table style in second row stripe element range to set the border, back ground and font color and format. + + + + + + firstRowStripeStyle strip size + + + + Draws the table style. + + The worksheet. + The built in style. + The list object location. + if set to true [show totals]. + + + + Renders the style to the total part of the table. + + The worksheet. + The listobject location. + The border style. + Color of the border. + if set to true [entire row]. + Color of the background. + The solid style. + if set to true [show totals]. + Color of the font. + if set to true [bold font]. + + + + Apply text color. + + Text color. + The Range. + + + + + Apply borders and line style in table. + + Apply border color and line style range + custom table style element + + + + Apply Whole table style element borders. + + Current sheet in work book + Apply Border color and line style range + sustom table style element + + + + Apply Font Color and format in table. + + Font Range + Custom table style element + + + + Apply back ground color and format. + + Apply back ground color and format range + custom table style element + + + + Renders the style to the header part of the table. + + The Worksheet. + The header range. + The header border style. + Color of the border. + if set to true [entire row]. + Color of the background. + The solid line style. + Color of the font. + + + + Renders the style to the content part of the table. + + The Worksheet. + The header range. + The content border style. + Color of the border. + if set to true [entire row]. + First color of the Background. + Second color of the Background. + The solid line style. + Color of the font. + if set to true [show totals]. + + + + Applies the background color. + + Color of the background. + Cells. + + + + Applies the border. + + The Worksheet. + The border range. + The solid style. + The border style. + Color of the border. + if set to true [entire row]. + + + + Apply border to cell. + + The cell. + Excel border index. + Solid style. + Solid style first. + Solid style second. + Border color. + + + + Applies the border to the first and last column of the table. + + The Worksheet. + The border range. + The solid style. + The border style. + Color of the border. + if set to true [entire row]. + + + + Applies the cell top border. + + The Worksheet. + The border range. + The solid style. + Color of the border. + + + + Applies the first and last column style. + + The Worksheet. + The content range. + Color of the font. + First color of the bg. + if set to true [show totals]. + IRange Object + + + + Checks the style. + + + Returns true if the built in style is within the this.lastColumn and first column list else false will be returned. + + + + + Enumeration of the Border Styles. + + + + + Represents that no ExcelBorderIndex is set. + + + + + Represents that Top ExcelBorderIndex is set. + + + + + Represents that Bottom ExcelBorderIndex is set. + + + + + Represents that Left ExcelBorderIndex is set. + + + + + Represents that Right ExcelBorderIndex is set. + + + + + Represents that both Top and Bottom ExcelBorderIndex is set. + + + + + Represents that both Left and Right ExcelBorderIndex is set. + + + + + Represents that all ExcelBorderIndex is set. + + + + + Enumeration of the Solid style in Borders + + + + + Represents the No Solidstyle. + + + + + Represents the solid style for the Top ExcelBorderIndex. + + + + + Represents the solid style for the Bottom ExcelBorderIndex. + + + + + Represents the solid style for the Right ExcelBorderIndex. + + + + + Represents the solid style for the Left ExcelBorderIndex. + + + + + Represents the solid style for both Top and Bottom ExcelBorderIndex. + + + + + Represents the solid style for both Right and Left ExcelBorderIndex. + + + + + + + + + Defines a hash reference of print title columns + + + + + Contains the list of horizontal breaks. + + + + + Contains the list of vertical breaks. + + + + + Indicates whether print title row or print title column is invalid. + + + + + Initializes a new instance of the class. + + The sheet. + The actual used range + + + + Initializes a new instance of the class. + + The sheet. + Used range. + The converter. + + + + Empty constructor + + + + + Validates row or column name wih the provided cell names. + + The cell names to find column or row of. + True if print titles are valid. Otherwise False. + + + + Parses the title rows. + + + + + Parses the title columns. + + + + + Parses the print area. + + + + + From the input rangeHolder it returns the valid range + + input range holder object + input workbook + range holder's worksheet + the required range + + + + Gets the splitted title. + + The value. + + + + + Gets the height of the row. + + The converter. + The row height getter. + + + + + Gets the width of the column. + + The converter. + The column width getter. + + + + + Updates the range. + + The input range. + + + + + Checks the row bounds. + + The start index. + The end index. + + + + + Checks the column bounds. + + The start index. + The end index. + + + + + Gets the break ranges. + + The option. + The actual used range. + + + + + Gets the horizontal breaks. + + The ranges. + + + + Gets the vertical breaks. + + The veri range. + The final column. + + + + Fit pages wide + + + + + Fit pages tall + + + + + Horizontal breaks. + + + + + Vertical breaks. + + + + + Gets the print title first row. + + The print title first row. + + + + Gets the print title first column. + + The print title first column. + + + + Gets the print title last row. + + The print title last row. + + + + Gets the print title last column. + + The print title last column. + + + + Gets a value indicating whether this instance has print title rows. + + + true if this instance has print title rows; otherwise, false. + + + + + Gets a value indicating whether this instance has print title columns. + + + true if this instance has print title columns; otherwise, false. + + + + + Gets a value indicating whether this instance has print area. + + + true if this instance has print area; otherwise, false. + + + + + Gets the height of the title row. + + The height of the title row. + + + + Gets the width of the title column. + + The width of the title column. + + + + Gets the row indexes. + + + + + Gets the column indexes. + + + + + Gets the print areas. + + The print areas. + + + + Gets the worksheet. + + + + + Gets the page setup of the worksheet. + + + + + To assign the Excel to pdf converter + + + + + + It reture the pdftemplate for FitAllcolumnOnOnePage. + + + + + + + + + + It's Return the Pdf Template for FitAllrowsOnOnePage. + + + + + + + + + + NoScaling Layout option + + + + + + + + + Represents font value. + + + + + Represents column title value. + + + + + Represents row title value. + + + + + Get print title width for custom scaling. + + + + + Get print title Height for custom scaling. + + + + + Calculate the font style value. + + + + + Get the font style value. + + + + + Represents the splitting of text. + + + + + The column. + + + + + Pdf brush. + + + + + Pdf string format. + + + + + Text Bounds. + + + + + The pdf template. + + + + + Pdf font. + + + + + The row. + + + + + The sheet. + + + + + Splitted text. + + + + + RichText font collection + + + + + RichText string collection + + + + + Text Bounds. + + + + + Splitted text. + + + + + Splitted text. + + + + + Pdf font. + + + + + Pdf brush. + + + + + Pdf string format. + + + + + The row. + + + + + The column. + + + + + The pdf template. + + + + + RichText font collection + + + + + RichText string collection + + + + + + + + + + + + + + + + + + + + + + Get Curved Connector path + + + formulaColl.Add("x2","*/ w adj1 100000"); + formulaColl.Add("x1","+/ l x2 2"); + formulaColl.Add("x3","+/ r x2 2"); + formulaColl.Add("y3","*/ h 3 4"); + + + + + + + + Get Curved Connector path + + + formulaColl.Add("x2","*/ w adj1 100000"); + formulaColl.Add("x1","+/ l x2 2"); + formulaColl.Add("x3","+/ r x2 2"); + formulaColl.Add("y3","*/ h 3 4"); + + + + + + + + Get Bent Connector path + + + formulaColl.Add("x1","*/ w adj1 100000"); + > + + + + + + + Get Bent Connector path + + + formulaColl.Add("x1","*/ w adj1 100000"); + > + + + + + + + Get bend connector 2 path. + + bend connector2 points + + + + Get bend connector 2 path. + + Graphics path for bend connector2 points + + + + Get bend connector4 path. + + Pdf path for bentconnector4 points + + + + Get bent connector5 path. + + Pdf path for bent connector5 points + + + + Get bent connector4 path. + + Graphics path for bent connector4 points + + + + Get bent connector 5 path. + + Graphics path for bent connector5 points + + + + Get curved connector 2 path + + Grpahics path for curved connector 2 points + + + + Get curved connector 4 path. + + Graphics path for curved connector4 points + + + + Get curved connector5 path. + + Graphics path for curved connector5 points + + + + Get curved connector2 path. + + Pdf path for curved connector2 points + + + + Get curved connector 4 path. + + Pdf path for curved connector4 points + + + + Get curved connector 5 path. + + Pdfpath for curved connector 5 path + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Get Triangle path + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the right arrow path. + + + + + + Gets the left arrow path. + + + + + + Gets down arrow path. + + + + + + Gets the left right arrow path. + + + + + + Gets the curved right arrow path. + + + + + + Gets the curved left arrow path. + + + + + + Gets the curved up arrow path. + + + + + + Gets the curved down arrow path. + + + + + + Gets up down arrow path. + + + + + + Gets the quad arrow path. + + + + + + Gets the left right up arrow path. + + + + + + Gets the bent arrow path. + + + + + + Gets the U trun arrow path. + + + + + + Gets the left up arrow path. + + + + + + Gets the bent up arrow path. + + + + + + Gets the striped right arrow path. + + + + + + Gets the notched right arrow path. + + + + + + Gets the pentagon path. + + + + + + Gets the chevron path. + + + + + + Gets the right arrow callout path. + + + + + + Gets down arrow callout path. + + + + + + Gets the left arrow callout path. + + + + + + Gets up arrow callout path. + + + + + + Gets the left right arrow callout path. + + + + + + Gets the quad arrow callout path. + + + + + + Gets the circular arrow path. + + + + + + Gets the math plus path. + + + + + + Gets the math minus path. + + + + + + Gets the math multiply path. + + + + + + Gets the math division path. + + + + + + Gets the math equal path. + + + + + + Gets the math not equal path. + + + + + + Gets the flow chart alternate process path. + + + + + + Gets the flow chart predefined process path. + + + + + + Gets the flow chart internal storage path. + + + + + + Gets the flow chart document path. + + + + + + Gets the flow chart multi document path. + + + + + + Gets the flow chart terminator path. + + + + + + Gets the flow chart preparation path. + + + + + + Gets the flow chart manual input path. + + + + + + Gets the flow chart manual operation path. + + + + + + Gets the flow chart connector path. + + + + + + Gets the flow chart off page connector path. + + + + + + Gets the flow chart card path. + + + + + + Gets the flow chart punched tape path. + + + + + + Gets the flow chart summing junction path. + + + + + + Gets the flow chart or path. + + + + + + Gets the flow chart collate path. + + + + + + Gets the flow chart sort path. + + + + + + Gets the flow chart extract path. + + + + + + Gets the flow chart merge path. + + + + + + Gets the flow chart online storage path. + + + + + + Gets the flow chart delay path. + + + + + + Gets the flow chart sequential access storage path. + + + + + + Gets the flow chart magnetic disk path. + + + + + + Gets the flow chart direct access storage path. + + + + + + Gets the flow chart display path. + + + + + + Gets the rectangular callout path. + + + + + + Gets the rounded rectangular callout path. + + + + + + Gets the oval callout path. + + + + + + Gets the cloud callout path. + + + + + + Gets the line callout1 path. + + + + + + Gets the line callout2 path. + + + + + + Gets the line callout3 path. + + + + + + Gets the line callout1 accent bar path. + + + + + + Gets the line callout2 accent bar path. + + + + + + Gets the line callout3 accent bar path. + + + + + + Gets the line callout1 no border path. + + + + + + Gets the line callout2 no border path. + + + + + + Gets the line callout3 no border path. + + + + + + Gets the line callout1 border and accent bar path. + + + + + + Gets the line callout2 border and accent bar path. + + + + + + Gets the line callout3 border and accent bar path. + + + + + + + + + + + + + + + + + + + + + Get Path adjust value + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + collection used to maintain the parent Pdf Structure Element + + + + + Represents the CurrentPage + + + + + Get alternate pdf font from system and substitute font + + system font. + rendering text. + + + + Draw the text template. + + The cell bounds. + Pdf graphics. + The lineinfo collection. + shift y. + + + diff --git a/ZZ_Signature_C/bin/Debug/Syncfusion.Presentation.Base.dll b/ZZ_Signature_C/bin/Debug/Syncfusion.Presentation.Base.dll new file mode 100644 index 00000000..de1831e4 Binary files /dev/null and b/ZZ_Signature_C/bin/Debug/Syncfusion.Presentation.Base.dll differ diff --git a/ZZ_Signature_C/bin/Debug/Syncfusion.Presentation.Base.xml b/ZZ_Signature_C/bin/Debug/Syncfusion.Presentation.Base.xml new file mode 100644 index 00000000..484a8f6c --- /dev/null +++ b/ZZ_Signature_C/bin/Debug/Syncfusion.Presentation.Base.xml @@ -0,0 +1,57120 @@ + + + + Syncfusion.Presentation.Base + + + + + Represents the behavior properties. + + + + + Gets a instance at the specified index from the collection. Read-only. + + Determines the index of the effect. + Returns an instance. + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + IBehaviorProperties behaviorProperties = propertyEffect.Properties; + AnimationPropertyType animationProperty = behaviorProperties[0]; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is PropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As PropertyEffect = TryCast(behavior,PropertyEffect) + Dim behaviorProperties As IBehaviorProperties = propertyEffect.Properties + Dim animationProperty As AnimationPropertyType = behaviorProperties(0) + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the count of behaviour list + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + IBehaviorProperties behaviorProperties = propertyEffect.Properties; + int behaviorsCount = behaviorProperties.Count; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is PropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As PropertyEffect = TryCast(behavior,PropertyEffect) + Dim behaviorProperties As IBehaviorProperties = propertyEffect.Properties + Dim behaviorsCount As Integer = behaviorProperties.Count + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Connector class to represent the connector + + + + + Represents an object in the drawing layer, such as an AutoShape, text box or picture. + + + + + Represents an individual item in a slide. + + + + + Creates a copy of the instance. + + Returns the cloned instance + + + //Create a new presentation. + IPresentation pptxDoc = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + ISlideItem slideItem = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Clone the slide item. + ISlideItem clonedSlideItem = slideItem.Clone(); + //Add the slide item to the shape collection. + slide.Shapes.Add(clonedSlideItem); + //Modifying the top position value. + clonedSlideItem.Top = 250; + //Add text content to the cloned slide item. + (clonedSlideItem as IShape).TextBody.Text = "Cloned slide item"; + //Saves the Presentation to the file system. + pptxDoc.Save("Result.pptx"); + //Closes the Presentation. + pptxDoc.Close(); + + + 'Create a new presentation. + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim slideItem As ISlideItem = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Clone the slide item. + Dim clonedSlideItem As ISlideItem = slideItem.Clone() + 'Add the slide item to the shape collection. + slide.Shapes.Add(clonedSlideItem) + 'Modifying the top position value. + clonedSlideItem.Top = 250 + 'Add text content to the cloned slide item. + TryCast(clonedSlideItem, IShape).TextBody.Text = "Cloned slide item" + 'Save the presentation + pptxDoc.Save("Result.pptx") + 'Close the presentation + pptxDoc.Close() + + + + + + Gets or sets the item description. + + + The description of the shape. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for SlideItem + ISlideItem slideItem = slide.Shapes[0]; + //Set the description for slide item + slideItem.Description = "This is a SlideItem"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for SlideItem + Dim slideItem As ISlideItem = slide.Shapes(0) + 'Set the description for slide item + slideItem.Description = "This is a SlideItem" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the slide item type. Read-only. + + + The type of the slide item. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for SlideItem + ISlideItem slideItem = slide.Shapes[0]; + //Set the description for slide item + slideItem.Description = "This is a SlideItem"; + //Set the title + slideItem.Title = "SlideItem"; + //Get the type of slide item, it is read only + SlideItemType type = slideItem.SlideItemType; + //Add the slide item to shape collection + slide.Shapes.Add(slideItem); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for SlideItem + Dim slideItem As ISlideItem = slide.Shapes(0) + 'Set the description for slide item + slideItem.Description = "This is a SlideItem" + 'Set the title + slideItem.Title = "SlideItem" + 'Get the type of slide item, it is read only + Dim type As SlideItemType = slideItem.SlideItemType + 'Add the slide item to shape collection + slide.Shapes.Add(slideItem) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets height. + The Height value ranges from 0 to 169056, in points. + + + The height of the shape. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for SlideItem + ISlideItem slideItem = slide.Shapes[0]; + //Set the height + slideItem.Height = 200; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for SlideItem + Dim slideItem As ISlideItem = slide.Shapes(0) + 'Set the height + slideItem.Height = 200 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the boolean value which indicates whether the shape is hidden or not. + + + true if hidden; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for SlideItem + ISlideItem slideItem = slide.Shapes[0]; + //Hide the shape from slide + slideItem.Hidden = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for SlideItem + Dim slideItem As ISlideItem = slide.Shapes(0) + 'Hide the shape from slide + slideItem.Hidden = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets left position. + The Left value ranges from -169056 to 169056, in points. + + + The left position of the shape. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for SlideItem + ISlideItem slideItem = slide.Shapes[0]; + //Set the Left + slideItem.Left = 120; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for SlideItem + Dim slideItem As ISlideItem = slide.Shapes(0) + 'Set the Left + slideItem.Left = 120 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance which represents the line and arrowhead properties. Read only. + + + The line format object of the shape. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for SlideItem + ISlideItem slideItem = slide.Shapes[0]; + //Set the length of begin arrow head of line format + slideItem.LineFormat.BeginArrowheadLength = ArrowheadLength.Long; + //Set the dash style of line format + slideItem.LineFormat.DashStyle = LineDashStyle.DashDotDot; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for SlideItem + Dim slideItem As ISlideItem = slide.Shapes(0) + 'Set the length of begin arrow head of line format + slideItem.LineFormat.BeginArrowheadLength = ArrowheadLength.[Long] + 'Set the dash style of line format + slideItem.LineFormat.DashStyle = LineDashStyle.DashDotDot + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the shape name. + + + The name of the shape. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for SlideItem + ISlideItem slideItem = slide.Shapes[0]; + //Set the shape name for the slide item + slideItem.ShapeName = "SlideItem"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for SlideItem + Dim slideItem As ISlideItem = slide.Shapes(0) + 'Set the shape name for the slide item + slideItem.ShapeName = "SlideItem" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the shape title. + + + The title of the shape. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for SlideItem + ISlideItem slideItem = slide.Shapes[0]; + //Set the title + slideItem.Title = "SlideItem"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for SlideItem + Dim slideItem As ISlideItem = slide.Shapes(0) + 'Set the title + slideItem.Title = "SlideItem" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets top position. + The Top value ranges from -169056 to 169056, in points. + + + The top position of the shape. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for SlideItem + ISlideItem slideItem = slide.Shapes[0]; + //Set the Top + slideItem.Top = 100; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for SlideItem + Dim slideItem As ISlideItem = slide.Shapes(0) + 'Set the Top + slideItem.Top = 110 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets width. + The Width value ranges from 0 to 169056, in points. + + + The width of the shape. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for SlideItem + ISlideItem slideItem = slide.Shapes[0]; + //Set the Width + slideItem.Width = 250; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for SlideItem + Dim slideItem As ISlideItem = slide.Shapes(0) + 'Set the Width + slideItem.Width = 300 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Sets the hyperlink to the shape. + + Represents the address of the target hyperlink + Returns an instance. + The target can be a document path, web url, target slide index (index is valid from 0 to slides count – 1) or an email_id. + + + //Create a new PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 0, 0, 100, 100); + //Set the hypelink to the rectangle + shape.SetHyperlink("www.syncfusion.com"); + //Save the presentation + presentation.Save("Hyperlink.pptx"); + //Close the Presentation + presentation.Close(); + + + 'Create a new PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 0, 0, 100, 100) + 'Set the hypelink to the rectangle + shape.SetHyperlink("www.syncfusion.com") + 'Save the presentation + presentation__1.Save("Hyperlink.pptx") + 'Close the Presentation + presentation__1.Close() + + + + + + Removes the hyperlink from the current instance. + + + + //Load a PowerPoint presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide from the presentation + ISlide slide = presentation.Slides[0]; + //Get the shape which have the hyperlink + IShape shape = (IShape)slide.Shapes[0]; + //Remove the hyperlink from the shape + shape.RemoveHyperlink(); + //Save the presentation + presentation.Save("Hyperlink.pptx"); + //Close the Presentation + presentation.Close(); + + + 'Load a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Open("Sample.pptx") + 'Get the first slide from the presentation + Dim slide As ISlide = presentation__1.Slides(0) + 'Get the shape which have the hyperlink + Dim shape As IShape = DirectCast(slide.Shapes(0), IShape) + 'Remove the hyperlink from the shape + shape.RemoveHyperlink() + 'Save the presentation + presentation__1.Save("Hyperlink.pptx") + 'Close the Presentation + presentation__1.Close() + + + + + + Gets the type of the AutoShape instance. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Retrieve the autoShape + AutoShapeType autoShape = shape.AutoShapeType; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Retrieve the autoShape + Dim autoShape As AutoShapeType = shape.AutoShapeType + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the connection site count of the shape. Read-only. + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Get the connection site count of the shape + int connectionSiteCount = shape.ConnectionSiteCount; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Get the connection site count of the shape + Dim connectionSiteCount As int = shape.ConnectionSiteCount; + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Gets an instance that represents the fill formatting options of the shape. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Set solid fill as fill type for the shape + shape.Fill.FillType = FillType.Solid; + //Set the solid fill color + shape.Fill.SolidFill.Color = ColorObject.Lime; + //Save the presentation + presentation.Save("FillShape.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Set solid fill as fill type for the shape + shape.Fill.FillType = FillType.Solid + 'Set the solid fill color + shape.Fill.SolidFill.Color = ColorObject.Lime + 'Save the presentation + presentation__1.Save("FillShape.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance that represents the text in the shape. Read-only. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for shape's textBody + ITextBody textBody = shape.TextBody; + //Add text to text body + textBody.Paragraphs.Add().AddTextPart("Hello World"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for shape's textBody + Dim textBody As ITextBody = shape.TextBody + 'Add text to text body + textBody.Paragraphs.Add().AddTextPart("Hello World") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns an instance that represents the hyperlink for the specified shape. + + + + //Load a PowerPoint presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide from the presentation + ISlide slide = presentation.Slides[0]; + //Get the shape which have the hyperlink + IShape shape = (IShape)slide.Shapes[0]; + //Get the hyperlink from the shape + IHyperLink hyperLink = shape.Hyperlink; + //Get the action type of the hyperlink + HyperLinkType hypelinkType = hyperLink.Action; + //Get the target slide of the hyperlink + ISlide targetSlide = hyperLink.TargetSlide; + //Get the url of the hyperlink + string url = hyperLink.Url; + //Save the presentation + presentation.Save("Hyperlink.pptx"); + //Close the Presentation + presentation.Close(); + + + 'Load a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Open("Sample.pptx") + 'Get the first slide from the presentation + Dim slide As ISlide = presentation__1.Slides(0) + 'Get the shape which have the hyperlink + Dim shape As IShape = DirectCast(slide.Shapes(0), IShape) + 'Get the hyperlink from the shape + Dim hyperLink As IHyperLink = shape.Hyperlink + 'Get the action type of the hyperlink + Dim hypelinkType As HyperLinkType = hyperLink.Action + 'Get the target slide of the hyperlink + Dim targetSlide As ISlide = hyperLink.TargetSlide + 'Get the url of the hyperlink + Dim url As String = hyperLink.Url + 'Save the presentation + presentation__1.Save("Hyperlink.pptx") + 'Close the Presentation + presentation__1.Close() + + + + + + Gets an object that contains the properties that are unique to placeholders. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Title); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Retrieve the place holder + IPlaceholderFormat placeHolder = (slide.Shapes[0] as IShape).PlaceholderFormat; + //Set the name of the place holder + placeHolder.Name = "My Placeholder"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Title) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Retrieve the place holder + Dim placeHolder As IPlaceholderFormat = TryCast(slide.Shapes(0), IShape).PlaceholderFormat + 'Set the name of the place holder + placeHolder.Name = "My Placeholder" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the number of degrees the specified shape is rotated. + + + The rotation value ranges from -3600 degrees to 3600 degrees. + + + The rotation angle of the shape. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Set the rotation value to the shape instance. + shape.Rotation = 300; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Set the rotation value to the shape instance. + shape.Rotation = 300 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Checks whether the corresponding shape is predefined shape + + Returns true, if corresponding shape is Predefined Shape; Otherwise false. + + + + Checks whether the corresponding shape is Custom Shape + + Returns true, if corresponding shape is Custom Shape; Otherwise false. + + + + Gets the Autoshape type of the corresponding shape. + + Returns AutoShapeType, if corresponding shape contains AutoshapeType. + + + + Gets the ShapeGuide values of the corresponding shape. + + Returns ShapeGuide, if corresponding shape contains ShapeGuide. + + + + Gets the Path2DList of the corresponding shape. + + Returns Path2DList, if corresponding shape contains Path2DList. + + + + Retrieves the fill color from the preserved elements of the specified shape. + + The shape object from which to retrieve the fill color. + The fill format to apply the retrieved color to. + + Returns the updated fill format with the fill color from the preserved elements. If no valid color is found, the original fill format is returned. + + + + + Retrieves the fill format from its parent group shapes. + + + + + Get the spacing value between the columns + + + + + Get the number of columns in the shape. + + + + + Split a single column text body as multi column text body. + + Represents a paragraph collection. + Represent a text body bounds. + + + + Gets minimum height between first line of all the columns. + + Represents a layouted column info collection. + Represents a paragraph collection. + Returns minimum height between first line of all the columns. + + + + Split a single column into multi columns by shifting X and Y position of lines. + + Represents a paragraph collection. + Represent a text body bounds. + + + + Create a column in TextBody. + + Represents a paragraph collection of text body. + Represent a height of the text body. + Represent a paragraph index of column. + Represent a line index of paragraph. + Returns a created ColumnInfo object. + + + + Gets a single column width of TextBody. + + Represents a bounds of TextBody. + Returs a single column width of TextBody. + + + + Check whether current shape is having more than one GraphicsPath or not. + + Returns true, if it has more than one graphics path; Otherwise false. + + + + Check whether the shape paths are fit with in the shape bounds or not. + + Returns true, if its graphics path fit with in the shape bounds; Otherwise false. + + + + Compares the current Shape object with given Shape object. + + The Shape object to compare with the current instance. + True if the Shape objects are equal; otherwise, false. + + + + Compares the bounds of the current Shape object with given Shape object. + + The Shape object to compare with the current instance. + True if the bounds of the Shape objects are equal; otherwise, false. + + + + Sets the hyperlink to the textpart. + + Represents the address of the target hyperlink + Returns an instance. + The target can be a document path, web url, target slide, email_id. + + + + Removes the hyperlink from the current instance. + + + + + Checked whether the group shape contains Horizontal flip. + + Group Shape. + True if the group shape contains flip.. + + + + Checked whether the group shape contains Vertical flip. + + Group Shape. + True if the group shape contains flip.. + + + + Get Horizontal flip count. + + Group Shape. + Flip count. + Flip count. + + + + Get Vertical flip count. + + Group Shape. + Flip count. + Flip count. + + + + Creates the from points array. + + The points. + The rectangle. + + + + Parse TextBox Graphics data + + + + + + Skip whitespaces and moves the reader to the next node. + + The xml reader + + + + Compares the current Shape object with given Shape object. + + The Shape object to compare with the current instance. + True if the Shape objects are equal; otherwise, false. + + + + Returns an instance that represents the hyperlink for the specified shape. + + + + + Gets or Sets the hidden property of shape based on animation. + + + + + Returns true if the shape have a transparant fill or light color line fill + + + + + Returns a IPlaceholderFormat object that contains the properties that are unique to placeholders. + + + + + Gets or sets the number of degrees the specified shape is rotated. + + + The rotation value ranges from -3600 degrees to 3600 degrees. + + + The rotation angle of the shape. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Set the rotation value to the shape instance. + shape.Rotation = 300; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Set the rotation value to the shape instance. + shape.Rotation = 300 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the shape guide + + The shape guide. + + + + Represent the connector in presentation + + + + + Connect the begin portion of the connector with specified shape and site index + + Represent the shape instance that we want to connect with begin portion + Represent the site index of the specified shape to connnect with + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10); + // Set the begin connection + connector.BeginConnect(rectangle, 2); + // Set the end connection + connector.EndConnect(oval, 3); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200) + ' Add Oval shape on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10) + ' Set the begin connection + connector.BeginConnect(rectangle, 2) + ' Set the end connection + connector.EndConnect(oval, 3) + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Disconnect the begin connection of the connector + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10); + // Set the begin connection + connector.BeginConnect(rectangle, 2); + // Set the end connection + connector.EndConnect(oval, 3); + //Disconnect the begin connection of the connector + connector.BeginDisconnect(); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200) + ' Add Oval shape on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10) + ' Set the begin connection + connector.BeginConnect(rectangle, 2) + ' Set the end connection + connector.EndConnect(oval, 3) + ' Disconnect the begin connection of the connector + connector.BeginDisconnect(); + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Connect the end portion of the connector with specified shape and site index + + Represent the shape instance that we want to connect with end portion + Represent the site index of the specified shape to connnect with + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10); + // Set the begin connection + connector.BeginConnect(rectangle, 2); + // Set the end connection + connector.EndConnect(oval, 3); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200) + ' Add Oval shape on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10) + ' Set the begin connection + connector.BeginConnect(rectangle, 2) + ' Set the end connection + connector.EndConnect(oval, 3) + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Disconnect the end connection of the connector + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10); + // Set the begin connection + connector.BeginConnect(rectangle, 2); + // Set the end connection + connector.EndConnect(oval, 3); + //Disconnect the end connection of the connector + connector.EndDisconnect(); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200) + ' Add Oval shape on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10) + ' Set the begin connection + connector.BeginConnect(rectangle, 2) + ' Set the end connection + connector.EndConnect(oval, 3) + ' Disconnect the end connection of the connector + connector.EndDisconnect(); + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Update the bounds of modified connector + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10); + // Set the begin connection + connector.BeginConnect(rectangle, 2); + // Set the end connection + connector.EndConnect(oval, 3); + //Update the bounds of inserted connector immediately + connector.Update(); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200) + ' Add Oval shape on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10) + ' Set the begin connection + connector.BeginConnect(rectangle, 2) + ' Set the end connection + connector.EndConnect(oval, 3) + ' Update the bounds of inserted connector immediately + connector.Update(); + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Gets or sets the type of IConnector instance. + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 20, 250, 250); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 200, 250, 250); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10); + // Set the begin connection + connector.BeginConnect(rectangle, 3); + // Set the end connection + connector.EndConnect(oval, 3); + //Change the type of the connector + connector.Type = ConnectorType.Curve; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 20, 250, 250) + ' Add Oval shape on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 200, 250, 250) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10) + ' Set the begin connection + connector.BeginConnect(rectangle, 3) + ' Set the end connection + connector.EndConnect(oval, 3) + 'Change the type of the connector + connector.Type = ConnectorType.Curve + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Gets the begin connected shape instance , if the connector begin point is connected. Read-only. + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10); + // Set the begin connection + connector.BeginConnect(rectangle, 2); + // Set the end connection + connector.EndConnect(oval, 3); + // Get the begin connected shape + IShape beginShape = connector.BeginConnectedShape; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200) + ' Add Oval shape on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10) + ' Set the begin connection + connector.BeginConnect(rectangle, 2) + ' Set the end connection + connector.EndConnect(oval, 3) + ' Get the begin connected shape + Dim beginShape As IShape = connector.BeginConnectedShape + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Gets the begin connected site index, if the connector begin point is connected. Read-only. + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10); + // Set the begin connection + connector.BeginConnect(rectangle, 2); + // Set the end connection + connector.EndConnect(oval, 3); + // Get the begin connected site index + int beginSiteIndex = connector.BeginConnectionSiteIndex; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200) + ' Add Oval shape on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10) + ' Set the begin connection + connector.BeginConnect(rectangle, 2) + ' Set the end connection + connector.EndConnect(oval, 3) + ' Get the begin connected site index + Dim beginSiteIndex As int = connector.BeginConnectionSiteIndex + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Gets the end connected shape instance , if the connector end point is connected. Read-only. + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10); + // Set the begin connection + connector.BeginConnect(rectangle, 2); + // Set the end connection + connector.EndConnect(oval, 3); + // Get the end connected shape + IShape endShape = connector.EndConnectedShape; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200) + ' Add Oval shape on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10) + ' Set the begin connection + connector.BeginConnect(rectangle, 2) + ' Set the end connection + connector.EndConnect(oval, 3) + ' Get the end connected shape + Dim endShape As IShape = connector.EndConnectedShape + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Gets the end connected site index, if the connector end point is connected. Read-only. + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10); + // Set the begin connection + connector.BeginConnect(rectangle, 2); + // Set the end connection + connector.EndConnect(oval, 3); + // Get the end connected site index + int endSiteIndex = connector.EndConnectionSiteIndex; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 300, 250, 200) + ' Add Oval shape on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Oval, 600, 10, 250, 250) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 10, 10, 10, 10) + ' Set the begin connection + connector.BeginConnect(rectangle, 2) + ' Set the end connection + connector.EndConnect(oval, 3) + ' Get the end connected site index + Dim endSiteIndex As int = connector.EndConnectionSiteIndex + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Compares the current Shape object with given Shape object. + + The Shape object to compare with the current instance. + True if the Shape objects are equal; otherwise, false. + + + + Get the direction of the given port + + + + + + + + Corners of the rectangle + + + + + Thickness to represent the margin thickness + + + + + Segmets represent the type of connector + + + + + IConnectorSegment + + + + + Angle is chosen internally + + + + + Absolute angle: 180 Degree + + + + + Absolute angle: 270 Degree or -90 Degree + + + + + Absolute angle: 0 degree + + + + + Absolute angle: 90 degree + + + + + Relative Angle: 0 degree + + + + + Relative Angle: 90 degree + + + + + Relative Angle: 180 degree + + + + + Relative Angle: 270 degree or -90 degree + + + + + Represents the color effect. + + + + + Represents the behavior. + + + + + Get the behavior Accumulate value + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is ISetEffect) + { + // Assign the set effect values + ISetEffect setEffect = (behavior as ISetEffect); + setEffect.Accumulate = null; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is set effect + If (TypeOf behavior Is SetEffect) Then + 'Assign the set effect values + Dim setEffect As SetEffect = TryCast(behavior,SetEffect) + setEffect.Accumulate = Nothing + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the behavior Additive value + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is ISetEffect) + { + // Assign the set effect values + ISetEffect setEffect = (behavior as ISetEffect); + setEffect.Additive = BehaviorAdditiveType.NotDefined; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is set effect + If (TypeOf behavior Is SetEffect) Then + 'Assign the set effect values + Dim setEffect As SetEffect = TryCast(behavior,SetEffect) + setEffect.Additive = BehaviorAdditiveType.NotDefined + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the properties values of behavior + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is ISetEffect) + { + // Assign the set effect values + ISetEffect setEffect = (behavior as ISetEffect); + IBehaviorProperties setProperties = setEffect.Properties; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is set effect + If (TypeOf behavior Is SetEffect) Then + 'Assign the set effect values + Dim setEffect As SetEffect = TryCast(behavior,SetEffect) + Dim setProperties As IBehaviorProperties = setEffect.Properties + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the list of timing values of behavior + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is ISetEffect) + { + // Assign the set effect values + ISetEffect setEffect = (behavior as ISetEffect); + ITiming setTiming = setEffect.Timing; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is set effect + If (TypeOf behavior Is SetEffect) Then + 'Assign the set effect values + Dim setEffect As SetEffect = TryCast(behavior,SetEffect) + Dim setTiming As ITiming = setEffect.Timing + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the from color value of animation + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IColorEffect) + { + // Assign the color effect values + IColorEffect colorEffect = (behavior as IColorEffect); + IColor fromColor = colorEffect.From; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is color effect + If (TypeOf behavior Is ColorEffect) Then + 'Assign the color effect values + Dim colorEffect As ColorEffect = TryCast(behavior,ColorEffect) + Dim fromColor As IColor = colorEffect.From + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the to color value of animation + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IColorEffect) + { + // Assign the color effect values + IColorEffect colorEffect = (behavior as IColorEffect); + IColor toColor = colorEffect.To; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is color effect + If (TypeOf behavior Is ColorEffect) Then + 'Assign the color effect values + Dim colorEffect As ColorEffect = TryCast(behavior,ColorEffect) + Dim toColor As IColor = colorEffect.[To] + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the color offset by value of animation + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IColorEffect) + { + // Assign the color effect values + IColorEffect colorEffect = (behavior as IColorEffect); + IColorOffset byOffSet = colorEffect.By; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is color effect + If (TypeOf behavior Is ColorEffect) Then + 'Assign the color effect values + Dim colorEffect As ColorEffect = TryCast(behavior,ColorEffect) + IColorOffset byOffSet = colorEffect.By + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the colorspace value + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IColorEffect) + { + // Assign the color effect values + IColorEffect colorEffect = (behavior as IColorEffect); + colorEffect.ColorSpace = ColorSpace.HSL; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is color effect + If (TypeOf behavior Is ColorEffect) Then + 'Assign the color effect values + Dim colorEffect As ColorEffect = TryCast(behavior,ColorEffect) + colorEffect.ColorSpace = ColorSpace.HSL + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the direction of color value + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IColorEffect) + { + // Assign the color effect values + IColorEffect colorEffect = (behavior as IColorEffect); + colorEffect.Direction = ColorDirection.ClockWise; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is color effect + If (TypeOf behavior Is ColorEffect) Then + 'Assign the color effect values + Dim colorEffect As ColorEffect = TryCast(behavior,ColorEffect) + colorEffect.Direction = ColorDirection.ClockWise; + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the command effect type of animation + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is ICommandEffect) + { + // Assign the command effect values + ICommandEffect commandEffect = (behavior as ICommandEffect); + ICommandEffectType commandEffectType = commandEffect.Type; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is command effect + If (TypeOf behavior Is CommandEffect) Then + 'Assign the command effect values + Dim commandEffect As CommandEffect = TryCast(behavior,CommandEffect) + Dim commandEffectType As CommandEffectType = commandEffect.Type + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the command string value of animation + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is ICommandEffect) + { + // Assign the command effect values + ICommandEffect commandEffect = (behavior as ICommandEffect); + string commandString = commandEffect.CommandString; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is command effect + If (TypeOf behavior Is CommandEffect) Then + 'Assign the command effect values + Dim commandEffect As CommandEffect = TryCast(behavior,CommandEffect) + Dim commandString As String = commandEffect.CommandString + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the shape target value + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is ICommandEffect) + { + // Assign the command effect values + ICommandEffect commandEffect = (behavior as ICommandEffect); + IShape shapeTarget = commandEffect.ShapeTarget; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is command effect + If (TypeOf behavior Is CommandEffect) Then + 'Assign the command effect values + Dim commandEffect As CommandEffect = TryCast(behavior,CommandEffect) + Dim shapeTarget As IShape = commandEffect.ShapeTarget + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the filter effect. + + + + + Get the filter effect reveal type + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IFilterEffect) + { + // Assign the filter effect values + IFilterEffect filterEffect = (behavior as IFilterEffect); + filterEffect.Reveal = FilterEffectRevealType.In; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is filter effect + If (TypeOf behavior Is FilterEffect) Then + 'Assign the filter effect values + Dim filterEffect As FilterEffect = TryCast(behavior,FilterEffect) + filterEffect.Reveal = FilterEffectRevealType.[In] + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the type of filter effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IFilterEffect) + { + // Assign the filter effect values + IFilterEffect filterEffect = (behavior as IFilterEffect); + filterEffect.Type = FilterEffectType.Dissolve; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is filter effect + If (TypeOf behavior Is FilterEffect) Then + 'Assign the filter effect values + Dim filterEffect As FilterEffect = TryCast(behavior,FilterEffect) + filterEffect.Type = FilterEffectType.Dissolve + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the subtype of filter effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IFilterEffect) + { + // Assign the filter effect values + IFilterEffect filterEffect = (behavior as IFilterEffect); + filterEffect.Subtype = SubtypeFilterEffect.None; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is filter effect + If (TypeOf behavior Is FilterEffect) Then + 'Assign the filter effect values + Dim filterEffect As FilterEffect = TryCast(behavior,FilterEffect) + filterEffect.Subtype = SubtypeFilterEffect.None + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the motion effect. + + + + + Get the from value of motion effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + PointF fromValue = motionEffect.From; + fromValue.X = 400; + fromValue.Y = 500; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim fromValue As PointF = motionEffect.From + fromValue.X = 400 + fromValue.Y = 500 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the To value of motion effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + PointF toValue = motionEffect.To; + toValue.X = 400; + toValue.Y = 500; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim toValue As PointF = motionEffect.To + toValue.X = 400 + toValue.Y = 500 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the By value of motion effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + PointF byValue = motionEffect.By; + byValue.X = 400; + byValue.Y = 500; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim byValue As PointF = motionEffect.By + byValue.X = 400 + byValue.Y = 500 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the rotation center value of motion effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + PointF rotationValue = motionEffect.RotationCenter; + rotationValue.X = 400; + rotationValue.Y = 500; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim rotationValue As PointF = motionEffect.RotationCenter + rotationValue.X = 400 + rotationValue.Y = 500 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the origin type of motion effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + motionEffect.Origin = MotionOriginType.Layout; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + motionEffect.Origin = MotionOriginType.Layout + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the path value of the motion effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + path[0].CommandType = MotionCommandPathType.MoveTo; + path[0].IsRelative = false; + path[0].PointsType = MotionPathPointsType.Auto; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim path As MotionPath = TryCast(motionEffect.Path, MotionPath) + path(0).CommandType = MotionCommandPathType.MoveTo; + path(0).IsRelative = false; + path(0).PointsType = MotionPathPointsType.Auto; + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the path edit mode of motion effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + motionEffect.PathEditMode = MotionPathEditMode.Relative; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + motionEffect.PathEditMode = MotionPathEditMode.Relative + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the Angle value from the motion animation effect. + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + motionEffect.Angle = 30; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + motionEffect.Angle = 30 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the property effect. + + + + + Get the from value of property effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Flip, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + propertyEffect.From = "(#ppt_x*2)"; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Flip, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is PropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As PropertyEffect = TryCast(behavior,PropertyEffect) + propertyEffect.From = "(#ppt_x*2)" + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the To value of property effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Flip, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + propertyEffect.To = "1.5"; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Flip, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is PropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As PropertyEffect = TryCast(behavior,PropertyEffect) + propertyEffect.To = "1.5" + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the By value of property effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Flip, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + propertyEffect.By = "(#ppt_w*2)"; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Flip, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is PropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As PropertyEffect = TryCast(behavior,PropertyEffect) + propertyEffect.By = "(#ppt_w*2)" + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the Value type of property effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Flip, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + propertyEffect.ValueType = PropertyValueType.String; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Flip, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is PropertyEffect) Then + 'Assign the property effect values + Dim propertEffect As PropertyEffect = TryCast(behavior,PropertyEffect) + propertyEffect.ValueType = PropertyValueType.[String] + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the Calcmode value of property effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + propertyEffect.CalcMode = PropertyCalcModeType.Formula; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is PropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As PropertyEffect = TryCast(behavior,PropertyEffect) + propertyEffect.CalcMode = PropertyCalcModeType.Formula + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the Points value of property effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + IAnimationPoints points = propertyEffect.Points; + points[0].Formula = "0.5"; + points[0].Time = 90; + points[0].Value = "#ppt_x"; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is PropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As PropertyEffect = TryCast(behavior,PropertyEffect) + Dim points As IAnimationPoints = propertyEffect.Points + points(0).Formula = "0.5" + points(0).Time = 90 + points(0).Value = "#ppt_x" + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the rotation effect. + + + + + Get the from value of rotation effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Teeter, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IRotationEffect) + { + // Assign the rotation effect values + IRotationEffect rotationEffect = (behavior as IRotationEffect); + rotationEffect.From = 10000; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Teeter, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is rotation effect + If (TypeOf behavior Is RotationEffect) Then + 'Assign the rotation effect values + Dim rotationEffect As RotationEffect = TryCast(behavior,RotationEffect) + rotationEffect.From = 10000 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the To value of rotation effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Teeter, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IRotationEffect) + { + // Assign the rotation effect values + IRotationEffect rotationEffect = (behavior as IRotationEffect); + rotationEffect.To = 15000; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Teeter, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is rotation effect + If (TypeOf behavior Is RotationEffect) Then + 'Assign the rotation effect values + Dim rotationEffect As RotationEffect = TryCast(behavior,RotationEffect) + rotationEffect.To = 15000 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the By value of rotation effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Teeter, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IRotationEffect) + { + // Assign the rotation effect values + IRotationEffect rotationEffect = (behavior as IRotationEffect); + rotationEffect.By = 20000; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Teeter, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is rotation effect + If (TypeOf behavior Is RotationEffect) Then + 'Assign the scale effect values + Dim rotationEffect As RotationEffect = TryCast(behavior,RotationEffect) + rotationEffect.By = 20000 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the scale effect. + + + + + Get the ZoomContent value of Scale effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IScaleEffect) + { + // Assign the scale effect values + IScaleEffect scaleEffect = (behavior as IScaleEffect); + scaleEffect.ZoomContent = false; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is scale effect + If (TypeOf behavior Is ScaleEffect) Then + 'Assign the scale effect values + Dim scaleEffect As ScaleEffect = TryCast(behavior,ScaleEffect) + scaleEffect.ZoomContent = False + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the From value of scale effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IScaleEffect) + { + // Assign the scale effect values + IScaleEffect scaleEffect = (behavior as IScaleEffect); + PointF point = new PointF(); + point.X = 400; + point.Y = 500; + scaleEffect.From = point; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + If TypeOf behavior Is ScaleEffect Then + 'Assign the scale effect values + Dim scaleEffect As ScaleEffect = TryCast(behavior, ScaleEffect) + Dim point As New PointF() + point.X = 400 + point.Y = 500 + scaleEffect.From = point + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the To value of scale effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IScaleEffect) + { + // Assign the scale effect values + IScaleEffect scaleEffect = (behavior as IScaleEffect); + PointF point = new PointF(); + point.X = 400; + point.Y = 500; + scaleEffect.To = point; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is scale effect + If (TypeOf behavior Is ScaleEffect) Then + 'Assign the scale effect values + Dim scaleEffect As ScaleEffect = TryCast(behavior, ScaleEffect) + Dim point As New PointF() + point.X = 400 + point.Y = 500 + scaleEffect.[To] = point + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the By value of scale effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IScaleEffect) + { + // Assign the scale effect values + IScaleEffect scaleEffect = (behavior as IScaleEffect); + PointF point = new PointF(); + point.X = 400; + point.Y = 500; + scaleEffect.By = point; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.GrowShrink, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is scale effect + If (TypeOf behavior Is ScaleEffect) Then + 'Assign the scale effect values + Dim scaleEffect As ScaleEffect = TryCast(behavior, ScaleEffect) + Dim point As New PointF() + point.X = 400 + point.Y = 500 + scaleEffect.By = point + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the set effect. + + + + + Get the To value of set effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is ISetEffect) + { + // Assign the set effect values + ISetEffect setEffect = (behavior as ISetEffect); + setEffect.To = "solid"; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is set effect + If (TypeOf behavior Is SetEffect) Then + 'Assign the set effect values + Dim setEffect As SetEffect = TryCast(behavior,SetEffect) + setEffect.[To] = "solid" + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the size and bounds of notes. + + + + + Gets or sets the height, in percentage. + + + + + Specifies a collection of sections in a presentation. + + + + + Adds a new section at the last index position and returns the instance of the newly created section. + + Returns the instance. + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Sets a name to the created section + section.Name = "SectionDemo"; + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Sets a name to the created section + section.Name = "SectionDemo" + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Removes all the sections in the presentation. + + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Removes the sections + presentation.Sections.Clear(); + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Removes the sections + presentation.Sections.Clear() + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Inserts an element into the section collection at the specified index. + + The zero-based index at which section should be inserted. + The section instance to insert. + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section1 = presentation.Sections.Add(); + //Adds a section to the PowerPoint presentation + ISection section2 = presentation.Sections.Add(); + //Adds a slide to the created section + ISlide slide = section1.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Insert a section at the specified index. + presentation.Sections.Insert(0,section2); + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section1 As ISection = presentation__1.Sections.Add() + 'Adds a section to the PowerPoint presentation + Dim section2 As ISection = presentation__1.Sections.Add() + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Insert a section at the specified index + presentation.Sections.Insert(0,section2) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Removes the first occurrence of a specified section from the section collection. + + Represent the instance to be removed. + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section1 = presentation.Sections.Add(); + //Adds a section to the PowerPoint presentation + ISection section2 = presentation.Sections.Add(); + //Adds a slide to the created section + ISlide slide = section1.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Remove the section. + presentation.Sections.Remove(section2); + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section1 As ISection = presentation__1.Sections.Add() + 'Adds a section to the PowerPoint presentation + Dim section2 As ISection = presentation__1.Sections.Add() + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Remove the section + presentation.Sections.Remove(section2) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Removes the section at the specified index, from the section collection. + + Represents the index at which the section is to be removed. + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section1 = presentation.Sections.Add(); + //Adds a section to the PowerPoint presentation + ISection section2 = presentation.Sections.Add(); + //Adds a slide to the created section + ISlide slide = section1.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Remove the section at the specified index. + presentation.Sections.RemoveAt(1); + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section1 As ISection = presentation__1.Sections.Add() + 'Adds a section to the PowerPoint presentation + Dim section2 As ISection = presentation__1.Sections.Add() + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Remove the section at the specified index + presentation.Sections.RemoveAt(1) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Returns the number of instance in the section collection. Read-only. + + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Get the count of the section in a presentation + int count = presentation.Sections.Count; + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Get the count of the section in a presentation + int count = presentation.Sections.Count + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Gets the instance at the specified index in section collection. Read-only. + + The index to locate the section. + Returns the section at the specified index in section collection. + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section1 = presentation.Sections.Add(); + //Adds a section to the PowerPoint presentation + presentation.Sections.Add(); + //Adds a slide to the created section + ISlide slide = section1.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Get the section + ISection section2 = presentation.Sections[1]; + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section1 As ISection = presentation__1.Sections.Add() + 'Adds a section to the PowerPoint presentation + presentation__1.Sections.Add() + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Get the section + Dim section2 As ISection = presentation.Sections(1) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Specifies a section in the presentation + + + + + Moves the specified section to the specified index position within the presentation. + + The position at which the section is to be moved. + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Adds a section to the PowerPoint presentation + presentation.Sections.Add(); + //Adds a section to the PowerPoint presentation + presentation.Sections.Add(); + //Sets a name to the created section + section.Name = "SectionDemo"; + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + // Move the section at the specified index + presentation.Sections[1].Move(2); + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Adds a section to the PowerPoint presentation + presentation__1.Sections.Add() + 'Adds a section to the PowerPoint presentation + presentation__1.Sections.Add() + 'Sets a name to the created section + section.Name = "SectionDemo" + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Move the section at the specified index + presentation.Sections(2).Move(3) + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Creates a slide with the specified layout type and adds the new slide to the end of section. + + Specifies the slide layout type. + Returns the newly created instance. + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Sets a name to the created section + section.Name = "SectionDemo"; + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Sets a name to the created section + section.Name = "SectionDemo" + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Inserts an element into the slide collection at the specified index within the section. + + The zero-based index at which the section should be inserted. + The section instance to be inserted. + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Adds a slide to the created section + ISlide slide1 = section.AddSlide(SlideLayoutType.Blank); + //Adds a slide to the created section + ISlide slide2 = section.AddSlide(SlideLayoutType.Blank); + //Insert a slide at the specified index + section.InsertSlide(0,slide2); + //Adds a text box to the slide + slide1.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Sets a name to the created section + section.Name = "SectionDemo" + 'Adds a slide to the created section + Dim slide1 As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Adds a slide to the created section + Dim slide2 As ISlide = section.AddSlide(SlideLayoutType.Blank) + //Insert a slide at the specified index + section.InsertSlide(0,slide2); + 'Adds a text box to the slide + slide1.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Creates an independent copy of instance. + + Returns the instance. + + + //Creates a PowerPoint presentation1 + IPresentation presentation1 = Presentation.Create(); + //Creates a PowerPoint presentation2 + IPresentation presentation2 = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation1.Sections.Add(); + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Clones the slides in 3rd section + ISlides slides = presentation1.Sections[0].Clone(); + //Iterates the cloned slides and adds the slides to the destination presentation + foreach (ISlide slide1 in slides) + presentation2.Slides.Add(slide1); + //Saves the PowerPoint presentation + presentation2.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation1 + Dim presentation1 As IPresentation = Presentation.Create() + 'Creates a PowerPoint presentation2 + Dim presentation2 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation1.Sections.Add() + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Clones the slides in 3rd section + Dim slides As ISlides = presentation.Sections(1).Clone() + 'Iterates the cloned slides and adds the slides to the destination presentation + For Each slide1 As ISlide In slides + presentation2.Slides.Add(slide1) + Next + 'Saves the PowerPoint presentation + presentation2.Save("Section.pptx") + + + + + + Gets or sets the name of the specified section. + + One or more sections may share a same name within the presentation. + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Sets a name to the created section + section.Name = "SectionDemo"; + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Sets a name to the created section + section.Name = "SectionDemo" + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Gets the number of slides in the specified section. Read-only. + + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Sets a name to the created section + section.Name = "SectionDemo"; + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Gets the number of slides in the specified section + int slidesCount = section.SlidesCount; + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Sets a name to the created section + section.Name = "SectionDemo" + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Gets the number of slides in the specified section + Dim slidesCount As int = section.SlidesCount + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Gets the slide collection of instance. Read-only. + + Returns the instance. + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Sets a name to the created section + section.Name = "SectionDemo"; + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Gets the collection of slides in the specified section + ISlides slides = section.Slides; + //Saves the PowerPoint presentation + presentation.Save("Section.pptx"); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Sets a name to the created section + section.Name = "SectionDemo" + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Gets the collection of slides in the specified section + Dim slides As ISlides = section.Slides + 'Saves the PowerPoint presentation + presentation__1.Save("Section.pptx") + + + + + + Add the slide into current section. + + + + + + Remove the slide from current section. + + + + + + Represents the notes slide in a slide of the presentation. + + + + + Represents a base slide in a presentation. + + + Contains members which are common for slide, layout slide and master slide. + + + + + Finds the text based on specified string, taking into the consideration of caseSensitive and wholeWord options. + + + A text to find. + + + Set to true to match the similar case text which specified in the parameter; otherwise false. + + + Set to true to match the whole word text which specified in the parameter; otherwise false. + + + The that contains the found text in the document. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + // Finds the text from the Presentation document + ITextSelection textSelection = slide.Find("World", false, false); + // Gets the found text containing text parts + foreach (ITextPart textPart in textSelection.GetTextParts()) + { + //Sets Bold property + textPart.Font.Bold = true; + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds the text from the Presentation document + Dim textSelection As ITextSelection = slide.Find("World", False, False) + 'Gets the text parts from the selection + For Each textPart As ITextPart In textSelection.GetTextParts() + textPart.Font.Bold = True + Next + presentation.Save("Output.pptx") + presentation.Close() + + + + + + Finds the first occurrence of text that matches the specified Regex pattern. + + + The used to find the text. + + + The > that contains the found text in the document. + + + + //Opens an existing presentation. + using (IPresentation pptxDoc = Presentation.Open("Input.pptx")) + { + // Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Regex regex = new Regex("H.+?o"); + //Find the first occurrence of a specified regular expression. + ITextSelection textSelection = pptxDoc.Slides[0].Find(regex); + //Gets the found text as single text part + ITextPart textPart = textSelection.GetAsOneTextPart(); + //Replace the text + textPart.Text = "Replaced text"; + //Saves the Presentation + pptxDoc.Save("Output.pptx"); + } + + + 'Opens an existing presentation. + Using pptxDoc As IPresentation = Presentation.Open("Input.pptx") + ' Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Dim regex As Regex = New Regex("H.+?o") + 'Find the first occurrence of a specified regular expression. + Dim textSelection As ITextSelection = pptxDoc.Slides(0).Find(regex) + 'Gets the found text as single text part + Dim textPart As ITextPart = textSelection.GetAsOneTextPart() + 'Replace the text + textPart.Text = "Replaced text" + 'Saves the Presentation + pptxDoc.Save("Output.pptx") + End Using + + + + + + Finds and returns all entries of the specified string, taking into the consideration of caseSensitive and wholeWord options. + + + A text to find. + + + Set to true to match the similar case text which specified in the parameter; otherwise false. + + + Set to true to match the whole word text which specified in the parameter; otherwise false. + + + The collection that contains all the entries of the found text in the document. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + // Finds the text from the mentioned slide + ITextSelection[] textSelections = slide.FindAll("World", false, false); + foreach (ITextSelection textSelection in textSelections) + { + //Gets the found text as single text part + ITextPart textPart = textSelection.GetAsOneTextPart(); + //Replace the text + textPart.Text = "Replaced text"; + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds the text from the mentioned slide + Dim textSelections As ITextSelection() = slide.FindAll("World", False, False) + 'Gets the found text as single text part and replace it + For Each textSelection As ITextSelection In textSelections + Dim textPart As ITextPart = textSelection.GetAsOneTextPart() + textPart.Text = "Replaced text" + Next + presentation.Save("Output.pptx") + presentation.Close() + + + + + + Finds all occurrences of text that match the specified Regex pattern. + + + The used to find the text. + + + The collection that contains all the entries of the found text in the document. + + + + //Opens an existing presentation. + using (IPresentation pptxDoc = Presentation.Open("Input.pptx")) + { + // Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Regex regex = new Regex("H.+?o"); + //Finds all the occurrences of a specified regular expression. + ITextSelection[] textSelections = pptxDoc.Slides[0].FindAll(regex); + foreach (ITextSelection textSelection in textSelections) + { + //Gets the found text as single text part + ITextPart textPart = textSelection.GetAsOneTextPart(); + //Replace the text + textPart.Text = "Replaced text"; + } + //Saves the Presentation + pptxDoc.Save("Output.pptx"); + } + + + 'Opens an existing presentation. + Using pptxDoc As IPresentation = Presentation.Open("Input.pptx") + ' Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Dim regex As Regex = New Regex("H.+?o") + 'Finds all the occurrences of a specified regular expression. + Dim textSelections As ITextSelection() = pptxDoc.Slides(0).FindAll(regex) + For Each textSelection As ITextSelection In textSelections + 'Gets the found text as single text part + Dim textPart As ITextPart = textSelection.GetAsOneTextPart() + 'Replace the text + textPart.Text = "Replaced text" + Next + 'Saves the Presentation + pptxDoc.Save("Output.pptx") + End Using + + + + + + Gets or sets the name of a slide. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set the name of the slide + slide.Name = "My Slide"; + //Save the presentation + presentation.Save("Slide.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set the name of the slide + slide.Name = "My Slide" + 'Save the presentation + presentation__1.Save("Slide.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a collection that represents all the elements in the slide. Read-only. + + The collection can contain the drawings, shapes, pictures, text objects, titles, headers, footers, slide numbers, and date and time objects on a slide. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add auto shape - rectangle to slide + IShape shape = shapes.AddShape(AutoShapeType.Rectangle,300,400,150,200); + //Save the presentation + presentation.Save("Shapes.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add auto shape - rectangle to slide + Dim shape As IShape = shapes.AddShape(AutoShapeType.Rectangle, 300, 400, 150, 200) + 'Save the presentation + presentation__1.Save("Shapes.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the background of a slide. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(); + //Retrieve the background. + IBackground background = slide.Background; + //Retrieve the fill of the background. + IFill fill = background.Fill; + //Set the fill type as gradient. + fill.FillType = FillType.Gradient; + //Retrieve the gradient fill. + IGradientFill gradientFill = fill.GradientFill; + //Add the first gradient stop. + gradientFill.GradientStops.Add(); + //Add the second gradient stop. + gradientFill.GradientStops.Add(); + //Save the presentation. + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add() + 'Retrieve the background. + Dim background As IBackground = slide.Background + 'Retrieve the fill of the background. + Dim fill As IFill = background.Fill + 'Set the fill type as gradient. + fill.FillType = FillType.Gradient + 'Retrieve the gradient fill. + Dim gradientFill As IGradientFill = fill.GradientFill + 'Add the first gradient stop. + gradientFill.GradientStops.Add() + 'Add the second gradient stop. + gradientFill.GradientStops.Add() + 'Save the presentation. + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets an instance that represents the GroupShape collection in a slide. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for group shapes, it is read only + IGroupShapes groupShapes = slide.GroupShapes; + //Add group shape to the collection + IGroupShape groupShape1 = groupShapes.AddGroupShape(12, 12, 300, 350); + IGroupShape groupShape2 = groupShapes.AddGroupShape(34, 50, 200, 100); + IGroupShape groupShape3 = groupShapes.AddGroupShape(70, 30, 120, 100); + //Save the presentation + presentation.Save("GroupShapes.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for group shapes, it is read only + Dim groupShapes As IGroupShapes = slide.GroupShapes + 'Add group shape to the collection + Dim groupShape1 As IGroupShape = groupShapes.AddGroupShape(12, 12, 300, 350) + Dim groupShape2 As IGroupShape = groupShapes.AddGroupShape(34, 50, 200, 100) + Dim groupShape3 As IGroupShape = groupShapes.AddGroupShape(70, 30, 120, 100) + 'Save the presentation + presentation__1.Save("GroupShapes.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance that represents the collection of all pictures in a slide. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Get the image from file path + Image image = Image.FromFile("Image.gif"); + // Add the image to the slide by specifying position and size + shapes.AddPicture(new MemoryStream(image.ImageData), 300, 120, 70, 40); + //Save the presentation + presentation.Save("Picture.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Get the image from file path + Dim image__2 As Image = Image.FromFile("Image.gif") + ' Add the image to the slide by specifying position and size + shapes.AddPicture(New MemoryStream(image__2.ImageData), 300, 120, 70, 40) + 'Save the presentation + presentation__1.Save("Picture.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an collection that represents the tables in a slide. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold table collection + ITables tables = slide.Tables; + //Add table to the slide + ITable table = tables.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve each cell and fill text content to the cell. + ICell cell = table[0, 0]; + cell.TextBody.AddParagraph("First Row and First Column"); + cell = table[0, 1]; + cell.TextBody.AddParagraph("First Row and Second Column"); + cell = table[1, 0]; + cell.TextBody.AddParagraph("Second Row and First Column"); + cell = table[1, 1]; + cell.TextBody.AddParagraph("Second Row and Second Column"); + //Give simple description to table shape + table.Description = "Table arrangement"; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold table collection + Dim tables As ITables = slide.Tables + 'Add table to the slide + Dim table As ITable = tables.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve each cell and fill text content to the cell. + Dim cell As ICell = table(0, 0) + cell.TextBody.AddParagraph("First Row and First Column") + cell = table(0, 1) + cell.TextBody.AddParagraph("First Row and Second Column") + cell = table(1, 0) + cell.TextBody.AddParagraph("Second Row and First Column") + cell = table(1, 1) + cell.TextBody.AddParagraph("Second Row and Second Column") + 'Give simple description to table shape + table.Description = "Table arrangement" + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an collection that represents the charts in a slide. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Get the chart collection from slide + IPresentationCharts charts = slide.Charts; + //Add chart to slide + IPresentationChart chart =charts.AddChart(400, 300, 100, 100); + //Set the chart title + chart.ChartTitle = "Chart"; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Get the chart collection from slide + Dim charts As IPresentationCharts = slide.Charts + 'Add chart to slide + Dim chart As IPresentationChart = charts.AddChart(400, 300, 100, 100) + 'Set the chart title + chart.ChartTitle = "Chart" + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the slide size for the presentation. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Retrieve the side size + ISlideSize slideSize = slide.SlideSize; + //Set slide orientation + slideSize.SlideOrientation = SlideOrientation.Landscape; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Retrieve the side size + Dim slideSize As ISlideSize = slide.SlideSize + 'Set slide orientation + slideSize.SlideOrientation = SlideOrientation.Landscape + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Get the timeline(Animation) of the slide + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Get the timeline(Animation) of the slide + IAnimationTimeline timeLine = slide.Timeline; + // Add animation effect on the slide with shape + IEffect effect = timeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Get the timeline(Animation) of the slide + Dim timeLine As IAnimationTimeLine = slide.TimeLine; + 'Add animation effect on the slide with shape + Dim effect As IEffect = timeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the slide transition for the presentation. Read-only. + + + + //Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + //Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + //Get the slide transition value + ISlideShowTransition transition = slide.SlideTransition; + //Add slide transition for slide + transition.TransitionEffect = TransitionEffect.Airplane; + //Save the presentation file + ppDoc.Save("Sample.pptx"); + //Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Get the slide transition value + Dim transition As ISlideShowTransition = slide.SlideTransition + 'Add slide transition for slide + transition.TransitionEffect = TransitionEffect.Airplane + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Gets a HeadersFooters for the specified slide. + + + Returns an IHeadersFooters object that represents the HeaderFooter collection of a slide. + + + + + Gets an instance that represents the text in the notes page. Read-only. + + + + + Sets the slide name. + + Specifies the slide name. + + + + Gets the slide name. + + Returns string value that represents the slide name. + + + + Remove a animation effect of a specified shape. + + Represent the shape to remove. + + + + Check whether Pictures of current slide is referring a mentioned picture path or not. + + Represents a picture path to search. + Returns true, if current slide picture used a input picture path; Otherwise false. + + + + Checks if an image reference exists within the provided shapes based on the specified picture path. + + The collection of shapes to search through. + The path of the picture to check for. + Returns true if the image reference exists in the shapes, otherwise false. + + + + Finds all the occurance of the given word from slide + + + + + Array of text selection + + + + Finds all the occurance of the given word from slide using Regex pattern + + + Array of text selection + + + + Find the first occurance of the given word + + + + + Text selection + + + + Find the first occurance of the given word using Regex pattern + + + Text selection + + + + Check whether the specified picture is used in some other elements such as Ole Object, Shape Fill, Smart Art Fill, Table Fill, Other picture. + + Represents the image path need to be check. + Represents the base slide shape collections need to be checked. + Returns true if the given image path is used in any of the shape collection elements, otherwise false + + + + Check whether the specified picture is used in some other slides such as other Slides, Layout slides, Master slides, Handout master, Notes master. + + Represents the image path need to be check. + Returns true if any slide contains the picture otherwise false. + + + + Check whether the specified picture is used in the given base slide. + + Represents the base slide of the picture to be checked. + Represents the picture image path need to be checked + Returns true if the picture is used in the given base slide, otherwise false. + + + + Gets VmlShape count. + + Returns Vml shape count if slide has Vml shape else 0. + + + + Compares the current BaseSlide object with given BaseSlide object. + + The BaseSlide object to compare with the current instance. + True if the BaseSlide objects are equal; otherwise, false. + + + + Updates the VML drawing relation for the specified slide if it contains an OLE object with a VML drawing. + + + This method applies to master slides, layout slides, notes slides, or normal slides. + If a VML drawing relation is found, it updates the relation's target to a new VML file with an incremented name based on the presentation's VML drawing count. + + + + + Gets a HeadersFooters of specified slide. Read-only. + + + Returns an IHeadersFooters object that represents the HeaderFooter collection of a slide. + + + + + Set the parent presentation for the notes slide. + + The parent presentation. + + + + Gets an instance that represents the text in the notes page. Read-only. + + + + + Gets the list of dictionaries containing URI hyperlinks and their corresponding rectangle points. + + + + + Represents the smart art graphic with different smart art types. + + + + + Gets a object that contains all the nodes within the SmartArt. Read-only. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426); + //Gets the smart art node collection. + ISmartArtNodes nodes = smartArt.Nodes; + //Get the nodes count. + int count = nodes.Count; + //Save the Presentation + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426) + 'Gets the smart art node collection. + Dim nodes As ISmartArtNodes = smartArt.Nodes + 'Gets the number of nodes. + Dim count As Integer = smartArt.Nodes.Count + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Gets a value that represents the layout associated with the SmartArt. Read-only. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426); + //Sets the background color for the smart art shape + smartArt.Background.SolidFill.Color = ColorObject.AliceBlue; + //Gets the smart art layout. + SmartArtType smartArtType = smartArt.Layout; + //Save the Presentation + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426) + 'Sets the background color for the smart art shape + smartArt.Background.SolidFill.Color = ColorObject.AliceBlue + 'Gets the smart art layout. + Dim layoutType As SmartArtType = smartArt.Layout + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Gets a object that represents the SmartArt background. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426); + //Sets the background color for the smart art shape + smartArt.Background.SolidFill.Color = ColorObject.AliceBlue; + //Save the Presentation + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426) + 'Sets the background color for the smart art shape + smartArt.Background.SolidFill.Color = ColorObject.AliceBlue + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Gets an object that represents the line and arrowhead properties of the SmartArt. Read only. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426); + //Sets the line format color for the smart art shape + smartArt.LineFormat.Fill.SolidFill.Color = ColorObject.Blue; + //Save the Presentation + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426) + 'Sets the line format color for the smart art shape + smartArt.LineFormat.Fill.SolidFill.Color = ColorObject.Blue + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Represents a single semantic node within the data model of a SmartArt graphic. + + + + + Gets the child nodes associated with the SmartArt node. Read-only. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.AlternatingHexagons, 10, 10, 640, 426); + // Add a new node to the SmartArt. + ISmartArtNode newNode = smartArt.Nodes.Add(); + // Add a child node to the SmartArt node + ISmartArtNode childNode = newNode.ChildNodes.Add(); + // Set a text to newly added child node. + childNode.TextBody.AddParagraph("Child node of the existing node."); + //Save the Presentation. + pptxDoc.Save("Sample.pptx"); + //Close the Presentation. + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.AlternatingHexagons, 10, 10, 640, 426) + 'Add a new node to the SmartArt. + Dim newNode As ISmartArtNode = smartArt.Nodes.Add() + 'Add a child node to the SmartArt node + Dim childNode As ISmartArtNode = newNode.ChildNodes.Add() + 'Set a text to newly added child node. + childNode.TextBody.AddParagraph("Child node of the existing node.") + 'Save the Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the Presentation. + pptxDoc.Close() + + + + + + Gets the shape collection associated with the SmartArt node. Read-only. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 0, 0, 640, 426); + //Gets the smart art shape collection from the node. + ISmartArtShapes smartArts = smartArt.Nodes[0].Shapes; + //Gets the first smart art shape from the collection. + ISmartArtShape smartArtShape = smartArts[0]; + //Sets the fill color for the shape. + smartArtShape.Fill.SolidFill.Color = ColorObject.DarkCyan; + //Save the PowerPoint Presentation. + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 0, 0, 640, 426) + 'Gets the smart art shape collection from the node. + Dim smartArts As ISmartArtShapes = smartArt.Nodes(0).Shapes + 'Gets the first smart art shape from the collection. + Dim smartArtShape As ISmartArtShape = smartArts(0) + 'Sets the fill color for the shape. + smartArtShape.Fill.SolidFill.Color = ColorObject.DarkCyan + 'Save the PowerPoint Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Gets an instance that represents the text in the SmartArt node. Read-only. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 0, 0, 640, 426); + //Gets the first node text body. + ITextBody textBody = smartArt.Nodes[0].TextBody; + //Sets the text to the text body. + textBody.AddParagraph("First node text"); + //Save the Presentation + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 0, 0, 640, 426) + 'Gets the first node text body. + Dim textBody As ITextBody = smartArt.Nodes(0).TextBody + 'Sets the text to the text body. + textBody.AddParagraph("First node text") + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Gets the node level in the hierarchy. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.AlternatingHexagons, 0, 0, 640, 426); + // Add a new node to the SmartArt. + ISmartArtNode newNode = smartArt.Nodes.Add(); + // Add a child node to the SmartArt node + ISmartArtNode childNode = newNode.ChildNodes.Add(); + // Set a text to newly added child node. + childNode.TextBody.AddParagraph("Child node of the existing node."); + //Gets the level of the child node. + int level = childNode.Level; + //Save the Presentation. + pptxDoc.Save("Sample.pptx"); + //Close the Presentation. + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.AlternatingHexagons, 10, 10, 640, 426) + 'Add a new node to the SmartArt. + Dim newNode As ISmartArtNode = smartArt.Nodes.Add() + 'Add a child node to the SmartArt node + Dim childNode As ISmartArtNode = newNode.ChildNodes.Add() + 'Set a text to newly added child node. + childNode.TextBody.AddParagraph("Child node of the existing node.") + 'Gets the level of the child node. + Dim level As Integer = childNode.Level + 'Save the Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the Presentation. + pptxDoc.Close() + + + + + + Gets the parent of the SmartArt node. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.AlternatingHexagons, 0, 0, 640, 426); + // Add a new node to the SmartArt. + ISmartArtNode newNode = smartArt.Nodes.Add(); + // Add a child node to the SmartArt node + ISmartArtNode childNode = newNode.ChildNodes.Add(); + //Gets the parent node for the child node. + object parent = childNode.Parent; + // Set a text to parent node. + (parent as ISmartArtNode).TextBody.AddParagraph("Parent node for the child node."); + //Save the Presentation. + pptxDoc.Save("Sample.pptx"); + //Close the Presentation. + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.AlternatingHexagons, 10, 10, 640, 426) + 'Add a new node to the SmartArt. + Dim newNode As ISmartArtNode = smartArt.Nodes.Add() + 'Add a child node to the SmartArt node + Dim childNode As ISmartArtNode = newNode.ChildNodes.Add() + Dim parent As Object = childNode.Parent + TryCast(parent, ISmartArtNode).TextBody.AddParagraph("Parent node for the child node.") + 'Save the Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the Presentation. + pptxDoc.Close() + + + + + + Gets or sets a value indicating whether the SmartArt point is an assistant element. + + + Returns true if the SmartArt point is an assistant element; otherwise, false. + + + Setting this property to true will set the SmartArt point type to AssistantElement. + Setting this property to false will set the SmartArt point type to Node. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a SmartArt to the slide at the specified size and position + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.OrganizationChart, 0, 0, 640, 426.96); + //Traverse through all nodes of the SmartArt. + foreach (ISmartArtNode node in smartArt.Nodes) + { + //Check if the node is assistant or not. + if (node.IsAssistant) + //Set the assistant node to false. + node.IsAssistant = false; + } + //Save the Presentation. + pptxDoc.Save("Sample.pptx"); + //Close the Presentation. + pptxDoc.Close(); + + + Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a SmartArt to the slide at the specified size and position + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.OrganizationChart, 0, 0, 640, 426.96) + 'Traverse through all nodes of the SmartArt. + For Each node As ISmartArtNode In smartArt.Nodes + 'Check if the node is assistant or not. + If node.IsAssistant Then + 'Set the assistant node to false. + node.IsAssistant = False + End If + Next + 'Save the Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the Presentation. + pptxDoc.Close() + + + + + + Represents a collection of nodes within a SmartArt diagram. + + + + + Adds a new SmartArt node at the end of the SmartArt node collection. + + Returns an instance that represents the new SmartArt diagram. + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.AlternatingHexagons, 0, 0, 640, 426); + // Add a new node to the SmartArt. + ISmartArtNode newNode = smartArt.Nodes.Add(); + // Set a text to newly added child node. + newNode.TextBody.AddParagraph("Added new node to the smart art shape."); + //Save the Presentation. + pptxDoc.Save("Sample.pptx"); + //Close the Presentation. + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.AlternatingHexagons, 10, 10, 640, 426) + 'Add a new node to the SmartArt. + Dim newNode As ISmartArtNode = smartArt.Nodes.Add() + 'Set a text to newly added child node. + newNode.TextBody.AddParagraph("Parent node for the child node.") + 'Save the Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the Presentation. + pptxDoc.Close() + + + + + + Removes all the nodes from the SmartArt. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426); + //Sets the background color for the smart art shape + smartArt.Background.SolidFill.Color = ColorObject.AliceBlue; + //Clear the smart art nodes. + smartArt.Nodes.Clear(); + //Save the Presentation + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426) + 'Sets the background color for the smart art shape + smartArt.Background.SolidFill.Color = ColorObject.AliceBlue + 'Clear the smart art nodes. + smartArt.Nodes.Clear() + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Removes the node at the specified index of SmartArt node collection. + + The zero-based index of the element to be removed. + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426); + //Gets the first smart art node. + ISmartArtNode node = smartArt.Nodes[0]; + //Remove the smart art node from the node collection. + smartArt.Nodes.RemoveAt(1); + //Save the Presentation + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426) + 'Gets the first smart art node + Dim node As ISmartArtNode = smartArt.Nodes(0) + 'Remove the smart art node from the node collection. + smartArt.Nodes.RemoveAt(1) + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Removes the first occurrence of a specified node from the SmartArt node collection. + + The SmartArt node to be removed from the collection. + Returns true if the specified SmartArt node is removed from the node collection otherwise returns false. + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426); + //Gets the first smart art node. + ISmartArtNode node = smartArt.Nodes[0]; + //Remove the smart art node from the node collection. + smartArt.Nodes.Remove(node); + //Save the Presentation + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426) + 'Gets the first smart art node + Dim node As ISmartArtNode = smartArt.Nodes(0) + 'Remove the smart art node from the node collection. + smartArt.Nodes.Remove(node) + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Returns the first occurrence of a specified node from the SmartArt node collection. + + The instance to locate in the collection. + Returns the zero-based index of the first occurrence of SmartArt node within the collection, if found; otherwise, �1. + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.AlternatingHexagons, 0, 0, 640, 426); + // Add a new node to the SmartArt. + ISmartArtNode newNode = smartArt.Nodes.Add(); + // Set a text to newly added child node. + newNode.TextBody.AddParagraph("Added new node to the smart art shape."); + //Gets the index of new node. + int index = smartArt.Nodes.IndexOf(newNode); + //Save the Presentation. + pptxDoc.Save("Sample.pptx"); + //Close the Presentation. + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.AlternatingHexagons, 10, 10, 640, 426) + 'Add a new node to the SmartArt. + Dim newNode As ISmartArtNode = smartArt.Nodes.Add() + 'Set a text to newly added child node. + newNode.TextBody.AddParagraph("Added new node to the smart art shape.") + 'Gets the index of new node. + Dim index As Integer = smartArt.Nodes.IndexOf(newNode) + 'Save the Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the Presentation. + pptxDoc.Close() + + + + + + Gets the number of nodes contained in the SmartArt node collection. Read-only. + + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 0, 0, 640, 426); + //Gets the number of nodes + int count = smartArt.Nodes.Count; + //Save the Presentation + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 0, 0, 640, 426) + 'Gets the number of nodes. + Dim count As Integer = smartArt.Nodes.Count + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Gets a node at the specified index of a SmartArt node collection. Read-only. + + Determines the index of the SmartArt node. + Returns an instance. + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 0, 0, 640, 426); + //Gets the first smart art node + ISmartArtNode node = smartArt.Nodes[0]; + //Sets the text to the node. + node.TextBody.AddParagraph("First node text"); + //Save the Presentation + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 0, 0, 640, 426) + 'Gets the first smart art node + Dim node As ISmartArtNode = smartArt.Nodes(0) + 'Sets the text to the node. + node.TextBody.AddParagraph("First node text") + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Represents the collection of shapes within a SmartArt node. + + + + + Represents the collection of shapes within a SmartArt node. + + + + + Gets a instance at the specified index from the collection. Read-only. + + Determines the index of the SmartArt shape. + Returns an instance. + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 0, 0, 640, 426); + //Gets the smart art shape collection from the node. + ISmartArtShapes smartArts = smartArt.Nodes[0].Shapes; + //Gets the first smart art shape from the collection. + ISmartArtShape smartArtShape = smartArts[0]; + //Sets the fill color for the shape. + smartArtShape.Fill.SolidFill.Color = ColorObject.DarkCyan; + //Save the PowerPoint Presentation. + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 0, 0, 640, 426) + 'Gets the smart art shape collection from the node. + Dim smartArts As ISmartArtShapes = smartArt.Nodes(0).Shapes + 'Gets the first smart art shape from the collection. + Dim smartArtShape As ISmartArtShape = smartArts(0) + 'Sets the fill color for the shape. + smartArtShape.Fill.SolidFill.Color = ColorObject.DarkCyan + 'Save the PowerPoint Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Determines whether an element is in the List. + + Represent the item to find. + Returns true, if item is found; Otherwise, false. + + + + Gets a instance at the specified index from the collection. Read-only. + + Determines the index of the SmartArt shape. + Returns an instance. + + + + Represents a shape within the SmartArt node. + + + + + Gets a extra smart art shape point. + + Represents the current SmartArtType. + Represents the SmartArt point collecion. + + Returns the SmartArtPoint. + + + + Represent a top relation of drawing.xml file. + + + + + Sets the hyperlink for SmartArtPoint + + + + + + Set the textbody for SmartArtPoint + + Textbody to be set. + + + + Returns the SmartArt id + + + + + Returns the SmartArt name + + + + + Returns an instance that represents the hyperlink for the specified SmartArtPoint. + + + + + Represents the smart art graphic with different smart art types. + + + + + Sets the BaseSlide parent to the current SmartArt and its members. + + Represents the parent BaseSlide instance which needs to be assigned to the current SmartArt instance and its members. + + + + Compares the current Shape object with given Shape object. + + The Shape object to compare with the current instance. + True if the Shape objects are equal; otherwise, false. + + + + Gets a object that represents the SmartArt background. + + + + + Gets a value that represents the layout associated with the SmartArt. Read-only. + + + + + Gets a object that contains all the nodes within the SmartArt. Read-only. + + + + + Represents a single semantic node within the data model of a SmartArt graphic. + + + + + Gets the parent of the SmartArt node. + + + + + Gets the child nodes associated with the SmartArt node. Read-only. + + + + + Gets the node level in the hierarchy. + + + + + Gets the shape collection associated with the SmartArt node. Read-only. + + + + + Gets or sets a value indicating whether the SmartArt point is an assistant element. + + + Returns true if the SmartArt point is an assistant element; otherwise, false. + + + Setting this property to true will set the SmartArt point type to AssistantElement. + Setting this property to false will set the SmartArt point type to Node. + + + + + Gets an instance that represents the text in the SmartArt node. Read-only. + + + + + Represents a collection of nodes within a SmartArt diagram. + + + + + Returns the first occurrence of a specified node from the SmartArt node collection. + + The instance to locate in the collection. + Returns the zero-based index of the first occurrence of SmartArt node within the collection, if found; otherwise, �1. + + + + Adds a new SmartArt node at the end of the SmartArt node collection. + + Returns an instance that represents the new SmartArt diagram. + + + + Removes all the nodes from the SmartArt. + + + + + Removes the node at the specified index of SmartArt node collection. + + The zero-based index of the element to be removed. + + + + Removes the first occurrence of a specified node from the SmartArt node collection. + + The SmartArt node to be removed from the collection. + Returns true if the specified SmartArt node is removed from the node collection otherwise returns false. + + + + Add extra smart art points on each PictureStrips SmartArt node, to add the picture on node. + + Represent the node to add. + + + + Gets the number of nodes contained in the SmartArt node collection. Read-only. + + + + + Gets a node at the specified index of a SmartArt node collection. Read-only. + + Determines the index of the SmartArt node. + Returns an instance. + + + + Represents a shape within the SmartArt node. + + + + + Represents the comment in the slide. + + + + + + Gets or sets the left position of the comment in slide + + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Set the left position for the comment + slide.Comments[1].Left = 0.50; + //Get the left position of the comment + double leftPosition = slide.Comments[1].Left; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Set the left position for the comment + slide.Comments(1).Left = 0.50 + 'Get the left position of the comment + Dim leftPosition As double = slide.Comments(1).Left + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Gets or sets the top position of the comment in slide + + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Set the top position for the comment + slide.Comments[1].Top = 0.50; + //Get the top position of the comment + double topPosition = slide.Comments[1].Top; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Set the top position for the comment + slide.Comments(1).Top = 0.50 + 'Get the top position of the comment + Dim topPosition As double = slide.Comments(1).Top + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Gets or sets the author name of the comment + + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Set the author name for the comment + slide.Comments[1].AuthorName = "Manager"; + //Get the author name of the comment + string authorName = slide.Comments[1].AuthorName; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Set the author name for the comment + slide.Comments(1).AuthorName = "Manager" + 'Get the author name of the comment + Dim authorName As string = slide.Comments(1).AuthorName + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Gets or sets the comment author initials + + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Set the initial for the comment author. + slide.Comments[1].Initials = "M"; + //Get the initial of the comment author + string authorInitial = slide.Comments[1].Initials; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Set the initial for the comment author + slide.Comments(1).Initials = "M" + 'Get the initial of the comment author + Dim authorInitial As string = slide.Comments(1).Initials + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Gets or sets the comment text + + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Set the text of the comment + slide.Comments[1].Text = "How can i convert a slide to image or PDF?"; + //Get the text of the comment + string commentText = slide.Comments[1].Text; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Set the text of the comment + slide.Comments(1).Text = "How can i convert a slide to image or PDF?" + 'Get the text of the comment + Dim commentText As string = slide.Comments(1).Text + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Gets or sets the created or modified date and time of the comment + + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Set the date and time of the comment + DateTime date = new DateTime(2017, 1, 18); + slide.Comments[1].DateTime = date ; + //Get the date and time of the comment + DateTime date1 = slide.Comments[1].DateTime; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Set the date and time of the comment + Dim time As DateTime = New DateTime(2017, 1, 18) + slide.Comments(1).DateTime = time + 'Get the date and time of the comment + Dim commentDatetime As DateTime = slide.Comments(1).DateTime + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Returns a boolean value that indicates the comment is a parent comment or a reply comment + + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Get the text of the the bool value that indicates whether a comment has reply or not + bool hasReply = slide.Comments[0].HasChild; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Get the bool value that indicates whether a comment has reply or not + Dim hasReply As Boolean = slide.Comments(0).HasChild + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Returns the parent comment otherwise returns null if there is no parent comment + + Returns an instance of parent comment + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Get the parent comment + IComment parentComment = slide.Comments[1].Parent; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Get the parent comment + Dim parentComment As IComment = slide.Comments(1).Parent + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Represents the comment collection. + + + + + Adds a comment for an author in the slide. + + left poisiton of the comment in slide + top position of comment in slide + name of the comment author + initial of the author + specifies the comment + specifies the date time of the comment added + The comment gets added in the slide + Returns the instance of added comment. + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Adds a reply for an author to a specific comment. + + name of the comment author + initial of the author + specifies the comment + specifies the date time of the reply added + specifies the parent comment + The reply is made to a comment added in the slide + Returns the instance of added comment. + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Removes the comment at the specified index, from the comment collection. + + The zero-based index of the element to be removed. + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Remove the comment at the specified index + slide.Comments.RemoveAt(1); + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Remove the comment at the specified index + slide.Comments.RemoveAt(1) + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Removes the first occurrence of a specified comment from the comment collection. + + The comment to be removed from the collection. + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Remove the comment at the specified index from the comment collection + slide.Comments.Remove(comment); + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Remove the comment at the specified index from the comment collection + slide.Comments.Remove(comment) + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Returns the zero-based index of the first occurrence of the instance within the comment collection. + + The instance to locate in the collection. + Returns the zero-based index of the first occurrence of comment within the collection, if found; otherwise, –1. + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Get the index of the comment from the comment collection + int index = slide.Comments.IndexOf(comment); + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Get the index of the comment from the comment collection + Dim index As Integer = slide.Comments.IndexOf(comment) + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Inserts the specified comment into the comment collection at specified index. + + The zero-based index at which the comment should be inserted. + The comment instance to insert. + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment1 = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + IComment comment2 = slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment1); + //Insert the comment at the specified index in comment collection + slide.Comments.Insert(0 , comment2); + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment1 As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + Dim comment2 As IComment = slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment1) + 'Insert the comment at the specified index in comment collection + slide.Comments.Insert(0,comment2) + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Removes all the comments in the slide. + + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment1 = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + IComment comment2 = slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment1); + //Clear the comment from the slide + slide.Comments.Clear(); + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment1 As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + Dim comment2 As IComment = slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment1) + 'Clear the comment from the slide + slide.Comments.Clear() + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Gets the instance at the specified index in comment collection. Read-only. + + The index to locate the comment. + Returns the instance at the specified index in comment collection. + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Get the comment + IComment comment1 = slide.Comments[1]; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Get the comment + Dim comment1 As IComment = slide.Comments(1) + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Gets the number of elements in the comment collection. Read-only. + + + The total count of the comments. + + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Get the count comment + int count = slide.Comments.Count; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now) + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment) + 'Get the count of the comment + Dim count As Integer = slide.Comments.Count + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Represents the background of a slide. + + + + + Gets an instance that contains fill formatting properties. + Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Pattern fill + background.Fill.FillType = FillType.Pattern; + //Set the pattern + background.Fill.PatternFill.Pattern = PatternFillType.DashedHorizontal; + //set the fore color of pattern + background.Fill.PatternFill.ForeColor = ColorObject.Lavender; + //Set the back color of pattern + background.Fill.PatternFill.BackColor = ColorObject.Brown; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Pattern fill + background.Fill.FillType = FillType.Pattern + 'Set the pattern + background.Fill.PatternFill.Pattern = PatternFillType.DashedHorizontal + 'set the fore color of pattern + background.Fill.PatternFill.ForeColor = ColorObject.Lavender + 'Set the back color of pattern + background.Fill.PatternFill.BackColor = ColorObject.Brown + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Retrieves the color value from the layout or master slide based on the given color object and fill. + + The color object containing the initial color value. + The fill object that provides access to the slide's layout or master slide. + The modified color object with an updated theme color value if applicable. + + + + Compares the current Background object with given Background object. + + The Background object to compare with the current instance. + True if the Background objects are equal; otherwise, false. + + + + Represents the collection of charts. + + + + + + Represents a collection of instance in a slide. + + + + + Adds a chart to the shape collection with the specified bounds. + + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance. + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold chart collection + IPresentationCharts charts = slide.Charts; + //Add chart to slide + IPresentationChart chart =charts.AddChart(300, 100, 300, 300); + //Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.AliceBlue; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold chart collection + Dim charts As IPresentationCharts = slide.Charts + 'Add chart to slide + Dim chart As IPresentationChart = charts.AddChart(300, 100, 300, 300) + 'Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.AliceBlue + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Creates a chart for the data in specified excel document and adds the chart to the shape collection. + + Excel document stream having the data for chart[Only the "*.xlsx" format is supported]. + Worksheet number of the excel document. + Data range in the worksheet for the chart to be created. + Position and size of the chart, in points. + Returns an instance. + + + //Creates a Presentation instance + IPresentation pptxDoc = Presentation.Create(); + //Adds a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Gets the excel file as stream + FileStream excelStream = new FileStream("Book1.xlsx", FileMode.Open); + //Adds a chart to the slide with a data range from excel worksheet – excel workbook, worksheet number, Data range, position, and size. + IPresentationChart chart = slide.Charts.AddChart(excelStream, 1, "A1:D4", new RectangleF(100, 10, 700, 500)); + //Save the presentation + pptxDoc.Save("Output.pptx"); + //Closes the Presentation + pptxDoc.Close(); + + + 'Creates a Presentation instance + Dim pptxDoc As IPresentation = Presentation.Create() + 'Adds a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Gets the excel file as stream + Dim excelStream As New MemoryStream(File.ReadAllBytes("Book1.xlsx")) + 'Adds a chart to the slide with a data range from excel worksheet – excel workbook, worksheet number, Data range, position, and size. + Dim chart As IPresentationChart = slide.Charts.AddChart(excelStream, 1, "A1:D4", New RectangleF(100, 10, 700, 500)) + 'Saves the Presentation + pptxDoc.Save("output.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + + + Returns the zero-based index of the first occurrence of the instance within the collection. + + The IPresentationChart instance to locate in the collection. + Returns the zero-based index of the first occurrence of object within the entire collection, if found; otherwise, –1. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold chart collection + IPresentationCharts charts = slide.Charts; + //Add chart to slide + IPresentationChart chart =charts.AddChart(300, 100, 300, 300); + //Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.AliceBlue; + //Get the index of specific chart + int index = charts.IndexOf(chart); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold chart collection + Dim charts As IPresentationCharts = slide.Charts + 'Add chart to slide + Dim chart As IPresentationChart = charts.AddChart(300, 100, 300, 300) + 'Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.AliceBlue + 'Get the index of specific chart + Dim index As Integer = shapes.IndexOf(chart) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the element at the specified index of the chart collection. + + The zero-based index of the element to be removed. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold chart collection + IPresentationCharts charts = slide.Charts; + //Add chart to slide + IPresentationChart chart = charts.AddChart(100, 300, 200, 200); + //Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.LightBlue; + //Add chart to slide + IPresentationChart chart2 = charts.AddChart(300, 300, 200, 200); + //Set the fore color of the chart area. + chart2.ChartArea.Fill.ForeColor = Color.AliceBlue; + //Remove chart specific index + charts.RemoveAt(0); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold chart collection + Dim charts As IPresentationCharts = slide.Charts + 'Add chart to slide + Dim chart As IPresentationChart = charts.AddChart(100, 300, 200, 200) + 'Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.LightBlue + 'Add chart to slide + Dim chart2 As IPresentationChart = charts.AddChart(300, 300, 200, 200) + 'Set the fore color of the chart area. + chart2.ChartArea.Fill.ForeColor = Color.AliceBlue + 'Remove chart specific index + chart.RemoveAt(0) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a single instance from the collection. Read-only. + + Index from the collection. + Returns the particular chart based on the index. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold chart collection + IPresentationCharts charts = slide.Charts; + //Add chart to slide + charts.AddChart(300, 100, 300, 300); + //Retrieve the chart at index 0 + IPresentationChart chart = charts[0]; + //Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.AliceBlue; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold chart collection + Dim charts As IPresentationCharts = slide.Charts + 'Add chart to slide + charts.AddChart(300, 100, 300, 300) + 'Retrieve the chart at index 0 + Dim chart As IPresentationChart = charts(0) + 'Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.AliceBlue + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the chart collection. Read-only. + + + The total count of the charts in the chart collection. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold chart collection + IPresentationCharts charts = slide.Charts; + //Add chart to slide + IPresentationChart chart =charts.AddChart(300, 100, 300, 300); + //Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.AliceBlue; + //Get the count for chart collection + int count = charts.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold chart collection + Dim charts As IPresentationCharts = slide.Charts + 'Add chart to slide + Dim chart As IPresentationChart = charts.AddChart(300, 100, 300, 300) + 'Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.AliceBlue + 'Get the count for chart collection + Dim count As Integer = charts.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a chart to the slide. + + The left position of the chart from left edge of the slide, in points + The top position of the chart from top edge of the slide, in points + Width of the chart, in points + Height of the chart, in points + Returns a chart object. + + + + Adds a chart to the slide. + + Excel document stream that has the data for chart,excel document should be in "*.xlsx" format + Worksheet number of the excel document. + Data range in the worksheet for which the chart to be created. + Size and Position of chart in the slide. + Returns a chart object. + + + + Adds a chart to the slide. + + Chart data in 2-dimensional array format. + The left position of the chart from left edge of the slide, in points + The left position of the chart from left edge of the slide, in points + The width of the chart, in points + The height of the chart, in points. + Returns a chart object. + + + + Adds a chart to the slide. + + IEnumerable object with desired data + The left position of the chart from left edge of the shape, in points + The top position of the chart from top edge of the shape, in points + The width of the chart, in points + The height of the chart, in points. + Returns a chart object. + + + + Returns the zero-based index of the first occurrence of the specified chart + + Represents a chart from the collection. + The zero-based index position of the chart, if found otherwise -1. + + + + Removes the chart at the specified index of the chart collection + + The zero-based index of the chart to remove. + + + + Returns an enumerator that iterates through the chart collection. + + An IEnumerator object that can be used to iterate through the chart collection. + + + + Gets the chart at the specified index. + + Index of the chart. + + + + + Gets the number of elements contained in the chart collection. + + + + + Represents the charts in the presentation + + + + + Replaces the chart data with the worksheet data. + + + Optional Boolean. Set to true to update all the formulas in the Excel sheet. The default value is false. + + + + //Open a presentation containing charts + IPresentation presentation = Presentation.Open("Template.pptx"); + //Get the slide from presentation + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Charts[0]; + //Refresh the chart to set worksheet data to current chart + chart.Refresh(true); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open a presentation containing charts + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + 'Get the slide from presentation + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = slide.Charts(0) + 'Refresh the chart to set worksheet data to current chart + chart.Refresh(True) + 'Save the presentation + presentation.Save("Sample.pptx") + 'Close the presentation + presentation.Close() + + + + + + Converts the chart to image and saves the image in the specified stream. + + The stream to save the image. + + + //Open the presentation + IPresentation presentation = Presentation.Open("Template.pptx"); + //Initialize the ChartToImageConverter class; this is mandatory + presentation.ChartToImageConverter = new ChartToImageConverter(); + //Set the scaling mode for quality + presentation.ChartToImageConverter.ScalingMode = Syncfusion.OfficeChart.ScalingMode.Best; + //Get the first slide + ISlide slide = presentation.Slides[0]; + //Get the chart in slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //Create a stream instance to store the image + MemoryStream stream = new MemoryStream(); + //Save the image to stream + chart.SaveAsImage(stream); + //Save the stream to a file + using (FileStream fileStream = File.Create("ChartImage.png", (int)stream.Length)) + fileStream.Write(stream.ToArray(), 0, stream.ToArray().Length); + //Close the stream + stream.Close(); + //Save the Presentation + presentation.Save("output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open the presentation + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + 'Initialize the ChartToImageConverter class; this is mandatory + presentation.ChartToImageConverter = New ChartToImageConverter() + 'Set the scaling mode for quality + presentation.ChartToImageConverter.ScalingMode = Syncfusion.OfficeChart.ScalingMode.Best + 'Get the first slide + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart in slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'Create a stream instance to store the image + Dim stream As New MemoryStream() + 'Save the image to stream + chart.SaveAsImage(stream) + 'Save the stream to a file + Using fileStream As FileStream = File.Create("ChartImage.png", CInt(stream.Length)) + fileStream.Write(stream.ToArray(), 0, stream.ToArray().Length) + End Using + 'Close the stream + stream.Close() + 'Save the Presentation + presentation.Save("output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Sets the chart data with the specified two dimensional object array. + + Represents the two dimensional chart data + + + + //Create a new PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to slide + IPresentationChart chart = slide.Charts.AddChart(100, 100, 300, 200); + //Create an instance of object array + object[][] chartData = { new object[3], new object[4] }; + //Invoke setChartData method by passing object array + chart.SetChartData(chartData); + //Set the chart title + chart.ChartTitle = "Chart"; + //Save the Presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to slide + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 100, 300, 200) + 'Create an instance of object array + Dim chartData As Object()() = {New Object(2) {}, New Object(3) {}} + 'Invoke setChartData method by passing object array + chart.SetChartData(chartData) + 'Set the chart title + chart.ChartTitle = "Chart" + 'Save the Presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Sets the chart data with the specified two dimensional object array, row index and column index. + + Represents the two dimensional chart data + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + + + //Create a new PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to slide + IPresentationChart chart = slide.Charts.AddChart(100, 100, 300, 300); + //Create an instance of object array + object[][] dataRange = { new object[5], new object[5] }; + //Invoke set data Range method + chart.SetDataRange(dataRange, 1, 3); + //Save the Presentation + presentation.Save("output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to slide + Dim chart As IPresentationChart= slide.Charts.AddChart(100, 100, 300, 300) + 'Create an instance of object array + Dim dataRange As Object()() = {New Object(4) {}, New Object(4) {}} + 'Invoke set data Range method + chart.SetDataRange(dataRange, 1, 3) + 'Save the Presentation + presentation.Save("output.pptx") + 'Close the presentation + presentation.Close() + + + + + + + Gets or sets the Chart Type. + Initiate series, ranges and update the ChartType. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 700, 500); + //Specify the chart title + chart.ChartTitle = "Sales Analysis"; + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Specify the chart type + chart.ChartType = OfficeChartType.Column_Clustered; + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData[2, 1, 4, 1]; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 700, 500) + 'Specify the chart title + chart.ChartTitle = "Sales Analysis" + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Specify the chart type + chart.ChartType = OfficeChartType.Column_Clustered + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData(2, 1, 4, 1) + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets a instance for this presentation chart. Read-only. + + + This property can be used in to convert chart as an image. + + + + //Opens a Presentation + IPresentation pptxDoc = Presentation.Open("Sample.pptx"); + //Creates an instance of ChartToImageConverter + pptxDoc.ChartToImageConverter = new ChartToImageConverter(); + //Sets the scaling mode as best + pptxDoc.ChartToImageConverter.ScalingMode = Syncfusion.OfficeChart.ScalingMode.Best; + //Gets a slide from the Presentation + ISlide slide = pptxDoc.Slides[0]; + //Gets the presentation chart in slide + IPresentationChart presentationChart = slide.Shapes[0] as IPresentationChart; + //Gets the IOfficeChart instance + IOfficeChart officeChart = presentationChart.OfficeChart; + //Save the chart to image. + MemoryStream memoryStream = new MemoryStream(); + officeChart.SaveAsImage(memoryStream); + //Closes the Presentation + pptxDoc.Close(); + + + 'Opens a Presentation + Dim pptxDoc As IPresentation = Presentation.Open("Sample.pptx") + 'Creates an instance of ChartToImageConverter + pptxDoc.ChartToImageConverter = New ChartToImageConverter + 'Sets the scaling mode as best + pptxDoc.ChartToImageConverter.ScalingMode = Syncfusion.OfficeChart.ScalingMode.Best + 'Gets a slide from the Presentation + Dim slide As ISlide = pptxDoc.Slides(0) + 'Gets the presentation chart in slide + Dim presentationChart As IPresentationChart = CType(slide.Shapes(0), IPresentationChart) + 'Gets the IOfficeChart instance + Dim officeChart As IOfficeChart = presentationChart.OfficeChart + 'Save the chart to image. + Dim memoryStream As MemoryStream = New MemoryStream + officeChart.SaveAsImage(memoryStream) + 'Closes the Presentation + pptxDoc.Close + + + + + + Gets or sets the DataRange for the chart series. + + + + IPresentation presentation = Presentation.Create(); + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to slide + IPresentationChart chart = slide.Shapes.AddChart(100, 120, 500, 300); + //Sets the data range of chart + chart.DataRange = chart.ChartData[1, 2, 4, 3]; + //Set data to the chart- RowIndex, columnIndex and data + chart.ChartData.SetValue(1, 2, "2012"); + chart.ChartData.SetValue(2, 2, 330); + chart.ChartData.SetValue(3, 2, 490); + chart.ChartData.SetValue(4, 2, 700); + chart.ChartType = OfficeChartType.Area; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + Dim presentation As IPresentation = Presentation.Create() + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to slide + Dim chart As IPresentationChart = slide.Shapes.AddChart(100, 120, 500, 300) + 'Sets the data range of chart + chart.DataRange = chart.ChartData(1, 2, 4, 3) + 'Set data to the chart- RowIndex, columnIndex and data + chart.ChartData.SetValue(1, 2, "2012") + chart.ChartData.SetValue(2, 2, 330) + chart.ChartData.SetValue(3, 2, 490) + chart.ChartData.SetValue(4, 2, 700) + chart.ChartType = OfficeChartType.Area + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets whether series in rows or not. True if series are in rows in DataRange; + False otherwise. + + + + //Create an instance for PowerPoint + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Adds chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 700, 500); + //Set the chart type as Scatter_Markers + chart.ChartType = OfficeChartType.Scatter_Markers; + //Assign data + chart.DataRange = chart.ChartData[1, 1, 4, 2]; + //Set data to the chart RowIndex, columnIndex, and data + chart.ChartData.SetValue(1, 1, "X-Axis"); + chart.ChartData.SetValue(1, 2, "Y-Axis"); + chart.ChartData.SetValue(2, 1, 1); + chart.ChartData.SetValue(3, 1, 5); + chart.ChartData.SetValue(4, 1, 10); + chart.ChartData.SetValue(2, 2, 10); + chart.ChartData.SetValue(3, 2, 5); + chart.ChartData.SetValue(4, 2, 1); + //Set chart title + chart.ChartTitle = "Scatter Markers Chart"; + //Set legend + chart.HasLegend = false; + //Set Datalabels + IOfficeChartSerie serie = chart.Series[0]; + serie.DataPoints.DefaultDataPoint.DataLabels.IsValue = true; + serie.DataPoints.DefaultDataPoint.DataLabels.IsCategoryName = true; + //Set IsSeriesInRows + chart.IsSeriesInRows = false; + //Saves the Presentation + pptxDoc.Save("Output.pptx"); + //Closes the presentation + pptxDoc.Close(); + + + 'Create an instance for PowerPoint + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Adds chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 700, 500) + 'Set the chart type as Scatter_Markers + chart.ChartType = OfficeChartType.Scatter_Markers + 'Assign data + chart.DataRange = chart.ChartData(1, 1, 4, 2) + 'Set data to the chart RowIndex, columnIndex, and data + chart.ChartData.SetValue(1, 1, "X-Axis") + chart.ChartData.SetValue(1, 2, "Y-Axis") + chart.ChartData.SetValue(2, 1, 1) + chart.ChartData.SetValue(3, 1, 5) + chart.ChartData.SetValue(4, 1, 10) + chart.ChartData.SetValue(2, 2, 10) + chart.ChartData.SetValue(3, 2, 5) + chart.ChartData.SetValue(4, 2, 1) + 'Apply chart elements + 'Set chart title + chart.ChartTitle = "Scatter Markers Chart" + 'Set legend + chart.HasLegend = False + 'Set Datalabels + Dim serie As IOfficeChartSerie = chart.Series(0) + serie.DataPoints.DefaultDataPoint.DataLabels.IsValue = True + serie.DataPoints.DefaultDataPoint.DataLabels.IsCategoryName = True + 'Set IsSeriesInRows + chart.IsSeriesInRows = False + 'Saves the Presentation + pptxDoc.Save("Output.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + Gets or sets the Title of the chart. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 700, 500); + //Specify the chart title + chart.ChartTitle = "Sales Analysis"; + //Specify the chart type + chart.ChartType = OfficeChartType.Column_Clustered; + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData[2, 1, 4, 1]; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 700, 500) + 'Specify the chart title + chart.ChartTitle = "Sales Analysis" + 'Specify the chart type + chart.ChartType = OfficeChartType.Column_Clustered + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData(2, 1, 4, 1) + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets title text area. Read-only. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 700, 500); + //Specify the chart title + chart.ChartTitle = "Sales Analysis"; + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData[2, 1, 4, 1]; + //Specify the chart type + chart.ChartType = OfficeChartType.Surface_3D; + //Get the chart title text area + IOfficeChartTextArea textArea = chart.ChartTitleArea; + //Set bold font style + textArea.Bold = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 700, 500) + 'Specify the chart title + chart.ChartTitle = "Sales Analysis" + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData(2, 1, 4, 1) + 'Specify the chart type + chart.ChartType = OfficeChartType.Surface_3D + 'Get the chart title text area + Dim textArea As IOfficeChartTextArea = chart.ChartTitleArea + 'Set the background mode of the title area + textArea.BackgroundMode = OfficeChartBackgroundMode.Transparent + 'Set bold font style + textArea.Bold = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the X coordinate of the upper-left corner + of the chart in points (1/72 inch). + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the x - position of the chart + chart.XPos = 300; + //Set the y - position of the chart + chart.YPos = 140; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the x - position of the chart + chart.XPos = 300 + 'Set the y - position of the chart + chart.YPos = 140 + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the Y coordinate of the upper-left corner + of the chart in points (1/72 inch). + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the x - position of the chart + chart.XPos = 300; + //Set the y - position of the chart + chart.YPos = 140; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the x - position of the chart + chart.XPos = 300 + 'Set the y - position of the chart + chart.YPos = 140 + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the Width of the chart in points (1/72 inch). + + + + //Open the presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide + ISlide slide = presentation.Slides[0]; + //Get the chart in slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //Modify the chart height + chart.Height = 500; + //Modify the chart width + chart.Width = 700; + //Change the title + chart.ChartTitle = "New title"; + //Change the serie name of first chart serie + chart.Series[0].Name = "Modified serie name"; + //Hiding the category labels + chart.CategoryLabelLevel = OfficeCategoriesLabelLevel.CategoriesLabelLevelNone; + //Show Data Table. + chart.HasDataTable = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open the presentation + Dim presentation As IPresentation = Presentation.Open("Sample.pptx") + 'Get the first slide + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart in slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'Modify the chart height + chart.Height = 500 + 'Modify the chart width + chart.Width = 700 + 'Change the title + chart.ChartTitle = "New title" + 'Change the serie name of first chart serie + chart.Series(0).Name = "Modified serie name" + 'Hiding the category labels + chart.CategoryLabelLevel = OfficeCategoriesLabelLevel.CategoriesLabelLevelNone + 'Show Data Table. + chart.HasDataTable = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the Height of the chart in points (1/72 inch). + + + + //Open the presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide + ISlide slide = presentation.Slides[0]; + //Get the chart in slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //Modify the chart height + chart.Height = 500; + //Modify the chart width + chart.Width = 700; + //Change the title + chart.ChartTitle = "New title"; + //Change the serie name of first chart serie + chart.Series[0].Name = "Modified serie name"; + //Hiding the category labels + chart.CategoryLabelLevel = OfficeCategoriesLabelLevel.CategoriesLabelLevelNone; + //Show Data Table. + chart.HasDataTable = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open the presentation + Dim presentation As IPresentation = Presentation.Open("Sample.pptx") + 'Get the first slide + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart in slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'Modify the chart height + chart.Height = 500 + 'Modify the chart width + chart.Width = 700 + 'Change the title + chart.ChartTitle = "New title" + 'Change the serie name of first chart serie + chart.Series(0).Name = "Modified serie name" + 'Hiding the category labels + chart.CategoryLabelLevel = OfficeCategoriesLabelLevel.CategoriesLabelLevelNone + 'Show Data Table. + chart.HasDataTable = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the collection of the all series of this chart. Read-only. + + + + //Open the presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide + ISlide slide = presentation.Slides[0]; + //Get the chart in slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //Modify the chart height + chart.Height = 500; + //Modify the chart width + chart.Width = 700; + //Change the title + chart.ChartTitle = "New title"; + //Change the serie name of first chart serie + chart.Series[0].Name = "Modified serie name"; + //Hiding the category labels + chart.CategoryLabelLevel = OfficeCategoriesLabelLevel.CategoriesLabelLevelNone; + //Show Data Table. + chart.HasDataTable = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open the presentation + Dim presentation As IPresentation = Presentation.Open("Sample.pptx") + 'Get the first slide + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart in slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'Modify the chart height + chart.Height = 500 + 'Modify the chart width + chart.Width = 700 + 'Change the title + chart.ChartTitle = "New title" + 'Change the serie name of first chart serie + chart.Series(0).Name = "Modified serie name" + 'Hiding the category labels + chart.CategoryLabelLevel = OfficeCategoriesLabelLevel.CategoriesLabelLevelNone + 'Show Data Table. + chart.HasDataTable = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the primary category axis. Read-only. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Get the primary category axis + IOfficeChartCategoryAxis primaryCategoryAxis = chart.PrimaryCategoryAxis; + //Set the data range of the category axis + primaryCategoryAxis.CategoryLabels = chart.ChartData[2, 1, 4, 1]; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Get the primary category axis + Dim primaryCategoryAxis As IOfficeChartCategoryAxis = chart.PrimaryCategoryAxis + 'Set the data range of the category axis + primaryCategoryAxis.CategoryLabels = chart.ChartData(2, 1, 4, 1) + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the primary value axis. Read-only. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Get the primary value axis + IOfficeChartValueAxis primaryValueAxis = chart.PrimaryValueAxis; + //Set bold font style + primaryValueAxis.Font.Bold = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Get the primary value axis + Dim primaryValueAxis As IOfficeChartValueAxis = chart.PrimaryValueAxis + 'Set bold font style + primaryValueAxis.Font.Bold = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the primary series axis. Read-only. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Get the primary serie axis + IOfficeChartSeriesAxis primarySerieAxis = chart.PrimarySerieAxis; + //Set the font style of serie axis + primarySerieAxis.Font.Italic = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Get the primary serie axis + Dim primarySerieAxis As IOfficeChartSeriesAxis = chart.PrimarySerieAxis + 'Set the font style of serie axis + primarySerieAxis.Font.Italic = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the secondary category axis. Read-only. + + + + //Open a presentation with Combinational chart type + IPresentation presentation = Presentation.Open("Template.pptx"); + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //Get the secondary category axis + IOfficeChartCategoryAxis secondaryCategoryAxis = chart.PrimaryCategoryAxis; + //Set the minor grid lines + secondaryCategoryAxis.HasMinorGridLines = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open a presentation with Combinational chart type + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'Get the secondary category axis + Dim secondaryCategoryAxis As IOfficeChartCategoryAxis = chart.PrimaryCategoryAxis + 'Set the minor grid lines + secondaryCategoryAxis.HasMinorGridLines = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the secondary value axis. Read-only. + + + + //Open a presentation with Combinational chart type + IPresentation presentation = Presentation.Open("Template.pptx"); + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //Get the secondary value axis + IOfficeChartValueAxis secondaryValueAxis = chart.SecondaryValueAxis; + //Set the tick label position + secondaryValueAxis.TickLabelPosition = OfficeTickLabelPosition.TickLabelPosition_NextToAxis; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open a presentation with Combinational chart type + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'Get the secondary value axis + Dim secondaryValueAxis As IOfficeChartValueAxis = chart.SecondaryValueAxis + 'Set the tick label position + secondaryValueAxis.TickLabelPosition = OfficeTickLabelPosition.TickLabelPosition_NextToAxis + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets an object that represents the complete chart area for the chart. Read-only. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to slide + IPresentationChart chart = slide.Shapes.AddChart(100, 100, 400, 300); + //Set the chart data value + chart.ChartData.SetValue(1, 2, "1"); + chart.ChartData.SetValue(2, 1, "A"); + chart.ChartData.SetValue(2, 2, 20); + //Set chart data range + chart.DataRange = chart.ChartData[2, 2, 4, 4]; + //Set the chart type + chart.ChartType = OfficeChartType.Column_Clustered; + //Get the chart area + IOfficeChartFrameFormat chartArea = chart.ChartArea; + //Set the line pattern of chart border + chartArea.Border.LinePattern = OfficeChartLinePattern.DashDotDot; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to slide + Dim chart As IPresentationChart = slide.Shapes.AddChart(100, 100, 400, 300) + 'Set the chart data value + chart.ChartData.SetValue(1, 2, "1") + chart.ChartData.SetValue(2, 1, "A") + chart.ChartData.SetValue(2, 2, 20) + 'Set chart data range + chart.DataRange = chart.ChartData(2, 2, 4, 4) + 'Set the chart type + chart.ChartType = OfficeChartType.Column_Clustered + 'Get the chart area + Dim chartArea As IOfficeChartFrameFormat = chart.ChartArea + 'Set the line pattern of chart border + chartArea.Border.LinePattern = OfficeChartLinePattern.DashDotDot + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets plot area frame format. Read-only. + + + + IPresentation presentation = Presentation.Create(); + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to slide + IPresentationChart chart = slide.Shapes.AddChart(100, 120, 500, 300); + //Set the data range of chart + chart.DataRange = chart.ChartData[1, 2, 4, 3]; + //Set data to the chart- RowIndex, columnIndex and data + chart.ChartData.SetValue(1, 2, "2012"); + chart.ChartData.SetValue(2, 2, 330); + chart.ChartData.SetValue(3, 2, 490); + chart.ChartData.SetValue(4, 2, 700); + chart.ChartType = OfficeChartType.Area; + //Edge: Specifies that the width or Height will be interpreted as right or bottom of the chart element + //Factor: Specifies that the width or Height will be interpreted as the width or height of the chart element + chart.PlotArea.Layout.LeftMode = LayoutModes.auto; + chart.PlotArea.Layout.TopMode = LayoutModes.factor; + //Value in points should not be a negative value if LayoutMode is Edge + //It can be a negative value if the LayoutMode is Factor. + chart.ChartTitleArea.Layout.Left = 10; + chart.ChartTitleArea.Layout.Top = 100; + //Manually positioning chart plot area + chart.PlotArea.Layout.LayoutTarget = LayoutTargets.outer; + chart.PlotArea.Layout.LeftMode = LayoutModes.edge; + chart.PlotArea.Layout.TopMode = LayoutModes.edge; + //Manually positioning chart legend + chart.Legend.Layout.LeftMode = LayoutModes.factor; + chart.Legend.Layout.TopMode = LayoutModes.factor; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + Dim presentation As IPresentation = Presentation.Create() + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to slide + Dim chart As IPresentationChart = slide.Shapes.AddChart(100, 120, 500, 300) + 'Sets the data range of chart + chart.DataRange = chart.ChartData(1, 2, 4, 3) + 'Set data to the chart- RowIndex, columnIndex and data + chart.ChartData.SetValue(1, 2, "2012") + chart.ChartData.SetValue(2, 2, 330) + chart.ChartData.SetValue(3, 2, 490) + chart.ChartData.SetValue(4, 2, 700) + chart.ChartType = OfficeChartType.Area + 'Edge: Specifies that the width or Height will be interpreted as right or bottom of the chart element + 'Factor: Specifies that the width or Height will be interpreted as the width or height of the chart element + chart.PlotArea.Layout.LeftMode = LayoutModes.auto + chart.PlotArea.Layout.TopMode = LayoutModes.factor + 'Value in points should not be a negative value if LayoutMode is Edge + 'It can be a negative value if the LayoutMode is Factor. + chart.ChartTitleArea.Layout.Left = 10 + chart.ChartTitleArea.Layout.Top = 100 + 'Manually positioning chart plot area + chart.PlotArea.Layout.LayoutTarget = LayoutTargets.outer + chart.PlotArea.Layout.LeftMode = LayoutModes.edge + chart.PlotArea.Layout.TopMode = LayoutModes.edge + 'Manually positioning chart legend + chart.Legend.Layout.LeftMode = LayoutModes.factor + chart.Legend.Layout.TopMode = LayoutModes.factor + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the chart walls. Read-only. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Set the fill type of wall as pattern + chart.Walls.Fill.FillType = OfficeFillType.Pattern; + //set the back color of the pattern fill + chart.Walls.Fill.BackColor = Color.AliceBlue; + //Set the fore color of the pattern fill + chart.Walls.Fill.ForeColor = Color.Brown; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Set the fill type of wall as pattern + chart.Walls.Fill.FillType = OfficeFillType.Pattern + 'set the back color of the pattern fill + chart.Walls.Fill.BackColor = Color.AliceBlue + 'Set the fore color of the pattern fill + chart.Walls.Fill.ForeColor = Color.Brown + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the chart BackWall. Read-only. + + + + //Open the presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide + ISlide slide = presentation.Slides[0]; + //Get the chart in slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //Change the chart type to 3D + chart.ChartType = OfficeChartType.Bar_Clustered_3D; + //Set the rotation + chart.Rotation = 80; + //Set the shadow angle + chart.SideWall.Shadow.Angle = 60; + //Set the backwall border weight + chart.BackWall.Border.LineWeight = OfficeChartLineWeight.Narrow; + //Save the presentation + presentation.Save("output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open the presentation + Dim presentation As IPresentation = Presentation.Open("Sample.pptx") + 'Get the first slide + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart in slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'Change the chart type to 3D + chart.ChartType = OfficeChartType.Bar_Clustered_3D + 'Set the rotation + chart.Rotation = 80 + 'Set the shadow angle + chart.SideWall.Shadow.Angle = 60 + 'Set the backwall border weight + chart.BackWall.Border.LineWeight = OfficeChartLineWeight.Narrow + 'Save the presentation + presentation.Save("output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the chart BackWall. Read-only. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 700, 500); + //Specify the chart title + chart.ChartTitle = "Sales Analysis"; + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData[2, 1, 4, 1]; + //Specify the chart type + chart.ChartType = OfficeChartType.Surface_3D; + //Get the back wall of the chart + IOfficeChartWallOrFloor backWall = chart.BackWall; + //Set the line properties of the back wall + backWall.LineProperties.LineWeight = OfficeChartLineWeight.Narrow; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 700, 500) + 'Specify the chart title + chart.ChartTitle = "Sales Analysis" + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData(2, 1, 4, 1) + 'Specify the chart type + chart.ChartType = OfficeChartType.Surface_3D + 'Get the back wall of the chart + Dim backWall As IOfficeChartWallOrFloor = chart.BackWall + 'Set the line properties of the back wall + backWall.LineProperties.LineWeight = OfficeChartLineWeight.Narrow + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the chart floor. Read-only. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Get the floor of chart + IOfficeChartWallOrFloor floor = chart.Floor; + //Set the filltype of floor as pattern fill + floor.Fill.FillType = OfficeFillType.Pattern; + //Set the back and fore color of the pattern fill + floor.Fill.BackColor = Color.Blue; + floor.Fill.ForeColor = Color.Brown; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Get the floor of chart + Dim floor As IOfficeChartWallOrFloor = chart.Floor + 'Set the filltype of floor as pattern fill + floor.Fill.FillType = OfficeFillType.Pattern + 'Set the back and fore color of the pattern fill + floor.Fill.BackColor = Color.Blue + floor.Fill.ForeColor = Color.Brown + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the charts dataTable object. + + + + IPresentation presentation = Presentation.Open("Template.pptx"); + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //Set the chart with data table + chart.HasDataTable = true; + //Get the data table, read only + IOfficeChartDataTable dataTable = chart.DataTable; + //set borders for data table + dataTable.HasBorders = true; + //Set the show serie keys + dataTable.ShowSeriesKeys = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'Set the chart with data table + chart.HasDataTable = True + 'Get the data table, read only + Dim dataTable As IOfficeChartDataTable = chart.DataTable + 'set borders for data table + dataTable.HasBorders = True + 'Set the show serie keys + dataTable.ShowSeriesKeys = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets whether the chart has data table. + + + + //Open the presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide + ISlide slide = presentation.Slides[0]; + //Get the chart in slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //Modify the chart height + chart.Height = 500; + //Modify the chart width + chart.Width = 700; + //Change the title + chart.ChartTitle = "New title"; + //Change the serie name of first chart serie + chart.Series[0].Name = "Modified serie name"; + //Hiding the category labels + chart.CategoryLabelLevel = OfficeCategoriesLabelLevel.CategoriesLabelLevelNone; + //Show Data Table. + chart.HasDataTable = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open the presentation + Dim presentation As IPresentation = Presentation.Open("Sample.pptx") + 'Get the first slide + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart in slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'Modify the chart height + chart.Height = 500 + 'Modify the chart width + chart.Width = 700 + 'Change the title + chart.ChartTitle = "New title" + 'Change the serie name of first chart serie + chart.Series(0).Name = "Modified serie name" + 'Hiding the category labels + chart.CategoryLabelLevel = OfficeCategoriesLabelLevel.CategoriesLabelLevelNone + 'Show Data Table. + chart.HasDataTable = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the chart legend. + + + + IPresentation presentation = Presentation.Create(); + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to slide + IPresentationChart chart = slide.Shapes.AddChart(100, 120, 500, 300); + //Sets the data range of chart + chart.DataRange = chart.ChartData[1, 2, 4, 3]; + //Set data to the chart- RowIndex, columnIndex and data + chart.ChartData.SetValue(1, 2, "2012"); + chart.ChartData.SetValue(2, 2, 330); + chart.ChartData.SetValue(3, 2, 490); + chart.ChartData.SetValue(4, 2, 700); + chart.ChartType = OfficeChartType.Area; + //Edge: Specifies that the width or Height will be interpreted as right or bottom of the chart element + //Factor: Specifies that the width or Height will be interpreted as the width or height of the chart element + chart.PlotArea.Layout.LeftMode = LayoutModes.auto; + chart.PlotArea.Layout.TopMode = LayoutModes.factor; + //Value in points should not be a negative value if LayoutMode is Edge + //It can be a negative value if the LayoutMode is Factor. + chart.ChartTitleArea.Layout.Left = 10; + chart.ChartTitleArea.Layout.Top = 100; + //Manually positioning chart plot area + chart.PlotArea.Layout.LayoutTarget = LayoutTargets.outer; + chart.PlotArea.Layout.LeftMode = LayoutModes.edge; + chart.PlotArea.Layout.TopMode = LayoutModes.edge; + //Manually positioning chart legend + chart.Legend.Layout.LeftMode = LayoutModes.factor; + chart.Legend.Layout.TopMode = LayoutModes.factor; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + Dim presentation As IPresentation = Presentation.Create() + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to slide + Dim chart As IPresentationChart = slide.Shapes.AddChart(100, 120, 500, 300) + 'Sets the data range of chart + chart.DataRange = chart.ChartData(1, 2, 4, 3) + 'Set data to the chart- RowIndex, columnIndex and data + chart.ChartData.SetValue(1, 2, "2012") + chart.ChartData.SetValue(2, 2, 330) + chart.ChartData.SetValue(3, 2, 490) + chart.ChartData.SetValue(4, 2, 700) + chart.ChartType = OfficeChartType.Area + 'Edge: Specifies that the width or Height will be interpreted as right or bottom of the chart element + 'Factor: Specifies that the width or Height will be interpreted as the width or height of the chart element + chart.PlotArea.Layout.LeftMode = LayoutModes.auto + chart.PlotArea.Layout.TopMode = LayoutModes.factor + 'Value in points should not be a negative value if LayoutMode is Edge + 'It can be a negative value if the LayoutMode is Factor. + chart.ChartTitleArea.Layout.Left = 10 + chart.ChartTitleArea.Layout.Top = 100 + 'Manually positioning chart plot area + chart.PlotArea.Layout.LayoutTarget = LayoutTargets.outer + chart.PlotArea.Layout.LeftMode = LayoutModes.edge + chart.PlotArea.Layout.TopMode = LayoutModes.edge + 'Manually positioning chart legend + chart.Legend.Layout.LeftMode = LayoutModes.factor + chart.Legend.Layout.TopMode = LayoutModes.factor + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets whether the chart has legends. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Hide the legend + chart.HasLegend = false; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Hide the legend + chart.HasLegend = False + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the rotation of the 3-D chart view + (the rotation of the plot area around the z-axis, in degrees).(0 to 360 degrees). + + + + //Open the presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide + ISlide slide = presentation.Slides[0]; + //Get the chart in slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //Change the chart type to 3D + chart.ChartType = OfficeChartType.Bar_Clustered_3D; + //Set the rotation + chart.Rotation = 80; + //Set the shadow angle + chart.SideWall.Shadow.Angle = 60; + //Set the backwall border weight + chart.BackWall.Border.LineWeight = OfficeChartLineWeight.Narrow; + //Save the presentation + presentation.Save("output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open the presentation + Dim presentation As IPresentation = Presentation.Open("Sample.pptx") + 'Get the first slide + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart in slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'Change the chart type to 3D + chart.ChartType = OfficeChartType.Bar_Clustered_3D + 'Set the rotation + chart.Rotation = 80 + 'Set the shadow angle + chart.SideWall.Shadow.Angle = 60 + 'Set the backwall border weight + chart.BackWall.Border.LineWeight = OfficeChartLineWeight.Narrow + 'Save the presentation + presentation.Save("output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the elevation of the 3-D chart view, in degrees (–90 to 90 degrees). + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Set the elevation of chart + chart.Elevation = -50; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Set the elevation of chart + chart.Elevation = -50 + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the perspective for the 3-D chart view (0 to 100). + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Set the perspective + chart.Perspective = 100; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Set the perspective of chart + chart.Perspective = 100 + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the height of a 3-D chart as a percentage of the chart width + (between 5 and 500 percent). + + + + IPresentation presentation = Presentation.Open("Template.pptx"); + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Set the height percent + chart.HeightPercent = 400; + //Set the Depth percent + chart.DepthPercent = 200; + //Set the gap depth of data series + chart.GapDepth = 400; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Set the height percent + chart.HeightPercent = 400 + 'Set the Depth percent + chart.DepthPercent = 200 + 'Set the gap depth of data series + chart.GapDepth = 400 + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the depth of a 3-D chart as a percentage of the chart width + (between 20 and 2000 percent). + + + + IPresentation presentation = Presentation.Open("Template.pptx"); + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Set the height percent + chart.HeightPercent = 400; + //Set the Depth percent + chart.DepthPercent = 200; + //Set the gap depth of data series + chart.GapDepth = 400; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Set the height percent + chart.HeightPercent = 400 + 'Set the Depth percent + chart.DepthPercent = 200 + 'Set the gap depth of data series + chart.GapDepth = 400 + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the distance between the data series in a 3-D chart, as a percentage of the marker width.( 0 - 500 ) + + + + IPresentation presentation = Presentation.Open("Template.pptx"); + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Set the height percent + chart.HeightPercent = 400; + //Set the Depth percent + chart.DepthPercent = 200; + //Set the gap depth of data series + chart.GapDepth = 400; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Set the height percent + chart.HeightPercent = 400 + 'Set the Depth percent + chart.DepthPercent = 200 + 'Set the gap depth of data series + chart.GapDepth = 400 + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets whether if the chart axes are at right angles, independent of chart rotation or elevation. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the right angle axes + chart.RightAngleAxes = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the right angle axes + chart.RightAngleAxes = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets whether if Microsoft Excel scales a 3-D chart so that it's closer in size to the equivalent 2-D chart. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 700, 500); + //Specify the chart title + chart.ChartTitle = "Sales Analysis"; + //Specify the chart type + chart.ChartType = OfficeChartType.Column_Clustered; + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData[2, 1, 4, 1]; + //Set the right angle axes property of the chart + chart.RightAngleAxes = true; + //Set the auto scaling of chart + chart.AutoScaling = true; + //Save the presentation + presentation.Save("sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the right angle axes + chart.RightAngleAxes = True + 'Set the auto scaling of chart + chart.AutoScaling = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets if grid lines are drawn two-dimensionally on a 3-D chart. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Set the 2D gridlines for chart + chart.WallsAndGridlines2D = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Set the 2D gridlines for chart + chart.WallsAndGridlines2D = True + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + + Gets or sets the way that blank cells are plotted on a chart. + + + + IPresentation presentation = Presentation.Open("Template.pptx"); + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Set the way blank cells to be plotted + chart.DisplayBlanksAs = OfficeChartPlotEmpty.Interpolated; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Set the way blank cells to be plotted + chart.DisplayBlanksAs = OfficeChartPlotEmpty.Interpolated + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets whether if only visible cells are plotted. False if both visible and hidden cells are plotted. + + + + IPresentation presentation = Presentation.Open("Template.pptx"); + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Hide the plot visiblity of cells + chart.PlotVisibleOnly = false; + //Hide the chart size with sheet window + chart.SizeWithWindow = false; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Hide the plot visiblity of cells + chart.PlotVisibleOnly = False + 'Hide the chart size with sheet window + chart.SizeWithWindow = False + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets whether the chart size matches with the chart sheet window. True if Microsoft Excel resizes the chart to match the size of the chart sheet window. + False if the chart size isn't attached to the window size. Applies only to chart sheets. + + + + IPresentation presentation = Presentation.Open("Template.pptx"); + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Shapes[0] as IPresentationChart; + //set the chart type + chart.ChartType = OfficeChartType.Column_3D; + //Hide the plot visiblity of cells + chart.PlotVisibleOnly = false; + //Hide the chart size with sheet window + chart.SizeWithWindow = false; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = TryCast(slide.Shapes(0), IOfficeChart) + 'set the chart type + chart.ChartType = OfficeChartType.Column_3D + 'Hide the plot visiblity of cells + chart.PlotVisibleOnly = False + 'Hide the chart size with sheet window + chart.SizeWithWindow = False + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the collection of the all categories of this chart. Read-only. + + + + //Creates a Presentation instance + IPresentation pptxDoc = Presentation.Create(); + //Adds a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Adds chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 700, 500); + //Specifies the chart title + chart.ChartTitle = "Sales Analysis"; + //Sets chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Sets chart data - Row2 + chart.ChartData.SetValue(2, 1, 2010); + chart.ChartData.SetValue(2, 2, 60); + chart.ChartData.SetValue(2, 3, 70); + chart.ChartData.SetValue(2, 4, 80); + //Sets chart data - Row3 + chart.ChartData.SetValue(3, 1, 2011); + chart.ChartData.SetValue(3, 2, 80); + chart.ChartData.SetValue(3, 3, 70); + chart.ChartData.SetValue(3, 4, 60); + //Sets chart data - Row4 + chart.ChartData.SetValue(4, 1, 2012); + chart.ChartData.SetValue(4, 2, 60); + chart.ChartData.SetValue(4, 3, 70); + chart.ChartData.SetValue(4, 4, 80); + //Creates a new chart series with the name + IOfficeChartSerie seriesJan = chart.Series.Add("Jan"); + //Sets the data range of chart series – start row, start column, end row, end column + seriesJan.Values = chart.ChartData[2, 2, 4, 2]; + //Creates a new chart series with the name + IOfficeChartSerie seriesFeb = chart.Series.Add("Feb"); + //Sets the data range of chart series – start row, start column, end row, end column + seriesFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Creates a new chart series with the name + IOfficeChartSerie seriesMarch = chart.Series.Add("March"); + //Sets the data range of chart series – start row, start column, end row, end column + seriesMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Sets the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData[2, 1, 4, 1]; + //Specifies the chart type + chart.ChartType = OfficeChartType.Column_Clustered; + //Get the chart categories. + IOfficeChartCategories chartCategories = chart.Categories; + bool value = chartCategories.IsReadOnly; + //Save the presentation + pptxDoc.Save("Sample.pptx"); + //Close the presentation + pptxDoc.Close(); + + + 'Creates a Presentation instance + Dim pptxDoc As IPresentation = Presentation.Create() + 'Adds a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Adds chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 700, 500) + 'Specifies the chart title + chart.ChartTitle = "Sales Analysis" + 'Sets chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Sets chart data - Row2 + chart.ChartData.SetValue(2, 1, 2010) + chart.ChartData.SetValue(2, 2, 60) + chart.ChartData.SetValue(2, 3, 70) + chart.ChartData.SetValue(2, 4, 80) + 'Sets chart data - Row3 + chart.ChartData.SetValue(3, 1, 2011) + chart.ChartData.SetValue(3, 2, 80) + chart.ChartData.SetValue(3, 3, 70) + chart.ChartData.SetValue(3, 4, 60) + 'Sets chart data - Row4 + chart.ChartData.SetValue(4, 1, 2012) + chart.ChartData.SetValue(4, 2, 60) + chart.ChartData.SetValue(4, 3, 70) + chart.ChartData.SetValue(4, 4, 80) + 'Creates a new chart series with the name + Dim seriesJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Sets the data range of chart series – start row, start column, end row, end column + seriesJan.Values = chart.ChartData(2, 2, 4, 2) + 'Creates a new chart series with the name + Dim seriesFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Sets the data range of chart series – start row, start column, end row, end column + seriesFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Creates a new chart series with the name + Dim seriesMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Sets the data range of chart series – start row, start column, end row, end column + seriesMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Sets the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData(2, 1, 4, 1) + 'Specifies the chart type + chart.ChartType = OfficeChartType.Column_Clustered + 'Get the chart categories + Dim chartCategories As IOfficeChartCategories = chart.Categories + Dim value As Boolean = chartCategories.IsReadOnly + 'Adds the third slide into the Presentation + pptxDoc.Save("Sample.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + Gets or sets the series name filter option + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 500, 300); + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //set the serie name level + chart.SeriesNameLevel = OfficeSeriesNameLevel.SeriesNameLevelNone; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 500, 300) + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'set the serie name level + chart.SeriesNameLevel = OfficeSeriesNameLevel.SeriesNameLevelNone + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the category name filter option + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 700, 500); + //Specify the chart title + chart.ChartTitle = "Sales Analysis"; + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData[2, 1, 4, 1]; + //Specify the chart type + chart.ChartType = OfficeChartType.Surface_3D; + //Set the category label level + chart.CategoryLabelLevel = OfficeCategoriesLabelLevel.CategoriesLabelLevelAll; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 700, 500) + 'Specify the chart title + chart.ChartTitle = "Sales Analysis" + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData(2, 1, 4, 1) + 'Specify the chart type + chart.ChartType = OfficeChartType.Surface_3D + 'Set the category label level + chart.CategoryLabelLevel = OfficeCategoriesLabelLevel.CategoriesLabelLevelAll + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets the chart data. Read-only. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 700, 500); + //Specify the chart title + chart.ChartTitle = "Sales Analysis"; + //Specify the chart type + chart.ChartType = OfficeChartType.Column_Clustered; + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData[2, 1, 4, 1]; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 700, 500) + 'Specify the chart title + chart.ChartTitle = "Sales Analysis" + 'Specify the chart type + chart.ChartType = OfficeChartType.Column_Clustered + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData(2, 1, 4, 1) + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Gets or sets the Style of the chart. + + + + //Create a presentation instance + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add chart to the slide with position and size + IPresentationChart chart = slide.Charts.AddChart(100, 10, 700, 500); + //Specify the chart style + chart.Style=30; + //Specify the chart title + chart.ChartTitle = "Sales Analysis"; + //Specify the chart type + chart.ChartType = OfficeChartType.Column_Clustered; + //Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan"); + chart.ChartData.SetValue(1, 3, "Feb"); + chart.ChartData.SetValue(1, 4, "March"); + //Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010"); + chart.ChartData.SetValue(2, 2, "60"); + chart.ChartData.SetValue(2, 3, "70"); + chart.ChartData.SetValue(2, 4, "80"); + //Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011"); + chart.ChartData.SetValue(3, 2, "80"); + chart.ChartData.SetValue(3, 3, "70"); + chart.ChartData.SetValue(3, 4, "60"); + //Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012"); + chart.ChartData.SetValue(4, 2, "60"); + chart.ChartData.SetValue(4, 3, "70"); + chart.ChartData.SetValue(4, 4, "80"); + //Create a new chart series with the name + IOfficeChartSerie serieJan = chart.Series.Add("Jan"); + //Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData[2, 2, 4, 2]; + //Create a new chart series with the name + IOfficeChartSerie serieFeb = chart.Series.Add("Feb"); + //Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData[2, 3, 4, 3]; + //Create a new chart series with the name + IOfficeChartSerie serieMarch = chart.Series.Add("March"); + //Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData[2, 4, 4, 4]; + //Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData[2, 1, 4, 1]; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation instance + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add chart to the slide with position and size + Dim chart As IPresentationChart = slide.Charts.AddChart(100, 10, 700, 500) + 'Specify the chart style + chart.Style=30; + 'Specify the chart title + chart.ChartTitle = "Sales Analysis" + 'Specify the chart type + chart.ChartType = OfficeChartType.Column_Clustered + 'Set chart data - Row1 + chart.ChartData.SetValue(1, 2, "Jan") + chart.ChartData.SetValue(1, 3, "Feb") + chart.ChartData.SetValue(1, 4, "March") + 'Set chart data - Row2 + chart.ChartData.SetValue(2, 1, "2010") + chart.ChartData.SetValue(2, 2, "60") + chart.ChartData.SetValue(2, 3, "70") + chart.ChartData.SetValue(2, 4, "80") + 'Set chart data - Row3 + chart.ChartData.SetValue(3, 1, "2011") + chart.ChartData.SetValue(3, 2, "80") + chart.ChartData.SetValue(3, 3, "70") + chart.ChartData.SetValue(3, 4, "60") + 'Set chart data - Row4 + chart.ChartData.SetValue(4, 1, "2012") + chart.ChartData.SetValue(4, 2, "60") + chart.ChartData.SetValue(4, 3, "70") + chart.ChartData.SetValue(4, 4, "80") + 'Create a new chart series with the name + Dim serieJan As IOfficeChartSerie = chart.Series.Add("Jan") + 'Set the data range of chart serie – start row, start column, end row, end column + serieJan.Values = chart.ChartData(2, 2, 4, 2) + 'Create a new chart series with the name + Dim serieFeb As IOfficeChartSerie = chart.Series.Add("Feb") + 'Set the data range of chart serie – start row, start column, end row, end column + serieFeb.Values = chart.ChartData(2, 3, 4, 3) + 'Create a new chart series with the name + Dim serieMarch As IOfficeChartSerie = chart.Series.Add("March") + 'Set the data range of chart series – start row, start column, end row, end column + serieMarch.Values = chart.ChartData(2, 4, 4, 4) + 'Set the data range of the category axis + chart.PrimaryCategoryAxis.CategoryLabels = chart.ChartData(2, 1, 4, 1) + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + True if chart is parsed; + otherwise False. + + + + + Determines whether to use the excel data range for the chart. + + + + + Determines whether the chart data range is set or not. + + + + + Converts the chart to image and saves the image to the specified stream. + + The stream to save the image. + + + + Sets the chart data with the specified two dimensional data. + + Represents the two dimensional chart data + + + + + Set data range for chart from the sheet. + + Worksheet number in the excel document that contains data for a chart. + Data range in the worksheet from which the chart to be created. + + + + Sets the chart data with the specified two dimensional data,row and column index. + + Represents the two dimensional chart data + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + + + + + Sets the chart data. + + IEnumerable object with desired data + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + + + + + Replaces the chart data with the worksheet data. + + + Optional Boolean. Set to true to update all the formulas in the Excel sheet. The default value is false. + + + + //Open a presentation containing charts + IPresentation presentation = Presentation.Open("Template.pptx"); + //Get the slide from presentation + ISlide slide = presentation.Slides[0]; + //Get the chart from slide + IPresentationChart chart = slide.Charts[0]; + //Refreshes the chart object according its excel data. + chart.Refresh(true); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open a presentation containing charts + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + 'Get the slide from presentation + Dim slide As ISlide = presentation.Slides(0) + 'Get the chart from slide + Dim chart As IPresentationChart = slide.Charts(0) + 'Refreshes the chart object according its excel data. + chart.Refresh(True) + 'Save the presentation + presentation.Save("Sample.pptx") + 'Close the presentation + presentation.Close() + + + + + + Returns the current chart object. + + + + + + Compares the current Shape object with given Shape object. + + The Shape object to compare with the current instance. + True if the Shape objects are equal; otherwise, false. + + + + Gets a instance for this chart. Read-only. + + + This property can be used in to convert chart as an image. + + + + + Type of the chart. + + + + + DataRange for the chart series. + + + + + True if series are in rows in DataRange; + False otherwise. + + + + + Title of the chart. + + + + + Returns object that describes chart title area. Read-only. + + + + + Page setup for the chart. Read-only. + + + + + X coordinate of the upper-left corner + of the chart in points (1/72 inch). + + + + + Y coordinate of the upper-left corner + of the chart in points (1/72 inch). + + + + + Collection of the all series of this chart. Read-only. + + + + + Primary category axis. Read-only. + + + + + Primary value axis. Read-only. + + + + + Primary series axis. Read-only. + + + + + Secondary category axis. Read-only. + + + + + Secondary value axis. Read-only. + + + + + Returns an object that represents the complete chart area for the chart. Read-only. + + + + + Returns plot area frame format. Read-only. + + + + + Represents chart walls. Read-only. + + + + + Represents chart BackWall. Read-only. + + + + + Represents chart BackWall. Read-only. + + + + + Represents chart floor. Read-only. + + + + + Represents charts dataTable object. + + + + + True if the chart has a data table. + + + + + Represents chart legend. + + + + + True if the chart has a legend object. + + + + + Returns or sets the rotation of the 3-D chart view + (the rotation of the plot area around the z-axis, in degrees).(0 to 360 degrees). + + + + + Returns or sets the elevation of the 3-D chart view, in degrees (–90 to +90 degrees). + + + + + Returns or sets the perspective for the 3-D chart view (0 to 100). + + + + + Returns or sets the height of a 3-D chart as a percentage of the chart width + (between 5 and 500 percent). + + + + + Returns or sets the depth of a 3-D chart as a percentage of the chart width + (between 20 and 2000 percent). + + + + + Returns or sets the distance between the data series in a 3-D chart, as a percentage of the marker width.( 0 - 500 ) + + + + + True if the chart axes are at right angles, independent of chart rotation or elevation. + + + + + True if Microsoft Excel scales a 3-D chart so that it's closer in size to the equivalent 2-D chart. + + + + + True if gridlines are drawn two-dimensionally on a 3-D chart.This is only for Binary file format. + + + + + Indicates whether chart has plot area. + + + + + Represents the way that blank cells are plotted on a chart. + + + + + True if only visible cells are plotted. False if both visible and hidden cells are plotted.This is only for Binary file format. + + + + + True if Microsoft Excel resizes the chart to match the size of the chart sheet window. + False if the chart size isn't attached to the window size. Applies only to chart sheets. + This is only for Binary file format. + + + + + Gets or sets the type of the pivot chart. + + The type of the pivot chart. + + + + Gets or sets a value indicating whether [show all field buttons]. + + + true if [show all field buttons]; otherwise, false. + + + + + Gets or sets a value indicating whether [show value field buttons]. + + + true if [show value field buttons]; otherwise, false. + + + + + Gets or sets a value indicating whether [show axis field buttons]. + + + true if [show axis field buttons]; otherwise, false. + + + + + Gets or sets a value indicating whether [show legend field buttons]. + + + true if [show legend field buttons]; otherwise, false. + + + + + Gets or sets a value indicating whether [show report filter field buttons]. + + + true if [show report filter field buttons]; otherwise, false. + + + + + Collection of the all categories of this chart. Read-only. + + + + + Represents the series name filter option + + + + + Represents the category name filter option + + + + + Represents the style of the chart + + + + + Represents chart data. Read-only. + + + + + Returns or sets whether to use the excel data range for chart. + + + + + Determines whether Chart data range is set or not. + + + + + True if chart is parsed; + False otherwise. + + + + + Represents the document properties in a MS Word document. + + + + + + Represents the built-in document properties. + + + + + Gets or sets the title. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the Title. + builtInDocumentProperties.Title = "Presentation Title"; + //Save the presentation. + presentation.Save("Title.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the Title + builtInDocumentProperties.Title = "Presentation Title" + 'Save the presentation. + presentation__1.Save("Title.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the subject. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the Subject + builtInDocumentProperties.Subject = "Subject"; + //Save the presentation. + presentation.Save("Subject.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the Subject + builtInDocumentProperties.Subject = "Subject" + 'Save the presentation. + presentation__1.Save("Subject.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the author. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the Author + builtInDocumentProperties.Author = "Author"; + //Save the presentation. + presentation.Save("Author.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the Author + builtInDocumentProperties.Author = "Author" + 'Save the presentation. + presentation__1.Save("Author.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the keywords. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the keywords. + builtInDocumentProperties.Keywords = "Keywords"; + //Save the presentation. + presentation.Save("Keywords.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the keywords. + builtInDocumentProperties.Keywords = "Keywords" + 'Save the presentation. + presentation__1.Save("Keywords.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the comments. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the comments. + builtInDocumentProperties.Comments = "Comments"; + //Save the presentation. + presentation.Save("Comments.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the comments. + builtInDocumentProperties.Comments = "Comments" + 'Save the presentation. + presentation__1.Save("Comments.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the template. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the template. + builtInDocumentProperties.Template = "Presentation Template"; + //Save the presentation. + presentation.Save("Template.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the template. + builtInDocumentProperties.Template = "Presentation Template" + 'Save the presentation. + presentation__1.Save("Template.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the last author. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the last author. + builtInDocumentProperties.LastAuthor = "Last Author"; + //Save the presentation. + presentation.Save("LastAuthor.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the last author. + builtInDocumentProperties.LastAuthor = "Last Author" + 'Save the presentation. + presentation__1.Save("LastAuthor.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the revision number. + + This property is intended to store only valid numerical string. + Any non-numerical string assigned to this property will not be accepted. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the revision number. + builtInDocumentProperties.RevisionNumber = "200"; + //Save the presentation. + presentation.Save("RevisionNumber.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the revision number. + builtInDocumentProperties.RevisionNumber = "200" + 'Save the presentation. + presentation__1.Save("RevisionNumber.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the edit time. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the edit time. + builtInDocumentProperties.EditTime = TimeSpan.FromDays(22); + //Save the presentation. + presentation.Save("EditTime.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the edit time. + builtInDocumentProperties.EditTime = TimeSpan.FromDays(22) + 'Save the presentation. + presentation__1.Save("EditTime.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the last printed. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the last printed. + builtInDocumentProperties.LastPrinted = DateTime.Now; + //Save the presentation. + presentation.Save("LastPrinted.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the last printed. + builtInDocumentProperties.LastPrinted = DateTime.Now + 'Save the presentation. + presentation__1.Save("LastPrinted.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the creation date. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the creation date. + builtInDocumentProperties.CreationDate = DateTime.Today; + //Save the presentation. + presentation.Save("CreationDate.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the creation date. + builtInDocumentProperties.CreationDate = DateTime.Today + 'Save the presentation. + presentation__1.Save("CreationDate.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the last save date. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the last save date. + builtInDocumentProperties.LastSaveDate = DateTime.Today; + //Save the presentation. + presentation.Save("LastSaveDate.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the last save date. + builtInDocumentProperties.LastSaveDate = DateTime.Today + 'Save the presentation. + presentation__1.Save("LastSaveDate.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the page count. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the page count. + builtInDocumentProperties.PageCount = 300; + //Save the presentation. + presentation.Save("PageCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the page count. + builtInDocumentProperties.PageCount = 300 + 'Save the presentation. + presentation__1.Save("PageCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the word count. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the word count. + builtInDocumentProperties.WordCount = 551; + //Save the presentation. + presentation.Save("WordCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the word count. + builtInDocumentProperties.WordCount = 551 + 'Save the presentation. + presentation__1.Save("WordCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the character count. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the character count. + builtInDocumentProperties.CharCount = 10; + //Save the presentation. + presentation.Save("CharCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the character count. + builtInDocumentProperties.CharCount = 10 + 'Save the presentation. + presentation__1.Save("CharCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the category. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the category. + builtInDocumentProperties.Category = "Category"; + //Save the presentation. + presentation.Save("Category.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the category. + builtInDocumentProperties.Category = "Category" + 'Save the presentation. + presentation__1.Save("Category.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the target format (35mm, printer, video, and so on). + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the PresentationTarget + builtInDocumentProperties.PresentationTarget = "Presentation Target"; + //Save the presentation. + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the PresentationTarget + builtInDocumentProperties.PresentationTarget = "Presentation Target" + 'Save the presentation. + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the byte count. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the byte count. + builtInDocumentProperties.ByteCount = 20; + //Save the presentation. + presentation.Save("ByteCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the byte count. + builtInDocumentProperties.ByteCount = 20 + 'Save the presentation. + presentation__1.Save("ByteCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the line count. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the line count. + builtInDocumentProperties.LineCount = 3; + //Save the presentation. + presentation.Save("LineCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the line count. + builtInDocumentProperties.LineCount = 3 + 'Save the presentation. + presentation__1.Save("LineCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the paragraph count. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the paragraph count. + builtInDocumentProperties.ParagraphCount = 84; + //Save the presentation. + presentation.Save("ParagraphCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the paragraph count. + builtInDocumentProperties.ParagraphCount = 84 + 'Save the presentation. + presentation__1.Save("ParagraphCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the SlideCount. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the SlideCount. + builtInDocumentProperties.SlideCount = 10; + //Save the presentation. + presentation.Save("SlideCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the SlideCount. + builtInDocumentProperties.SlideCount = 10 + 'Save the presentation. + presentation__1.Save("SlideCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the note count. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the note count. + builtInDocumentProperties.NoteCount = 100; + //Save the presentation. + presentation.Save("NoteCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the note count. + builtInDocumentProperties.NoteCount = 100 + 'Save the presentation. + presentation__1.Save("NoteCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the hidden count. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the hidden count. + builtInDocumentProperties.HiddenCount = 40; + //Save the presentation. + presentation.Save("NoteCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the hidden count. + builtInDocumentProperties.HiddenCount = 40 + 'Save the presentation. + presentation__1.Save("NoteCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the MultimediaClipCount. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the MultimediaClipCount. + builtInDocumentProperties.MultimediaClipCount = 0; + //Save the presentation. + presentation.Save("MultimediaClipCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the MultimediaClipCount. + builtInDocumentProperties.MultimediaClipCount = 0 + 'Save the presentation. + presentation__1.Save("MultimediaClipCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the manager name. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the manager name. + builtInDocumentProperties.Manager = "Manager"; + //Save the presentation. + presentation.Save("MultimediaClipCount.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the manager name. + builtInDocumentProperties.Manager = "Manager" + 'Save the presentation. + presentation__1.Save("MultimediaClipCount.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the company name. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the company name. + builtInDocumentProperties.Company = "Company"; + //Save the presentation. + presentation.Save("Company.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the company name. + builtInDocumentProperties.Company = "Company" + 'Save the presentation. + presentation__1.Save("Company.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Indicates whether the custom links are + hampered by excessive noise, for all applications. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the LinksDirty + builtInDocumentProperties.LinksDirty = true; + //Save the presentation. + presentation.Save("Company.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the LinksDirty + builtInDocumentProperties.LinksDirty = true + 'Save the presentation. + presentation__1.Save("Company.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the application name. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the application name. + builtInDocumentProperties.ApplicationName = "Application Name"; + //Save the presentation. + presentation.Save("ApplicationName.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the application name. + builtInDocumentProperties.ApplicationName = "Application Name" + 'Save the presentation. + presentation__1.Save("ApplicationName.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the content status. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the content status. + builtInDocumentProperties.ContentStatus = "Content Status"; + //Save the presentation. + presentation.Save("ContentStatus.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the content status. + builtInDocumentProperties.ContentStatus = "Content Status" + 'Save the presentation. + presentation__1.Save("ContentStatus.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the language. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the language. + builtInDocumentProperties.Language = "English"; + //Save the presentation. + presentation.Save("Language.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the language. + builtInDocumentProperties.Language = "English" + 'Save the presentation. + presentation__1.Save("Language.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the version. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built in document properties from the presentation. + IBuiltInDocumentProperties builtInDocumentProperties = presentation.BuiltInDocumentProperties; + //Set the version. + builtInDocumentProperties.Version = "1"; + //Save the presentation. + presentation.Save("Version.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built in document properties from the presentation. + Dim builtInDocumentProperties As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the version. + builtInDocumentProperties.Version = "1" + 'Save the presentation. + presentation__1.Save("Version.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Guid for parsing/serialization summary properties. + + + + + Guid for parsing/serialization document properties. + + + + + Dictionary with document properties, key - property name/id, value - property object. + + + + + Dictionary with summary document properties, key - property id, value - property object. + + + + + Default constructor. + + + + + Returns dictionary where property must be placed. + + Property id. + Dictionary where property must be placed. + + + + Title document property. + + + + + Subject document property. + + + + + Author document property. + + + + + Keywords document property. + + + + + Comments document property. + + + + + Template document property. + + + + + LastAuthor document property. + + + + + Revision number document property. + + This property is intended to store only valid numerical string. + Any non-numerical string assigned to this property will not be accepted. + + + + EditTime document property. + + + + + LastPrinted document property. + + + + + CreationDate document property. + + + + + LastSaveDate document property. + + + + + PageCount document property. + + + + + WordCount document property. + + + + + CharCount document property. + + + + + Indicates whether the file has Headpair tag. + + + + + Category. + + + + + Target format for presentation (35mm, printer, video, and so on). + + + + + ByteCount. + + + + + LineCount. + + + + + ParCount. + + + + + SlideCount. + + + + + NoteCount. + + + + + HiddenCount. + + + + + MmclipCount. + + + + + Set to True when scaling of the thumbnail is desired. If not set, cropping is desired. + + + + + Manager. + + + + + Company. + + + + + Boolean value to indicate whether the custom links are + hampered by excessive noise, for all applications. + + + + + + + + + + Clipboard format. + + + + + Clipboard data. + + + + + Createas copy of the current object. + + A copy of the current object. + + + + Saves clipboard data into stream. + + Stream to write data into. + Size of the written data. + + + + Extracts data from the stream. + + Stream to get data from. + + + + Contains utility methods for object cloning. + + + + + Clones int array. + + Array to clone + Returns cloned array. + + + + Clones ushort array. + + Array to clone. + Returns cloned array. + + + + Clones string array. + + Array to clone. + Returns cloned array. + + + + Clones object array. + + Array to clone. + Returns cloned array. + + + + Clones object that implements ICloneable interface. + + Object to clone. + A clone of the object. + + + + Clones byte array. + + Array to clone. + Return cloned array. + + + + Clone Dictionary. + + Dictionary to clone + Returns a copy of the Dictionary. + + + + Clone Dictionary. + + Dictionary to clone + Returns a copy of the Dictionary. + + + + Creates copy of the stream. + + Stream to copy. + Created stream. + + + + Summary description for CustomDocumentProperties. + + + + + + Represents the custom document properties. + + + + + Removes the property with specified name, from the document property collection. + + The name of the property to remove. + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new custom document property + customDocumentProperties.Add("PropertyA"); + //Check if the item exist in document properties and remove + if (customDocumentProperties.Contains("PropertyA")) + customDocumentProperties.Remove("PropertyA"); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new custom document property + customDocumentProperties.Add("PropertyA") + 'Check if the item exist in document properties and remove + If customDocumentProperties.Contains("PropertyA") Then + customDocumentProperties.Remove("PropertyA") + End If + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Determines whether the property with specified name is in the document property collection. + + The name of the document property to locate. + true if property is present in the collection; otherwise, false. + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new custom document property + customDocumentProperties.Add("PropertyA"); + //Check if the item exist in document properties + if (customDocumentProperties.Contains("PropertyA")) + //Sets a four byte signed integer value. + customDocumentProperties["PropertyA"].Int32 = 256; + //Save the presentation + presentation.Save("Clear.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new custom document property + customDocumentProperties.Add("PropertyA") + 'Check if the item exist in document properties + If customDocumentProperties.Contains("PropertyA") Then + 'Sets a four byte signed integer value. + customDocumentProperties("PropertyA").Int32 = 256 + End If + 'Save the presentation + presentation__1.Save("Clear.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a document property to the presentation with the specified name. + + The name of the document property. + The instance + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new custom document property + customDocumentProperties.Add("Property1"); + //Set a Boolean value. + customDocumentProperties["Property1"].Boolean = true; + //Save the presentation + presentation.Save("Output.pptx"); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new custom document property + customDocumentProperties.Add("Property1") + 'Set a Boolean value. + customDocumentProperties("Property1").[Boolean] = True + 'Save the presentation + presentation__1.Save("Output.pptx") + + + + + + Removes all the document properties from the presentation. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new custom document property + customDocumentProperties.Add("Property1"); + //Set a Boolean value. + customDocumentProperties["Property1"].Boolean = true; + //Add a new custom document property + customDocumentProperties.Add("Property2"); + //Set a date time. + customDocumentProperties["Property2"].DateTime = DateTime.Now; + //Clear the properties + customDocumentProperties.Clear(); + //Save the presentation + presentation.Save("Clear.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new custom document property + customDocumentProperties.Add("Property1") + 'Set a Boolean value. + customDocumentProperties("Property1").[Boolean] = True + 'Add a new custom document property + customDocumentProperties.Add("Property2") + 'Set a date time. + customDocumentProperties("Property2").DateTime = DateTime.Now + 'Clear the properties + customDocumentProperties.Clear() + 'Save the presentation + presentation__1.Save("Clear.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance with the specified name, from the document property collection. Read-only. + + The name of the document property to locate. + Returns the element at the particular name. + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new custom document property + customDocumentProperties.Add("Property1"); + //Set a Boolean value. + customDocumentProperties["Property1"].Boolean = true; + //Add a new custom document property + customDocumentProperties.Add("Property2"); + //Set a date time. + customDocumentProperties["Property2"].DateTime = DateTime.Now; + //Get the specific property, read only + IDocumentProperty documentProp = customDocumentProperties["Property1"]; + //Save the presentation + presentation.Save("CustomProperty.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new custom document property + customDocumentProperties.Add("Property1") + 'Set a Boolean value. + customDocumentProperties("Property1").[Boolean] = True + 'Add a new custom document property + customDocumentProperties.Add("Property2") + 'Set a date time. + customDocumentProperties("Property2").DateTime = DateTime.Now + 'Get the specific property, read only + Dim documentProp As IDocumentProperty = customDocumentProperties("Property1") + 'Save the presentation + presentation__1.Save("CustomProperty.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance at the specified index of document property collection. Read-only. + + The zero-based index of the element. + Returns the element at the particular index. + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new custom document property + customDocumentProperties.Add("Property1"); + //Set a Boolean value. + customDocumentProperties["Property1"].Boolean = true; + //Add a new custom document property + customDocumentProperties.Add("Property2"); + //Set a date time. + customDocumentProperties["Property2"].DateTime = DateTime.Now; + //Get the property at specific index, read only + IDocumentProperty documentProperty = customDocumentProperties[0]; + //Save the presentation + presentation.Save("CustomProperty.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new custom document property + customDocumentProperties.Add("Property1") + 'Set a Boolean value. + customDocumentProperties("Property1").[Boolean] = True + 'Add a new custom document property + customDocumentProperties.Add("Property2") + 'Set a date time. + customDocumentProperties("Property2").DateTime = DateTime.Now + 'Get the property at specific index, read only + Dim documentProperty As IDocumentProperty = customDocumentProperties(0) + 'Save the presentation + presentation__1.Save("CustomProperty.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of document properties in the presentation. Read-only. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new custom document property + customDocumentProperties.Add("Property1"); + //Set a Boolean value. + customDocumentProperties["Property1"].Boolean = true; + //Add a new custom document property + customDocumentProperties.Add("Property2"); + //Set a date time. + customDocumentProperties["Property2"].DateTime = DateTime.Now; + //Add a new custom document property + customDocumentProperties.Add("Property3"); + //Sets a four byte signed integer value. + customDocumentProperties["Property3"].Int32 = 256; + //Get the count of custom document properties, read only + int count = customDocumentProperties.Count; + //Save the presentation + presentation.Save("Count.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new custom document property + customDocumentProperties.Add("Property1") + 'Set a Boolean value. + customDocumentProperties("Property1").[Boolean] = True + 'Add a new custom document property + customDocumentProperties.Add("Property2") + 'Set a date time. + customDocumentProperties("Property2").DateTime = DateTime.Now + 'Add a new custom document property + customDocumentProperties.Add("Property3") + 'Sets a four byte signed integer value. + customDocumentProperties("Property3").Int32 = 256 + 'Get the count of custom document properties, read only + Dim count As Integer = customDocumentProperties.Count + 'Save the presentation + presentation__1.Save("Count.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Custom guid string. + + + + + Guid used for parsing/serialization of custom properties. + + + + + Dictionary with document properties, key - property name/id, value - property value. + + + + + Default constructor. + + + + + Returns custom property by name. + + Custom property. + Custom property. + + + + Returns the document property list of the custom document properties. + + Document property list. + + + + Removes specified object from the collection. + + Property name. + + + + Adds element to the collection. + + Property name to add. + Newly created property. + + + + Checks whether collection contains property with specified name. + + Name to check. + True if property is contained by collection; false otherwise. + + + + Returns single entry from the collection. Read-only. + + + + + Returns single entry from the collection. Read-only. + + + + + This class contains constants required for document properties parsing and serialization in Excel 2007 format. + + + + + Core properties enable users to get and set well-known and common sets of property metadata within packages. + + + + + Represents a categorization of the content of this package. + + + + + Represents the date of creation of the resource. + + + + + Represents an entity primarily responsible for making the content of the resource. + + + + + Represents an explanation of the content of the resource. + + + + + Represents a delimited set of keywords to support searching and indexing. + + + + + Represents the user who performed the last modification. + + + + + Represents the date and time of the last printing. + + + + + Represents the date on which the resource was changed. + + + + + Represents the topic of the content of the resource. + + + + + Represents the name given to the resource. + + + + + Represents Xsi attribute. + + + + + Represents Xsi attribute value. + + + + + Represents date time format structure. + + + + + This element specifies the application properties of a document. + + + + + This element specifies the name of the application that created this document. + + + + + This element specifies the total number of characters in a document. + + + + + This element specifies the name of a company associated with the document. + + + + + MS Excel uses this Tag to represents the xml parts. In our XlsIO, + this tag is used to find the document is generated by MS Excel. + + + + + Tag to represents the file is generated by Essential Presentation. + + + + + This element specifies the total number of lines in a document when last saved by a conforming producer if applicable. + + + + + This element specifies the name of a supervisor associated with the document. + + + + + This element specifies the total number of sound or video clips that are present in the document. + + + + + This element specifies the number of slides in a presentation containing notes. + + + + + This element specifies the total number of pages of a document if applicable. + + + + + This element specifies the total number of paragraphs found in a document if applicable. + + + + + This element specifies the intended format for a presentation document. + + + + + This element specifies the total number of slides in a presentation document. + + + + + This element specifies the name of an external document template containing format and style information + used to create the current document. + + + + + Total time that a document has been edited. The default time unit is minutes. + + + + + This element specifies the total number of words contained in a document when last saved. + + + + + This element specifies the base string used for evaluating relative hyperlinks in this document. + + + + + Represents default Excel97-03 hyperlink base name. + + + + + Parent element for the custom file properties part. + + + + + This element specifies a single custom file property. + + + + + Uniquely relates a custom property with an OLE property. + + + + + Uniquely relates a custom property with an OLE property. + + + + + Specifies the name of this custom file property. + + + + + This element specifies a Boolean variant type. + + + + + This element specifies a wide string variant type. + + + + + This element specifies a string variant type. + + + + + This element specifies a date variant type of type date-time as defined in RFC 3339. + + + + + This element specifies a 4-byte signed integer variant type. + + + + + This element specifies a 8-byte real number variant type. + + + + + This element specifies an integer variant type. + + + + + This element specifies a file-time variant type of type date-time. + + + + + Represents the name of the link target attribute. + + + + + Summary description for DocumentPropertyImpl. + + + + + + Represents the custom or built-in document property. + + + + + Indicates whether the property is built-in or not. Read-only. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set a Boolean value. + documentProperty.Boolean = true; + //Get boolean value to check if built-in property or not, it is read only + bool value = documentProperty.IsBuiltIn; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set a Boolean value. + documentProperty.[Boolean] = True + 'Get boolean value to check if built-in property or not, it is read only + Dim value As Boolean = documentProperty.IsBuiltIn + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets the property id for the built-in property. Read-only. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set a Boolean value. + documentProperty.Boolean = true; + //Get the built-in property, it is read only + BuiltInProperty builtinProp = documentProperty.BuiltInProperty; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set a Boolean value. + documentProperty.[Boolean] = True + 'Get the built-in property, it is read only + Dim builtinProp As BuiltInProperty = documentProperty.BuiltInProperty + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets the property name. Read-only. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set a Boolean value. + documentProperty.Boolean = true; + //Get the name of document property + string name = documentProperty.Name; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set a Boolean value. + documentProperty.[Boolean] = True + 'Get the name of document property + Dim name As String = documentProperty.Name + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the property value. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set the timespan value + documentProperty.TimeSpan = TimeSpan.FromMinutes(20.30); + //Set the value of document property + documentProperty.Value = 100; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set the timespan value + documentProperty.TimeSpan = TimeSpan.FromMinutes(20.3) + //Set the value of document property + documentProperty.Value = 100; + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the boolean value. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set a Boolean value. + documentProperty.Boolean = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set a Boolean value. + documentProperty.[Boolean] = True + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the integer value. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set the integer property + documentProperty.Integer = 130; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set integer property + documentProperty.[Integer] = 130 + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the 4-bytes signed integer value. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set value for Int32 + documentProperty.Int32 = 25; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set value for Int32 + documentProperty.Int32 = 25 + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the double value. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set a double value. + documentProperty.Double = 345.00; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set a double value. + documentProperty.[Double] = 345.0 + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the string value. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set the text + documentProperty.Text = "Document Property"; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set the text + documentProperty.Text = "Document Property" + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the DateTime value. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set a date time. + documentProperty.DateTime = DateTime.Now; + //Save the presentation + presentation.Save("DateTime.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set a date time. + documentProperty.DateTime = DateTime.Now + 'Save the presentation + presentation__1.Save("DateTime.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the TimeSpan value. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set the timespan value + documentProperty.TimeSpan = TimeSpan.FromMinutes(20.30); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set the timespan value + documentProperty.TimeSpan = TimeSpan.FromMinutes(20.3) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets the source of a linked custom document property. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set the link source + documentProperty.LinkSource = "www.google.com"; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set the link source + documentProperty.LinkSource = "www.google.com" + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets or sets a boolean value indicates whether the property is linked to the content. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new document property. + IDocumentProperty documentProperty = customDocumentProperties.Add("PropertyA"); + //Set the link source + documentProperty.LinkSource = "www.google.com"; + //Set the link to content + documentProperty.LinkToContent = true; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new document property. + Dim documentProperty As IDocumentProperty = customDocumentProperties.Add("PropertyA") + 'Set the link source + documentProperty.LinkSource = "www.google.com" + 'Set the link to content + documentProperty.LinkToContent = True + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Start index for Id2 PropVariant property. + + + + + Start year for FILETIME structure. + + + + + Property id. + + + + + Property name. + + + + + Property value. + + + + + Property type. + + + + + The source of a linked custom document property. String. + + + + + True if the value of the custom document property is linked to the content + of the container document. False if the value is static. Boolean. + + + + + Default constructor. + + + + + Initializes new instance of the class. + + Property name. + Property value. + + + + Initializes new instance of the class. + + Property id. + Property value. + + + + Detects type of the string. + + String value to check. + Detected string type. + + + + Tries to detect and set property type. + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Creates copy of the internal value. + + + + + Indicates whether property is built-in. Read-only. + + + + + Returns / sets property id for built-in properties. + + + + + Returns property name. Read-only. + + + + + Gets / sets property value. + + + + + Gets / sets boolean value. + + + + + Gets / sets integer value. + + + + + Gets / sets 4-bytes signed integer value. + + + + + Gets / sets double value. + + + + + Gets / sets string value. + + + + + Gets / sets DateTime value. + + + + + Gets / sets TimeSpan value. + + + + + Gets / sets Blob value. + + + + + Gets or sets clipboard data value. + + + + + Gets / sets array of strings. + + + + + Gets / sets array of objects. Supported object types are string and Int32. + + + + + Gets / sets document property type. + + + + + Returns or sets the source of a linked custom document property. String. + + + + + True if the value of the custom document property is linked to the content of the container document. False if the value is static. Boolean. + + + + + Internal name of the document property. + + + + + Specifies the built-in document properties of the PowerPoint presentation. + + + + + Specifies the Title of presentation. + + + + + Specifies the Subject of presentation. + + + + + Specifies the Author of presentation. + + + + + Specifies the Keywords of presentation. + + + + + Specifies the Comments of presentation. + + + + + Specifies the Template of presentation. + + + + + Specifies the Last Author of presentation. + + + + + Specifies the Revision number of presentation. + + + + + Specifies the Edit Time of presentation. + + + + + Specifies the Last Printed property of presentation. + + + + + Specifies the Creation Date of presentation. + + + + + Specifies the Last Save Date of presentation. + + + + + Specifies the Page Count of presentation. + + + + + Specifies the Word Count of presentation. + + + + + Specifies the Character Count of presentation. + + + + + Specifies the Thumbnail of presentation. + + + + + Specifies the Application Name of presentation. + + + + + Specifies the Security of the presentation. + + + + + Specifies the Category of presentation. + + + + + Specifies the Target format for presentation (35mm, printer, video, and so on) id. + + + + + Specifies the Byte Count of presentation. + + + + + Specifies the Line Count of presentation. + + + + + Specifies the Paragraph Count of presentation. + + + + + Specifies the slide count of presentation. + + + + + Specifies the note count of presentation. + + + + + Specifies the hidden count of presentation. + + + + + Specifies the multimedia clip count of presentation. + + + + + Specifies the ScaleCrop of presentation. + + + + + Specifies the heading pair of presentation. + + + + + Specifies the document parts of presentation. + + + + + Specifies the manager of presentation. + + + + + Specifies the company of presentation. + + + + + Specifies the dirty links of presentation. + + + + + Enumeration with all supported property types. + + + + + Indicates a Boolean value. + + + + + Indicates an integer value. + + + + + Indicates a 4-bytes signed integer value. + + + + + Indicates a 2-bytes signed interger value. + + + + + Indicates a 4-bytes unsigned interger value. + + + + + Indicates a wide string terminated by a null. + + + + + Indicates a string terminated by a null. + + + + + Indicates a FILETIME value. + + + + + Indicates length prefixed bytes. + + + + + Indicates a simple, counted array. + + + + + Indicates an object. + + + + + Indicates a double value. + + + + + Indicates an empty value. + + + + + Indicates null value. + + + + + Indicates clipboard data. + + + + + Indicates an array of strings. + + + + + Indicates an array of strings. + + + + + Indicates an array of objects. Supported types are string and integer values. + + + + + Size of the Int32 in bytes. + + + + + Size of the Int162 in bytes. + + + + + Size of the Double in bytes. + + + + + Reads Int16 value from the stream. + + Stream to get data from. + Temporary buffer to put extracted bytes into. + Extracted Int32 value. + + + + Reads Int32 value from the stream. + + Stream to get data from. + Temporary buffer to put extracted bytes into. + Extracted Int32 value. + + + + Reads Double value from the stream. + + Stream to get data from. + Temporary buffer to put extracted bytes into. + Extracted Double value. + + + + Writes Int16 value from the stream. + + Stream to get data from. + Value to write. + Size of the written data. + + + + Writes Int32 value from the stream. + + Stream to write data into. + Value to write. + Size of the written data. + + + + Reads Double value from the stream. + + Stream to get data from. + Temporary buffer to put extracted bytes into. + Extracted Double value. + + + + Gets ASCII string from the stream starting from the current position. + + Stream to get data from. + Approximate string size. + Extracted string. + + + + Extracts unicode string from the stream. + + + + + + + + Gets ASCII string from the stream starting from the current position. + + Stream to get data from. + Approximate string size. + Extracted string. + + + + Writes unicode string into steram. + + Stream to write data into. + Value to write. + Size of the written data in bytes. + + + + Writes string into stream using specified encoding. + + Stream to write data into. + Value to write. + Encoding to use. + Size of the written data in bytes. + + + + Adds padding if necessary. + + + + + + + Removes last zero character from the string if it is present. + + Value to check. + String after removal. + + + + Specifies the VarEnum. + + + + + Specifies the VarEnum is vt_ array + + + + + Specifies the VarEnum is vt_ BLOB + + + + + Specifies the VarEnum is vt_ blo b_ object + + + + + Specifies the VarEnum is vt_ bool + + + + + Specifies the VarEnum is vt_ BSTR + + + + + Specifies the VarEnum is vt_ byref + + + + + Specifies the VarEnum is vt_ carray + + + + + Specifies the VarEnum is vt_ cf + + + + + Specifies the VarEnum is vt_ CLSID + + + + + Specifies the VarEnum is vt_ cy + + + + + Specifies the VarEnum is vt_ date + + + + + Specifies the VarEnum is vt_ decimal + + + + + Specifies the VarEnum is vt_ dispatch + + + + + Specifies the VarEnum is vt_ empty + + + + + Specifies the VarEnum is vt_ error + + + + + Specifies the VarEnum is vt_ filetime + + + + + Specifies the VarEnum is vt_ hresult + + + + + Specifies the VarEnum is vt_ i1 + + + + + Specifies the VarEnum is vt_ i2 + + + + + Specifies the VarEnum is vt_ i4 + + + + + Specifies the VarEnum is vt_ i8 + + + + + Specifies the VarEnum is vt_ int + + + + + Specifies the VarEnum is vt_ LPSTR + + + + + Specifies the VarEnum is vt_ LPWSTR + + + + + Specifies the VarEnum is vt_ null + + + + + Specifies the VarEnum is vt_ PTR + + + + + Specifies the VarEnum is vt_ r4 + + + + + Specifies the VarEnum is vt_ r8 + + + + + Specifies the VarEnum is vt_ record + + + + + Specifies the VarEnum is vt_ safearray + + + + + Specifies the VarEnum is vt_ storage + + + + + Specifies the VarEnum is vt_ store d_ object + + + + + Specifies the VarEnum is vt_ stream + + + + + Specifies the VarEnum is vt_ streame d_ object + + + + + Specifies the VarEnum is vt_ u i1 + + + + + Specifies the VarEnum is vt_ u i2 + + + + + Specifies the VarEnum is vt_ u i4 + + + + + Specifies the VarEnum is vt_ u i8 + + + + + Specifies the VarEnum is vt_ uint + + + + + Specifies the VarEnum is vt_ unknown + + + + + Specifies the VarEnum is vt_ userdefined + + + + + Specifies the VarEnum is vt_ variant + + + + + Specifies the VarEnum is vt_ vector + + + + + Specifies the VarEnum is vt_ void + + + + + + + + + + Encryption namespace. + + + + + Namespace definition for key encryptor password. + + + + + Namespace definition for key encryptor certificate. + + + + + Represents the internal constants for Presentation. + + + + + + Defines the none placeholder type. + + + + + Hundredths of a point. + + + + + Defines the default offset value for a picture fill. + + + + + Defines the default scale value for the picture fill. + + + + + Defines thousandths of a percentage. + + + + + Defines the percentage value. + + + + + Default smart art left value is used when the smartart is create from scratch. + + + + + Default smart art top value is used when the smartart is create from scratch. + + + + + Default smart art width is used when the smartart is create from scratch. + + + + + Default smart art height is used when the smartart is create from scratch. + + + + + Default rotation angle constants of a shape. + + + + + Size of the Int32 value. + + + + + Size of the Int64 value. + + + + + Number of bits inside single byte value. + + + + + Name of a namespace used by VML (marked by 'v' in MS PowerPoint 2007 documents). + + + + + Name of a namespace used by VML (marked by 'o' in MS PowerPoint 2007 documents). + + + + + Name of a namespace used by VML (marked by 'x' in MS PowerPoint 2007 documents). + + + + + Namespace prefix used in vml shapes. + + + + + Namespace prefix used in vml shapes. + + + + + Root tag for vml shapes. + + + + + Defines the maximum font scale value. + + + + + Defines the minimum font scale value. + + + + + Serailize the child elements of a extLst. + + Represent the xmlWritter + Represent the relation id of the svg image + + + + Checks if a duplicate relation exists for the specified relation collection. + + The OleObject to check for duplicate relations. + The target of the relation to check. + True if a duplicate relation exists, otherwise false. + + + + Writes a custom data list of shape. + + Represents a XML writer. + Represents a shape object. + + + + Length of compObject stream + + + + + This MUST be a CompObjHeader structure. + + + + + This MUST be a LengthPrefixedAnsiString structure that contains a display + name of the linked object or embedded object + + + + + This MUST be a ClipboardFormatOrAnsiString structure that contains the + Clipboard Format of the linked object or embedded object. If the MarkerOrLength + field of the ClipboardFormatOrAnsiString structure contains a value other than + 0x00000000, 0xffffffff, or 0xfffffffe, the value MUST NOT be greater than 0x00000190. + Otherwise the CompObjStream structure is invalid + + + + + If present, this MUST be a LengthPrefixedAnsiString structure. If the Length field of + the LengthPrefixedAnsiString contains a value of 0 or a value that is greater than + 0x00000028, the remaining fields of the structure starting with the String field + of the LengthPrefixedAnsiString MUST be ignored on processing. + + + + + If this field is present and is NOT set to 0x71B239F4, + the remaining fields of the structure MUST be ignored on processing + + + + + This MUST be a LengthPrefixedUnicodeString structure that contains a display name + of the linked object or embedded object. + + + + + This MUST be a ClipboardFormatOrUnicodeString structure that contains a Clipboard + Format of the linked object or embedded object. If the MarkerOrLength field of the + ClipboardFormatOrUnicodeString structure contains a value other than 0x00000000, + 0xffffffff, or 0xfffffffe, the value MUST NOT be more than 0x00000190. Otherwise, + the CompObjStream structure is invalid + + + + + This MUST be a LengthPrefixedUnicodeString. The String field of the LengthPrefixedUnicodeString + can contain any arbitrary value and MUST be ignored on processing. + + + + + Initializes a new instance of the class. + + The stream. + + + + Initializes a default instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Saves data to STG stream. + + The stream. + + + + Writes the zero byte array. + + The stream. + Length of the byte. + + + + Writes the length prefixed string. + + The stream. + The data. + + + + Gets the size of the structure. + + The length. + + + + Gets the type of the object. + + The type of the object. + + + + Gets the type of the object. + + The type of the object. + + + + + + + + + This can be set to any arbitrary value and MUST be ignored on processing. + + + + + This can be set to any arbitrary value and MUST be ignored on processing. + + + + + This can be set to any arbitrary value and MUST be ignored on processing. + + + + + Initializes a new instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Saves to STG stream. + + The stream. + + + + Gets the size of the structure. + + The length. + + + + + + + + + + + + + + + + + + + This MUST be set to 0x00000001 or 0x00000002. If this field has a value of 1, the OLEStream + structure MUST be for a linked object. If this field has a value of 0, then the OLEStream + structure MUST be for an embedded object. + + + + + This field contains an implementation-specific hint supplied by the application or by a + higher-level protocol that creates the data structure. The hint MAY be ignored on + processing of this data structure. + + + + + This MUST be set to 0x00000000. Otherwise, the OLEStream structure is invalid. + + + + + This MUST be set to the size, in bytes, of the ReservedMonikerStream field. + If this field has a value 0x00000000, the ReservedMonikerStream field MUST NOT be present. + + + + + This MUST be a MONIKERSTREAM structure that can contain any arbitrary value + and MUST be ignored on processing. + + + + + This MUST be set to the size, in bytes, of the RelativeSourceMonikerStream field. + If this field has a value 0x00000000, the RelativeSourceMonikerStream field MUST NOT be present. + + + + + This MUST be a MONIKERSTREAM structure that specifies the relative path to the linked object. + + + + + This MUST be set to the size, in bytes, of the AbsoluteSourceMonikerStream field. + This field MUST NOT contain the value 0x00000000. + + + + + This MUST be a MONIKERSTREAM structure that specifies the full path to the linked object. + + + + + This MUST be the LONG value -1 + + + + + This MUST be the CLSID containing the object class GUID of the creating application. + + + + + This MUST be a LengthPrefixedUnicodeString that can contain + any arbitrary value and MUST be ignored on processing. + + + + + This can contain any arbitrary value and MUST be ignored on processing. + + + + + This MUST be a FILETIME that contains the time + when the container application last updated the RemoteUpdateTime field. + + + + + This MUST be a FILETIME that contains the time + when the container application last checked the update time of the linked object. + + + + + This MUST be a FILETIME that contains the time when the linked object was last updated. + + + + + The type of the link; + + + + + Path to linked file + + + + + Initializes a new instance of the class. + + The stream. + + + + Initializes a default instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Saves to compound stream. + + The stream. + + + + Gets the size of the structure. + + The length. + + + + + + + + + + + + + + Path to file + + + + + Initializes a new instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Gets the size of the structure. + + The length. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Gets the size of the structure. + + The length. + + + + Reads the int16. + + The data array. + The offset. + + + + + Reads the int32. + + The data array. + The offset. + + + + + Reads the int64. + + The data array. + The offset. + + + + + Reads the int16. + + The data array. + The offset. + + + + + Reads the int32. + + The data array. + The offset. + + + + + Reads the array of bytes. + + The data array. + The length. + The offset. + + + + + Saves the specified int16 value in the data array. + + The arr data. + The offset. + + + + Saves the specified uint16 value in the data array. + + The arr data. + The offset. + + + + Saves the specified int32 value in the data array. + + The arr data. + The offset. + + + + Saves the specified int64 value in the data array. + + The destination. + The offset. + The value. + + + + Saves the specified uint32 value in the data array. + + The arr data. + The offset. + + + + Saves the bytes byte array. + + The destination array. + The offset. + The bytes. + + + + Copies the memory. + + The destination. + The source. + The length. + + + + Summary description for _Constants. + + + + + Size of the File Character position. + + + + + Number of bytes in single word value. + + + + + Number of bytes in single int value. + + + + + Number of bytes in formatted disk page. + + + + + Number of bytes in single long value. + + + + + To prevent creating instances of this class constructor was made private. + + + + + + + + + + + + + + + Initializes a new instance of the class. + + The stream. + + + + Initializes a default instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Saves the data to stream. + + The STG stream. + + + + Gets the size of the structure. + + The length. + + + + Contains empty color. + + + + + Converts Int32 value into Color. + + Value to convert. + Converted value. + + + + Represents the ARGB(alpha, red, green, blue) color. + + + + + Represents the ARGB (alpha, red, green, blue) color. + + + + + Converts the structure to 32-bit ARGB value. + + The 32-bit ARGB value of the structure. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89); + //Create instance for color + IColor color = background.Fill.SolidFill.Color; + //Convert color to argb + int argb = color.ToArgb(); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89) + 'Create instance for color + Dim color As IColor = background.Fill.SolidFill.Color + 'Convert color to argb + Dim argb As Integer = color.ToArgb() + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a value. + + + The System.Drawing.Color. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89); + //Create instance for color + IColor color = background.Fill.SolidFill.Color; + //Set the system color by specifying the rgb values + color.SystemColor = Color.Red; + //Save the presentation + presentation.Save("SystemColor.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89) + 'Create instance for color + Dim color__2 As IColor = background.Fill.SolidFill.Color + 'Set the system color by specifying the rgb values + color__2.SystemColor = Color.Red + 'Save the presentation + presentation__1.Save("SystemColor.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the alpha color value. Read-only. + + + A. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89); + //Create instance for color + IColor color = background.Fill.SolidFill.Color; + //Get the transparency value of color + byte alpha = color.A; + //Save the presentation + presentation.Save("AlphaValue.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89) + 'Create instance for color + Dim color As IColor = background.Fill.SolidFill.Color + 'Get the transparency value of color + Dim alpha As Byte = color.A + 'Save the presentation + presentation__1.Save("AlphaValue.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the blue color value. Read-only. + + + The B. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89); + //Create instance for color + IColor color = background.Fill.SolidFill.Color; + //Get the blue color + byte blue = color.B; + //Save the presentation + presentation.Save("BlueColor.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89) + 'Create instance for color + Dim color As IColor = background.Fill.SolidFill.Color + 'Get the blue color + Dim blue As Byte = color.B + 'Save the presentation + presentation__1.Save("BlueColor.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the green color value. Read-only. + + + The G. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89); + //Create instance for color + IColor color = background.Fill.SolidFill.Color; + //Get the green color value + byte green = color.G; + //Save the presentation + presentation.Save("GreenColor.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89) + 'Create instance for color + Dim color As IColor = background.Fill.SolidFill.Color + 'Get the green color value + Dim green As Byte = color.G + 'Save the presentation + presentation__1.Save("GreenColor.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Specifies whether this structure is uninitialized. Read-only. + + + true if this instance is empty; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89); + //Create instance for color + IColor color = background.Fill.SolidFill.Color; + //To check if it is a empty + bool _isEmpty = color.IsEmpty; + //Save the presentation + presentation.Save("Empty.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89) + 'Create instance for color + Dim color As IColor = background.Fill.SolidFill.Color + 'To check if it is a empty + Dim _isEmpty As Boolean = color.IsEmpty + 'Save the presentation + presentation__1.Save("Empty.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a value indicating whether the color object is a predefined color. Predefined colors are represented by the enumeration. Read-only. + + + true if this instance is known color; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89); + //Create instance for color + IColor color = background.Fill.SolidFill.Color; + //To check if it is a known color + bool _isKnownColor = color.IsKnownColor; + //Save the presentation + presentation.Save("KnownColor.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89) + 'Create instance for color + Dim color As IColor = background.Fill.SolidFill.Color + 'To check if it is a known color + Dim _isKnownColor As Boolean = color.IsKnownColor + 'Save the presentation + presentation__1.Save("KnownColor.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a value indicating whether the color object is a named color or a member of the enumeration. Read-only. + + + true if this instance is named color; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89); + //Create instance for color + IColor color = background.Fill.SolidFill.Color; + //To check if it is a named color + bool _isNamedColor = color.IsNamedColor; + //Save the presentation + presentation.Save("NamedColor.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89) + 'Create instance for color + Dim color As IColor = background.Fill.SolidFill.Color + 'To check if it is a known color + Dim _isNamedColor As Boolean = color.IsNamedColor + 'Save the presentation + presentation__1.Save("NamedColor.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a value indicating whether the color object is a system color. System colors are represented by elements of the enumeration. Read-only. + + + true if this instance is system color; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89); + //Create instance for color + IColor color = background.Fill.SolidFill.Color; + //To check if it is a system color + bool _isSystemColor = color.IsSystemColor; + //Save the presentation + presentation.Save("SystemColor.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89) + 'Create instance for color + Dim color As IColor = background.Fill.SolidFill.Color + 'To check if it is a system color + Dim _isSystemColor As Boolean = color.IsSystemColor + 'Save the presentation + presentation__1.Save("SystemColor.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the red color value. Read-only. + + + The R. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89); + //Create instance for color + IColor color = background.Fill.SolidFill.Color; + //Get the red color value + byte red = color.R; + //Save the presentation + presentation.Save("RedColor.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Set the color to slide background + background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 23, 12, 89) + 'Create instance for color + Dim color As IColor = background.Fill.SolidFill.Color + 'Get the red color value + Dim red As Byte = color.R + 'Save the presentation + presentation__1.Save("RedColor.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Compares the current ColorObject with given ColorObject. + + The ColorObject to compare with the current instance. + True if the ColorObjects are equal; otherwise, false. + + + + Represents a color that is null. + + + + + Initialize the ColorObject type with KnowColor object + + + + + + Default Constructor for ColorObject. + + + + + Creates an structure from a 32-bit ARGB value. + + A value specifying the 32-bit ARGB value. + The structure this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Open("Template.pptx"); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set the color for solid fill + slide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(146880); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Set the color for solid fill + slide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(146880); + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Creates an structure from the four ARGB component (alpha, red, green, and blue) values. + + The alpha component. Valid values are 0 through 255. + The red component. Valid values are 0 through 255. + The green component. Valid values are 0 through 255. + The blue component. Valid values are 0 through 255. + The structure this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Open("Template.pptx"); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set the argb value for solid fill + slide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(90, 120, 120, 120); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Set the argb value for solid fill + slide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(90, 120, 120, 120); + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Creates an structure from the specified structure combined with the new alpha value. + + The alpha value for the new . Valid values are 0 through 255. + The instance from which to create the new color. + The structure this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Open("Template.pptx"); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set the color for solid fill + slide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(30, ColorObject.Red); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Set the color for solid fill + slide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(30, ColorObject.Red); + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Creates an structure from the specified RGB values (red, green, and blue). The alpha value is implicitly 255 (fully opaque). + + The red component value for the new . Valid values are 0 through 255. + The green component value for the new . Valid values are 0 through 255. + The blue component value for the new . Valid values are 0 through 255. + The structure this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Open("Template.pptx"); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set the rgb value for solid fill + slide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 120, 120); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Set the rgb value for solid fill + slide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(120, 120, 120); + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Creates an structure from the specified predefined color. + + An element of the enumeration. + The structure this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Open("Template.pptx"); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set the color of solid Fill + slide.Background.Fill.SolidFill.Color = ColorObject.FromKnownColor(System.Drawing.KnownColor.ActiveBorder); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Open("Template.pptx") + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Set the color of solid Fill + slide.Background.Fill.SolidFill.Color = ColorObject.FromKnownColor(System.Drawing.KnownColor.ActiveBorder) + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation + presentation.Close() + + + + + + Returns the hue-saturation-brightness (HSB) brightness value for the specified structure. + + The brightness of this color. The brightness ranges from 0.0 through 1.0, where 0.0 represents black and 1.0 represents white. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add shape to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Dodecagon, 234, 23, 120, 100); + //Set the fill type of shape + shape.Fill.FillType = FillType.Pattern; + //Set the back color of the pattern fill + shape.Fill.PatternFill.BackColor = ColorObject.Red; + //Create an instance for color object + ColorObject colorObject = shape.Fill.PatternFill.BackColor as ColorObject; + //Get the brightness of color, it is read only + float brightness = colorObject.GetBrightness(); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add shape to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Dodecagon, 234, 23, 120, 100) + 'Set the fill type of shape + shape.Fill.FillType = FillType.Pattern + 'Set the back color of the pattern fill + shape.Fill.PatternFill.BackColor = ColorObject.Red + 'Create an instance for color object + Dim colorObject As ColorObject = TryCast(shape.Fill.PatternFill.BackColor, ColorObject) + 'Get the brightness of color, it is read only + Dim brightness As Single = colorObject.GetBrightness() + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Returns the hue-saturation-brightness (HSB) hue value, in degrees. + + The hue, in degrees, of the specified color. The hue is measured in degrees, ranging from 0.0 through 360.0, in HSB color space. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add shape to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Dodecagon, 234, 23, 120, 100); + //Set the fill type of shape + shape.Fill.FillType = FillType.Pattern; + //Set the back color of the pattern fill + shape.Fill.PatternFill.BackColor = ColorObject.LightBlue; + //Create an instance for color object + ColorObject colorObject = shape.Fill.PatternFill.BackColor as ColorObject; + //Get hue of color, read only + float hue = colorObject.GetHue(); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add shape to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Dodecagon, 234, 23, 120, 100) + 'Set the fill type of shape + shape.Fill.FillType = FillType.Pattern + 'Set the back color of the pattern fill + shape.Fill.PatternFill.BackColor = ColorObject.LightBlue + 'Create an instance for color object + Dim colorObject As ColorObject = TryCast(shape.Fill.PatternFill.BackColor, ColorObject) + 'Get the hue of color, it is read only + Dim hue As Single = colorObject.GetHue() + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Returns the hue-saturation-brightness (HSB) saturation value. + + The saturation of the specified color. The saturation ranges from 0.0 through 1.0, where 0.0 is gray-scale and 1.0 is the most saturated. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add shape to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Dodecagon, 234, 23, 120, 100); + //Set the fill type of shape + shape.Fill.FillType = FillType.Pattern; + //Set the back color of the pattern fill + shape.Fill.PatternFill.BackColor = ColorObject.LightBlue; + //Create an instance for color object + ColorObject colorObject = shape.Fill.PatternFill.BackColor as ColorObject; + //Get the saturation of color, read only + float saturation = colorObject.GetSaturation(); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add shape to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Dodecagon, 234, 23, 120, 100) + 'Set the fill type of shape + shape.Fill.FillType = FillType.Pattern + 'Set the back color of the pattern fill + shape.Fill.PatternFill.BackColor = ColorObject.LightBlue + 'Create an instance for color object + Dim colorObject As ColorObject = TryCast(shape.Fill.PatternFill.BackColor, ColorObject) + 'Get the saturation of color, it is read only + Dim saturation As Single = colorObject.GetSaturation() + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Gets the 32-bit ARGB value of this structure. + + The 32-bit Argb value of this color. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add shape to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Dodecagon, 234, 23, 120, 100); + //Set the fill type of shape + shape.Fill.FillType = FillType.Pattern; + //Set the back color of the pattern fill + shape.Fill.PatternFill.BackColor = ColorObject.Red; + //Create an instance for color object + ColorObject colorObject = shape.Fill.PatternFill.BackColor as ColorObject; + //Convert to the argb value + int argb = colorObject.ToArgb(); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add shape to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Dodecagon, 234, 23, 120, 100) + 'Set the fill type of shape + shape.Fill.FillType = FillType.Pattern + 'Set the back color of the pattern fill + shape.Fill.PatternFill.BackColor = ColorObject.Red + 'Create an instance for color object + Dim colorObject As ColorObject = TryCast(shape.Fill.PatternFill.BackColor, ColorObject) + 'Convert to the argb value + Dim argb As Integer = colorObject.ToArgb() + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Gets the value of the structure. + + An element of the enumeration. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add shape to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Dodecagon, 234, 23, 120, 100); + //Set the fill type of shape + shape.Fill.FillType = FillType.Pattern; + //Set the pattern type + shape.Fill.PatternFill.Pattern = PatternFillType.DarkDownwardDiagonal; + //Set the back color of the pattern fill + shape.Fill.PatternFill.BackColor = ColorObject.Red; + //Create an instance for color object + ColorObject colorObject = shape.Fill.PatternFill.BackColor as ColorObject; + //Convert to known color + System.Drawing.KnownColor knownColor = colorObject.ToKnownColor(); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add shape to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Dodecagon, 234, 23, 120, 100) + 'Set the fill type of shape + shape.Fill.FillType = FillType.Pattern + 'Set the pattern type + shape.Fill.PatternFill.Pattern = PatternFillType.DarkDownwardDiagonal + 'Set the back color of the pattern fill + shape.Fill.PatternFill.BackColor = ColorObject.Red + 'Create an instance for color object + Dim colorObject As ColorObject = TryCast(shape.Fill.PatternFill.BackColor, ColorObject) + 'Convert to known color + Dim knownColor As System.Drawing.KnownColor = colorObject.ToKnownColor() + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Gets a predefined object that has an ARGB value of #FFF0F8FF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFAEBD7. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF00FFFF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF7FFFD4. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFF0FFFF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFF5F5DC. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFE4C4. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF000000. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFEBCD. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF0000FF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF8A2BE2. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFA52A2A. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFDEB887. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF5F9EA0. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF7FFF00. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFD2691E. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFF7F50. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF6495ED. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFF8DC. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFDC143C. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF00FFFF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF00008B. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF008B8B. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFB8860B. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFA9A9A9. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF006400. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFBDB76B. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF8B008B. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF556B2F. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFF8C00. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF9932CC. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF8B0000. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFE9967A. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF8FBC8F. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF483D8B. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF2F4F4F. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF00CED1. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF9400D3. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFF1493. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF00BFFF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF696969. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF1E90FF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFB22222. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFFAF0. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF228B22. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFF00FF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFDCDCDC. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFF8F8FF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFD700. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFDAA520. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF808080. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF008000. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFADFF2F. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFF0FFF0. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFF69B4. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFCD5C5C. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF4B0082. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFFFF0. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFF0E68C. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFE6E6FA. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFF0F5. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF7CFC00. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFFACD. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFADD8E6. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFF08080. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFE0FFFF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFAFAD2. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFD3D3D3. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF90EE90. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFB6C1. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFA07A. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF20B2AA. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF87CEFA. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF778899. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFB0C4DE. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFFFE0. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF00FF00. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF32CD32. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFAF0E6. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFF00FF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF800000. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF66CDAA. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF0000CD. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFBA55D3. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF9370DB. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF3CB371. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF7B68EE. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF00FA9A. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF48D1CC. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFC71585. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF191970. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFF5FFFA. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFE4E1. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFE4B5. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFDEAD. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF000080. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFDF5E6. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF808000. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF6B8E23. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFA500. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFF4500. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFDA70D6. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFEEE8AA. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF98FB98. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFAFEEEE. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFDB7093. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFEFD5. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFDAB9. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFCD853F. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFC0CB. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFDDA0DD. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFB0E0E6. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF800080. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFF0000. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFBC8F8F. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF4169E1. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF8B4513. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFA8072. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFF4A460. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF2E8B57. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFF5EE. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFA0522D. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFC0C0C0. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF87CEEB. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF6A5ACD. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF708090. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFFAFA. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF00FF7F. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF4682B4. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFD2B48C. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF008080. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFD8BFD8. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFF6347. Read-only. + + + + + Gets a predefined transparent color. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF40E0D0. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFEE82EE. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFF5DEB3. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFFFFF. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFF5F5F5. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FFFFFF00. Read-only. + + + + + Gets a predefined object that has an ARGB value of #FF9ACD32. Read-only. + + + + + Returns ThemeColorValue of the current color object. + + + + + Gets the alpha color value. Read-only. + + + + + Gets the blue color value. Read-only. + + + + + Gets the green color value. Read-only. + + + + + Specifies whether this structure is uninitialized. Read-only. + + + + + Gets a value indicating whether the color object is a predefined color. Predefined colors are represented by the enumeration. Read-only. + + + + + Gets a value indicating whether the color object is a named color or a member of the enumeration. Read-only. + + + + + Gets a value indicating whether the color object is a system color. System colors are represented by elements of the enumeration. Read-only. + + + + + Gets the red color value. Read-only. + + + + + Gets or sets a value. + + + + + Parse the hyperlink. + + + + + + + + Gets the color map values from layout slide + + The XML Reader + The layout slide + + + + + Gets the color map values from layout slide + + The XML Reader + ColorObject instance to hold color values + The layout slide + + + + + Parse the scrgb color values. + + XML reader used to parse. + ColorObject instance to hold color value + + + + Gets the scheme color of layout slide + + The XML Reader + ColorObject instance to hold color value + The layout slide + + + + Compares the current EffectList object with given EffectList object. + + The EffectList object to compare with the current instance. + True if the EffectList objects are equal; otherwise, false. + + + + Compares the current EffectStyle object with given EffectStyle object. + + The EffectStyle object to compare with the current instance. + True if the EffectStyle objects are equal; otherwise, false. + + + + Specifies the type of the connector + + + + + Specifies the connector type is Straight line connector. + + + + + Specifies the connector type is Elbow connector. + + + + + Specifies the connector type is Curved connector. + + + + + Specifies the length of the arrowhead at the end of a line. + + + + + Specifies the ArrowheadLength is None + + + + + Specifies the ArrowheadLength is Short + + + + + Specifies the ArrowheadLength is Medium + + + + + Specifies the ArrowheadLength is Long + + + + + Specifies the style of the arrowhead at the end of a line. + + + + + Specifies the ArrowheadStyle is None + + + + + Specifies the ArrowheadStyle is Arrow + + + + + Specifies the ArrowheadStyle is ArrowStealth + + + + + Specifies the ArrowheadStyle is ArrowDiamond + + + + + Specifies the ArrowheadStyle is ArrowOval + + + + + Specifies the ArrowheadStyle is ArrowOpen + + + + + Specifies the width of the arrowhead at the end of a line. + + + + + Specifies the ArrowheadWidth is None + + + + + Specifies the ArrowheadWidth is Narrow + + + + + Specifies the ArrowheadWidth is Medium + + + + + Specifies the ArrowheadWidth is Wide + + + + + Specifies the shape type for an object. + + + + + Specifies the AutoShapeType is Unknown + + + + + Specifies the AutoShapeType is SwooshArrow + + + + + Specifies the AutoShapeType is Line + + + + + Specifies the AutoShapeType is ElbowConnector + + + + + Specifies the AutoShapeType is CurvedConnector + + + + + Specifies the AutoShapeType is BentConnector2 + + + + + Specifies the AutoShapeType is StraightConnector + + + + + Specifies the AutoShapeType is BentConnector4 + + + + + Specifies the AutoShapeType is BentConnector5 + + + + + Specifies the AutoShapeType is CurvedConnector2 + + + + + Specifies the AutoShapeType is CurvedConnector4 + + + + + Specifies the AutoShapeType is CurvedConnector5 + + + + + Specifies the AutoShapeType is Rectangle + + + + + Specifies the AutoShapeType is RoundedRectangle + + + + + Specifies the AutoShapeType is SnipSingleCornerRectangle + + + + + Specifies the AutoShapeType is SnipSameSideCornerRectangle + + + + + Specifies the AutoShapeType is SnipDiagonalCornerRectangle + + + + + Specifies the AutoShapeType is SnipAndRoundSingleCornerRectangle + + + + + Specifies the AutoShapeType is RoundSingleCornerRectangle + + + + + Specifies the AutoShapeType is RoundSameSideCornerRectangle + + + + + Specifies the AutoShapeType is RoundDiagonalCornerRectangle + + + + + Specifies the AutoShapeType is Oval + + + + + Specifies the AutoShapeType is IsoscelesTriangle + + + + + Specifies the AutoShapeType is RightTriangle + + + + + Specifies the AutoShapeType is Parallelogram + + + + + Specifies the AutoShapeType is Trapezoid + + + + + Specifies the AutoShapeType is Diamond + + + + + Specifies the AutoShapeType is RegularPentagon + + + + + Specifies the AutoShapeType is Hexagon + + + + + Specifies the AutoShapeType is Heptagon + + + + + Specifies the AutoShapeType is Octagon + + + + + Specifies the AutoShapeType is Decagon + + + + + Specifies the AutoShapeType is Dodecagon + + + + + Specifies the AutoShapeType is Pie + + + + + Specifies the AutoShapeType is Chord + + + + + Specifies the AutoShapeType is Teardrop + + + + + Specifies the AutoShapeType is Frame + + + + + Specifies the AutoShapeType is HalfFrame + + + + + Specifies the AutoShapeType is diagonalstripe + + + + + Specifies the AutoShapeType is Cross + + + + + Specifies the AutoShapeType is Plaque + + + + + Specifies the AutoShapeType is Can + + + + + Specifies the AutoShapeType is Cube + + + + + Specifies the AutoShapeType is Bevel + + + + + Specifies the AutoShapeType is Donut + + + + + Specifies the AutoShapeType is NoSymbol + + + + + Specifies the AutoShapeType is BlockArc + + + + + Specifies the AutoShapeType is FoldedCorner + + + + + Specifies the AutoShapeType is SmileyFace + + + + + Specifies the AutoShapeType is Heart + + + + + Specifies the AutoShapeType is LightningBolt + + + + + Specifies the AutoShapeType is Sun + + + + + Specifies the AutoShapeType is Moon + + + + + Specifies the AutoShapeType is Cloud + + + + + Specifies the AutoShapeType is Arc + + + + + Specifies the AutoShapeType is DoubleBracket + + + + + Specifies the AutoShapeType is DoubleBrace + + + + + Specifies the AutoShapeType is LeftBracket + + + + + Specifies the AutoShapeType is RightBracket + + + + + Specifies the AutoShapeType is LeftBrace + + + + + Specifies the AutoShapeType is RightBrace + + + + + Specifies the AutoShapeType is RightArrow + + + + + Specifies the AutoShapeType is LeftArrow + + + + + Specifies the AutoShapeType is UpArrow + + + + + Specifies the AutoShapeType is DownArrow + + + + + Specifies the AutoShapeType is LeftRightArrow + + + + + Specifies the AutoShapeType is UpDownArrow + + + + + Specifies the AutoShapeType is QuadArrow + + + + + Specifies the AutoShapeType is LeftRightUpArrow + + + + + Specifies the AutoShapeType is BentArrow + + + + + Specifies the AutoShapeType is UTurnArrow + + + + + Specifies the AutoShapeType is LeftUpArrow + + + + + Specifies the AutoShapeType is BentUpArrow + + + + + Specifies the AutoShapeType is curved right arrow + + + + + Specifies the AutoShapeType is curved left arrow + + + + + Specifies the AutoShapeType is curved up arrow + + + + + Specifies the AutoShapeType is curved down arrow + + + + + Specifies the AutoShapeType is striped right arrow + + + + + Specifies the AutoShapeType is notched right arrow + + + + + Specifies the AutoShapeType is pentagon + + + + + Specifies the AutoShapeType is chevron + + + + + Specifies the AutoShapeType is right arrow callout + + + + + Specifies the AutoShapeType is Down arrow callout + + + + + Specifies the AutoShapeType is left arrow callout + + + + + Specifies the AutoShapeType is up arrow callout + + + + + Specifies the AutoShapeType is left right arrow callout + + + + + Specifies the AutoShapeType is up down arrow callout + + + + + Specifies the AutoShapeType is quad arrow callout + + + + + Specifies the AutoShapeType is circular arrow + + + + + Specifies the AutoShapeType is math plus + + + + + Specifies the AutoShapeType is math minus + + + + + Specifies the AutoShapeType is math multiply + + + + + Specifies the AutoShapeType is math division + + + + + Specifies the AutoShapeType is math equal + + + + + Specifies the AutoShapeType is math not equal + + + + + Specifies the AutoShapeType is flow chart process + + + + + Specifies the AutoShapeType is flow chart alternate process + + + + + Specifies the AutoShapeType is flow chart decision + + + + + Specifies the AutoShapeType is flow chart data + + + + + Specifies the AutoShapeType is flow chart predefined process + + + + + Specifies the AutoShapeType is flow chart internal storage + + + + + Specifies the AutoShapeType is flow chart document + + + + + Specifies the AutoShapeType is flow chart multi document + + + + + Specifies the AutoShapeType is flow chart terminator + + + + + Specifies the AutoShapeType is flow chart preparation + + + + + Specifies the AutoShapeType is flow chart manual input + + + + + Specifies the AutoShapeType is flow chart manual operation + + + + + Specifies the AutoShapeType is flow chart connector + + + + + Specifies the AutoShapeType is flow chart off page connector + + + + + Specifies the AutoShapeType is flow chart card + + + + + Specifies the AutoShapeType is flow chart punched tape + + + + + Specifies the AutoShapeType is flow chart summing junction + + + + + Specifies the AutoShapeType is flow chart or + + + + + Specifies the AutoShapeType is flow chart collate + + + + + Specifies the AutoShapeType is flow chart sort + + + + + Specifies the AutoShapeType is flow chart extract + + + + + Specifies the AutoShapeType is flow chart merge + + + + + Specifies the AutoShapeType is flow chart stored data + + + + + Specifies the AutoShapeType is flow chart delay + + + + + Specifies the AutoShapeType is flow chart sequential access storage + + + + + Specifies the AutoShapeType is flow chart magnetic disk + + + + + Specifies the AutoShapeType is flow chart direct access storage + + + + + Specifies the AutoShapeType is flow chart display + + + + + Specifies the AutoShapeType is explosion1 + + + + + Specifies the AutoShapeType is explosion2 + + + + + Specifies the AutoShapeType is star4 point + + + + + Specifies the AutoShapeType is star5 point + + + + + Specifies the AutoShapeType is star6 point + + + + + Specifies the AutoShapeType is star7 point + + + + + Specifies the AutoShapeType is star8 point + + + + + Specifies the AutoShapeType is star10 point + + + + + Specifies the AutoShapeType is star12 point + + + + + Specifies the AutoShapeType is Star16Point + + + + + Specifies the AutoShapeType is star24 point + + + + + Specifies the AutoShapeType is star32 point + + + + + Specifies the AutoShapeType is Up ribbon + + + + + Specifies the AutoShapeType is Down ribbon + + + + + Specifies the AutoShapeType is curved up ribbon + + + + + Specifies the AutoShapeType is curved down ribbon + + + + + Specifies the AutoShapeType is vertical scroll + + + + + Specifies the AutoShapeType is horizontal scroll + + + + + Specifies the AutoShapeType is wave + + + + + Specifies the AutoShapeType is double wave + + + + + Specifies the AutoShapeType is rectangular callout + + + + + Specifies the AutoShapeType is rounded rectangular callout + + + + + Specifies the AutoShapeType is oval callout + + + + + Specifies the AutoShapeType is cloud callout + + + + + Specifies the AutoShapeType is line callout1 + + + + + Specifies the AutoShapeType is line callout2 + + + + + Specifies the AutoShapeType is line callout3 + + + + + Specifies the AutoShapeType is line callout1 accent bar + + + + + Specifies the AutoShapeType is line callout2 accent bar + + + + + Specifies the AutoShapeType is line callout3 accent bar + + + + + Specifies the AutoShapeType is line callout1 no border + + + + + Specifies the AutoShapeType is line callout2 no border + + + + + Specifies the AutoShapeType is line callout3 no border + + + + + Specifies the AutoShapeType is line callout1 border and accent bar + + + + + Specifies the AutoShapeType is line callout2 border and accent bar + + + + + Specifies the AutoShapeType is line callout3 border and accent bar + + + + + Specifies the AutoShapeType is l_shape + + + + + Specifies the AutoShapeType is Pie Wedge + + + + + Specifies the AutoShapeType is Left Right Ribbon + + + + + Specifies the AutoShapeType is Funnel + + + + + Specifies the AutoShapeType is Gear6 + + + + + Specifies the AutoShapeType is Gear9 + + + + + Specifies the AutoShapeType is Left circular arrow + + + + + Specifies the BackgroundStyle for Slides. + + + + + Specifies the BackgroundStyle for Slides is Style1. + + + + + Specifies the BackgroundStyle for Slides is Style2. + + + + + Specifies the BackgroundStyle for Slides is Style3. + + + + + Specifies the BackgroundStyle for Slides is Style4. + + + + + Specifies the BackgroundStyle for Slides is Style5. + + + + + Specifies the BackgroundStyle for Slides is Style6. + + + + + Specifies the BackgroundStyle for Slides is Style7. + + + + + Specifies the BackgroundStyle for Slides is Style8. + + + + + Specifies the BackgroundStyle for Slides is Style9. + + + + + Specifies the BackgroundStyle for Slides is Style10. + + + + + Specifies the BackgroundStyle for Slides is Style11. + + + + + Specifies the BackgroundStyle for Slides is Style12. + + + + + Specifies the ColorType. + + + + + Specifies the ColorType is automatic. + + + + + Specifies the ColorType is automatic index. + + + + + Specifies the ColorType is RGB. + + + + + Specifies the ColorType is indexed color. + + + + + Specifies the PatternFillType is theme. + + + + + Specifies the pattern fill type for an object. + + + + + Specifies the PatternFillType is solid. + + + + + Specifies the PatternFillType is gray5. + + + + + Specifies the PatternFillType is gray10. + + + + + Specifies the PatternFillType is gray20. + + + + + Specifies the PatternFillType is gray30. + + + + + Specifies the PatternFillType is gray40. + + + + + Specifies the PatternFillType is gray50. + + + + + Specifies the PatternFillType is gray60. + + + + + Specifies the PatternFillType is gray70. + + + + + Specifies the PatternFillType is gray75. + + + + + Specifies the PatternFillType is gray80. + + + + + Specifies the PatternFillType is gray90. + + + + + Specifies the PatternFillType is gray25. + + + + + Specifies the PatternFillType is cross. + + + + + Specifies the PatternFillType is diagonal cross. + + + + + Specifies the PatternFillType is downward diagonal. + + + + + Specifies the PatternFillType is horizontal. + + + + + Specifies the PatternFillType is upward diagonal. + + + + + Specifies the PatternFillType is vertical. + + + + + Specifies the PatternFillType is light downward diagonal. + + + + + Specifies the PatternFillType is light upward diagonal. + + + + + Specifies the PatternFillType is dark downward diagonal. + + + + + Specifies the PatternFillType is dark upward diagonal. + + + + + Specifies the PatternFillType is wide downward diagonal. + + + + + Specifies the PatternFillType is wide upward diagonal. + + + + + Specifies the PatternFillType is light vertical. + + + + + Specifies the PatternFillType is light horizontal. + + + + + Specifies the PatternFillType is narrow vertical. + + + + + Specifies the PatternFillType is narrow horizontal. + + + + + Specifies the PatternFillType is dark vertical. + + + + + Specifies the PatternFillType is dark horizontal. + + + + + Specifies the PatternFillType is dashed downward diagonal. + + + + + Specifies the PatternFillType is dashed upward diagonal. + + + + + Specifies the PatternFillType is dashed vertical. + + + + + Specifies the PatternFillType is dashed horizontal. + + + + + Specifies the PatternFillType is small confetti. + + + + + Specifies the PatternFillType is large confetti. + + + + + Specifies the PatternFillType is zig zag. + + + + + Specifies the PatternFillType is wave. + + + + + Specifies the PatternFillType is diagonal brick. + + + + + Specifies the PatternFillType is horizontal brick. + + + + + Specifies the PatternFillType is weave. + + + + + Specifies the PatternFillType is plaid. + + + + + Specifies the PatternFillType is divot. + + + + + Specifies the PatternFillType is dotted grid. + + + + + Specifies the PatternFillType is dotted diamond. + + + + + Specifies the PatternFillType is shingle. + + + + + Specifies the PatternFillType is trellis. + + + + + Specifies the PatternFillType is sphere. + + + + + Specifies the PatternFillType is small grid. + + + + + Specifies the PatternFillType is large grid. + + + + + Specifies the PatternFillType is small checker board. + + + + + Specifies the PatternFillType is large checker board. + + + + + Specifies the PatternFillType is outlined diamond. + + + + + Specifies the PatternFillType is solid diamond. + + + + + Specifies the fill type of an object. + + + + + Specifies the FillType is automatic. + + + + + Specifies the FillType is solid. + + + + + Specifies the FillType is gradient. + + + + + Specifies the FillType is Picture. + + + + + Specifies the FillType is Texture. + + + + + Specifies the FillType is pattern. + + + + + Specifies the FillType is none. + + + + + Specifies the FontAlignmentType. + + + + + Specifies the FontAlignmentType is none. + + + + + Specifies the FontAlignmentType is baseline. + + + + + Specifies the FontAlignmentType is bottom. + + + + + Specifies the FontAlignmentType is top. + + + + + Specifies the FontAlignmentType is center. + + + + + Specifies the style of line cap at the line end. + + + + + Specifies the LineCapStyle is none. + + + + + Specifies the LineCapStyle is round. + + + + + Specifies the LineCapStyle is square. + + + + + Specifies the LineCapStyle is flat. + + + + + Specifies the dash style for a line. + + + + + Specifies the LineDashStyle is none. + + + + + Specifies the LineDashStyle is solid. + + + + + Specifies the LineDashStyle is dash. + + + + + Specifies the LineDashStyle is dash dot. + + + + + Specifies the LineDashStyle is dash dot dot. + + + + + Specifies the LineDashStyle is dash long dash. + + + + + Specifies the LineDashStyle is dash long dash dot. + + + + + Specifies the LineDashStyle is round dot. + + + + + Specifies the LineDashStyle is square dot. + + + + + Specifies the LineDashStyle is system dash dot. + + + + + Specifies the LineDashStyle is dot. + + + + + Specifies the type of join where two lines connects. + + + + + Specifies the LineJoinType is none. + + + + + Specifies the LineJoinType is miter. + + + + + Specifies the LineJoinType is round. + + + + + Specifies the LineJoinType is bevel. + + + + + Specifies the style for a line. + + + + + Specifies the LineStyle is single. + + + + + Specifies the LineStyle is thick between thin. + + + + + Specifies the LineStyle is thin thick. + + + + + Specifies the LineStyle is thick thin. + + + + + Specifies the LineStyle is thin thin. + + + + + Specifies the MirrorType. + + + + + + Specifies the MirrorType is none. + + + + + Specifies the MirrorType is horizonal. + + + + + Specifies the MirrorType is vertical. + + + + + Specifies the MirrorType is both. + + + + + Specifies the PenAlignmentType. + + + + + Specifies the PenAlignmentType is center. + + + + + Specifies the PenAlignmentType is In. + + + + + Specifies the predefined size types for the PlaceHolder object + + + + + Specifies the PlaceholderSize is none. + + + + + Specifies the PlaceholderSize is full. + + + + + Specifies the PlaceholderSize is half. + + + + + Specifies the PlaceholderSize is quarter. + + + + + Specifies the type of the ole object field. + + + + + Ole object field type is EMBED. + + + + + Ole object field type is LINK. + + + + + Specifies the type of OLE object. + + + + + Type is not defined. + + + + + Adobe Acrobat Document. File has ".pdf" extension. + + + + + Bitmap Image. File has ".png" extension. + + + + + Media Clip. + + + + + Equation. + + + + + Graph Chart. + + + + + Excel 97-2003 Worksheet. File has ".xls" extension. + + + + + Excel Binary Worksheet. File has ".xlsb" extension. + + + + + Excel chart. File has ".xls" extension. + + + + + Excel Macro-Enabled Worksheet. File has ".xlsm" extension. + + + + + Excel Worksheet. File has ".xlsx" extension. + + + + + PowerPoint 97-2003 Presentation. File has ".ppt" extension. + + + + + PowerPoint 97-2003 Slide. File has ".sld" extension. + + + + + PowerPoint Macro-Enabled Presentation. File has ".pptm" extension. + + + + + PowerPoint Macro-Enabled Slide. File has ".sldm" extension. + + + + + PowerPoint Presentation. File has ".pptx" extension. + + + + + PowerPoint Slide. File has ".sldx" extension. + + + + + Word 97-2003 Document. File has ".doc" extension. + + + + + Word Document. File has ".docx" extension. + + + + + Word Macro-Enabled Document. File has ".docm" extension. + + + + + Visio Deawing. + + + + + MIDI Sequence. + + + + + OpenDocument Presentation. + + + + + OpenDocument Spreadsheet. + + + + + OpenDocument Text. + + + + + OpenOffice.org 1.1 Spreadsheet. + + + + + OpenOffice.org 1.1 Text. + + + + + Package. + + + + + Video Clip. + + + + + Wave Sound. + + + + + WordPad Document. + + + + + OpenOffice spreadsheet. + + + + + OpenOffice Text. + + + + + Specifies the horizontal alignment for the rectangle. + + + + + Specifies the RectangleAlignmentType is bottom. + + + + + Specifies the RectangleAlignmentType is bottom left. + + + + + Specifies the RectangleAlignmentType is bottom right. + + + + + Specifies the RectangleAlignmentType is center. + + + + + Specifies the RectangleAlignmentType is left. + + + + + Specifies the RectangleAlignmentType is right. + + + + + Specifies the RectangleAlignmentType is top. + + + + + Specifies the RectangleAlignmentType is top left. + + + + + Specifies the RectangleAlignmentType is top right. + + + + + Specifies the horizontal alignment of the text. + + + + + Specifies the HorizontalAlignmentType is none. + + + + + Specifies the HorizontalAlignmentType is left. + + + + + Specifies the HorizontalAlignmentType is center. + + + + + Specifies the HorizontalAlignmentType is right. + + + + + Specifies the HorizontalAlignmentType is justify. + + + + + Specifies the HorizontalAlignmentType is distributed. + + + + + Specifies the HorizontalAlignment. + + + + + + Specifies the HorizontalAlignment is none. + + + + + Specifies the HorizontalAlignment is left. + + + + + Specifies the HorizontalAlignment is center. + + + + + Specifies the HorizontalAlignment is right. + + + + + Specifies the HorizontalAlignment is justify. + + + + + Specifies the HorizontalAlignment is distributed. + + + + + Specifies the HorizontalAlignment is justify low. + + + + + Specifies the HorizontalAlignment is Thai Distributed. + + + + + Specifies the vertical alignment of the text. + + + + + Specifies the VerticalAlignmentType is none. + + + + + Specifies the VerticalAlignmentType is top. + + + + + Specifies the VerticalAlignmentType is middle. + + + + + Specifies the VerticalAlignmentType is bottom. + + + + + Specifies the VerticalAlignmentType is none. + + + + + Specifies the VerticalAlignmentType is top. + + + + + Specifies the VerticalAlignmentType is middle. + + + + + Specifies the VerticalAlignmentType is bottom. + + + + + Specifies the VerticalAlignmentType is justify. + + + + + Specifies the VerticalAlignmentType is distributed. + + + + + Specifies the TabAlignmentType. + + + + + Specifies the TabAlignmentType is none. + + + + + Specifies the TabAlignmentType is left. + + + + + Specifies the TabAlignmentType is center. + + + + + Specifies the TabAlignmentType is right. + + + + + Specifies the TabAlignmentType is decimal. + + + + + Specifies the TextCap types. + + + + + Specifies the TextCapsType is none. + + + + + Specifies the TextCapsType is small. + + + + + Specifies the TextCapsType is All. + + + + + Specifies the TextOrientationType. + + + + + Specifies the TextOrientationType is no rotation. + + + + + Specifies the TextOrientationType is clock wise. + + + + + Specifies the TextOrientationType is counter clock wise. + + + + + Specifies the TextOrientationType is top to bottom. + + + + + Specifies the TextOverflowType. + + + + + Specifies the TextOverflowType is None. + + + + + Specifies the TextOverflowType is clip. + + + + + Specifies the TextOverflowType is ellipsis. + + + + + Specifies the TextOverflowType is overflow. + + + + + Specifies the types of strike through options applied for text. + + + + + Specifies the TextStrikethroughType is none. + + + + + Specifies the TextStrikethroughType is single. + + + + + Specifies the TextStrikethroughType is double. + + + + + Specifies the types of underline options applied to the text. + + + + + Specifies the TextUnderlineType is none. + + + + + Specifies the TextUnderlineType is single. + + + + + Specifies the TextUnderlineType is double. + + + + + Specifies the TextUnderlineType is dash. + + + + + Specifies the TextUnderlineType is dash dot dot heavy. + + + + + Specifies the TextUnderlineType is dash dot heavy. + + + + + Specifies the TextUnderlineType is dashed heavy. + + + + + Specifies the TextUnderlineType is dash long. + + + + + Specifies the TextUnderlineType is dash long heavy. + + + + + Specifies the TextUnderlineType is dot dash. + + + + + Specifies the TextUnderlineType is dot dot dash. + + + + + Specifies the TextUnderlineType is dotted. + + + + + Specifies the TextUnderlineType is dotted heavy. + + + + + Specifies the TextUnderlineType is heavy. + + + + + Specifies the TextUnderlineType is wave. + + + + + Specifies the TextUnderlineType is wavy double. + + + + + Specifies the TextUnderlineType is wavy heavy. + + + + + Specifies the type of underline for text + + + + + Specifies the TextUnderlineType is none. + + + + + Specifies the TextUnderlineType is single. + + + + + Specifies the TextUnderlineType is double. + + + + + Specifies the TextUnderlineType is dash. + + + + + Specifies the TextUnderlineType is dash dot dot heavy. + + + + + Specifies the TextUnderlineType is dash dot heavy. + + + + + Specifies the TextUnderlineType is dashed heavy. + + + + + Specifies the TextUnderlineType is dash long. + + + + + Specifies the TextUnderlineType is dash long heavy. + + + + + Specifies the TextUnderlineType is dot dash. + + + + + Specifies the TextUnderlineType is dot dot dash. + + + + + Specifies the TextUnderlineType is dotted. + + + + + Specifies the TextUnderlineType is dotted heavy. + + + + + Specifies the TextUnderlineType is heavy. + + + + + Specifies the TextUnderlineType is wave. + + + + + Specifies the TextUnderlineType is wavy double. + + + + + Specifies the TextUnderlineType is wavy heavy. + + + + + Specifies the TextUnderlineType is words. + + + + + Specifies the predefined types of TextureFill. + + + + + Specifies the TextureFillType is blue tissue paper. + + + + + Specifies the TextureFillType is bouquet. + + + + + Specifies the TextureFillType is brown marble. + + + + + Specifies the TextureFillType is canvas. + + + + + Specifies the TextureFillType is cork. + + + + + Specifies the TextureFillType is denim. + + + + + Specifies the TextureFillType is fish fossil. + + + + + Specifies the TextureFillType is granite. + + + + + Specifies the TextureFillType is green marble. + + + + + Specifies the TextureFillType is medium wood. + + + + + Specifies the TextureFillType is newsprint. + + + + + Specifies the TextureFillType is oak. + + + + + Specifies the TextureFillType is paper bag. + + + + + Specifies the TextureFillType is papyrus. + + + + + Specifies the TextureFillType is parchment. + + + + + Specifies the TextureFillType is pink tissue paper. + + + + + Specifies the TextureFillType is purple mesh. + + + + + Specifies the TextureFillType is recycled paper. + + + + + Specifies the TextureFillType is sand. + + + + + Specifies the TextureFillType is stationery. + + + + + Specifies the TextureFillType is walnut. + + + + + Specifies the TextureFillType is water droplets. + + + + + Specifies the TextureFillType is white marble. + + + + + Specifies the TextureFillType is woven mat. + + + + + Specifies the TextureFillType is unknown. + + + + + Specifies the type of text direction. + + + + + Specifies the TextDirectionType is horizontal. + + + + + Specifies the TextDirectionType is vertical. + + + + + Specifies the TextDirectionType is vertical270. + + + + + Specifies the TextDirectionType is word art vertical. + + + + + Specifies the TextDirection. + + + + + Specifies the TextDirection is horizontal. + + + + + Specifies the TextDirection is vertical. + + + + + Specifies the TextDirection is vertical270. + + + + + Specifies the TextDirection is word art vertical. + + + + + Specifies the TextDirection is east asian vertical. + + + + + Specifies the TextDirection is mongolian vertical. + + + + + Specifies the TextDirection is word art right to left. + + + + + Specifies the Black White Mode. + + + + + Specifies the Black White Mode is none. + + + + + Specifies the Black White Mode is clear. + + + + + Specifies the Black White Mode is automatic. + + + + + Specifies the Black White Mode is gray. + + + + + Specifies the Black White Mode is light gray. + + + + + Specifies the Black White Mode is inverse gray. + + + + + Specifies the Black White Mode is gray white. + + + + + Specifies the Black White Mode is black gray. + + + + + Specifies the Black White Mode is black white. + + + + + Specifies the Black White Mode is black. + + + + + Specifies the Black White Mode is white. + + + + + Specifies the Black White Mode is hidden. + + + + + Specifies the ColorMode. + + + + + Specifies the ColorMode is tint. + + + + + Specifies the ColorMode is shade. + + + + + Specifies the ColorMode is alpha. + + + + + Specifies the ColorMode is alpha mod. + + + + + Specifies the ColorMode is alpha off. + + + + + Specifies the ColorMode is red. + + + + + Specifies the ColorMode is red mod. + + + + + Specifies the ColorMode is red off. + + + + + Specifies the ColorMode is green. + + + + + Specifies the ColorMode is green mod. + + + + + Specifies the ColorMode is green off. + + + + + Specifies the ColorMode is blue. + + + + + Specifies the ColorMode is blue mod. + + + + + Specifies the ColorMode is blue off. + + + + + Specifies the ColorMode is hue. + + + + + Specifies the ColorMode is hue mod. + + + + + Specifies the ColorMode is hue off. + + + + + Specifies the ColorMode is sat. + + + + + Specifies the ColorMode is sat mod. + + + + + Specifies the ColorMode is sat off. + + + + + Specifies the ColorMode is lum. + + + + + Specifies the ColorMode is lum mod. + + + + + Specifies the ColorMode is lum off. + + + + + Specifies the ColorMode is gamma. + + + + + Specifies the ColorMode is inv gamma. + + + + + Specifies the ColorMode is comp. + + + + + Specifies the ColorMode is gray. + + + + + Specifies the ColorMode is inv. + + + + + Specifies the Drawing types. + + + + + Specifies the Drawing types is none. + + + + + Specifies the Drawing types is TextBox. + + + + + Specifies the Drawing types is PlaceHolder. + + + + + Specifies the Drawing types is Table. + + + + + Specifies the Drawing types is Chart. + + + + + Specifies the Drawing type is SmartArt. + + + + + Specifies the Drawing type is OleObject. + + + + + Specifies the path shape types. + + + + + Specifies the path shape types is circle. + + + + + Specifies the path shape types is rectangle. + + + + + Specifies the path shape types is shape. + + + + + Specifies the shape types. + + + + + Specifies the shape types is Sp. + + + + + Specifies the shape types is GRP sp. + + + + + Specifies the shape types is graphic frame. + + + + + Specifies the shape types is CXN sp. + + + + + Specifies the shape types is pic. + + + + + Specifies the shape types is content part. + + + + + Specifies the shape types is alternate content. + + + + + Specifies the shape types is Chart. + + + + + Specifies the smart art point shape, which is exist in data.xml. Used only for smart art. + + + + + Specifies the smart art drawing shape, which is exist in drawing.xml. Used only for smart art. + + + + + Specifies the manner in which a path should be filled. + + + + + This specifies that the corresponding path should have a darker shaded color applied to it’s fill. + + + + + This specifies that the corresponding path should have a slightly darker shaded color applied to it’s fill. + + + + + This specifies that the corresponding path should have a lightly shaded color applied to it’s fill. + + + + + This specifies that the corresponding path should have a slightly lighter shaded color applied to it’s fill. + + + + + This specifies that the corresponding path should have no fill. + + + + + This specifies that the corresponding path should have a normally shaded color applied to it’s fill. + + + + + Represents the fill format options of the object. + + + A fill format can have a solid, gradient, pattern, texture type. + + + + + Gets or sets the of the object. + + + + //Open a presentation. + IPresentation presentation = Presentation.Open("Template.pptx"); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(); + //Get the fill of slide background + IFill fill = slide.Background.Fill; + //Set the fill type + fill.FillType = FillType.Solid; + //Set the fill color + fill.SolidFill.Color = ColorObject.Red; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open a presentation + Dim presentation__1 As IPresentation = Presentation.Open("Template.pptx") + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add() + 'Get the fill of slide background + Dim fill As IFill = slide.Background.Fill + 'Set the fill type + fill.FillType = FillType.Solid + 'Set the fill color + fill.SolidFill.Color = ColorObject.Red + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance. Read-only. + + + The gradient fill. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add shape to slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220); + //Retrieve fill from shape + IFill fill = shape.Fill; + //Set gradient fill to the shape + fill.FillType = FillType.Gradient; + //Retrieve the gradient fill from the shape + IGradientFill gradientFill = fill.GradientFill; + //Add the first gradient stop. + gradientFill.GradientStops.Add(); + //Add the second gradient stop. + gradientFill.GradientStops.Add(); + //Save the presentation + presentation.Save("GradientFill.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add shape to slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220) + 'Retrieve fill from shape + Dim fill As IFill = shape.Fill + 'Set gradient fill to the shape + fill.FillType = FillType.Gradient + 'Retrieve the gradient fill from the shape + Dim gradientFill As IGradientFill = fill.GradientFill + 'Add the first gradient stop. + gradientFill.GradientStops.Add() + 'Add the second gradient stop. + gradientFill.GradientStops.Add() + 'Save the presentation + presentation__1.Save("GradientFill.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance. Read-only. + + + The pattern fill. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add shape to slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220); + //Retrieve fill from shape + IFill fill = shape.Fill; + //Set pattern fill type to shape + fill.FillType = FillType.Pattern; + //Create instance to hold pattern fill properties + IPatternFill patternFill = fill.PatternFill; + //Set the pattern type + patternFill.Pattern = PatternFillType.DashedDownwardDiagonal; + //Set back color for the pattern + patternFill.BackColor = ColorObject.PaleGreen; + //Set fore color for the pattern + patternFill.ForeColor = ColorObject.Blue; + //Save the presentation + presentation.Save("PatternFill.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add shape to slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220) + 'Retrieve fill from shape + Dim fill As IFill = shape.Fill + 'Set pattern fill type to shape + fill.FillType = FillType.Pattern + 'Create instance to hold pattern fill properties + Dim patternFill As IPatternFill = fill.PatternFill + 'Set the pattern type + patternFill.Pattern = PatternFillType.DashedDownwardDiagonal + 'Set back color for the pattern + patternFill.BackColor = ColorObject.PaleGreen + 'Set fore color for the pattern + patternFill.ForeColor = ColorObject.Blue + 'Save the presentation + presentation__1.Save("PatternFill.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance. Read-only. + + + The solid fill. + + + + //Open a presentation. + IPresentation presentation = Presentation.Open("Template.pptx"); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(); + //Get the fill of slide background + IFill fill = slide.Background.Fill; + //Set the fill type + fill.FillType = FillType.Solid; + //Set the fill color + fill.SolidFill.Color = ColorObject.Red; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open a presentation. + Dim presentation__1 As IPresentation = Presentation.Open("Template.pptx") + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add() + 'Get the fill of slide background + Dim fill As IFill = slide.Background.Fill + 'Set the fill type + fill.FillType = FillType.Solid + 'Set the fill color + fill.SolidFill.Color = ColorObject.Red + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance. Read-only. + + + The picture fill. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a shape to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220); + //Retrieve fill from the shape + IFill fill = shape.Fill; + //Set the picture fill type to shape + fill.FillType = FillType.Picture; + //Create an instance to hold the picture fill properties + IPictureFill pictureFill = fill.PictureFill; + //Create a file stream and copy it to the memory stream + FileStream pictureStream = new FileStream("Image.png", FileMode.Open); + MemoryStream memoryStream = new MemoryStream(); + pictureStream.CopyTo(memoryStream); + //Convert the memory stream into a byte array + byte[] picBytes = memoryStream.ToArray(); + //Set Image Bytes + pictureFill.ImageBytes = picBytes; + //Save the presentation + presentation.Save("PictureFill.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a shape to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220) + 'Retrieve fill from the shape + Dim fill As IFill = shape.Fill + 'Set the picture fill type to shape + fill.FillType = FillType.Picture + 'Create an instance to hold the picture fill properties + Dim pictureFill As IPictureFill = fill.PictureFill + 'Create a file stream and copy it to the memory stream + Dim pictureStream As FileStream = New FileStream("Image.png", FileMode.Open) + Dim memoryStream As MemoryStream = New MemoryStream() + pictureStream.CopyTo(memoryStream) + 'Convert the memory stream into a byte array + Dim picBytes As Byte() = memoryStream.ToArray() + 'Set Image Bytes + pictureFill.ImageBytes = picBytes + 'Save the presentation + presentation__1.Save("PictureFill.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Compares the current Fill object with given Fill object. + + The Fill object to compare with the current instance. + True if the Fill objects are equal; otherwise, false. + + + + Represents the gradient type fill format. + + + + + Gets the gradient stop collection. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + slide.Background.Fill.FillType = FillType.Gradient; + //Retrieve the gradient fill from the shape + IGradientFill gradientFill = slide.Background.Fill.GradientFill; + //Add a gradient stop. + gradientFill.GradientStops.Add(); + //Retrieve gradient stops, it is read only + IGradientStops stops = gradientFill.GradientStops; + //Add gradient stop with color + stops.Add().Color = ColorObject.FromArgb(13, 34, 89, 32); + //Add gradient stop with position + stops.Add().Position = 3.5F; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + slide.Background.Fill.FillType = FillType.Gradient + 'Retrieve the gradient fill from the shape + Dim gradientFill As IGradientFill = slide.Background.Fill.GradientFill + 'Add a gradient stop. + gradientFill.GradientStops.Add() + 'Retrieve gradient stops, it is read only + Dim stops As IGradientStops = gradientFill.GradientStops + 'Add gradient stop with color + stops.Add().Color = ColorObject.FromArgb(13, 34, 89, 32) + 'Add gradient stop with position + stops.Add().Position = 3.5F + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Compares the current GradientFill object with given GradientFill object. + + The GradientFill object to compare with the current instance. + True if the GradientFill objects are equal; otherwise, false. + + + + Represents a gradient stop in the object. + + + + + Gets or sets the structure for the gradient stop. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance for gradient stop - 1 + IGradientStop gradStop = slide.Background.Fill.GradientFill.GradientStops.Add(); + //Set position for gradient stop + gradStop.Position = 2.4F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90); + //Create instance for gradient stop - 2 + IGradientStop _gradStop = slide.Background.Fill.GradientFill.GradientStops.Add(); + //Set position for gradient stop + _gradStop.Position = 5F; + //Set color for gradient stop + _gradStop.Color = ColorObject.FromArgb(20, 106, 120); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance for gradient stop - 1 + Dim gradStop As IGradientStop = slide.Background.Fill.GradientFill.GradientStops.Add() + 'Set position for gradient stop + gradStop.Position = 2.4F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90) + 'Create instance for gradient stop - 2 + Dim _gradStop As IGradientStop = slide.Background.Fill.GradientFill.GradientStops.Add() + 'Set position for gradient stop + _gradStop.Position = 5F + 'Set color for gradient stop + _gradStop.Color = ColorObject.FromArgb(20, 106, 120) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the gradient stop position. The position ranges from 0 to 100. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance for gradient stop - 1 + IGradientStop gradStop = slide.Background.Fill.GradientFill.GradientStops.Add(); + //Set position for gradient stop + gradStop.Position = 2.4F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90); + //Create instance for gradient stop - 2 + IGradientStop _gradStop = slide.Background.Fill.GradientFill.GradientStops.Add(); + //Set position for gradient stop + _gradStop.Position = 5F; + //Set color for gradient stop + _gradStop.Color = ColorObject.FromArgb(20, 106, 120); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance for gradient stop - 1 + Dim gradStop As IGradientStop = slide.Background.Fill.GradientFill.GradientStops.Add() + 'Set position for gradient stop + gradStop.Position = 2.4F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90) + 'Create instance for gradient stop - 2 + Dim _gradStop As IGradientStop = slide.Background.Fill.GradientFill.GradientStops.Add() + 'Set position for gradient stop + _gradStop.Position = 5F + 'Set color for gradient stop + _gradStop.Color = ColorObject.FromArgb(20, 106, 120) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the transparency of the gradient stop. + The value of the transparency ranges from 0 to 100. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance for gradient stop - 1 + IGradientStop gradStop = slide.Background.Fill.GradientFill.GradientStops.Add(); + //Set position for gradient stop + gradStop.Position = 2.4F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90); + //Set transparency of gradient stop + gradStop.Transparency = 57; + //Create instance for gradient stop - 2 + IGradientStop _gradStop = slide.Background.Fill.GradientFill.GradientStops.Add(); + //Set position for gradient stop + _gradStop.Position = 5F; + //Set color for gradient stop + _gradStop.Color = ColorObject.FromArgb(20, 106, 120); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance for gradient stop - 1 + Dim gradStop As IGradientStop = slide.Background.Fill.GradientFill.GradientStops.Add() + 'Set position for gradient stop + gradStop.Position = 2.4F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90) + 'Set transparency of gradient stop + gradStop.Transparency = 57 + 'Create instance for gradient stop - 2 + Dim _gradStop As IGradientStop = slide.Background.Fill.GradientFill.GradientStops.Add() + 'Set position for gradient stop + _gradStop.Position = 5F + 'Set color for gradient stop + _gradStop.Color = ColorObject.FromArgb(20, 106, 120) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the brightness of the gradient stop. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance for gradient stop - 1 + IGradientStop gradStop = slide.Background.Fill.GradientFill.GradientStops.Add(); + //Set position for gradient stop + gradStop.Position = 2.4F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90); + //Create instance for gradient stop - 2 + IGradientStop _gradStop = slide.Background.Fill.GradientFill.GradientStops.Add(); + //Set position for gradient stop + _gradStop.Position = 5F; + //Set color for gradient stop + _gradStop.Color = ColorObject.FromArgb(20, 106, 120); + //Get the brightness of gradient stop - read only. + float brightness = _gradStop.Brightness; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance for gradient stop - 1 + Dim gradStop As IGradientStop = slide.Background.Fill.GradientFill.GradientStops.Add() + 'Set position for gradient stop + gradStop.Position = 2.4F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90) + 'Create instance for gradient stop - 2 + Dim _gradStop As IGradientStop = slide.Background.Fill.GradientFill.GradientStops.Add() + 'Set position for gradient stop + _gradStop.Position = 5F + 'Set color for gradient stop + _gradStop.Color = ColorObject.FromArgb(20, 106, 120) + 'Get the brightness of gradient stop - read only. + Dim brightness As Single = _gradStop.Brightness + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Compares the current GradientStop object with given GradientStop object. + + The GradientStop object to compare with the current instance. + True if the GradientStop objects are equal; otherwise, false. + + + + Represents a collection of instance. + + + + + Adds a gradient stop at the end of the collection. + + Minimum of 2 gradient stops must be added while using gradient type fill. + Returns the instance. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance to hold all the gradient stop + IGradientStops gradientStops = slide.Background.Fill.GradientFill.GradientStops; + //Add a gradient stop to the gradient stops collection + gradientStops.Add(); + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Blue, 1.1F); + //Gets a single gradient stop from the collection + IGradientStop gradStop = gradientStops[0]; + //Set position for gradient stop + gradStop.Position = 2.4F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance to hold all the gradient stop + Dim gradientStops As IGradientStops = slide.Background.Fill.GradientFill.GradientStops + 'Add a gradient stop to the gradient stops collection + gradientStops.Add() + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F) + 'Gets a single gradient stop from the collection + Dim gradStop As IGradientStop = gradientStops(0) + 'Set position for gradient stop + gradStop.Position = 2.4F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds the specified gradient stop object at the end of the collection. + Minimum of 2 gradient stops must be added while using gradient type fill. + + Represents an gradient stop instance to be added. + Returns the zero-based index of the gradient stop object within collection. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance to hold all the gradient stop + IGradientStops gradientStops = slide.Background.Fill.GradientFill.GradientStops; + //Add a gradient stop to the gradient stops collection + gradientStops.Add(); + //Gets a single gradient stop from the collection + IGradientStop gradStop = gradientStops[0]; + //Set position for gradient stop + gradStop.Position = 2.4F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90); + //Add the gradient stop to collection + gradientStops.Add(gradStop); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance to hold all the gradient stop + Dim gradientStops As IGradientStops = slide.Background.Fill.GradientFill.GradientStops + 'Add a gradient stop to the gradient stops collection + gradientStops.Add() + 'Gets a single gradient stop from the collection + Dim gradStop As IGradientStop = gradientStops(0) + 'Set position for gradient stop + gradStop.Position = 2.4F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90) + 'Add the gradient stop to collection + gradientStops.Add(gradStop) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Inserts an item into the gradient stop collection at the specified index. + + The zero-based index value to insert the specified gradient stop item. + The gradient stop item to insert. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance to hold all the gradient stop + IGradientStops gradientStops = slide.Background.Fill.GradientFill.GradientStops; + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F); + //Add a gradient stop to the gradient stops collection + IGradientStop gradStop = gradientStops.Add(); + //Set position for gradient stop + gradStop.Position = 2.4F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90); + //Add the gradient stop to collection + gradientStops.Add(gradStop); + //Insert a gradient stop into the collection + gradientStops.Insert(1, gradStop); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance to hold all the gradient stop + Dim gradientStops As IGradientStops = slide.Background.Fill.GradientFill.GradientStops + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F) + 'Add a gradient stop to the gradient stops collection + Dim gradStop As IGradientStop = gradientStops.Add() + 'Set position for gradient stop + gradStop.Position = 2.4F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90) + 'Add the gradient stop to collection + gradientStops.Add(gradStop) + 'Insert a gradient stop into the collection + gradientStops.Insert(1, gradStop) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the element at the specified index of the gradient stop collection. + + The zero-based index value to remove the specified gradient stop item. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance to hold all the gradient stop + IGradientStops gradientStops = slide.Background.Fill.GradientFill.GradientStops; + //Add a gradient stop to the gradient stops collection + gradientStops.Add(); + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F); + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.LightBlue, 75F); + //Remove the gradient stop from specific index + gradientStops.RemoveAt(0); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance to hold all the gradient stop + Dim gradientStops As IGradientStops = slide.Background.Fill.GradientFill.GradientStops + 'Add a gradient stop to the gradient stops collection + gradientStops.Add() + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F) + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.LightBlue, 75F) + 'Remove the gradient stop from specific index + gradientStops.RemoveAt(0) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified instance from the gradient stop collection. + + The gradient stop instance to be removed from the collection. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance to hold all the gradient stop + IGradientStops gradientStops = slide.Background.Fill.GradientFill.GradientStops; + //Add a gradient stop to the gradient stops collection + gradientStops.Add(); + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F); + //Create instance for gradient stop + IGradientStop gradStop = gradientStops.Add(); + //Set position for gradient stop + gradStop.Position = 5F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(20, 106, 120); + //Remove a gradient stop + gradientStops.Remove(gradStop); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance to hold all the gradient stop + Dim gradientStops As IGradientStops = slide.Background.Fill.GradientFill.GradientStops + 'Add a gradient stop to the gradient stops collection + gradientStops.Add() + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F) + 'Create instance for gradient stop + Dim gradStop As IGradientStop = gradientStops.Add() + 'Set position for gradient stop + gradStop.Position = 5F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(20, 106, 120) + 'Remove a gradient stop + gradientStops.Remove(gradStop) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the instance within the collection. + + The instance to locate. + Returns the zero-based index of the first occurrence of instance within the collection, if found; otherwise, –1. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance to hold all the gradient stop + IGradientStops gradientStops = slide.Background.Fill.GradientFill.GradientStops; + //Add a gradient stop to the gradient stops collection + gradientStops.Add(); + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F); + //Gets a single gradient stop from the collection + IGradientStop gradStop = gradientStops[0]; + //Set position for gradient stop + gradStop.Position = 2.4F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90); + //Add the gradient stop to collection + gradientStops.Add(gradStop); + //Get the index of gradient stop from the collection + int index = gradientStops.IndexOf(gradStop); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance to hold all the gradient stop + Dim gradientStops As IGradientStops = slide.Background.Fill.GradientFill.GradientStops + 'Add a gradient stop to the gradient stops collection + gradientStops.Add() + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F) + 'Gets a single gradient stop from the collection + Dim gradStop As IGradientStop = gradientStops(0) + 'Set position for gradient stop + gradStop.Position = 2.4F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90) + 'Add the gradient stop to collection + gradientStops.Add(gradStop) + 'Get the index of gradient stop from the collection + Dim index As Integer = gradientStops.IndexOf(gradStop) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes all the elements from gradient stop collection. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance to hold all the gradient stop + IGradientStops gradientStops = slide.Background.Fill.GradientFill.GradientStops; + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F); + //Add a gradient stop to the gradient stops collection + gradientStops.Add(); + //Clears the collection + gradientStops.Clear(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance to hold all the gradient stop + Dim gradientStops As IGradientStops = slide.Background.Fill.GradientFill.GradientStops + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F) + 'Add a gradient stop to the gradient stops collection + gradientStops.Add() + 'Clears the collection + gradientStops.Clear() + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a gradient stop at the specified position. + Minimum of 2 gradient stops must be added while using gradient type fill. + + The color of gradient stop. + The position of the gradient stop. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance to hold all the gradient stop + IGradientStops gradientStops = slide.Background.Fill.GradientFill.GradientStops; + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.LightBlue, 20F); + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 90.2F); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance to hold all the gradient stop + Dim gradientStops As IGradientStops = slide.Background.Fill.GradientFill.GradientStops + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.LightBlue, 20F) + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 90.2F) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the gradient stop collection. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance to hold all the gradient stop + IGradientStops gradientStops = slide.Background.Fill.GradientFill.GradientStops; + //Add a gradient stop to the gradient stops collection + gradientStops.Add(); + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F); + //Create instance for gradient stop + IGradientStop gradStop = gradientStops.Add(); + //Set position for gradient stop + gradStop.Position = 5F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(20, 106, 120); + //Get the count of gradient stops added, read only + int totalGradientStops = gradientStops.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance to hold all the gradient stop + Dim gradientStops As IGradientStops = slide.Background.Fill.GradientFill.GradientStops + 'Add a gradient stop to the gradient stops collection + gradientStops.Add() + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Crimson, 1.1F) + 'Create instance for gradient stop + Dim gradStop As IGradientStop = gradientStops.Add() + 'Set position for gradient stop + gradStop.Position = 5F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(20, 106, 120) + 'Get the count of gradient stops added, read only + Dim totalGradientStops As Integer = gradientStops.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance at specified index from the gradient stop collection. Read-only. + + + The . + + Determines the index of the gradient stop. + Returns the instance. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient; + //Create instance to hold all the gradient stop + IGradientStops gradientStops = slide.Background.Fill.GradientFill.GradientStops; + //Add a gradient stop to the gradient stops collection + gradientStops.Add(); + //Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Blue, 75F); + //Gets a single gradient stop from the collection + IGradientStop gradStop = gradientStops[0]; + //Set position for gradient stop + gradStop.Position = 25F; + //Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90); + //Add the gradient stop to collection + gradientStops.Add(gradStop); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Set gradient fill to the slide background + slide.Background.Fill.FillType = FillType.Gradient + 'Create instance to hold all the gradient stop + Dim gradientStops As IGradientStops = slide.Background.Fill.GradientFill.GradientStops + 'Add a gradient stop to the gradient stops collection + gradientStops.Add() + 'Add a gradient stop by specifying color and position + gradientStops.Add(ColorObject.Blue, 75F) + 'Gets a single gradient stop from the collection + Dim gradStop As IGradientStop = gradientStops(0) + 'Set position for gradient stop + gradStop.Position = 25F + 'Set color for gradient stop + gradStop.Color = ColorObject.FromArgb(23, 156, 90) + 'Add the gradient stop to collection + gradientStops.Add(gradStop) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents the group shape in a slide. + + + + + Gets an instance that represents all the elements within the group shape. + + + The shapes. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a group shape to the slide + IGroupShape groupShape = slide.GroupShapes.AddGroupShape(12, 12, 400, 400); + //Create instance to hold all the shapes in a group shape + IShapes shapes = groupShape.Shapes; + //Add auto shapes to group shape + shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120); + shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30); + //Set description for the group shape + groupShape.Description = "This is a groupShape"; + //Set title for the group shape + groupShape.Title = "Group Shape"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a group shape to the slide + Dim groupShape As IGroupShape = slide.GroupShapes.AddGroupShape(12, 12, 400, 400) + 'Create instance to hold all the shapes in a group shape + Dim shapes As IShapes = groupShape.Shapes + 'Add auto shapes to group shape + shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120) + shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30) + 'Set description for the group shape + groupShape.Description = "This is a groupShape" + 'Set title for the group shape + groupShape.Title = "Group Shape" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance that contains fill formatting properties. Read-only. + + + The fill. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a group shape to the slide + IGroupShape groupShape = slide.GroupShapes.AddGroupShape(12, 12, 400, 400); + //Create instance to hold all the shapes in a group shape + IShapes shapes = groupShape.Shapes; + //Add auto shapes to group shape + shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120); + shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30); + //Get the fill of a group shape + IFill fill = groupShape.Fill; + //Set the fill type for group shape + fill.FillType = FillType.Solid; + //Set the color for solid fill + fill.SolidFill.Color = ColorObject.Red; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a group shape to the slide + Dim groupShape As IGroupShape = slide.GroupShapes.AddGroupShape(12, 12, 400, 400) + 'Create instance to hold all the shapes in a group shape + Dim shapes As IShapes = groupShape.Shapes + 'Add auto shapes to group shape + shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120) + shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30) + 'Get the fill of a group shape + Dim fill As IFill = groupShape.Fill + 'Set the fill type for group shape + fill.FillType = FillType.Solid + 'Set the color for solid fill + fill.SolidFill.Color = ColorObject.Red + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents a collection of instance in a slide. + + + + + Creates a group shape and adds the group shape to the shape collection. + + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for group shapes + IGroupShapes groupShapes = slide.GroupShapes; + //Add group shape to the collection + IGroupShape groupShape = groupShapes.AddGroupShape(12, 12, 300, 350); + //Add shapes to group shape. + groupShape.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30); + groupShape.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for group shapes + Dim groupShapes As IGroupShapes = slide.GroupShapes + 'Add group shape to the collection + Dim groupShape As IGroupShape = groupShapes.AddGroupShape(12, 12, 300, 350) + 'Add shapes to group shape. + groupShape.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30) + groupShape.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the instance within the collection. + + The IGroupShape instance to locate in the collection. + Returns the zero-based index of the first occurrence of the specified group shape within the collection, if found; otherwise, –1. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for group shapes + IGroupShapes groupShapes = slide.GroupShapes; + //Add group shape to the collection + IGroupShape groupShape1 = groupShapes.AddGroupShape(12, 12, 250, 250); + IGroupShape groupShape2 = groupShapes.AddGroupShape(300, 50, 200, 100); + //Add shape to group shape. + groupShape1.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30); + groupShape1.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120); + groupShape2.Shapes.AddShape(AutoShapeType.Rectangle, 200, 12, 40, 30); + groupShape2.Shapes.AddShape(AutoShapeType.Oval, 250, 50, 60, 120); + //Get the index of added group shape + int index = groupShapes.IndexOf(groupShape1); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for group shapes + Dim groupShapes As IGroupShapes = slide.GroupShapes + 'Add group shape to the collection + Dim groupShape1 As IGroupShape = groupShapes.AddGroupShape(12, 12, 250, 250) + Dim groupShape2 As IGroupShape = groupShapes.AddGroupShape(300, 50, 200, 100) + 'Add shape to group shape. + groupShape1.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30) + groupShape1.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120) + groupShape2.Shapes.AddShape(AutoShapeType.Rectangle, 200, 12, 40, 30) + groupShape2.Shapes.AddShape(AutoShapeType.Oval, 250, 50, 60, 120) + 'Get the index of added group shape + Dim index As Integer = groupShapes.IndexOf(groupShape1) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified instance from the group shape collection. + + The group shape object to be removed from the collection. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for group shapes + IGroupShapes groupShapes = slide.GroupShapes; + //Add group shape to the collection + IGroupShape groupShape1 = groupShapes.AddGroupShape(12, 12, 250, 250); + IGroupShape groupShape2 = groupShapes.AddGroupShape(300, 50, 200, 100); + //Add shape to group shape. + groupShape1.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30); + groupShape1.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120); + groupShape2.Shapes.AddShape(AutoShapeType.Rectangle, 200, 12, 40, 30); + groupShape2.Shapes.AddShape(AutoShapeType.Oval, 250, 50, 60, 120); + //Remove a group shape instance from collection + groupShapes.Remove(groupShape2); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for group shapes + Dim groupShapes As IGroupShapes = slide.GroupShapes + 'Add group shape to the collection + Dim groupShape1 As IGroupShape = groupShapes.AddGroupShape(12, 12, 250, 250) + Dim groupShape2 As IGroupShape = groupShapes.AddGroupShape(300, 50, 200, 100) + 'Add shape to group shape. + groupShape1.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30) + groupShape1.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120) + groupShape2.Shapes.AddShape(AutoShapeType.Rectangle, 200, 12, 40, 30) + groupShape2.Shapes.AddShape(AutoShapeType.Oval, 250, 50, 60, 120) + 'Remove a group shape instance from collection + groupShapes.Remove(groupShape2) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the element at the specified index of the group shape collection. + + The zero-based index of the group shape object to be removed. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for group shapes + IGroupShapes groupShapes = slide.GroupShapes; + //Add group shape to the collection + IGroupShape groupShape1 = groupShapes.AddGroupShape(12, 12, 250, 250); + IGroupShape groupShape2 = groupShapes.AddGroupShape(300, 50, 200, 100); + //Add shape to group shape. + groupShape1.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30); + groupShape1.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120); + groupShape2.Shapes.AddShape(AutoShapeType.Rectangle, 200, 12, 40, 30); + groupShape2.Shapes.AddShape(AutoShapeType.Oval, 250, 50, 60, 120); + //Remove an item from specific index. + groupShapes.RemoveAt(0); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for group shapes + Dim groupShapes As IGroupShapes = slide.GroupShapes + 'Add group shape to the collection + Dim groupShape1 As IGroupShape = groupShapes.AddGroupShape(12, 12, 250, 250) + Dim groupShape2 As IGroupShape = groupShapes.AddGroupShape(300, 50, 200, 100) + 'Add shape to group shape. + groupShape1.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30) + groupShape1.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120) + groupShape2.Shapes.AddShape(AutoShapeType.Rectangle, 200, 12, 40, 30) + groupShape2.Shapes.AddShape(AutoShapeType.Oval, 250, 50, 60, 120) + 'Remove an item from specific index. + groupShapes.RemoveAt(0) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance from the collection. Read-only. + + + The . + + Index from the collection. + Returns the particular group shape based on the index. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for group shapes + IGroupShapes groupShapes = slide.GroupShapes; + //Add group shape to the collection + IGroupShape groupShape1 = groupShapes.AddGroupShape(12, 12, 250, 250); + IGroupShape groupShape2 = groupShapes.AddGroupShape(300, 50, 200, 100); + //Add shape to group shape. + groupShape1.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30); + groupShape1.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120); + groupShape2.Shapes.AddShape(AutoShapeType.Rectangle, 200, 12, 40, 30); + groupShape2.Shapes.AddShape(AutoShapeType.Oval, 250, 50, 60, 120); + //To access a specific group shape in the collection + IGroupShape groupShape = groupShapes[0]; + //Set the description + groupShape.Description = "First group shape"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for group shapes + Dim groupShapes As IGroupShapes = slide.GroupShapes + 'Add group shape to the collection + Dim groupShape1 As IGroupShape = groupShapes.AddGroupShape(12, 12, 250, 250) + Dim groupShape2 As IGroupShape = groupShapes.AddGroupShape(300, 50, 200, 100) + 'Add shape to group shape. + groupShape1.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30) + groupShape1.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120) + groupShape2.Shapes.AddShape(AutoShapeType.Rectangle, 200, 12, 40, 30) + groupShape2.Shapes.AddShape(AutoShapeType.Oval, 250, 50, 60, 120) + 'To access a specific group shape in the collection + Dim groupShape As IGroupShape = groupShapes(0) + 'Set the description + groupShape.Description = "First group shape" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the group shape collection. Read-only. + + + The count. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for group shapes + IGroupShapes groupShapes = slide.GroupShapes; + //Add group shape to the collection + IGroupShape groupShape1 = groupShapes.AddGroupShape(12, 12, 250, 250); + IGroupShape groupShape2 = groupShapes.AddGroupShape(300, 50, 200, 100); + //Add shape to group shape. + groupShape1.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30); + groupShape1.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120); + groupShape2.Shapes.AddShape(AutoShapeType.Rectangle, 200, 12, 40, 30); + groupShape2.Shapes.AddShape(AutoShapeType.Oval, 250, 50, 60, 120); + //Get the count of group shapes collection + int count = groupShapes.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for group shapes + Dim groupShapes As IGroupShapes = slide.GroupShapes + 'Add group shape to the collection + Dim groupShape1 As IGroupShape = groupShapes.AddGroupShape(12, 12, 250, 250) + Dim groupShape2 As IGroupShape = groupShapes.AddGroupShape(300, 50, 200, 100) + 'Add shape to group shape. + groupShape1.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30) + groupShape1.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120) + groupShape2.Shapes.AddShape(AutoShapeType.Rectangle, 200, 12, 40, 30) + groupShape2.Shapes.AddShape(AutoShapeType.Oval, 250, 50, 60, 120) + 'Get the count of group shapes collection + Dim count As Integer = groupShapes.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Sets the language value + + + + + + + Sets the language value + + + + + + + Gets the layout number from the path. + + The path containing the layout number. + Layout number from the path + + + + Sorts the relation collection. + + The relation collection to be sorted + The sorted relation collection. + + + + Gets file name without extension from the path. + + Url to get name from. + File name without extension from the path. + + + + Gets folder name from the path. + + The file path from which to extract the folder name. + folder name from the path. + + + + Gets file name from the path. + + Url to get name from. + File name from the path. + + + + Gets the file extension from the path. + + Represents the file path. + Returns the file extension. + + + + Gets a PlaceholderType value with corresponding HeaderFooterType. + + Specifies a headerFooterType + Retruns a PlaceholderType value with corresponding HeaderFooterType. + + + + Check whether current PlaceHolder is HeaderFooter or not. + + Represent a PlaceholderType to check. + Returns true, if it is a HeaderFooter shape; Otherwise false. + + + + Gets a DateTimeFormatType for the provided field type. + + Represent the type of a field. + Returns a DateTimeFormatType for the corresponding field type. + + + + Gets a DateTime field type for the provided DateTimeFormatType. + + Represent the type of a DateTimeFormat. + Returns a DateTime field type for the provided DateTimeFormatType. + + + + Checks whether the layout placeholder and the current placeholder are same. + + Instance of the layout placeholder + Instance of the current placeholder + Returns whether both the placeholder are same. + + + + Checks whether the master placeholder and the current placeholder are same. + + Instance of the master placeholder + Instance of the current placeholder + Returns whether the master placeholder and the current placeholder are same. + + + + Checks whether the layout placeholder and the current placeholder are same. + + Instance of the layout placeholder + Instance of the current placeholder + Determines whether it is master slide or not + Returns whether the layout placeholder and the current placeholder are same. + + + + Converts the string to "OleObjectType" + + The OLE type STR. + + + + + Gets a OLE extension for specified ole type. + + Represent a OLE type. + Returns a extension for the corresponding OLE type. + + + + Converts the string to "OleObjectType" + + The OLE type STR. + + + + + Returns the color value from ColorMap dictionary. + + value + The layout slide + + + + + Gets the name of the placeholder. + + Represents the placeholder type. + Return the string format of the placeholder. + + + + Check whether source and destination PlaceholderTypes are same or not. + + Represent a source PlaceholderTypes to compare. + Represent a destination PlaceholderTypes to compare. + Returns true, if source and destination are same; Otherwise false. + + + + Gets a PathFillMode for a input string. + + Represent a input string. + Returns a PathFillMode. + + + + Gets the placeholder type from string. + + Placeholder type in string format. + Returns the type of placeholder. + + + + Returns the color value from ColorMap dictionary. + + value + The base slide + + + + + Converts a string to an integer. + + The string to convert to an integer. + + The integer representation of the string or returns 0 if the string is null or empty. + + + + + Converts a Base64 encoded string to a byte array. + + The Base64 encoded string to convert. + The byte array represented by the Base64 encoded string, or null if the string is null. + + + + Convert percentage value to int. + + + + + Gets a XML input for a PathFillMode. + + Represent a PathFillMode. + Returns a string for PathFillMode. + + + + Converts the placeholder type to string. + + Type of the internal placeholder. + Returns the string format of the placeholder type. + + + + Gets the font name from theme.xml, based on a script type. + + Represent a theme values. + Represent the script type of TextRange. + + + + + Check whether Lan attribute is valid or not. + + Returns true, if it is valid; Otherwise false. + + + + Gets a font name from theme.xml file. + + Represent the theme values. + Represent the theme font name. + Represent the script type. + Represent the Lang attribute value. + + + + + Gets a default font name to render the text, when retrived font name is null or empty. + + Represent a script type to check. + Returns a default font name to render. + + + + Check whether current script is EastAsia script or not. + + Represent a scipt to check. + Returns true, if it is an EastAsia script; Otherwise false. + + + + Check whether current script is Complex script or not. + + Represent a script to check. + Returns true, if it is an Complex script; Otherwise false. + + + + Get the first key from the Dictionary with specified value + + Represent the Dictionary that contains value + Represent the value + + + + + Gets the layout type value equivalent to the slide layout type. + + Returns a string value for the slide layout type. + + + + Provides access to the types used to create and manipulate images in PowerPoint Presentations. + + + + + + Specifies the file format of the image. + + + + + Specifies the image format is unknown + + + + + Specifies the image format is BMP + + + + + Specifies the image format is EMF + + + + + Specifies the image format is GIF + + + + + Specifies the image format is JPEG + + + + + Specifies the image format is PNG + + + + + Specifies the image format is WMF + + + + + Specifies the image format is icon + + + + + Specifies the image format is exif + + + + + Specifies the image format is memory BMP + + + + + Specifies the image format is tiff + + + + + Specifies the type of the image. + + + + + Specifies the ImageType is metafile + + + + + Specifies the ImageType is bitmap + + + + + Represents the functionalities for using images in presentation + + + + + + //Create an instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Get the image from file path + Image image = new Image(imageStream); + // Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(new MemoryStream(image.ImageData), 120,100,290,200); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create an instance of PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Get the image from file path + Dim image As New Image(imageStream) + ' Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(New MemoryStream(image.ImageData), 120, 100, 290, 200) + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Checks if Bmp. + + + + + + Checks if EMF or WMF. + + + + + + Checks if GIF. + + + + + + Checks if icon. + + + + + + Checks if JPEG. + + + + + + Checks if PNG. + + + + + + Initializes this instance. + + + + + Parses the GIF image. + + + + + Parses the EMF or WMF image. + + + + + Parses the GIF image. + + + + + Parses the icon image. + + + + + Parses the JPEG image. + + + + + Parses the PNG image. + + + + + Reads the int16. + + + + + + Reads the int32. + + + + + + Reads the short LE. + + + + + + Reads the string. + + The len. + + + + + Reads the Uint32. + + + + + + Reads the word. + + + + + + Resets this instance. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Returns the this method creates. + + + //Create an instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Get the image from file path + Image image = Image.FromStream(imageStream); + // Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(new MemoryStream(image.ImageData), 300, 270, 410, 250); + //Save the presentation + presentation.Save("Image.pptx"); + //close the presentation + presentation.Close(); + + + 'Create an instance of PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Get the image from file path + Dim image As Image = Image.FromStream(imageStream) + ' Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(New MemoryStream(image.ImageData), 300, 270, 410, 250) + 'Save the presentation + presentation.Save("Image.pptx") + 'close the presentation + presentation.Close() + + + + + + Creates an independent copy of the specified image. + + The this method creates. + + + //Create an instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Get the image from file path + Image image = Image.FromStream(imageStream); + //Clone the image + Image clonedImage = image.Clone(); + // Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(new MemoryStream(clonedImage.ImageData), 300, 270, 410, 250); + //Save the presentation + presentation.Save("Image.pptx"); + //close the presentation + presentation.Close(); + + + 'Create an instance of PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Get the image from file path + Dim image As Image = Image.FromStream(imageStream) + 'Clone the image + Dim clonedImage As Image = image.Clone() + ' Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(New MemoryStream(clonedImage.ImageData), 300, 270, 410, 250) + 'Save the presentation + presentation.Save("Image.pptx") + 'close the presentation + presentation.Close() + + + + + + Creates an image from the specified file. + + A string that contains the name of the file from which to create the . + Returns the this method creates. + + + //Create an instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Get the image from file path + Image image = Image.FromFile(@"image.jpg"); + // Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(new MemoryStream(image.ImageData), 300, 270, 410, 250); + //Save the presentation + presentation.Save("Image.pptx"); + //close the presentation + presentation.Close(); + + + 'Create an instance of PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Get the image from file path + Dim image As Image = Image.FromFile("image.jpg") + ' Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(New MemoryStream(image.ImageData), 300, 270, 410, 250) + 'Save the presentation + presentation.Save("Image.pptx") + 'close the presentation + presentation.Close() + + + + + + Gets the image format. Read-only. + + The image format. + + + //Create an instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Get the image from file path + Image image = Image.FromStream(imageStream); + //Get the image format, read only + ImageFormat imageFormat = image.Format; + //Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(new MemoryStream(image.ImageData), 300, 270, 410, 250); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create an instance of PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Get the image from file path + Dim image As Image = Image.FromStream(imageStream) + 'Get the image format, read only + Dim imageFormat As ImageFormat = image.Format + 'Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(New MemoryStream(image.ImageData), 300, 270, 410, 250) + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Gets the height of the Image. Read-only. + + The height. + + + //Create an instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Get the image from file path + Image image = Image.FromStream(imageStream); + //Get the size of image, it is read only + int Height = image.Height; + int width = image.Width; + //Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(new MemoryStream(image.ImageData), 300, 270, 410, 250); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create an instance of PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Get the image from file path + Dim image As Image = Image.FromStream(imageStream) + 'Get the size of image, it is read only + Dim Height As Integer = image.Height + Dim width As Integer = image.Width + 'Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(New MemoryStream(image.ImageData), 300, 270, 410, 250) + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Gets the image data as byte array. Read-only. + + The image data. + + + //Create an instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Get the image from file path + Image image = Image.FromStream(imageStream); + //Get the image data of image + byte[] imageData = image.ImageData; + //Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(new MemoryStream(imageData), 300, 270, 410, 250); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create an instance of PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Get the image from file path + Dim image As Image = Image.FromStream(imageStream) + 'Get the image data of image + Dim imageData As Byte() = image.ImageData + 'Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(New MemoryStream(imageData), 300, 270, 410, 250) + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Gets the file format of the Image. Read-only. + + The image format. + + + //Create an instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Get the image from file path + Image image = Image.FromStream(imageStream); + //Get the image format, read only + ImageFormat imageFormat = image.RawFormat; + //Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(new MemoryStream(image.ImageData), 300, 270, 410, 250); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create an instance of PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Get the image from file path + Dim image As Image = Image.FromStream(imageStream) + 'Get the image format, read only + Dim imageFormat As ImageFormat = image.RawFormat + 'Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(New MemoryStream(image.ImageData), 300, 270, 410, 250) + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Gets the width and height of the image. Read-only. + + The size. + + + //Create an instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Get the image from file path + Image image = Image.FromStream(imageStream); + //Get the size of image, it is read only + System.Drawing.Size size = image.Size; + //Set the width and height of the image + size.Width = 300; + size.Width = 200; + //Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(new MemoryStream(image.ImageData), 120,100,size.Width,size.Height); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create an instance of PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Get the image from file path + Dim image As Image = Image.FromStream(imageStream) + 'Get the size of image, it is read only + Dim size As System.Drawing.Size = image.Size + 'Set the width and height of the image + size.Width = 300 + size.Width = 200 + 'Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(New MemoryStream(image.ImageData), 120, 100, size.Width, size.Height) + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Gets the width of the Image. Read-only. + + The width. + + + //Create an instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Get the image from file path + Image image = Image.FromStream(imageStream); + //Get the size of image, it is read only + int Height = image.Height; + int width = image.Width; + // Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(new MemoryStream(image.ImageData), 300, 270, 410, 250); + //Save the presentation + presentation.Save("Output.pptx"); + //close the presentation + presentation.Close(); + + + 'Create an instance of PowerPoint presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Get the image from file path + Dim image As Image = Image.FromStream(imageStream) + 'Get the size of image, it is read only + Dim Height As Integer = image.Height + Dim width As Integer = image.Width + ' Add the image to the slide by specifying position and size + slide.Pictures.AddPicture(New MemoryStream(image.ImageData), 300, 270, 410, 250) + 'Save the presentation + presentation.Save("Output.pptx") + 'close the presentation + presentation.Close() + + + + + + Represents the line and arrowhead formatting options. + + + + + Gets or sets the length of the arrowhead at the beginning of the specified line. + + + The length of the begin arrowhead. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the length of the beginning arrowhead of the line + lineFormat.BeginArrowheadLength = ArrowheadLength.Long; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the length of the beginning arrowhead of the line + lineFormat.BeginArrowheadLength = ArrowheadLength.[Long] + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the style of the arrowhead at the beginning of the specified line. + + + The begin arrowhead style. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the style of the beginning arrowhead of the line + lineFormat.BeginArrowheadStyle = ArrowheadStyle.ArrowOval; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the style of the beginning arrowhead of the line + lineFormat.BeginArrowheadStyle = ArrowheadStyle.ArrowOval + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the width of the arrowhead at the beginning of the specified line. + + + The width of the begin arrowhead. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the width of the beginning arrowhead of the line + lineFormat.BeginArrowheadWidth = ArrowheadWidth.Narrow; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the width of the beginning arrowhead of the line + lineFormat.BeginArrowheadWidth = ArrowheadWidth.Narrow + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the line cap style. + + + The cap style. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the line cap style + lineFormat.CapStyle = LineCapStyle.Flat; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the line cap style + lineFormat.CapStyle = LineCapStyle.Flat + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the line dash style. + + + The dash style. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the line dash style + lineFormat.DashStyle = LineDashStyle.DashLongDashDot; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the line dash style + lineFormat.DashStyle = LineDashStyle.DashLongDashDot + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the length of the arrowhead at the end of the specified line. + + + The end length of the arrowhead. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the length of the end arrowhead of the line + lineFormat.EndArrowheadLength = ArrowheadLength.Medium; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the length of the end arrowhead of the line + lineFormat.EndArrowheadLength = ArrowheadLength.Medium + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the style of the arrowhead at the end of the specified line. + + + The end arrowhead style. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the style of the end arrowhead of the line + lineFormat.EndArrowheadStyle = ArrowheadStyle.ArrowDiamond; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the style of the end arrowhead of the line + lineFormat.EndArrowheadStyle = ArrowheadStyle.ArrowDiamond + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the width of the arrowhead at the end of the specified line. + + + The end width of the arrowhead. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the width of the end arrowhead of the line + lineFormat.EndArrowheadWidth = ArrowheadWidth.Wide; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the width of the end arrowhead of the line + lineFormat.EndArrowheadWidth = ArrowheadWidth.Wide + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance that represents fill formatting options. Read-only. + + + The fill. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Retrieve the fill of line format + IFill fill = lineFormat.Fill; + //Set the fill type of line + fill.FillType = FillType.Solid; + //Set the color for solid fill + fill.SolidFill.Color = ColorObject.DeepPink; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Retrieve the fill of line format + Dim fill As IFill = lineFormat.Fill + 'Set the fill type of line + fill.FillType = FillType.Solid + 'Set the color for solid fill + fill.SolidFill.Color = ColorObject.DeepPink + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets line join type. + + + The type of the line join. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the line join type + lineFormat.LineJoinType = LineJoinType.Miter; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the line join type + lineFormat.LineJoinType = LineJoinType.Miter + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or set the line style. + + + The style. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the line style + lineFormat.Style = LineStyle.ThickThin; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the line style + lineFormat.Style = LineStyle.ThickThin + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or set the line weight, in points. + The range of Weight is from 0 to 1584. + + + The weight. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance of line format from shape + ILineFormat lineFormat = shape.LineFormat; + //Set the weight + lineFormat.Weight = 17; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance of line format from shape + Dim lineFormat As ILineFormat = shape.LineFormat + 'Set the weight + lineFormat.Weight = 17 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Check whether current border is conflicting border or not. + + Represent the current border type. + Returns true. If current border is a conflicting border; otherwise false. + + + + Gets the index of a current cell. + + + + + + Compares the current LineFormat object with given LineFormat object. + + The LineFormat object to compare with the current instance. + True if the LineFormat objects are equal; otherwise, false. + + + + Represents the OLE object in the PowerPoint presentation. + + + + + Gets the image data for the specified OLE object. + + The byte array that specifies the OLE image data. + + + //Load a PowerPoint presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide from the presentation + ISlide slide = presentation.Slides[0]; + //Get the oleObject from the slide + IOleObject oleObject = (IShape)slide.Shapes[0] as IOleObject; + //Gets the image data of embedded Ole Object. + byte[] array = oleObject.ImageData; + //Save the extracted OLE image data into file system. + MemoryStream memoryStream = new MemoryStream(array); + FileStream fileStream = File.Create("OleImage.png"); + memoryStream.CopyTo(fileStream); + memoryStream.Dispose(); + fileStream.Dispose(); + //Close the Presentation + presentation.Close(); + + + 'Load a PowerPoint presentation + Dim presentation As IPresentation = Syncfusion.Presentation.Presentation.Open("Sample.pptx") + 'Get the first slide from the presentation + Dim slide As ISlide = presentation.Slides(0) + 'Get the oleObject from the slide + Dim oleObject As IOleObject = CType(CType(slide.Shapes(0), IOleObject), IShape) + 'Gets the image data of embedded Ole Object. + Dim array() As Byte = oleObject.ImageData + 'Save the extracted OLE image data into file system. + Dim memoryStream As MemoryStream = New MemoryStream(array) + Dim fileStream As FileStream = File.Create("OleImage.png") + memoryStream.CopyTo(fileStream) + memoryStream.Dispose + fileStream.Dispose + 'Close the Presentation + presentation.Close() + + + + + + Gets the embedded file data for the specified OLE object. + + The byte array that specifies the embedded file data. + + + //Load a PowerPoint presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide from the presentation + ISlide slide = presentation.Slides[0]; + //Get the oleObject from the slide + IOleObject oleObject = (IShape)slide.Shapes[0] as IOleObject; + //Gets the embedded OLE object data + byte[] array = oleObject.ObjectData; + //Save the extracted OLE data into file system. + MemoryStream memoryStream = new MemoryStream(array); + FileStream fileStream = File.Create("OleFile.docx"); + memoryStream.CopyTo(fileStream); + memoryStream.Dispose(); + fileStream.Dispose(); + //Close the Presentation + presentation.Close(); + + + 'Load a PowerPoint presentation + Dim presentation As IPresentation = Syncfusion.Presentation.Presentation.Open("Sample.pptx") + 'Get the first slide from the presentation + Dim slide As ISlide = presentation.Slides(0) + 'Get the oleObject from the slide + Dim oleObject As IOleObject = CType(CType(slide.Shapes(0), IOleObject), IShape) + 'Gets the embedded OLE object data + Dim array() As Byte = oleObject.ObjectData + 'Save the extracted OLE data into file system. + Dim memoryStream As MemoryStream = New MemoryStream(array) + Dim fileStream As FileStream = File.Create("OleFile.docx") + memoryStream.CopyTo(fileStream) + memoryStream.Dispose + fileStream.Dispose + 'Close the Presentation + presentation.Close() + + + + + + Gets the programmatic identifier (ProgID) for the specified OLE object. + + The string that specifies the type of the OLE object. + + + //Load a PowerPoint presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide from the presentation + ISlide slide = presentation.Slides[0]; + //Get the oleObject from the slide + IOleObject oleObject = (IShape)slide.Shapes[0] as IOleObject; + //Gets the embedded OLE object type + string objectType = oleObject.ProgID; + //Close the Presentation + presentation.Close(); + + + 'Load a PowerPoint presentation + Dim presentation As IPresentation = Syncfusion.Presentation.Presentation.Open("Sample.pptx") + 'Get the first slide from the presentation + Dim slide As ISlide = presentation.Slides(0) + 'Get the oleObject from the slide + Dim oleObject As IOleObject = CType(CType(slide.Shapes(0), IOleObject), IShape) + 'Gets the embedded OLE object type + Dim objectType As String = oleObject.ProgID + 'Close the Presentation + presentation.Close() + + + + + + Gets or sets a value indicating whether the OLE object is displayed as an icon or content. + + True if the OLE object is displayed as an icon; otherwise, false. + + Initially Presentation library generated documents display the icon (given image) in place of the embedded OLE instance. + By setting the DisplayAsIcon property to true, the icon is not updated after opening or editing the OLE instance by using Microsoft PowerPoint. + However, setting the DisplayAsIcon property to false enables the Presentation document to update the icons dynamically with the content after opening or editing the OLE instance. + + + + //Create new instance of PowerPoint presentation. + IPresentation pptxDoc = Presentation.Create(); + //Add slide with blank layout to presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Get the excel file as stream + Stream excelStream = File.Open("OleTemplate.xlsx", FileMode.Open); + //Image to be displayed, This can be any image + Stream imageStream = File.Open("OlePicture.png", FileMode.Open); + //Add an OLE object to the slide + IOleObject oleObject = slide.Shapes.AddOleObject(imageStream, "Excel.Sheet.12", excelStream); + //Set size and position of the OLE object + oleObject.Left = 10; + oleObject.Top = 10; + oleObject.Width = 400; + oleObject.Height = 300; + //Set DisplayAsIcon as true, to open the embedded document in separate (default) application. + oleObject.DisplayAsIcon = true; + //Save the presentation + pptxDoc.Save("OleObjectSample.pptx"); + //Close the presentation + pptxDoc.Close(); + + + 'Create New instance of PowerPoint presentation. + Dim pptxDoc As IPresentation = Presentation.Create + 'Add slide with blank layout to presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Get the excel file as stream + Dim excelStream As Stream = File.Open("OleTemplate.xlsx", FileMode.Open) + 'Image to be displayed, This can be any image + Dim imageStream As Stream = File.Open("OlePicture.png", FileMode.Open) + 'Add an OLE object to the slide + Dim oleObject As IOleObject = slide.Shapes.AddOleObject(imageStream, "Excel.Sheet.12", excelStream) + 'Set size and position of the OLE object + oleObject.Left = 10 + oleObject.Top = 10 + oleObject.Width = 400 + oleObject.Height = 300 + 'Set DisplayAsIcon as true, to open the embedded document in separate (default) application. + oleObject.DisplayAsIcon = True + 'Save the presentation + pptxDoc.Save("OleObjectSample.pptx") + 'Close the presentation + pptxDoc.Close() + + + + + + Gets the linked path for the specified OLE object. + + The string that specifies the OLE object link address. + + + //Load a PowerPoint presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide from the presentation + ISlide slide = presentation.Slides[0]; + //Get the oleObject from the slide + IOleObject oleObject = (IShape)slide.Shapes[0] as IOleObject; + //Gets the OLE object linked path + string objectPath = oleObject.LinkPath; + //Close the Presentation + presentation.Close(); + + + 'Load a PowerPoint presentation + Dim presentation As IPresentation = Syncfusion.Presentation.Presentation.Open("Sample.pptx") + 'Get the first slide from the presentation + Dim slide As ISlide = presentation.Slides(0) + 'Get the oleObject from the slide + Dim oleObject As IOleObject = CType(CType(slide.Shapes(0), IOleObject), IShape) + 'Gets the OLE object linked path + Dim objectPath As String = oleObject.LinkPath + 'Close the Presentation + presentation.Close() + + + + + + Gets the file name of embedded or linked OLE object. + + The string that specifies the file name of the OLE object. + + + //Load a PowerPoint presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Get the first slide from the presentation + ISlide slide = presentation.Slides[0]; + //Get the oleObject from the slide + IOleObject oleObject = (IShape)slide.Shapes[0] as IOleObject; + //Gets the embedded OLE object data + byte[] array = oleObject.ObjectData; + //Gets the file name of OLE object + string fileName = oleObject.FileName; + //Save the extracted OLE data into file system. + MemoryStream memoryStream = new MemoryStream(array); + FileStream fileStream = File.Create(fileName); + memoryStream.CopyTo(fileStream); + memoryStream.Dispose(); + fileStream.Dispose(); + //Close the Presentation + presentation.Close(); + + + 'Load a PowerPoint presentation + Dim presentation As IPresentation = Syncfusion.Presentation.Presentation.Open("Sample.pptx") + 'Get the first slide from the presentation + Dim slide As ISlide = presentation.Slides(0) + 'Get the oleObject from the slide + Dim oleObject As IOleObject = CType(CType(slide.Shapes(0), IOleObject), IShape) + 'Gets the embedded OLE object data + Dim array() As Byte = oleObject.ObjectData + 'Gets the file name of OLE object + Dim fileName As string = oleObject.FileName + 'Save the extracted OLE data into file system. + Dim memoryStream As MemoryStream = New MemoryStream(array) + Dim fileStream As FileStream = File.Create(fileName) + memoryStream.CopyTo(fileStream) + memoryStream.Dispose + fileStream.Dispose + 'Close the Presentation + presentation.Close() + + + + + + The ole stream name + + + + + Updates the GUID. + + The CMP file. + The index. + + + + Saves the specified native data. + + The native data. + The data path. + The OLE object. + + + + Writes the "Ole" stream. + + Type of the link. + Type of the obj. + The data path. + + + + Writes the "ObjInfo" stream. + + Type of the link. + Type of the obj. + + + + Writes the "CompObj" stream. + + Type of the obj. + + + + Writes the native data. + + The native data. + The data path. + Type of the object. + + + + Writes the native data. + + The native data. + Name of the stream. + + + + Writes the embedded drawing. + + The native data. + + + + Writes the native streams. + + The stream. + + + + Writes the package. + + The native data. + The data path. + + + + Update a embedded OLE object data. + + + + + Get byte array from a ICompoundStorage. + + Represent the ICompoundStorage + Represent the stream name to extract. + Returns the byte array + + + + Gets a default Ole package names + + + + + + Sets the type of the OLE. + + The type. + + + + Sets the link path of the OLE. + + The type. + + + + Sets the file name of the OLE. + + The file name of a OLE. + + + + Sets the OLE picture. + + The picture. + + + + Compares the current Shape object with given Shape object. + + The Shape object to compare with the current instance. + True if the Shape objects are equal; otherwise, false. + + + + Clones the OleObject instance. + + Returns the cloned OleObject instance. + + + + Close the OLEObject instance + + + + + Sets the baseslide parent to the current OleObject instance. + + Parent instance to be assigned to the current oleobject's parent. + + + + Gets the programmatic identifier (ProgID) for the specified OLE object. + + The string that specifies the type of the OLE object. + + + + Gets the image data for the specified OLE object. + + The byte array that specifies the OLE image data. + + + + Gets the linked path for the specified OLE object. + + The string that specifies the OLE object link address. + + + + Gets the file name of embedded or linked OLE object. + + The string that specifies the file name of the OLE object. + + + + Gets the embedded file data for the specified OLE object. + + The byte array that specifies the embedded file data. + + + + Gets or sets a value indicating whether the OLE object is displayed as an icon or content. + + True if the OLE object is displayed as an icon; otherwise, false. + Initially Presentation library generated documents display the icon (given image) in place of the embedded OLE instance. + By setting the DisplayAsIcon property to true, the icon is not updated after opening or editing the OLE instance by using Microsoft PowerPoint. + However, setting the DisplayAsIcon property to false enables the Presentation document to update the icons dynamically with the content after opening or editing the OLE instance. + + + + Gets or sets the type of relation. + + + + + Gets the type of the OLE object. + + The type of the OLE object. + + + + Class specifies storage with sub storages and streams. + + + + + Initializes a new instance of the class. + + Name of the storage. + + + + Parses the storages. + + The storage. + + + + Parses the streams. + + The storage. + + + + Writes to storage. + + The storage. + + + + Gets the byte array of the stream + + + + + + + Compare storages + + + + + + + Compares the array. + + The buffer1. + The buffer2. + + + + + Updates the GUID. + + The CMP file. + The index. + The storage name + + + + Clones this instance. + + + + + + Closes this instance. + + + + + Gets or sets the name of the storage. + + The name of the storage. + + + + Gets the streams. + + The streams. + + + + Gets the storages. + + The storages. + + + + Gets/sets the occurrence of the OleObject + + + + + Class performs converting string to OleObjectType enum and vice versa. + + + + + Converts the string to "OleObjectType" + + The OLE type STR. + + + + + Converts the string to "OleObjectType" + + The OLE type STR. + + + + + Gets the GUID for specified type of object. + + The type. + + + + + Implemented alternative method to improve the performance + + + + + + + + Represent the parsing algorithm of a OLE native stream + + + + + Create a object of the Ole10NativeParser + + + + + + Read a string until the empty byte comes. + + Specifies the byte array to read + Specifies a start position of a array to read + Returns the builded string + + + + Gets the native data from the OLE native stream + + + + + Gets the file name of the OLE native stream. + + + + + Clones the VmlShape instance. + + Returns the cloned VmlShape instance. + + + + Gets or Sets a FillMode of Path2D. + + Specifies how the corresponding path should be filled. + + + + Represents the pattern type in fill format. + + + + + Gets or sets the back color for the pattern. + + + The color of the background. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add shape to slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220); + //Retrieve fill from shape + IFill fill = shape.Fill; + //Set pattern fill type to shape + fill.FillType = FillType.Pattern; + //Retrieve the pattern fill + IPatternFill patternFill = fill.PatternFill; + //Set back color for the pattern + patternFill.BackColor = ColorObject.Blue; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add shape to slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220) + 'Retrieve fill from shape + Dim fill As IFill = shape.Fill + 'Set pattern fill type to shape + fill.FillType = FillType.Pattern + 'Retrieve the pattern fill + Dim patternFill As IPatternFill = fill.PatternFill + 'Set back color for the pattern + patternFill.BackColor = ColorObject.Blue + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the foreground color for the pattern. + + + The color of the foreground. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add shape to slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220); + //Retrieve fill from shape + IFill fill = shape.Fill; + //Set pattern fill type to shape + fill.FillType = FillType.Pattern; + //Retrieve the pattern fill + IPatternFill patternFill = fill.PatternFill; + //Set fore color for the pattern + patternFill.ForeColor = ColorObject.Blue; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add shape to slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220) + 'Retrieve fill from shape + Dim fill As IFill = shape.Fill + 'Set pattern fill type to shape + fill.FillType = FillType.Pattern + 'Retrieve the pattern fill + Dim patternFill As IPatternFill = fill.PatternFill + 'Set fore color for the pattern + patternFill.ForeColor = ColorObject.Blue + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets of sets a pattern type of the fill format. + + + The pattern. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add shape to slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220); + //Retrieve fill from shape + IFill fill = shape.Fill; + //Set pattern fill type to shape + fill.FillType = FillType.Pattern; + //Retrieve the pattern fill + IPatternFill patternFill = fill.PatternFill; + //Set the pattern type + patternFill.Pattern = PatternFillType.DashedDownwardDiagonal; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add shape to slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.BlockArc, 12, 23, 100, 220) + 'Retrieve fill from shape + Dim fill As IFill = shape.Fill + 'Set pattern fill type to shape + fill.FillType = FillType.Pattern + 'Retrieve the pattern fill + Dim patternFill As IPatternFill = fill.PatternFill + 'Set the pattern type + patternFill.Pattern = PatternFillType.DashedDownwardDiagonal + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents ForeColor color index. + + + + + Compares the current PatternFill object with given PatternFill object. + + The PatternFill object to compare with the current instance. + True if the PatternFill objects are equal; otherwise, false. + + + + Gets or sets a boolean value indicates whether format options are applied from Picture or Shape. + + + + + Represents the image in presentation. + + + + + Gets or sets the image data as byte array. + + + The byte data of the image. + + + + //Open an existing presentation. + IPresentation presentation = Presentation.Open("Picture.pptx"); + //Retrieve the first slide from the presentation. + ISlide slide = presentation.Slides[0]; + //Retrieve the first picture from the slide. + IPicture picture = slide.Pictures[0]; + //Get the new picture as stream. + Stream pictureStream = File.Open("Image.gif", FileMode.Open); + //Create instance for memory stream + MemoryStream memoryStream = new MemoryStream(); + //Copy stream to memoryStream. + pictureStream.CopyTo(memoryStream); + //Replace the existing image with new image. + picture.ImageData = memoryStream.ToArray(); + //Save the presentation to the file system. + presentation.Save("ImageData.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open an existing presentation. + Dim presentation__1 As IPresentation = Presentation.Open("Picture.pptx") + 'Retrieve the first slide from the presentation. + Dim slide As ISlide = presentation__1.Slides(0) + 'Retrieve the first picture from the slide. + Dim picture As IPicture = slide.Pictures(0) + 'Get the new picture as stream. + Dim pictureStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Create instance for memory stream + Dim memoryStream As New MemoryStream() + 'Copy stream to memoryStream. + pictureStream.CopyTo(memoryStream) + 'Replace the existing image with new image. + picture.ImageData = memoryStream.ToArray() + 'Save the presentation to the file system. + presentation__1.Save("ImageData.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the SVG image data as byte array. The default value is null. + + Returns the byte array of the SVG image. + + + //Open an existing presentation. + IPresentation presDoc = Presentation.Open("Picture.pptx"); + //Retrieve the first slide from the presentation. + ISlide slide = presDoc.Slides[0]; + //Retrieve the first picture from the slide. + IPicture picture = slide.Pictures[0]; + //Get the new SVG image as stream. + Stream svgStream = File.Open("Image.svg", FileMode.Open); + //Create instance for memory stream + MemoryStream memoryStream = new MemoryStream(); + //Copy stream to memoryStream. + svgStream.CopyTo(memoryStream); + //Replace the existing svg image with new image. + picture.SvgData = memoryStream.ToArray(); + //Save the presentation to the file system. + presDoc.Save("ImageData.pptx"); + //Close the presentation + presDoc.Close(); + + + 'Open an existing presentation. + Dim presDoc As IPresentation = Presentation.Open("Picture.pptx") + 'Retrieve the first slide from the presentation. + Dim slide As ISlide = presDoc.Slides(0) + 'Retrieve the first picture from the slide. + Dim picture As IPicture = slide.Pictures(0) + 'Get the new SVG image as stream. + Dim svgStream As Stream = File.Open("Image.svg", FileMode.Open) + 'Create instance for memory stream + Dim memoryStream As New MemoryStream() + 'Copy stream to memoryStream. + svgStream.CopyTo(memoryStream) + 'Replace the existing svg image with new image. + picture.SvgData = memoryStream.ToArray() + 'Save the presentation to the file system. + presDoc.Save("ImageData.pptx") + 'Close the presentation + presDoc.Close() + + + + + + Gets the . + + + The image format of the current image. + + + + //Open an existing presentation. + IPresentation presentation = Presentation.Open("Picture.pptx"); + //Retrieve the first slide from the presentation. + ISlide slide = presentation.Slides[0]; + //Retrieve the first picture from the slide. + IPicture picture = slide.Pictures[0]; + //Get the new picture as stream. + Stream pictureStream = File.Open("Image.gif", FileMode.Open); + //Create instance for memory stream + MemoryStream memoryStream = new MemoryStream(); + //Copy stream to memoryStream. + pictureStream.CopyTo(memoryStream); + //Replace the existing image with new image. + picture.ImageData = memoryStream.ToArray(); + //Get the image format of the pictures + Syncfusion.Drawing.ImageFormat imageFormat = picture.ImageFormat; + //Save the presentation to the file system. + presentation.Save("ImageData.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open an existing presentation. + Dim presentation__1 As IPresentation = Presentation.Open("Picture.pptx") + 'Retrieve the first slide from the presentation. + Dim slide As ISlide = presentation__1.Slides(0) + 'Retrieve the first picture from the slide. + Dim picture As IPicture = slide.Pictures(0) + 'Get the new picture as stream. + Dim pictureStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Create instance for memory stream + Dim memoryStream As New MemoryStream() + 'Copy stream to memoryStream. + pictureStream.CopyTo(memoryStream) + 'Replace the existing image with new image. + picture.ImageData = memoryStream.ToArray() + 'Get the image format of the pictures + Dim imageFormat As Syncfusion.Drawing.ImageFormat = picture.ImageFormat + 'Save the presentation to the file system. + presentation__1.Save("ImageData.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents the crop properties used to define the portion of an image to be cropped. + + + + //Open an existing presentation. + IPresentation presentation = Presentation.Open("Input.pptx"); + //Retrieve the first slide from the presentation. + ISlide slide = presentation.Slides[0]; + //Retrieve the first picture from the slide. + IPicture picture = slide.Pictures[0]; + //Crops the picture. + picture.Crop.ContainerLeft = 200; + picture.Crop.ContainerTop = 200; + picture.Crop.ContainerWidth = 200; + picture.Crop.ContainerHeight = 200; + //Save the presentation to the file system. + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open an existing presentation. + Dim presentation__1 As IPresentation = Presentation.Open("Input.pptx") + 'Retrieve the first slide from the presentation. + Dim slide As ISlide = presentation__1.Slides(0) + 'Retrieve the first picture from the slide. + Dim picture As IPicture = slide.Pictures(0) + //Crops the picture. + picture.Crop.ContainerLeft = 200; + picture.Crop.ContainerTop = 200; + picture.Crop.ContainerWidth = 200; + picture.Crop.ContainerHeight = 200; + 'Save the presentation to the file system. + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Add the svg and raster image stream + + Represent the svg stream + Represent the raster image stream + + + + Add the stream of the svg and raster images. + + Represent the svg stream + Represent the raster image stream + + + + Compares the current Picture object with given Picture object. + + The Shape object to compare with the current instance. + True if the Shape objects are equal; otherwise, false. + + + + Sets the BaseSlide parent to the current picture's base instance. + + + + + + Gets or sets a value indicating whether the picture is in the OLE format + + + + + Get or Set the data of the SVG picture. + + + + + Gets or sets the image layer data as a byte array. + + + It’s used to store the “.wdp” image data, which is generated while applying the brightness to the picture. + + + + + Retrieves an instance of the Crop class. + + An instance of the Crop class. + + + + Represents a collection of in a slide. + + + + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance. + + + //Create an instance for PowerPoint + IPresentation presentation = Presentation.Create(); + //Add a blank slide to presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold picture collection + IPictures pictures = slide.Pictures; + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100); + //Create an instance for image as stream + Stream stream = File.Open("pptxtoimage.png", FileMode.Open); + //Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create an instance for PowerPoint + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold picture collection + Dim pictures As IPictures = slide.Pictures + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100) + 'Create an instance for image as stream + Dim stream As Stream = File.Open("pptxtoimage.png", FileMode.Open) + 'Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Creates a picture from the specified svg, its fallback image stream and adds the picture to the picture collection. + + The instance of SVG image. + The instance of fallback image. + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance. + + + //Create an instance for PowerPoint + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to presentation + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold picture collection + IPictures pictures = slide.Pictures; + //Create an instance for fallback image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Create an instance for vector image as stream + Stream svgStream = File.Open("Image.svg", FileMode.Open); + //Add picture to the picture collection + pictures.AddPicture(svgStream, imageStream, 373, 83, 200, 100); + //Save the presentation + presDoc.Save("Sample.pptx"); + //Close the presentation + presDoc.Close(); + + + 'Create an instance for PowerPoint + Dim presDoc As IPresentation = Presentation.Create() + 'Add a blank slide to presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold picture collection + Dim pictures As IPictures = slide.Pictures + 'Create an instance for fallback image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Create an instance for vector image as stream + Dim svgStream As Stream = File.Open("Image.svg", FileMode.Open) + 'Add picture to the picture collection + pictures.AddPicture(svgStream, imageStream, 373, 83, 200, 100) + 'Save the presentation + presDoc.Save("Sample.pptx") + 'Close the presentation + presDoc.Close() + + + + + + Returns the index of first occurrence of the specified picture instance from the collection. + + Represents the picture from the collection. + The zero-based index of the first occurrence of picture within the picture collection, if found; otherwise, –1. + + + //Create an instance for PowerPoint + IPresentation presentation = Presentation.Create(); + //Add a blank slide to presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold picture collection + IPictures pictures = slide.Pictures; + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100); + //Create an instance for image as stream + Stream stream = File.Open("pptxtoimage.png", FileMode.Open); + //Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300); + //Retrieve a specific picture from the collection, read only + IPicture picture = pictures[0]; + //Get the index of specific picture instance + int index = pictures.IndexOf(picture); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create an instance for PowerPoint + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold picture collection + Dim pictures As IPictures = slide.Pictures + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100) + 'Create an instance for image as stream + Dim stream As Stream = File.Open("pptxtoimage.png", FileMode.Open) + 'Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300) + 'Retrieve a specific picture from the collection, read only + Dim picture As IPicture = pictures(0) + 'Get the index of specific picture instance + Dim index As Integer = pictures.IndexOf(picture) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of the specified picture object from the picture collection + + Represents the picture to be removed from the collection. + + + //Create an instance for PowerPoint + IPresentation presentation = Presentation.Create(); + //Add a blank slide to presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold picture collection + IPictures pictures = slide.Pictures; + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100); + //Create an instance for image as stream + Stream stream = File.Open("pptxtoimage.png", FileMode.Open); + //Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300); + //Retrieve a specific picture from the collection, read only + IPicture picture = pictures[0]; + //Remove a specific picture from collection + pictures.Remove(picture); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create an instance for PowerPoint + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold picture collection + Dim pictures As IPictures = slide.Pictures + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100) + 'Create an instance for image as stream + Dim stream As Stream = File.Open("pptxtoimage.png", FileMode.Open) + 'Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300) + 'Retrieve a specific picture from the collection, read only + Dim picture As IPicture = pictures(0) + 'Remove a specific picture from collection + pictures.Remove(picture) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the picture from the collection. + + The zero-based index of the first occurrence of the picture within the picture collection, if found; otherwise, –1. + + + //Create an instance for PowerPoint + IPresentation presentation = Presentation.Create(); + //Add a blank slide to presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold picture collection + IPictures pictures = slide.Pictures; + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100); + //Create an instance for image as stream + Stream stream = File.Open("pptxtoimage.png", FileMode.Open); + //Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300); + //Remove a picture using index position + pictures.RemoveAt(0); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create an instance for PowerPoint + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold picture collection + Dim pictures As IPictures = slide.Pictures + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100) + 'Create an instance for image as stream + Dim stream As Stream = File.Open("pptxtoimage.png", FileMode.Open) + 'Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300) + 'Remove a picture using index position + pictures.RemoveAt(0) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the picture at the specified index. + + + Specified index value of picture from the picture collection. + + The index value of the picture collection. + + Returns picture at the particular index. + + + + //Create an instance for PowerPoint + IPresentation presentation = Presentation.Create(); + //Add a blank slide to presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold picture collection + IPictures pictures = slide.Pictures; + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100); + //Create an instance for image as stream + Stream stream = File.Open("pptxtoimage.png", FileMode.Open); + //Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300); + //Retrieve a specific picture from the collection, read only + IPicture picture = pictures[0]; + //Set the description + picture.Description = "My picture"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create an instance for PowerPoint + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold picture collection + Dim pictures As IPictures = slide.Pictures + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100) + 'Create an instance for image as stream + Dim stream As Stream = File.Open("pptxtoimage.png", FileMode.Open) + 'Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300) + 'Retrieve a specific picture from the collection, read only + Dim picture As IPicture = pictures(0) + 'Set the description + picture.Description = "My picture" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the number of pictures present in the picture collection. + + + The total count of the picture. + + + + //Create an instance for PowerPoint + IPresentation presentation = Presentation.Create(); + //Add a blank slide to presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold picture collection + IPictures pictures = slide.Pictures; + //Create an instance for image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100); + //Create an instance for image as stream + Stream stream = File.Open("pptxtoimage.png", FileMode.Open); + //Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300); + //Get the count of picture collection + int count = pictures.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create an instance for PowerPoint + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold picture collection + Dim pictures As IPictures = slide.Pictures + 'Create an instance for image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Add picture to the picture collection + pictures.AddPicture(imageStream, 373, 83, 200, 100) + 'Create an instance for image as stream + Dim stream As Stream = File.Open("pptxtoimage.png", FileMode.Open) + 'Add picture to the shape collection + pictures.AddPicture(stream, 100, 20, 200, 300) + 'Get the count of picture collection + Dim count As Integer = pictures.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Add a SVG image within the current shape + + Represent the Svg Picture stream + Represent the raster Picture stream + Represent the left side position + Represent the top position + Represent the width + Represent the height + retruns a IPicture instance + + + + Defines the Placeholder properties of the IPlaceholder. + + + + + Represents the placeholder formatting options. + + + + + Gets the type. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Title); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for place holder format + IPlaceholderFormat placeholder = (slide.Shapes[0] as IShape).PlaceholderFormat; + //Get the type of place holder format, read only + PlaceholderType type = placeholder.Type; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Title) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for place holder format + Dim placeholder As IPlaceholderFormat = TryCast(slide.Shapes(0), IShape).PlaceholderFormat + 'Get the type of place holder format, read only + Dim type As PlaceholderType = placeholder.Type + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the name of the place holder. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Title); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Create instance for place holder format + IPlaceholderFormat placeholder = (slide.Shapes[0] as IShape).PlaceholderFormat; + //Set the name of the place holder format + placeholder.Name = "Place holder format"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Title) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Create instance for place holder format + Dim placeholder As IPlaceholderFormat = TryCast(slide.Shapes(0), IShape).PlaceholderFormat + 'Set the name of the place holder format + placeholder.Name = "Place holder format" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the placeholder type. + + Returns placeholder type. + + + + Sets the orientation for the placeholder. And modifies the specified placeholder according to the orientation. + + Represents the orientation of the placeholder. + + + + Sets the placeholder type based on the orientation. + + + + + Set the placeholder values. + + Represents the placeholder type. + Represents the placeholder size. + Represents the placeholder direction. + Represents the index of the placeholder. + + + + Sets the placeholder type. + + Represents the placeholder type. + + + + Gets the type of the placeholder. + + + + + Gets or sets the name of the specified placeholder. + + + + + Gets or sets the bounding rectangle of the object. + + + A that represents the boundaries of the object. + + + Represents an actual bounds of placeholder, which is retrieved from either Slide, Layout slide, or Master slide. + + + + + Represents a collection of instance in a slide. + + + + + Adds the specified instance at the end of the shape collection. + + The instance to be added. + Returns the zero-based index of the newly added shape within the shape collection. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.TitleAndContent); + //Get the shape collection of slide + IShapes shapes = slide.Shapes; + //Create instance for SlideItem + ISlideItem slideItem = shapes[0]; + //Set the description for slide item + slideItem.Description = "This is a SlideItem"; + //Set the title + slideItem.Title = "SlideItem"; + //Add the slide item + shapes.Add(slideItem); + //Save the presentation + presentation.Save("Cells.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.TitleAndContent) + 'Get the shape collection of slide + Dim shapes As IShapes = slide.Shapes + 'Create instance for SlideItem + Dim slideItem As ISlideItem = shapes(0) + 'Set the description for slide item + slideItem.Description = "This is a SlideItem" + 'Set the title + slideItem.Title = "SlideItem" + 'Add the slide item + shapes.Add(slideItem) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Inserts an element into the shape collection at the specified index. + + The zero-based index at which item should be inserted. + The slide item to insert in the collection. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add text box to slide + IShape textBox = shapes.AddTextBox(100, 30, 100, 200); + //Add a paragraph with text content. + IParagraph paragraph = textBox.TextBody.AddParagraph("This is a Text Box"); + //Insert shape at specific index + shapes.Insert(1, textBox); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add text box to slide + Dim textBox As IShape = shapes.AddTextBox(100, 30, 100, 200) + 'Add a paragraph with text content. + Dim paragraph As IParagraph = textBox.TextBody.AddParagraph("This is a Text Box") + 'Insert shape at specific index + shapes.Insert(1, textBox) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the element at the specified index of the shape collection. + + The zero-based index of the shape to be removed. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add text box to slide + IShape textBox = shapes.AddTextBox(100, 30, 100, 200); + //Add a paragraph with text content. + IParagraph paragraph = textBox.TextBody.AddParagraph("This is a Text Box"); + //Remove shape at specific index + shapes.RemoveAt(0); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add text box to slide + Dim textBox As IShape = shapes.AddTextBox(100, 30, 100, 200) + 'Add a paragraph with text content. + Dim paragraph As IParagraph = textBox.TextBody.AddParagraph("This is a Text Box") + 'Remove shape at specific index + shapes.RemoveAt(0) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified slide from the shape collection. + + The shape to be removed from the collection. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add text box to slide + IShape textBox = shapes.AddTextBox(100, 30, 100, 200); + //Add a paragraph with text content. + IParagraph paragraph = textBox.TextBody.AddParagraph("This is a Text Box"); + //Remove specific shape from collection + shapes.Remove(textBox); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add text box to slide + Dim textBox As IShape = shapes.AddTextBox(100, 30, 100, 200) + 'Add a paragraph with text content. + Dim paragraph As IParagraph = textBox.TextBody.AddParagraph("This is a Text Box") + 'Remove specific shape from collection + shapes.Remove(textBox) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the specified within the shape collection. + + The instance to locate. + Returns the zero-based index of the first occurrence of specified slide item within the shape collection, if found; otherwise, –1. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add text box to slide + IShape textBox = shapes.AddTextBox(100, 30, 100, 200); + //Add a paragraph with text content. + IParagraph paragraph = textBox.TextBody.AddParagraph("This is a Text Box"); + //Get the index of specific shape + int index = shapes.IndexOf(textBox); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add text box to slide + Dim textBox As IShape = shapes.AddTextBox(100, 30, 100, 200) + 'Add a paragraph with text content. + Dim paragraph As IParagraph = textBox.TextBody.AddParagraph("This is a Text Box") + 'Get the index of specific shape + Dim index As Integer = shapes.IndexOf(textBox) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes all the elements from shape collection. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add text box to slide + IShape textBox = shapes.AddTextBox(100, 30, 100, 200); + //Add a paragraph with text content. + IParagraph paragraph = textBox.TextBody.AddParagraph("This is a Text Box"); + //Clear the shapes + shapes.Clear(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add text box to slide + Dim textBox As IShape = shapes.AddTextBox(100, 30, 100, 200) + 'Add a paragraph with text content. + Dim paragraph As IParagraph = textBox.TextBody.AddParagraph("This is a Text Box") + 'Clear the shapes + shapes.Clear() + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a new chart to the shape collection. + + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add chart to slide + IPresentationChart chart =shapes.AddChart(400, 300, 100, 100); + //Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.AliceBlue; + //Set the chart title + chart.ChartTitle = "Chart"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add chart to slide + Dim chart As IPresentationChart = shapes.AddChart(400, 300, 100, 100) + 'Set the fore color of the chart area. + chart.ChartArea.Fill.ForeColor = Color.AliceBlue + 'Set the chart title + chart.ChartTitle = "Chart" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Creates a chart for the data in specified excel document and adds the chart to the shape collection. + + Excel document stream having the data for chart[Only the "*.xlsx" format is supported]. + Worksheet number of the excel document. + Data range in the worksheet for the chart to be created. + Position and size of the chart, in points. + Returns an instance this method creates. + + + //Creates a Presentation instance + IPresentation pptxDoc = Presentation.Create(); + //Adds a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Gets the excel file as stream + FileStream excelStream = new FileStream("Book1.xlsx", FileMode.Open); + //Adds a chart to the slide with a data range from excel worksheet – excel workbook, worksheet number, Data range, position, and size. + IPresentationChart chart = slide.Charts.AddChart(excelStream, 1, "A1:D4", new RectangleF(100, 10, 700, 500)); + //Save the presentation + pptxDoc.Save("Output.pptx"); + //Closes the Presentation + pptxDoc.Close(); + + + 'Creates a Presentation instance + Dim pptxDoc As IPresentation = Presentation.Create() + 'Adds a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Gets the excel file as stream + Dim excelStream As New MemoryStream(File.ReadAllBytes("Book1.xlsx")) + 'Adds a chart to the slide with a data range from excel worksheet – excel workbook, worksheet number, Data range, position, and size. + Dim chart As IPresentationChart = slide.Charts.AddChart(excelStream, 1, "A1:D4", New RectangleF(100, 10, 700, 500)) + 'Saves the Presentation + pptxDoc.Save("output.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + + Creates a chart from the specified enumerable and adds the chart to the shape collection. + + Specifies the object with desired data + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance this method creates. + + + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Get the image from file path + Image image = Image.FromFile("Image.gif"); + // Add the image to the slide by specifying position and size + shapes.AddPicture(new MemoryStream(image.ImageData), 300, 120, 70, 40); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Get the image from file path + Dim image__2 As Image = Image.FromFile("Image.gif") + ' Add the image to the slide by specifying position and size + shapes.AddPicture(New MemoryStream(image__2.ImageData), 300, 120, 70, 40) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Creates a picture from the specified svg, its fallback image stream and adds the picture to the shape collection. + + The instance of SVG image. + The instance of fallback image. + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance. + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Create an instance for fallback image as stream + Stream imageStream = File.Open("Image.gif", FileMode.Open); + //Create an instance for vector image as stream + Stream svgStream = File.Open("Image.svg", FileMode.Open); + // Add the image to the slide by specifying position and size + shapes.AddPicture(svgStream, imageStream, 300, 120, 70, 40); + //Save the presentation + presDoc.Save("Sample.pptx"); + //Close the presentation + presDoc.Close(); + + + 'Create a new presentation. + Dim presDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Create an instance for fallback image as stream + Dim imageStream As Stream = File.Open("Image.gif", FileMode.Open) + 'Create an instance for vector image as stream + Dim svgStream As Stream = File.Open("Image.svg", FileMode.Open) + 'Add the image to the slide by specifying position and size + shapes.AddPicture(svgStream, imageStream, 300, 120, 70, 40) + 'Save the presentation + presDoc.Save("Sample.pptx") + 'Close the presentation + presDoc.Close() + + + + + + Creates a shape for the specified and adds the shape to the shape collection. + + Determines the auto shape type. + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add auto shape - rectangle to slide + IShape shape = shapes.AddShape(AutoShapeType.Rectangle,300,200,150,200); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add auto shape - rectangle to slide + Dim shape As IShape = shapes.AddShape(AutoShapeType.Rectangle, 300, 200, 150, 200) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a to the shape collection of a Slide. + + Determines the connector type + Represents the begin X of connector. The begin X value ranges from -169055 to 169056. + Represents the begin Y of connector. The begin Y value ranges from -169055 to 169056. + Represents the end X of connector. The end X value ranges from -169055 to 169056. + Represents the end Y of connector. The end Y value ranges from -169055 to 169056. + Returns an instance this method creates. + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add a Rectangle shape on the slide + IShape rectangle = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 200, 250, 250); + // Add a Oval shape on the slide + IShape oval = slide.Shapes.AddShape(AutoShapeType.Rectangle, 600, 100, 250, 250); + // Add connector on the slide and connect the end points of connector + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, rectangle, 0, oval, 3); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add Rectangle shape on the slide + Dim rectangle As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 200, 200, 250, 250) + ' Add Oval shae on the slide + Dim oval As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 600, 100, 250, 250) + ' Add connector on the slide and connect the end points of connector + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, rectangle, 0, oval, 3) + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Adds a to the shape collection of a Slide. + + Determines the connector type + Represents the begin X of connector. The begin X value ranges from -169055 to 169056. + Represents the begin Y of connector. The begin Y value ranges from -169055 to 169056. + Represents the end X of connector. The end X value ranges from -169055 to 169056. + Represents the end Y of connector. The end Y value ranges from -169055 to 169056. + Returns an instance this method creates. + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add connector on the slide + IConnector connector = slide.Shapes.AddConnector(ConnectorType.Straight, 150, 150, 300, 300); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add connector on the slide + Dim connector As IConnector = slide.Shapes.AddConnector(ConnectorType.Straight, 150, 150, 300, 300) + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close + + + + + + Adds a to the shape collection of a Slide. + + Represents the left position, in points. The left value ranges from -169056 to 169056. + Represents the top position, in points. The top value ranges from -169056 to 169056. + Represents the width, in points. The width value ranges from 0 to 169056. + Represents the height, in points. The height value ranges from 0 to 169056. + The SmartArt type to add. + Returns an instance that represents the new SmartArt diagram. + + + // Create an instance of PowerPoint Presentation + IPresentation pptxDoc = Presentation.Create(); + //Add a blank slide to the Presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Add a BasicBlockList SmartArt to the slide at the specified size and position. + ISmartArt smartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426); + //Save the PowerPoint Presentation. + pptxDoc.Save("Sample.pptx"); + //Close the Presentation + pptxDoc.Close(); + + + 'Create an instance of PowerPoint Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the Presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a BasicBlockList SmartArt to the slide at the specified size and position. + Dim smartArt As ISmartArt = slide.Shapes.AddSmartArt(SmartArtType.BasicBlockList, 100, 50, 640, 426) + 'Save the Presentation + pptxDoc.Save("Sample.pptx") + 'Close the Presentation + pptxDoc.Close() + + + + + + Creates an instance with the specified image, program id, and data, then adds it to the collection. + + Image used to be displayed + The ProgID of the object to be embedded + File stream from which the object is to be created + + + //Create new instance of PowerPoint presentation. + IPresentation pptxDoc = Presentation.Create(); + //Add slide with blank layout to presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Get the excel file as stream + Stream excelStream = File.Open("OleTemplate.xlsx", FileMode.Open); + //Image to be displayed, This can be any image + Stream imageStream = File.Open("OlePicture.png", FileMode.Open); + //Add an OLE object to the slide + IOleObject oleObject = slide.Shapes.AddOleObject(imageStream, "Excel.Sheet.12", excelStream); + //Set size and position of the OLE object + oleObject.Left = 10; + oleObject.Top = 10; + oleObject.Width = 400; + oleObject.Height = 300; + //Save the presentation + pptxDoc.Save("Sample.pptx"); + //Close the presentation + pptxDoc.Close(); + + + 'Create new instance of PowerPoint presentation. + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add slide with blank layout to presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Get the excel file as stream + Dim excelStream As Stream = File.Open("OleTemplate.xlsx", FileMode.Open) + 'Image to be displayed, This can be any image + Dim imageStream As Stream = File.Open("OlePicture.png", FileMode.Open) + 'Add an OLE object to the slide + Dim oleObject As IOleObject = slide.Shapes.AddOleObject(imageStream, "Excel.Sheet.12", excelStream) + 'Set size and position of the OLE object + oleObject.Left = 10 + oleObject.Top = 10 + oleObject.Width = 400 + oleObject.Height = 300 + 'Save the presentation + pptxDoc.Save("Sample.pptx") + 'Close the presentation + pptxDoc.Close() + + + + + + Creates an instance with the specified image, program id, and data, then adds it to the collection. + + Image used to be displayed + The ProgID of the object to be embedded + String path from which the object is to be created + + + //Create new instance of PowerPoint presentation. + IPresentation pptxDoc = Presentation.Create(); + //Add slide with blank layout to presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Image to be displayed, This can be any image + Stream imageStream = File.Open("OlePicture.png", FileMode.Open); + //Add an OLE object to the slide + IOleObject oleObject = slide.Shapes.AddOleObject(imageStream, "Excel.Sheet.12", "OleTemplate.xlsx"); + //Set size and position of the OLE object + oleObject.Left = 10; + oleObject.Top = 10; + oleObject.Width = 400; + oleObject.Height = 300; + //Save the presentation + pptxDoc.Save("Sample.pptx"); + //Close the presentation + pptxDoc.Close(); + + + 'Create new instance of PowerPoint presentation. + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add slide with blank layout to presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Image to be displayed, This can be any image + Dim imageStream As Stream = File.Open("OlePicture.png", FileMode.Open) + 'Add an OLE object to the slide + Dim oleObject As IOleObject = slide.Shapes.AddOleObject(imageStream, "Excel.Sheet.12", "OleTemplate.xlsx") + 'Set size and position of the OLE object + oleObject.Left = 10 + oleObject.Top = 10 + oleObject.Width = 400 + oleObject.Height = 300 + 'Save the presentation + pptxDoc.Save("Sample.pptx") + 'Close the presentation + pptxDoc.Close() + + + + + + Creates a group shape and adds the group shape to the shape collection. + + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add a group shape to the slide + IGroupShape groupShape = shapes.AddGroupShape(12, 12, 200, 200); + //Add auto shapes to group shape + groupShape.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120); + groupShape.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add a group shape to the slide + Dim groupShape As IGroupShape = shapes.AddGroupShape(12, 12, 200, 200) + 'Add auto shapes to group shape + groupShape.Shapes.AddShape(AutoShapeType.Oval, 47, 50, 60, 120) + groupShape.Shapes.AddShape(AutoShapeType.Rectangle, 12, 12, 40, 30) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a new table to the shape collection with the specified number of rows and columns. The valid range is 1 to 75. + + Represents the number of rows. The valid range is 1 to 75. + Represents the number of columns. The valid range is 1 to 75 + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance this method creates. + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add table to the shape collection + ITable table = shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve each cell and fill text content to the cell. + ICell cell = table[0, 0]; + cell.TextBody.AddParagraph("First Row and First Column"); + cell = table[0, 1]; + cell.TextBody.AddParagraph("First Row and Second Column"); + cell = table[1, 0]; + cell.TextBody.AddParagraph("Second Row and First Column"); + cell = table[1, 1]; + cell.TextBody.AddParagraph("Second Row and Second Column"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add table to the shape collection + Dim table As ITable = shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve each cell and fill text content to the cell. + Dim cell As ICell = table(0, 0) + cell.TextBody.AddParagraph("First Row and First Column") + cell = table(0, 1) + cell.TextBody.AddParagraph("First Row and Second Column") + cell = table(1, 0) + cell.TextBody.AddParagraph("Second Row and First Column") + cell = table(1, 1) + cell.TextBody.AddParagraph("Second Row and Second Column") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a new text box to the shape collection. + + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add text box to slide + IShape textBox = shapes.AddTextBox(100, 30, 100, 200); + //Add a paragraph with text content. + IParagraph paragraph = textBox.TextBody.AddParagraph("This is a Text Box"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add text box to slide + Dim textBox As IShape = shapes.AddTextBox(100, 30, 100, 200) + 'Add a paragraph with text content. + Dim paragraph As IParagraph = textBox.TextBody.AddParagraph("This is a Text Box") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the shape collection. Read-only. + + + The count. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for shapes collection + IShapes shapes = slide.Shapes; + //Add auto shape - rectangle to slide + IShape shape = shapes.AddShape(AutoShapeType.Rectangle,300,200,150,200); + //Add chart to slide + IPresentationChart chart =shapes.AddChart(500, 300, 100, 100); + //Set the chart title + chart.ChartTitle = "Chart"; + //Get the count for shape collection + int count = shapes.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for shapes collection + Dim shapes As IShapes = slide.Shapes + 'Add auto shape - rectangle to slide + Dim shape As IShape = shapes.AddShape(AutoShapeType.Rectangle, 300, 200, 150, 200) + 'Add chart to slide + Dim chart As IPresentationChart = shapes.AddChart(500, 300, 100, 100) + 'Set the chart title + chart.ChartTitle = "Chart" + 'Get the count for shape collection + Dim count As Integer = shapes.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance at the specified index from the shape collection. Read-only. + + Specifies the slide item index to locate. + Returns an instance. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.TitleAndContent); + //Get the shape collection of slide + IShapes shapes = slide.Shapes; + //Create instance for SlideItem + ISlideItem slideItem = shapes[0]; + //Set the description for slide item + slideItem.Description = "This is a SlideItem"; + //Set the title + slideItem.Title = "SlideItem"; + //Add the slide item + shapes.Add(slideItem); + //Save the presentation + presentation.Save("Cells.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.TitleAndContent) + 'Get the shape collection of slide + Dim shapes As IShapes = slide.Shapes + 'Create instance for SlideItem + Dim slideItem As ISlideItem = shapes(0) + 'Set the description for slide item + slideItem.Description = "This is a SlideItem" + 'Set the title + slideItem.Title = "SlideItem" + 'Add the slide item + shapes.Add(slideItem) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a PlaceholderTypes available in current shape collection. + + Returns PlaceholderTypes available in current shape collection. + + + + Compares the content and properties of the current Shapes collection with given Shapes collection. + + The Shapes collection to compare with the current instance. + True if the content and properties of the Shapes collections are equal; otherwise, false. + + + + Sets the frame values (left, top, width, height) of a shape based on its placeholder bounds, + if the shape is a placeholder and has valid placeholder data. + + + The instance representing the shape to update. + + + This method checks if the provided shape is of type and + has a placeholder. If so, it updates the shape's frame to match the bounds of the placeholder. + + + + + Adds a chart to the slide. + + The left position of the chart from left edge of the slide, in points. + The top position of the chart from top edge of the slide, in points + Width of the chart, in points + Height of the chart, in points + Returns chart object. + + + + Adds a chart to the slide. + + Excel stream that has data for chart[Excel stream should be "*.xlsx" format] + Worksheet number in the excel document that contains data for a chart. + Data range in the worksheet from which the chart to be created. + Position of the chart in the slide. + + + + + Method to identify the Excel file format + + Excel file stream + + + + + Adds a chart to the slide. + + Chart data in 2-dimensional array format. + The left position of the chart from left edge of the shape, in points + The top position of the chart from top edge of the shape, in points + The width of the chart, in points + The height of the chart, in points. + Returns chart object. + + + + Adds a chart to the slide. + + IEnumerable object with desired data + The left position of the chart from left edge of the shape, in points + The top position of the chart from top edge of the shape, in points + The width of the chart, in points + The height of the chart, in points. + Returns chart object. + + + + Adds a to the shape collection of a Slide. + + Represents the left position, in points. The left value ranges from -169056 to 169056. + Represents the top position, in points. The top value ranges from -169056 to 169056. + Represents the width, in points. The width value ranges from 0 to 169056. + Represents the height, in points. The height value ranges from 0 to 169056. + The SmartArt type to add. + Returns an instance that represents the new SmartArt diagram. + + + + Add a SVG image within the current shape + + Represent the Svg Picture stream + Represent the raster Picture stream + Represent the left side position + Represent the top position + Represent the width + Represent the height + retruns a IPicture instance + + + + Adds the placeholder to the current shape collection + + Determines the type of placeholder + Left position of the placeholder. + Top position of the placeholder. + Width of the placeholder. + Height of the placeholder. + Returns the IPlaceholderFormat object. + + + + Finds all the occurance of the given word from shapes using Regex pattern + + + Array of text selection + + + + Find the first occurance of the given word using Regex pattern + + + Text selection + + + + Adds the OleObject to the current shape collection + + Determines the OleObject + Determines the pictureStream of the OleObject + Determines the type of the OleObject . + Determines the stream of OleObject + Determines the path of the OleObject + + + + Finds all the given text from the SmartArt shape using Regex Pattern. + + Represent main smart art nodes need to find. + Represents regex pattern used to find. + The collection that contains all the entries of the found text in the document. + + + + Find the first occurrence of the given word using Regex pattern. + + Represent main smart art nodes need to find. + Represents regex pattern used to find. + The that contains the found text in the document. + + + + Updates the hyperlink relations in the parent slide for the specified slide item. + + The slide item whose hyperlink relations need to be updated. + + + + Updates the hyperlink relations for all text parts within the specified text body. + + The text body containing paragraphs with hyperlinks. + + + + Converts a placeholder to a shape if the current slide is either a master slide or a notes slide. + + The slide item representing the placeholder that will be converted to a shape. + + + + Gets or sets height value. + + + + + Gets or sets left position value. + + + + + Gets or sets top position value. + + + + + Gets or sets width value. + + + + + Represents the solid type fill formatting. + + + + + Gets or sets the color for the solid fill. + + + The color of the solid fill. + + + Uses 'ColorObject' type to apply the color. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Create instance for solid Fill + ISolidFill solidFill = background.Fill.SolidFill; + //Set the color for solid fill object + solidFill.Color = ColorObject.FromArgb(120, 234, 67, 89); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Create instance for solid Fill + Dim solidFill As ISolidFill = background.Fill.SolidFill + 'Set the color for solid fill object + solidFill.Color = ColorObject.FromArgb(120, 234, 67, 89) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the transparency in percentage. Ranges from 1 to 100. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid; + //Create instance for solid Fill + ISolidFill solidFill = background.Fill.SolidFill; + //Set the color for solid fill object + solidFill.Color = ColorObject.FromArgb(120, 234, 67, 89); + //Set the color transparency + solidFill.Transparency = 30; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Solid fill + background.Fill.FillType = FillType.Solid + 'Create instance for solid Fill + Dim solidFill As ISolidFill = background.Fill.SolidFill + 'Set the color for solid fill object + solidFill.Color = ColorObject.FromArgb(120, 234, 67, 89) + 'Set the color transparency + solidFill.Transparency = 30 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Compares the current Solid fill object with given Solid fill object. + + The Solid fill object to compare with the current instance. + True if the Solid fill objects are equal; otherwise, false. + + + + Represents the picture or texture type in fill format. + + + + + Represents the picture or texture type in fill format. + + + + + Gets or sets the transparency of the image. + + + + + Gets or sets the image as byte. + + + + + Gets or sets the value of type enumeration. + + + + + Compares the current TextureFill object with given TextureFill object. + + The TextureFill object to compare with the current instance. + True if the TextureFill objects are equal; otherwise, false. + + + + Gets or sets top position of the background image. + OffsetTop values ranges from - 2147483.647 to 2147483.647, in Percentage. + + + + + Gets or sets the threshold value. + + + + + Gets or sets the grayScale value. + + + + + Gets or sets left position of the background image. + OffsetLeft values ranges from - 2147483.647 to 2147483.647, in Percentage. + + + + + Gets or sets height of the background image. + OffsetBottom values ranges from - 2147483.647 to 2147483.647, in Percentage. + + + + + Gets or sets width of the background image. + OffsetRight values ranges from - 2147483.647 to 2147483.647, in Percentage. + + + + + Gets or sets OffsetX of the background image. + The OffsetX value ranges from - 2147483648 to 2147483647, in Points. + + + + + Gets or sets OffsetY of the background image. + The OffsetY value ranges from - 2147483648 to 2147483647, in Points. + + + + + Gets or sets ScaleX of the background image. + The ScaleX value ranges from - 2147483.648 to 2147483.647, in Percentage. + + + + + Gets or sets ScaleX of the background image. + The ScaleX value ranges from - 2147483.648 to 2147483.647, in Percentage. + + + + + Gets or sets the transparency of the image. + + + + + Gets or sets the image as byte. + + + + + Gets or sets the value of type enumeration. + + + + + Represents a header, footer, date and time, slide number on a slide or master. + + + All the IHeaderFooter objects for a slide or master are contained in a IHeadersFooters object. + + + + + Represents a header, footer, date and time, slide number on a slide or master. + + + All the IHeaderFooter objects for a slide or master are contained in a IHeadersFooters object. + + + + + Gets or sets the visibility of IHeaderFooter object for the specified slide. + + + Visibility of HeaderFooter is only applied, when specified HeaderFooter is exist in parent slide. + + + + //Creates an instance of Presentation + IPresentation pptxDoc = Presentation.Create(); + //Adds a blank slide. + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Gets the footer of the slide. + IHeaderFooter footer = slide.HeadersFooters.Footer; + //Sets the visibility of Footer content in the slide + footer.Visible = true; + //Sets the text to be added to the Footer + footer.Text = "Footer content"; + //Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250); + //Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx"); + //Closes the Presentation + pptxDoc.Close(); + + + 'Creates an instance of Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Adds a blank slide + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Gets the footer of the slide. + Dim footer As IHeaderFooter = slide.HeadersFooters.Footer + 'Sets the visibility of Footer content in the slide + footer.Visible = True + 'Sets the text to be added to the Footer + footer.Text = "Footer content" + 'Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250) + 'Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + Gets or sets a text from IHeaderFooter object for the specified slide. + + + If sets a value to Text property of DateAndTime or SlideNumber, it will be displayed as fixed text. + + + + //Creates an instance of Presentation + IPresentation pptxDoc = Presentation.Create(); + //Adds a blank slide. + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Sets the visibility of Footer content in the slide + slide.HeadersFooters.Footer.Visible = true; + //Gets the footer of the slide. + IHeaderFooter footer = slide.HeadersFooters.Footer; + //Sets the text to be added to the Footer + footer.Text = "Footer content"; + //Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250); + //Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx"); + //Closes the Presentation + pptxDoc.Close(); + + + 'Creates an instance of Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Adds a blank slide + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Sets the visibility of Footer content in the slide + slide.HeadersFooters.Footer.Visible = True + 'Gets the footer of the slide. + Dim footer As IHeaderFooter = slide.HeadersFooters.Footer + 'Sets the text to be added to the Footer + footer.Text = "Footer content" + 'Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250) + 'Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + Gets or sets a date and time format of Date placeholder for the specified slide. + + + Used to represent DateTimeFormat of a Date placeholder and will not valid for Header, Footer and SlideNumber placeholders. + + + + //Creates an instance of Presentation + IPresentation pptxDoc = Presentation.Create(); + //Adds a blank slide. + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Sets the visibility of Date and Time in the slide + slide.HeadersFooters.DateAndTime.Visible = true; + //Gets the DateTime header footer of the slide. + IHeaderFooter headerFooter = slide.HeadersFooters.DateAndTime; + //Sets the format of the Date and Time to the Footer + headerFooter.Format = DateTimeFormatType.DateTimehmmAMPM; + //Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250); + //Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx"); + //Closes the Presentation + pptxDoc.Close(); + + + 'Creates an instance of Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Adds a blank slide + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Sets the visibility of Date and Time in the slide + slide.HeadersFooters.DateAndTime.Visible = True + 'Gets the DateTime header footer of the slide. + Dim headerFooter As IHeaderFooter = slide.HeadersFooters.DateAndTime + 'Sets the format of the Date and Time to the Footer + headerFooter.Format = DateTimeFormatType.DateTimehmmAMPM + 'Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250) + 'Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + Gets a HeaderFooter shape instance of provided HeaderFooterType. + + Specify a headerFooter type + Returns a HeaderFooter shape instance for the specified HeaderFooterType + + + + Add the specified header footer shape into slide. + + Represent the HeaderFooterType to add. + + + + Applies a parent shape text field properties into newly created shape. + + Represent a newly created header footer shape. + Represent a parent shape. + + + + Applies a common place holder properties to newly created headerFooterShape. + + Represent the headerFooterShape to apply the properties. + + + + Gets a constant index value for the header footer shape. + + Returns a header footer constant index. + + + + Remove the specified header footer shape from a slide. + + Represent the HeaderFooterType to remove. + + + + Clone a HeaderFooter class instances + + + + + + Set a new parent slide. + + + + + + Gets or sets the visibility of IHeaderFooter object for the specified slide. + + + Visibility of HeaderFooter is only applied, when specified HeaderFooter is exist in parent slide. + + + + + Gets or sets a text from IHeaderFooter object for the specified slide. + + + If sets a value to Text property of DateAndTime or SlideNumber, it will be displayed as fixed text. + + + + + Gets or sets a date and time format of Date placeholder for the specified slide. + + + Used to represent DateTimeFormat of a Date placeholder and will not valid for Header, Footer and SlideNumber placeholders. + + + + + Gets a owner slide of HeaderFooter + + + + + Gets a type of HeaderFooter + + + + + Represent a collection of IHeaderFooter object. + + + It contains all the IHeaderFooter objects on the specified slide, notes slide, or master. + + + + + Contains all the IHeaderFooter objects on the specified slide, notes slide, or master. + + + + + Gets an IHeaderFooter object that represents a DateAndTime item that appears in the lower-left corner of a slide or in the upper-right corner of a notes slide. + + + + //Creates an instance of Presentation + IPresentation pptxDoc = Presentation.Create(); + //Adds a blank slide. + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Gets the date time header footer of the slide. + IHeaderFooter dateTimeFooter = slide.HeadersFooters.DateAndTime; + //Sets the visibility of Date and Time in the slide + dateTimeFooter.Visible = true; + //Sets the format of the Date and Time to the Footer + dateTimeFooter.Format = DateTimeFormatType.DateTimehmmssAMPM; + //Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250); + //Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx"); + //Closes the Presentation + pptxDoc.Close(); + + + 'Creates an instance of Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Adds a blank slide + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Gets the date time header footer of the slide. + Dim dateTimeFooter As IHeaderFooter = slide.HeadersFooters.DateAndTime + 'Sets the visibility of Date and Time in the slide + dateTimeFooter.Visible = True + 'Sets the format of the Date and Time to the Footer + dateTimeFooter.Format = DateTimeFormatType.DateTimehmmssAMPM + 'Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250) + 'Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + Gets an IHeaderFooter object that represents the SlideNumber in the lower-right corner of a slide, or the page number in the lower-right corner of a notes slide. + + + + //Creates an instance of Presentation + IPresentation pptxDoc = Presentation.Create(); + //Adds a blank slide. + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Sets the visibility of slide number in the slide + slide.HeadersFooters.SlideNumber.Visible = true; + //Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250); + //Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx"); + //Closes the Presentation + pptxDoc.Close(); + + + 'Creates an instance of Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Adds a blank slide + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Sets the visibility of slide number in the slide + slide.HeadersFooters.SlideNumber.Visible = True + 'Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250) + 'Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + Gets an IHeaderFooter object that represents a Header that appears at the top-left corner of a notes slide. + + + Header is valid only for Notes slide. + + + + //Creates an instance of Presentation + IPresentation pptxDoc = Presentation.Create(); + //Adds a blank slide. + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Adds new notes slide in the specified slide. + INotesSlide notesSlide = slide.AddNotesSlide(); + //Adds text content into the Notes Slide. + notesSlide.NotesTextBody.AddParagraph("Notes content"); + //Gets the header of the notes slide. + IHeaderFooter header = notesSlide.HeadersFooters.Header; + //Sets the visibility of header content in the notes slide + header.Visible = true; + //Sets the text to be added to the header + header.Text = "Header content is added"; + //Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250); + //Saves the Presentation. + pptxDoc.Save("Sample.pptx"); + //Closes the Presentation + pptxDoc.Close(); + + + 'Creates an instance of Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Adds a blank slide. + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Adds new notes slide in the specified slide. + Dim notesSlide As INotesSlide = slide.AddNotesSlide() + 'Adds text content into the Notes Slide. + notesSlide.NotesTextBody.AddParagraph("Notes content") + 'Gets the header of the notes slide. + Dim header As IHeaderFooter = notesSlide.HeadersFooters.Header + 'Sets the visibility of header content in the notes slide + header.Visible = True + 'Sets the text to be added to the header + header.Text = "Header content is added" + 'Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250) + 'Saves the Presentation. + pptxDoc.Save("Sample.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + Gets an IHeaderFooter object that represents a Footer that appears at the bottom of a slide or in the lower-left corner of a notes slide. + + + + //Creates an instance of Presentation + IPresentation pptxDoc = Presentation.Create(); + //Adds a blank slide. + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Gets the footer of the slide. + IHeaderFooter footer = slide.HeadersFooters.Footer; + //Sets the visibility of Footer content in the slide + footer.Visible = true; + //Sets the text to be added to the Footer + footer.Text = "Footer content"; + //Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250); + //Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx"); + //Closes the Presentation + pptxDoc.Close(); + + + 'Creates an instance of Presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Adds a blank slide + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Gets the footer of the slide. + Dim footer As IHeaderFooter = slide.HeadersFooters.Footer + 'Sets the visibility of Footer content in the slide + footer.Visible = True + 'Sets the text to be added to the Footer + footer.Text = "Footer content" + 'Add an auto shape to slide + slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 250, 250) + 'Saves the Presentation to the file system + pptxDoc.Save("Sample.pptx") + 'Closes the Presentation + pptxDoc.Close() + + + + + + Set a parent base slide + + Represent a new parent slide. + + + + Dispose the HeaderFooter class instances. + + + + + Returns an IHeaderFooter object that represents a Header, which appears at the top-left corner of a notes slide. Read-only. + + + Header is only valid for the notes slide. + + + + + Returns an IHeaderFooter object that represents a Footer, which appears at bottom of a slide or in the lower-left corner of a notes slide. Read-only. + + + + + Returns an IHeaderFooter object that represents a DateAndTime item, which appears in the lower-left corner of a slide or in the upper-right corner of a notes slide. Read-only. + + + + + Returns an IHeaderFooter object that represents the SlideNumber in the lower-right corner of a slide, or in the lower-right corner of a notes slide. Read-only. + + + + + Gets a owner slide of HeadersFooters + + + + + + + + + + Specifies the date and time format of a Date placeholder. + + + + + Specifies the date time format is None + + + + + Specifies the date time format is Mdyy + + + + + Specifies the date time format is ddddMMMMddyyyy + + + + + Specifies the date time format is dMMMMyyyy + + + + + Specifies the date time format is MMMMdyyyy + + + + + Specifies the date time format is dMMMyy + + + + + Specifies the date time format is MMMMyy + + + + + Specifies the date time format is MMMyy + + + + + Specifies the date time format is MMddyyhmmAMPM + + + + + Specifies the date time format is MMddyyhmmssAMPM + + + + + Specifies the date time format is Hmm + + + + + Specifies the date time format is Hmmss + + + + + Specifies the date time format is hmmAMPM + + + + + Specifies the date time format is hmmssAMPM + + + + + Specifies the HeaderFooter instance type. + + + + + Specifies the paste options while copy and paste the slide in presentation. + + + + + Specifies to use the destination theme for the slide + + + + + Specifies to use the source theme of the slide + + + + + Specifies the type of slide item + + + + + Specifies the SlideItemType is unknown + + + + + Specifies the SlideItemType is picture + + + + + Specifies the SlideItemType is table + + + + + Specifies the SlideItemType is autoshape + + + + + Specifies the SlideItemType is GroupShape + + + + + Specifies the SlideItemType is connection shape + + + + + Specifies the SlideItemType is chart + + + + + Specifies the SlideItemType is placeholder + + + + + Specifies the SlideItemType is smart art. + + + + + Specifies the slide item is OLE Object. + + + + + Represents the gradient fill types in presentation. + + + + + This element specifies a linear gradient. + + + + + Gradient follows a radial path. + + + + + Gradient follows a rectangular path. + + + + + Gradient follows the shape. + + + + + Specifies the type of AutoMargin. + + + + + + Specifies the AutoMarginType is not defined + + + + + Specifies the AutoMarginType is text shape automatic fit + + + + + Specifies the AutoMarginType is normal automatic fit + + + + + Specifies the AutoMarginType is no automatic fit + + + + + Specifies the PowerPoint presentation format. + + + + + Specifies the PowerPoint presentation file format. + + + + + Specifies the macro-enabled PowerPoint presentation file format. + + + + + Specifies the PowerPoint template file format. + + + + + Specifies the macro-enabled PowerPoint template file format. + + + + + Specifies the types of lists that can be applied to the paragraph. + + + + + Specifies the ListType is not defined + + + + + Specifies the ListType is none + + + + + Specifies the ListType is numbered + + + + + Specifies the ListType is picture + + + + + Specifies the ListType is bulleted + + + + + + + + + + Specifies the hyper link color types. + + + + + Specifies hyperlink uses the hyperlink text color from the document’s theme. + + + + + Specifies that hyperlink uses the text color + + + + + Specifies the hyper link types in presentation. + + + + + Specifies the HyperLinkType is unknown + + + + + Specifies the HyperLinkType isThe no action + + + + + Specifies the HyperLinkType is hyperlink + + + + + Specifies the HyperLinkType is jump first slide + + + + + Specifies the HyperLinkType is jump previous slide + + + + + Specifies the HyperLinkType is jump next slide + + + + + Specifies the HyperLinkType is jump last slide + + + + + Specifies the HyperLinkType is jump end show + + + + + Specifies the HyperLinkType is jump last viewed slide + + + + + Specifies the HyperLinkType is jump specific slide + + + + + Specifies the HyperLinkType is open file + + + + + Specifies the HyperLinkType is start program + + + + + + + + + + Specifies the NumberedListStyle is arabic abjad dash + + + + + Specifies the NumberedListStyle is arabic alpha dash + + + + + Specifies the NumberedListStyle is kanji korean period + + + + + Specifies the NumberedListStyle is kanji korean plain + + + + + Specifies the NumberedListStyle is kanji simp chin database period + + + + + Specifies the NumberedListStyle is none + + + + + Specifies the NumberedListStyle is simp chin period + + + + + Specifies the NumberedListStyle is simp chin plain + + + + + Specifies the NumberedListStyle is trad chin period + + + + + Specifies the NumberedListStyle is trad chin plain + + + + + Specifies the NumberedListStyle is alpha lc paren both + + + + + Specifies the NumberedListStyle is alpha lc paren right + + + + + Specifies the NumberedListStyle is alpha lc period + + + + + Specifies the NumberedListStyle is alpha uc paren both + + + + + Specifies the NumberedListStyle is alpha uc paren right + + + + + Specifies the NumberedListStyle is alpha uc period + + + + + Specifies the NumberedListStyle is arabic database period + + + + + Specifies the NumberedListStyle is arabic database plain + + + + + Specifies the NumberedListStyle is arabic paren both + + + + + Specifies the NumberedListStyle is arabic paren right + + + + + Specifies the NumberedListStyle is arabic period + + + + + Specifies the NumberedListStyle is arabic plain + + + + + Specifies the NumberedListStyle is circle number database plain + + + + + Specifies the NumberedListStyle is circle number wd black plain + + + + + Specifies the NumberedListStyle is circle number wd white plain + + + + + Specifies the NumberedListStyle is hebrew alpha dash + + + + + Specifies the NumberedListStyle is hindi alpha1 period + + + + + Specifies the NumberedListStyle is hindi alpha period + + + + + Specifies the NumberedListStyle is hindi number paren right + + + + + Specifies the NumberedListStyle is hindi number period + + + + + Specifies the NumberedListStyle is roman lc paren both + + + + + Specifies the NumberedListStyle is roman lc paren right + + + + + Specifies the NumberedListStyle is roman lc period + + + + + Specifies the NumberedListStyle is roman uc paren both + + + + + Specifies the NumberedListStyle is roman uc paren right + + + + + Specifies the NumberedListStyle is roman uc period + + + + + Specifies the NumberedListStyle is thai alpha paren both + + + + + Specifies the NumberedListStyle is thai alpha paren right + + + + + Specifies the NumberedListStyle is thai alpha period + + + + + Specifies the NumberedListStyle is thai number paren both + + + + + Specifies the NumberedListStyle is thai number paren right + + + + + Specifies the NumberedListStyle is thai number period + + + + + Specifies the style of NumberedList for paragraphs. + + + + + Specifies the NumberedListStyle is alpha lc paren both + + + + + Specifies the NumberedListStyle is alpha lc paren right + + + + + Specifies the NumberedListStyle is alpha lc period + + + + + Specifies the NumberedListStyle is alpha uc paren both + + + + + Specifies the NumberedListStyle is alpha uc paren right + + + + + Specifies the NumberedListStyle is alpha uc period + + + + + Specifies the NumberedListStyle is arabic database period + + + + + Specifies the NumberedListStyle is arabic database plain + + + + + Specifies the NumberedListStyle is arabic paren both + + + + + Specifies the NumberedListStyle is arabic paren right + + + + + Specifies the NumberedListStyle is arabic period + + + + + Specifies the NumberedListStyle is arabic plain + + + + + Specifies the NumberedListStyle is circle number database plain + + + + + Specifies the NumberedListStyle is circle number wd black plain + + + + + Specifies the NumberedListStyle is circle number wd white plain + + + + + Specifies the NumberedListStyle is hebrew alpha dash + + + + + Specifies the NumberedListStyle is hindi alpha1 period + + + + + Specifies the NumberedListStyle is hindi alpha period + + + + + Specifies the NumberedListStyle is hindi number paren right + + + + + Specifies the NumberedListStyle is hindi number period + + + + + Specifies the NumberedListStyle is roman lc paren both + + + + + Specifies the NumberedListStyle is roman lc paren right + + + + + Specifies the NumberedListStyle is roman lc period + + + + + Specifies the NumberedListStyle is roman uc paren both + + + + + Specifies the NumberedListStyle is roman uc paren right + + + + + Specifies the NumberedListStyle is roman uc period + + + + + Specifies the NumberedListStyle is thai alpha paren both + + + + + Specifies the NumberedListStyle is thai alpha paren right + + + + + Specifies the NumberedListStyle is thai alpha period + + + + + Specifies the NumberedListStyle is thai number paren both + + + + + Specifies the NumberedListStyle is thai number paren right + + + + + Specifies the NumberedListStyle is thai number period + + + + + + + + + + Specifies the type of placeholder. + + + + + Specifies the placeholdertype is title. + + + + + Specifies the placeholdertype is body. + + + + + Specifies the placeholdertype is centertitle. + + + + + Specifies the placeholdertype is subtitle. + + + + + Specifies the placeholder type is vertical title. + + + + + Specifies the placeholder type is vertical body. + + + + + Specifies the placeholdertype is object. + + + + + Specifies the placeholdertype is chart. + + + + + Specifies the placeholdertype is bitmap. + + + + + Specifies the placeholdertype is media clip. + + + + + Specifies the placeholdertype is OrganizationChart. + + + + + Specifies the placeholdertype is table. + + + + + Specifies the placeholdertype is slidenumber. + + + + + Specifies the placeholdertype is header. + + + + + Specifies the placeholdertype is footer. + + + + + Specifies the placeholdertype is dateandtime. + + + + + Specifies the placeholder type is vertical object. + + + + + Specifies the placeholdertype is picture. + + + + + Specifies the placeholdertype is image. + + + + + Specifies the layout type of the slide. + + + + + Specifies the user-defined slide layout type. + + + + + Specifies the SlideLayoutType is title + + + + + Specifies the SlideLayoutType is section header + + + + + Specifies the SlideLayoutType is two content + + + + + Specifies the SlideLayoutType is comparison + + + + + Specifies the SlideLayoutType is title only + + + + + Specifies the SlideLayoutType is blank + + + + + Specifies the SlideLayoutType is content with caption + + + + + Specifies the SlideLayoutType is picture with caption + + + + + Specifies the SlideLayoutType is title and vertical text + + + + + Specifies the SlideLayoutType is vertical title and text + + + + + Specifies the SlideLayoutType is title and content + + + + + + + + + + Specifies the orientation of the slide in presentation. + + + + + Specifies the SlideOrientation is landscape + + + + + Specifies the SlideOrientation is portrait + + + + + Specifies the size type for the slide in presentation. + + + + + Specifies the SlideSizeType is on screen + + + + + Specifies the SlideSizeType is letter paper + + + + + Specifies the SlideSizeType is a4 paper + + + + + Specifies the SlideSizeType is slide35 mm + + + + + Specifies the SlideSizeType is overhead + + + + + Specifies the SlideSizeType is banner + + + + + Specifies the SlideSizeType is custom + + + + + Specifies the SlideSizeType is ledger + + + + + Specifies the SlideSizeType is a3 paper + + + + + Specifies the SlideSizeType is b4 iso paper + + + + + Specifies the SlideSizeType is b5 iso paper + + + + + Specifies the SlideSizeType is on screen16 x9 + + + + + Specifies the SlideSizeType is on screen16 X10 + + + + + Specifies the predefined styles of a table. + + + + + Specifies the BuiltInTableStyle is custom + + + + + Specifies the BuiltInTableStyle is none + + + + + Specifies the BuiltInTableStyle is medium style2 accent1 + + + + + Specifies the BuiltInTableStyle is medium style2 + + + + + Specifies the BuiltInTableStyle is no style no grid + + + + + Specifies the BuiltInTableStyle is themed style1 accent1 + + + + + Specifies the BuiltInTableStyle is themed style1 accent2 + + + + + Specifies the BuiltInTableStyle is themed style1 accent3 + + + + + Specifies the BuiltInTableStyle is themed style1 accent4 + + + + + Specifies the BuiltInTableStyle is themed style1 accent5 + + + + + Specifies the BuiltInTableStyle is themed style1 accent6 + + + + + Specifies the BuiltInTableStyle is no style table grid + + + + + Specifies the BuiltInTableStyle is themed style2 accent1 + + + + + Specifies the BuiltInTableStyle is themed style2 accent2 + + + + + Specifies the BuiltInTableStyle is themed style2 accent3 + + + + + Specifies the BuiltInTableStyle is themed style2 accent4 + + + + + Specifies the BuiltInTableStyle is themed style2 accent5 + + + + + Specifies the BuiltInTableStyle is themed style2 accent6 + + + + + Specifies the BuiltInTableStyle is light style1 + + + + + Specifies the BuiltInTableStyle is light style1 accent1 + + + + + Specifies the BuiltInTableStyle is light style1 accent2 + + + + + Specifies the BuiltInTableStyle is light style1 accent3 + + + + + Specifies the BuiltInTableStyle is light style1 accent4 + + + + + Specifies the BuiltInTableStyle is light style2 accent5 + + + + + Specifies the BuiltInTableStyle is light style1 accent6 + + + + + Specifies the BuiltInTableStyle is light style2 + + + + + Specifies the BuiltInTableStyle is light style2 accent1 + + + + + Specifies the BuiltInTableStyle is light style2 accent2 + + + + + Specifies the BuiltInTableStyle is light style2 accent3 + + + + + Specifies the BuiltInTableStyle is medium style2 accent3 + + + + + Specifies the BuiltInTableStyle is medium style2 accent4 + + + + + Specifies the BuiltInTableStyle is medium style2 accent5 + + + + + Specifies the BuiltInTableStyle is light style2 accent6 + + + + + Specifies the BuiltInTableStyle is light style2 accent4 + + + + + Specifies the BuiltInTableStyle is light style3 + + + + + Specifies the BuiltInTableStyle is light style3 accent1 + + + + + Specifies the BuiltInTableStyle is medium style2 accent2 + + + + + Specifies the BuiltInTableStyle is light style3 accent2 + + + + + Specifies the BuiltInTableStyle is light style3 accent3 + + + + + Specifies the BuiltInTableStyle is light style3 accent4 + + + + + Specifies the BuiltInTableStyle is light style3 accent5 + + + + + Specifies the BuiltInTableStyle is light style3 accent6 + + + + + Specifies the BuiltInTableStyle is medium style1 + + + + + Specifies the BuiltInTableStyle is medium style1 accent1 + + + + + Specifies the BuiltInTableStyle is medium style1 accent2 + + + + + Specifies the BuiltInTableStyle is medium style1 accent3 + + + + + Specifies the BuiltInTableStyle is medium style1 accent4 + + + + + Specifies the BuiltInTableStyle is medium style1 accent5 + + + + + Specifies the BuiltInTableStyle is medium style1 accent6 + + + + + Specifies the BuiltInTableStyle is medium style2 accent6 + + + + + Specifies the BuiltInTableStyle is medium style3 + + + + + Specifies the BuiltInTableStyle is medium style3 accent1 + + + + + Specifies the BuiltInTableStyle is medium style3 accent2 + + + + + Specifies the BuiltInTableStyle is medium style3 accent3 + + + + + Specifies the BuiltInTableStyle is medium style3 accent4 + + + + + Specifies the BuiltInTableStyle is medium style3 accent5 + + + + + Specifies the BuiltInTableStyle is medium style3 accent6 + + + + + Specifies the BuiltInTableStyle is medium style4 + + + + + Specifies the BuiltInTableStyle is medium style4 accent1 + + + + + Specifies the BuiltInTableStyle is medium style4 accent2 + + + + + Specifies the BuiltInTableStyle is medium style4 accent3 + + + + + Specifies the BuiltInTableStyle is medium style4 accent4 + + + + + Specifies the BuiltInTableStyle is medium style4 accent5 + + + + + Specifies the BuiltInTableStyle is medium style4 accent6 + + + + + Specifies the BuiltInTableStyle is dark style1 + + + + + Specifies the BuiltInTableStyle is dark style1 accent1 + + + + + Specifies the BuiltInTableStyle is dark style1 accent2 + + + + + Specifies the BuiltInTableStyle is dark style1 accent3 + + + + + Specifies the BuiltInTableStyle is dark style1 accent4 + + + + + Specifies the BuiltInTableStyle is dark style1 accent5 + + + + + Specifies the BuiltInTableStyle is dark style1 accent6 + + + + + Specifies the BuiltInTableStyle is dark style2 + + + + + Specifies the BuiltInTableStyle is dark style2 accent1 accent2 + + + + + Specifies the BuiltInTableStyle is dark style2 accent3 accent4 + + + + + Specifies the BuiltInTableStyle is dark style2 accent5 accent6 + + + + + Specifies the BuiltInTableStyle is light style1 accent5 + + + + + Provides options to fit a picture as background for slides and shapes. + + + + + Specifies the TileMode is Stretch. + + + + + Specifies the TileMode is Tile. + + + + + + + + + + + + + + + + + + + + Specifies the FitTextOption of shape TextBody + + + + + Specifies the do not automatic fit + + + + + Specifies the shrink text on over flow + + + + + Specifies the resize shape to fit text + + + + + + + + + + + + + + + + + + + + Specifies the SmartArt type. + + + + + Specifies the SmartArt type is BasicBlockList. + + + + + Specifies the SmartArt type is AlternatingHexagons. + + + + + Specifies the SmartArt type is PictureCaptionList. + + + + + Specifies the SmartArt type is LinedList. + + + + + Specifies the SmartArt type is VerticalBulletList. + + + + + Specifies the SmartArt type is VerticalBoxList. + + + + + Specifies the SmartArt type is HorizontalBulletList. + + + + + Specifies the SmartArt type is SquareAccentList. + + + + + Specifies the SmartArt type is PictureAccentList. + + + + + Specifies the SmartArt type is BendingPictureAccentList. + + + + + Specifies the SmartArt type is StackedList. + + + + + Specifies the SmartArt type is IncreasingCircleProcess. + + + + + Specifies the SmartArt type is PieProcess. + + + + + Specifies the SmartArt type is DetailedProcess. + + + + + Specifies the SmartArt type is GroupedList. + + + + + Specifies the SmartArt type is HorizontalPictureList. + + + + + Specifies the SmartArt type is ContinuousPictureList. + + + + + Specifies the SmartArt type is PictureStrips. + + + + + Specifies the SmartArt type is VerticalPictureList. + + + + + Specifies the SmartArt type is AlternatingPictureBlocks. + + + + + Specifies the SmartArt type is VerticalPictureAccentList. + + + + + Specifies the SmartArt type is TitledPictureAccentList. + + + + + Specifies the SmartArt type is VerticalBlockList. + + + + + Specifies the SmartArt type is VerticalChevronList. + + + + + Specifies the SmartArt type is VerticalAccentList. + + + + + Specifies the SmartArt type is VerticalArrowList. + + + + + Specifies the SmartArt type is TrapezoidList. + + + + + Specifies the SmartArt type is DescendingBlockList. + + + + + Specifies the SmartArt type is TableList. + + + + + Specifies the SmartArt type is SegmentedProcess. + + + + + Specifies the SmartArt type is VerticalCurvedList. + + + + + Specifies the SmartArt type is PyramidList. + + + + + Specifies the SmartArt type is TargetList. + + + + + Specifies the SmartArt type is VerticalCircleList. + + + + + Specifies the SmartArt type is TableHierarchy. + + + + + Specifies the SmartArt type is BasicProcess. + + + + + Specifies the SmartArt type is StepUpProcess. + + + + + Specifies the SmartArt type is StepDownProcess. + + + + + Specifies the SmartArt type is AccentProcess. + + + + + Specifies the SmartArt type is AlternatingFlow. + + + + + Specifies the SmartArt type is ContinuousBlockProcess. + + + + + Specifies the SmartArt type is IncreasingArrowsProcess. + + + + + Specifies the SmartArt type is ContinuousArrowProcess. + + + + + Specifies the SmartArt type is ProcessArrows. + + + + + Specifies the SmartArt type is CircleAccentTimeLine. + + + + + Specifies the SmartArt type is BasicTimeLine. + + + + + Specifies the SmartArt type is BasicChevronProcess. + + + + + Specifies the SmartArt type is ClosedChevronProcess. + + + + + Specifies the SmartArt type is ChevronList. + + + + + Specifies the SmartArt type is SubStepProcess. + + + + + Specifies the SmartArt type is PhasedProcess. + + + + + Specifies the SmartArt type is RandomToResultProcess. + + + + + Specifies the SmartArt type is StaggeredProcess. + + + + + Specifies the SmartArt type is ProcessList. + + + + + Specifies the SmartArt type is CircleArrowProcess. + + + + + Specifies the SmartArt type is BasicBendingProcess. + + + + + Specifies the SmartArt type is VerticalBendingProcess. + + + + + Specifies the SmartArt type is AscendingPictureAccentprocess. + + + + + Specifies the SmartArt type is UpwardArrow. + + + + + Specifies the SmartArt type is DescendingProcess. + + + + + Specifies the SmartArt type is CircularBendingProcess. + + + + + Specifies the SmartArt type is Equation. + + + + + Specifies the SmartArt type is VerticalEquation. + + + + + Specifies the SmartArt type is Funnel. + + + + + Specifies the SmartArt type is Gear. + + + + + Specifies the SmartArt type is ArrowRibbon. + + + + + Specifies the SmartArt type is OpposingArrows. + + + + + Specifies the SmartArt type is ConvergingArrows. + + + + + Specifies the SmartArt type is DivergingArrows. + + + + + Specifies the SmartArt type BasicCycle. + + + + + Specifies the SmartArt type is TextCycle. + + + + + Specifies the SmartArt type is BlockCycle. + + + + + Specifies the SmartArt type is NondirectionalCycle. + + + + + Specifies the SmartArt type is ContinuousCycle. + + + + + Specifies the SmartArt type is MultiDirectionalCycle. + + + + + Specifies the SmartArt type is SegmentedCycle. + + + + + Specifies the SmartArt type is BasicPie. + + + + + Specifies the SmartArt type is RadialCycle. + + + + + Specifies the SmartArt type is BasicRadial. + + + + + Specifies the SmartArt type is DivergingRadial. + + + + + Specifies the SmartArt type is RadialVenn. + + + + + Specifies the SmartArt type is RadialCluster. + + + + + Specifies the SmartArt type is OrganizationChart. + + + + + Specifies the SmartArt type is NameAndTitleOrganizationChart. + + + + + Specifies the SmartArt type is HalfCircleOrganizationChart. + + + + + Specifies the SmartArt type is CirclePictureHierarchy. + + + + + Specifies the SmartArt type is Hierarchy. + + + + + Specifies the SmartArt type is LabeledHierarchy. + + + + + Specifies the SmartArt type is HorizontalOrganizationChart. + + + + + Specifies the SmartArt type is HorizontalMulti_levelHierarchy. + + + + + Specifies the SmartArt type is HorizontalHierarchy. + + + + + Specifies the SmartArt type is HorizontalLabeledHierarchy. + + + + + Specifies the SmartArt type is Balance. + + + + + Specifies the SmartArt type is CircleRelationship. + + + + + Specifies the SmartArt type is HexagonCluster. + + + + + Specifies the SmartArt type is OpposingIdeas. + + + + + Specifies the SmartArt type is PlusAndMinus. + + + + + Specifies the SmartArt type is ReverseList. + + + + + Specifies the SmartArt type is CounterBalanceArrows. + + + + + Specifies the SmartArt type is SegmentedPyramid. + + + + + Specifies the SmartArt type is NestedTarget. + + + + + Specifies the SmartArt type is ConvergingRadial. + + + + + Specifies the SmartArt type is RadialList. + + + + + Specifies the SmartArt type is BasicTarget. + + + + + Specifies the SmartArt type is BasicMatrix. + + + + + Specifies the SmartArt type is TitledMatrix. + + + + + Specifies the SmartArt type is GridMatrix. + + + + + Specifies the SmartArt type is CycleMatrix. + + + + + Specifies the SmartArt type is AccentedPicture. + + + + + Specifies the SmartArt type is CircularPictureCallOut. + + + + + Specifies the SmartArt type is SnapshotPictureList. + + + + + Specifies the SmartArt type is SpiralPicture. + + + + + Specifies the SmartArt type is CaptionedPictures. + + + + + Specifies the SmartArt type is BendingPictureCaption. + + + + + Specifies the SmartArt type is BendingPictureSemiTransparentText. + + + + + Specifies the SmartArt type is BendingPictureBlocks. + + + + + Specifies the SmartArt type is BendingPictureCaptionList. + + + + + Specifies the SmartArt type is TitledPictureBlocks. + + + + + Specifies the SmartArt type is PictureGrid. + + + + + Specifies the SmartArt type is PictureAccentBlocks. + + + + + Specifies the SmartArt type is AlternatingPictureCircles. + + + + + Specifies the SmartArt type is TitlePictureLineup. + + + + + Specifies the SmartArt type is PictureLineUp. + + + + + Specifies the SmartArt type is FramedTextPicture. + + + + + Specifies the SmartArt type is BubblePictureList. + + + + + Specifies the SmartArt type is BasicPyramid. + + + + + Specifies the SmartArt type is InvertedPyramid. + + + + + Specifies the SmartArt type is BasicVenn. + + + + + Specifies the SmartArt type is LinearVenn. + + + + + Specifies the SmartArt type is StackedVenn. + + + + + Specifies the SmartArt type is HierarchyList. + + + + + Specifies the SmartArt type is PictureAccentProcess. + + + + + Specifies the SmartArt type is RepeatingBendingProcess. + + + + + Specifies the SmartArt type is VerticalProcess. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Check whether Pictures of current document is referring a mentioned picture path or not. + + Represents a Baseslide. + Represents a picture path to search. + Returns true, if current document picture used a input picture path; Otherwise false. + + + + Sorts the presentation relations based on a specific criterion. + + The list of presentation relations to be sorted. + The sorted list of presentation relations. + + + + Parse the excel stream. + + Stream containing excel file. + Current workbook. + + + + Saves the presentation into the stream. + + Stream in which the presentation is to be saved. + + + + Writes theme override elements. + + string Theme path + Baseslide theme collection + + + + Writes theme override relation collection. + + Theme count + Baseslide Relation collection + + + + Check and modify the notes slide notes master target. + + + + + + Serialize the chart's preserved streams in the file + + input chart object + current chart itme count + + + + Generate the file name which is not in the ziparchive item + + input item + + + + + + Serialize the default style element loaded for chartEx + + input XML writer + input application object + + + + Serialize the default style element loaded for chartEx + + input XML writer + input chart object + input application object + + + + Generate image path with existing image count. + + Represents the image format extension. + Returns image path string. + + + + Represents a hyperlink associated with a non-placeholder shape or text. + + + + + Gets the type of action, the hyperlink will be perform when the specified shape or text is clicked. Read-only. + + + The action. + + + + //Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Adds paragraph into the shape + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Adds text to the TextPart + paragraph.Text = "Google"; + //Set hyperlink to the TextPart + IHyperLink hyperLink = paragraph.TextParts[0].SetHyperlink("https://www.google.com"); + //Set screen tip to the hyperlink + hyperLink.ScreenTip = "This hyperlink navigates to Google site"; + //Gets the hyperlink action type. + HyperLinkType actionType = hyperLink.Action; + //Save the presentation + ppDoc.Save("Sample.pptx"); + //Close the presentation + ppDoc.Close(); + + + 'Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Adds paragraph into the shape + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Adds text to the TextPart + paragraph.Text = "Google" + 'Set hyperlink to the TextPart + Dim hyperLink As IHyperLink = paragraph.TextParts(0).SetHyperlink("https://www.google.com") + 'Set screen tip to the hyperlink + hyperLink.ScreenTip = "This hyperlink navigates to Google site" + 'Gets the hyperlink action type. + Dim actionType As HyperLinkType = hyperLink.Action + 'Save the presentation + ppDoc.Save("Sample.pptx") + 'Close the presentation + ppDoc.Close() + + + + + + Gets the url address of the hyperlink. Read-only. + + + The URL. + + + + //Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Adds paragraph into the shape + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Adds text to the TextPart + paragraph.Text = "Google"; + //Set hyperlink to the TextPart + IHyperLink hyperLink = paragraph.TextParts[0].SetHyperlink("https://www.google.com"); + //Set screen tip to the hyperlink + hyperLink.ScreenTip = "This hyperlink navigates to Google site"; + //Gets the hyperlink action type. + string hyperlinkUrl = hyperLink.Url; + //Save the presentation + ppDoc.Save("Sample.pptx"); + //Close the presentation + ppDoc.Close(); + + + 'Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Adds paragraph into the shape + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Adds text to the TextPart + paragraph.Text = "Google" + 'Set hyperlink to the TextPart + Dim hyperLink As IHyperLink = paragraph.TextParts(0).SetHyperlink("https://www.google.com") + 'Set screen tip to the hyperlink + hyperLink.ScreenTip = "This hyperlink navigates to Google site" + 'Gets the hyperlink Url. + Dim hyperlinkUrl As String = hyperLink.Url + 'Save the presentation + ppDoc.Save("Sample.pptx") + 'Close the presentation + ppDoc.Close() + + + + + + Gets or sets the screen tip text of a hyperlink. + + + The text to be appeared in surface of hyperlink. + + + + //Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Adds paragraph into the shape + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Adds text to the TextPart + paragraph.Text = "Google"; + //Set hyperlink to the TextPart + IHyperLink hyperLink = paragraph.TextParts[0].SetHyperlink("https://www.google.com"); + //Set screen tip to the hyperlink + hyperLink.ScreenTip = "This hyperlink navigates to Google site"; + //Save the presentation + ppDoc.Save("Sample.pptx"); + //Close the presentation + ppDoc.Close(); + + + 'Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Adds paragraph into the shape + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Adds text to the TextPart + paragraph.Text = "Google" + 'Set hyperlink to the TextPart + Dim hyperLink As IHyperLink = paragraph.TextParts(0).SetHyperlink("https://www.google.com") + 'Set screen tip to the hyperlink + hyperLink.ScreenTip = "This hyperlink navigates to Google site" + 'Save the presentation + ppDoc.Save("Sample.pptx") + 'Close the presentation + ppDoc.Close() + + + + + + Gets the target slide of the hyperlink. + + + The target slide. + + Returns the target slide instance. + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add slides to the presentation. + ISlide slide1 = presDoc.Slides.Add(SlideLayoutType.Blank); + ISlide slide2 = presDoc.Slides.Add(); + ISlide slide3 = presDoc.Slides.Add(); + ISlide slide4 = presDoc.Slides.Add(); + //Add a rectangle shape to the slide. + IShape shape = slide1.Shapes.AddShape(AutoShapeType.Rectangle, 100, 20, 200, 100); + //Sets the hyperlink to the shape. + shape.SetHyperlink("2"); + //Gets the target slide of the hyperlink. + ISlide slide = shape.Hyperlink.TargetSlide; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + 'Create a new presentation. + Dim presDoc As IPresentation = Presentation.Create() + 'Add slides to the presentation. + Dim slide1 As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + Dim slide2 As ISlide = presDoc.Slides.Add() + Dim slide3 As ISlide = presDoc.Slides.Add() + Dim slide4 As ISlide = presDoc.Slides.Add() + 'Add a rectangle shape to the slide. + Dim shape As IShape = slide1.Shapes.AddShape(AutoShapeType.Rectangle, 100, 20, 200, 100) + 'Sets the hyperlink to the shape. + shape.SetHyperlink("2") + 'Gets the target slide of the hyperlink. + Dim slide As ISlide = shape.Hyperlink.TargetSlide + 'Save the presentation to the file system. + presDoc.Save("Output.pptx") + 'Close the presentation + presDoc.Close() + + + + + + Sets parent as specified SmartArtPoint for hyperlink. + + + + + + Updates the hyperlink relation within the parent slide. + + The parent slide where the hyperlink relation is being updated. + + + + Retrieves the target slide string from the document. + + The presentation containing the slide information. + The path of the target slide if found; otherwise, null. + + + + Validates if the provided email address is in valid format. + + The email address to validate. + True if email address is valid; otherwise, false. + + + + Sets the parent as a TextPart. + + + + + + Set parent as specified SmartArtPoint + + + + + + Retrieves the master slide associated with the specified base slide. + + + + + + + Gets the target slide of the hyperlink. + + + The target slide. + + Returns the target slide instance if the action is JumpSpecificSlide, otherwise null. + + + IPresentation presentation = Presentation.Create(); + ISlide slide1 = presentation.Slides.Add(SlideLayoutType.Blank); + ISlide slide2 = presentation.Slides.Add(); + ISlide slide3 = presentation.Slides.Add(); + ISlide slide4 = presentation.Slides.Add(); + IShape shape = slide1.Shapes.AddShape(AutoShapeType.Rectangle, 100, 20, 200, 100); + shape.SetHyperlink("2"); + ISlide slide = shape.Hyperlink.TargetSlide; + + + + Dim presentation As IPresentation = Presentation.Create() + Dim slide1 As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + Dim slide2 As ISlide = presentation.Slides.Add() + Dim slide3 As ISlide = presentation.Slides.Add() + Dim slide4 As ISlide = presentation.Slides.Add() + Dim shape As IShape = slide1.Shapes.AddShape(AutoShapeType.Rectangle, 100, 20, 200, 100) + shape.SetHyperlink("2") + Dim slide As ISlide = shape.Hyperlink.TargetSlide + + + + + Gets or Sets the color type of Hyperlink. + + Indicates if the hyperlink uses the theme’s hyperlink color or the text color. + + + + Represents the layout slide in presentation. + + + + + Gets the layout type of the slide. Read-only. + + + The type of the layout. + + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Create a new instance of layout slide + ILayoutSlide layoutSlide = layoutSlides[0]; + //Get the layout type of layout slide, read only + SlideLayoutType slidelayoutType = layoutSlide.LayoutType; + //Set the fill type of background as solid + layoutSlide.Background.Fill.FillType = FillType.Solid; + //Set the color for solid fill + layoutSlide.Background.Fill.SolidFill.Color = ColorObject.Firebrick; + //Add the layout slide to the collection + layoutSlides.Add(layoutSlide); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.LayoutSlides + 'Create a new instance of layout slide + Dim layoutSlide As ILayoutSlide = layoutSlides(0) + 'Get the layout type of layout slide, read only + Dim slidelayoutType As SlideLayoutType = layoutSlide.LayoutType + 'Set the fill type of background as solid + layoutSlide.Background.Fill.FillType = FillType.Solid + 'Set the color for solid fill + layoutSlide.Background.Fill.SolidFill.Color = ColorObject.Firebrick + 'Add the layout slide to the collection + layoutSlides.Add(layoutSlide) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the corresponding master slide. Read-only. + + + The master slide. + + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Create a new instance of layout slide + ILayoutSlide layoutSlide = layoutSlides[0]; + //Add the layout slide to the collection + layoutSlides.Add(layoutSlide); + //Get the master slide of the layout slide, read only + IMasterSlide masterSlide = layoutSlide.MasterSlide; + //Set the slide orientation of the master slide + masterSlide.SlideSize.SlideOrientation = SlideOrientation.Portrait; + //Set the name of the master slide + masterSlide.Name = "Master Slide"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.LayoutSlides + 'Create a new instance of layout slide + Dim layoutSlide As ILayoutSlide = layoutSlides(0) + 'Add the layout slide to the collection + layoutSlides.Add(layoutSlide) + 'Get the master slide of the layout slide, read only + Dim masterSlide As IMasterSlide = layoutSlide.MasterSlide + 'Set the slide orientation of the master slide + masterSlide.SlideSize.SlideOrientation = SlideOrientation.Portrait + 'Set the name of the master slide + masterSlide.Name = "Master Slide" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents a collection of instance in a presentation + + + + + Adds a layout slide at the end of the collection. + + Represents an instance to be added. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Create a new instance of layout slide + ILayoutSlide layoutSlide = layoutSlides[0]; + //Set name to the layout slide + layoutSlide.Name = "Layout Slide"; + //Add an auto shape - bentconnector5 to the layout slide + layoutSlide.Shapes.AddShape(AutoShapeType.BentConnector5, 123, 234, 200, 180); + //Add the layout slide to the collection + layoutSlides.Add(layoutSlide); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.Masters(0).LayoutSlides + 'Create a new instance of layout slide + Dim layoutSlide As ILayoutSlide = layoutSlides(0) + 'Set name to the layout slide + layoutSlide.Name = "Layout Slide" + 'Add an auto shape - bentconnector5 to the layout slide + layoutSlide.Shapes.AddShape(AutoShapeType.BentConnector5, 123, 234, 200, 180) + 'Add the layout slide to the collection + layoutSlides.Add(layoutSlide) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Creates an instance with the specified and layout name, then adds it to the collection. + + The layout type to customize + The custom name of the layout slide + Returns the created layout slide with specified name and type + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Add the layout slide to the collection + layoutSlides.Add(SlideLayoutType.Custom, "Custom Layout"); + //Add the slide into the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Custom); + //Get the count of the layout slides in a presentation + int count = layoutSlides.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim pptxDoc As IPresentation = Presentation.Create() + 'Retrieve the collection of layout Slide. + Dim layoutSlides As ILayoutSlides = pptxDoc.Masters(0).LayoutSlides + 'Add the layout slide to the collection. + layoutSlides.Add(SlideLayoutType.Custom, "Custom Layout") + 'Add the slide into the presentation. + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Custom) + 'Get the count of the layout slides in a presentation. + Dim count As Integer = layoutSlides.Count + 'Saves the Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the presentation. + pptxDoc.Close() + + + + + + Inserts an element into the layout slide collection at the specified index. + + The zero-based index at which value should be inserted. + The layout slide item to insert. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Create a new instance of layout slide + ILayoutSlide layoutSlide = layoutSlides[0]; + //Set name to the layout slide + layoutSlide.Name = "Layout Slide"; + //Add a text box to the layout slide + IShape shape = layoutSlide.Shapes.AddTextBox(200, 120, 345, 200); + //Add paragraph to the text body + shape.TextBody.Paragraphs.Add("This is a layout slide"); + //Insert the layout slide at index 2 + layoutSlides.Insert(2,layoutSlide); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.Masters(0).LayoutSlides + 'Create a new instance of layout slide + Dim layoutSlide As ILayoutSlide = layoutSlides(0) + 'Set name to the layout slide + layoutSlide.Name = "Layout Slide" + 'Add a text box to the layout slide + Dim shape As IShape = layoutSlide.Shapes.AddTextBox(200, 120, 345, 200) + 'Add paragraph to the text body + shape.TextBody.Paragraphs.Add("This is a layout slide") + 'Insert the layout slide at index 2 + layoutSlides.Insert(2, layoutSlide) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the element at the specified index of the layout slide collection. + + The zero-based index of the element to be removed. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Remove a specific layout slide using index position + layoutSlides.RemoveAt(1); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.Masters(0).LayoutSlides + 'Remove a specific layout slide using index position + layoutSlides.RemoveAt(1) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified object from the layout slide collection. + + The layout slide object to be removed from the collection. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Create a new instance of layout slide + ILayoutSlide layoutSlide = layoutSlides[0]; + //Set name to the layout slide + layoutSlide.Name = "Layout Slide"; + //Add a text box to the layout slide + IShape shape = layoutSlide.Shapes.AddTextBox(200, 120, 345, 200); + //Add paragraph to the text body + shape.TextBody.Paragraphs.Add("This is a layout slide"); + //Add the layout slide to the collection + layoutSlides.Add(layoutSlide); + //Remove a specific layout slide from the collection + layoutSlides.Remove(layoutSlide); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.Masters(0).LayoutSlides + 'Create a new instance of layout slide + Dim layoutSlide As ILayoutSlide = layoutSlides(0) + 'Set name to the layout slide + layoutSlide.Name = "Layout Slide" + 'Add a text box to the layout slide + Dim shape As IShape = layoutSlide.Shapes.AddTextBox(200, 120, 345, 200) + 'Add paragraph to the text body + shape.TextBody.Paragraphs.Add("This is a layout slide") + 'Add the layout slide to the collection + layoutSlides.Add(layoutSlide) + 'Remove a specific layout slide from the collection + layoutSlides.Remove(layoutSlide) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the within the collection. + + The ILayoutSlide instance to locate in the collection. + Returns the zero-based index of the first occurrence of object within the entire collection, if found; otherwise, –1. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Create a new instance of layout slide + ILayoutSlide layoutSlide = layoutSlides[0]; + //Set name to the layout slide + layoutSlide.Name = "Layout Slide"; + //Add a text box to the layout slide + IShape shape = layoutSlide.Shapes.AddTextBox(200, 120, 345, 200); + //Add paragraph to the text body + shape.TextBody.Paragraphs.Add("This is a layout slide"); + //Add the layout slide to the collection + layoutSlides.Add(layoutSlide); + //Get the index of layout slide + int index = layoutSlides.IndexOf(layoutSlide); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.Masters(0).LayoutSlides + 'Create a new instance of layout slide + Dim layoutSlide As ILayoutSlide = layoutSlides(0) + 'Set name to the layout slide + layoutSlide.Name = "Layout Slide" + 'Add a text box to the layout slide + Dim shape As IShape = layoutSlide.Shapes.AddTextBox(200, 120, 345, 200) + 'Add paragraph to the text body + shape.TextBody.Paragraphs.Add("This is a layout slide") + 'Add the layout slide to the collection + layoutSlides.Add(layoutSlide) + 'Get the index of layout slide + Dim index As Integer = layoutSlides.IndexOf(layoutSlide) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes all the elements from layout slide collection. + + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Clear the layout slides + layoutSlides.Clear(); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.Masters(0).LayoutSlides + 'Clear the layout slides + layoutSlides.Clear() + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns an instance with the specified item. + + The type of the layout slide to find the instance. + Returns the layout slide with the specified slide layout type. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Get the layout slide by specifying the slide layout type + ILayoutSlide layoutSlide = layoutSlides.GetByType(SlideLayoutType.Title); + //Set name to the layout slide + layoutSlide.Name = "Layout Slide"; + //Add a text box to the layout slide + IShape shape = layoutSlide.Shapes.AddTextBox(200, 120, 345, 200); + //Add paragraph to the text body + shape.TextBody.Paragraphs.Add("This is a layout slide"); + //Add the layout slide to the collection + layoutSlides.Add(layoutSlide); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.Masters(0).LayoutSlides + 'Get the layout slide by specifying the slide layout type + Dim layoutSlide As ILayoutSlide = layoutSlides.GetByType(SlideLayoutType.Title) + 'Set name to the layout slide + layoutSlide.Name = "Layout Slide" + 'Add a text box to the layout slide + Dim shape As IShape = layoutSlide.Shapes.AddTextBox(200, 120, 345, 200) + 'Add paragraph to the text body + shape.TextBody.Paragraphs.Add("This is a layout slide") + 'Add the layout slide to the collection + layoutSlides.Add(layoutSlide) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the layout slide collection. Read-only. + + + The total count of the slides in the layout slide collection. + + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Create a new instance of layout slide + ILayoutSlide layoutSlide = layoutSlides[0]; + //Add the layout slide to the collection + layoutSlides.Add(layoutSlide); + //Get the count of the layout slides in a presentation + int count = layoutSlides.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.Masters(0).LayoutSlides + 'Create a new instance of layout slide + Dim layoutSlide As ILayoutSlide = layoutSlides(0) + 'Add the layout slide to the collection + layoutSlides.Add(layoutSlide) + 'Get the count of the layout slides in a presentation + Dim count As Integer = layoutSlides.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance from the collection. Read-only. + + Index from the collection. + Returns the particular layout slide based on the index. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = presentation.Masters[0].LayoutSlides; + //Create a new instance of layout slide + ILayoutSlide layoutSlide = layoutSlides[0]; + //Set the fill type of background as solid + layoutSlide.Background.Fill.FillType = FillType.Solid; + //Set the color for solid fill + layoutSlide.Background.Fill.SolidFill.Color = ColorObject.Firebrick; + //Add the layout slide to the collection + layoutSlides.Add(layoutSlide); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = presentation__1.Masters(0).LayoutSlides + 'Create a new instance of layout slide + Dim layoutSlide As ILayoutSlide = layoutSlides(0) + 'Set the fill type of background as solid + layoutSlide.Background.Fill.FillType = FillType.Solid + 'Set the color for solid fill + layoutSlide.Background.Fill.SolidFill.Color = ColorObject.Firebrick + 'Add the layout slide to the collection + layoutSlides.Add(layoutSlide) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents the master slide in a presentation. + + + + + Gets the collection of a instance. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Title); + //Gets the first master slide. + IMasterSlide masterSlide = presentation.Masters[0]; + //Retrieve the collection of layout Slide + ILayoutSlides layoutSlides = masterSlide.LayoutSlides; + int count = layoutSlides.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As Presentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Title) + 'Gets the first master slide. + Dim masterSlide As IMasterSlide = presentation.Masters(0) + 'Retrieve the collection of layout Slide + Dim layoutSlides As ILayoutSlides = masterSlide.LayoutSlides + 'Gets the layout slides count. + Dim count As Integer = layoutSlides.Count + 'Saves the Presentation. + presentation.Save("Sample.pptx") + 'Close the presentation. + presentation.Close() + + + + + + Represents a collection of instance in a presentation. + + + + + Adds a master slide at the end of the collection. + + Represents an instance to be added. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + IMasterSlides masterslides = presentation.Masters; + //Get a master by specifying the index in collection + IMasterSlide masterSlide = presentation.Masters[0]; + //Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200,234,198,173); + //Add an auto shape - bevel to master slide + masterSlide.Shapes.AddShape(AutoShapeType.Bevel,237,45,187,120); + //Add master slide to the collection + masterslides.Add(masterSlide); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim masterslides As IMasterSlides = presentation__1.Masters + 'Get a master by specifying the index in collection + Dim masterSlide As IMasterSlide = presentation__1.Masters(0) + 'Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200, 234, 198, 173) + 'Add an auto shape - bevel to master slide + masterSlide.Shapes.AddShape(AutoShapeType.Bevel, 237, 45, 187, 120) + 'Add master slide to the collection + masterslides.Add(masterSlide) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Inserts an element into the master slide collection at the specified index. + + The zero-based index at which master slide should be inserted. + The master slide item to insert. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + IMasterSlides masterslides = presentation.Masters; + //Get a master by specifying the index in collection + IMasterSlide masterSlide = presentation.Masters[0]; + //Set the fill type for background of the master slide + masterSlide.Background.Fill.FillType = FillType.Solid; + //Set color of the solid fill + masterSlide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(123, 54, 234, 112); + //Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200,234,198,173); + //Add an auto shape - bevel to master slide + masterSlide.Shapes.AddShape(AutoShapeType.Bevel,237,45,187,120); + //Insert master slide in the collection + masterslides.Insert(1, masterSlide); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim masterslides As IMasterSlides = presentation__1.Masters + 'Get a master by specifying the index in collection + Dim masterSlide As IMasterSlide = presentation__1.Masters(0) + 'Set the fill type for background of the master slide + masterSlide.Background.Fill.FillType = FillType.Solid + 'Set color of the solid fill + masterSlide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(123, 54, 234, 112) + 'Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200, 234, 198, 173) + 'Add an auto shape - bevel to master slide + masterSlide.Shapes.AddShape(AutoShapeType.Bevel, 237, 45, 187, 120) + 'Insert master slide in the collection + masterslides.Insert(1, masterSlide) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified instance from the master slide collection. + + The master slide object to be removed from the collection. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + IMasterSlides masterslides = presentation.Masters; + //Get a master by specifying the index in collection + IMasterSlide masterSlide = presentation.Masters[0]; + //Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200,234,198,173); + //Insert master slide in the collection + masterslides.Insert(1, masterSlide); + //Remove a specific master slide + masterslides.Remove(masterSlide); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim masterslides As IMasterSlides = presentation__1.Masters + 'Get a master by specifying the index in collection + Dim masterSlide As IMasterSlide = presentation__1.Masters(0) + 'Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200, 234, 198, 173) + 'Insert master slide in the collection + masterslides.Insert(1, masterSlide) + 'Remove a specific master slide + masterslides.Remove(masterSlide) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the element at the specified index of the master slide collection. + + The zero-based index of the element to be removed. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + IMasterSlides masterslides = presentation.Masters; + //Get a master by specifying the index in collection + IMasterSlide masterSlide = presentation.Masters[0]; + //Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200,234,198,173); + //Insert master slide in the collection + masterslides.Insert(1, masterSlide); + //Remove a specific master slide + masterslides.RemoveAt(0); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim masterslides As IMasterSlides = presentation__1.Masters + 'Get a master by specifying the index in collection + Dim masterSlide As IMasterSlide = presentation__1.Masters(0) + 'Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200, 234, 198, 173) + 'Insert master slide in the collection + masterslides.Insert(1, masterSlide) + 'Remove a specific master slide + masterslides.RemoveAt(0) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the instance within the collection. + + The IMasterSlide instance to locate in the collection. + Returns the zero-based index of the first occurrence of object within the entire collection, if found; otherwise, –1. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + IMasterSlides masterslides = presentation.Masters; + //Get a master by specifying the index in collection + IMasterSlide masterSlide = presentation.Masters[0]; + //Set the fill type for background of the master slide + masterSlide.Background.Fill.FillType = FillType.Solid; + //Set color of the solid fill + masterSlide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(123, 54, 234, 112); + //Add master slide to the collection + masterslides.Add(masterSlide); + //Get the index of master slide in collection + int index = masterslides.IndexOf(masterSlide); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim masterslides As IMasterSlides = presentation__1.Masters + 'Get a master by specifying the index in collection + Dim masterSlide As IMasterSlide = presentation__1.Masters(0) + 'Set the fill type for background of the master slide + masterSlide.Background.Fill.FillType = FillType.Solid + 'Set color of the solid fill + masterSlide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(123, 54, 234, 112) + 'Add master slide to the collection + masterslides.Add(masterSlide) + 'Get the index of master slide in collection + Dim index As Integer = masterslides.IndexOf(masterSlide) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes all the elements from master slide collection. + + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + IMasterSlides masterslides = presentation.Masters; + //Get a master by specifying the index in collection + IMasterSlide masterSlide = presentation.Masters[0]; + //Clear the master slide collection + masterslides.Clear(); + //Add master slide to the collection + masterslides.Add(masterSlide); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim masterslides As IMasterSlides = presentation__1.Masters + 'Get a master by specifying the index in collection + Dim masterSlide As IMasterSlide = presentation__1.Masters(0) + 'Clear the master slide collection + masterslides.Clear() + 'Add master slide to the collection + masterslides.Add(masterSlide) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the collection. Read-only. + + + The total count of the master slides in the master slide collection. + + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + IMasterSlides masterslides = presentation.Masters; + //Get a master by specifying the index in collection + IMasterSlide masterSlide = presentation.Masters[0]; + //Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200,234,198,173); + //Add an auto shape - bevel to master slide + masterSlide.Shapes.AddShape(AutoShapeType.Bevel,237,45,187,120); + //Add master slide to the collection + masterslides.Add(masterSlide); + //Get the count of the master slide + int count = masterslides.Count; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + + + + Gets a instance from the collection. Read-only. + + Index from the collection. + Returns the particular master slide based on the index. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + IMasterSlides masterslides = presentation.Masters; + //Get a master by specifying the index in collection + IMasterSlide masterSlide = presentation.Masters[0]; + //Set the fill type for background of the master slide + masterSlide.Background.Fill.FillType = FillType.Solid; + //Set color of the solid fill + masterSlide.Background.Fill.SolidFill.Color = ColorObject.FromArgb(123, 54, 234, 112); + //Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200,234,198,173); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + + + + Represents the PowerPoint presentation. + + + + + Saves the presentation to the specified file name. + + Specifies the file name to save the presentation. + At present, the Essential Presentation library only supports the PPTX file format. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + At present, the Essential Presentation library only supports the PPTX file format. + + + //Create instance for memory stream + MemoryStream fileStream = new MemoryStream(); + //Open a presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200); + //Save the presentation using stream + presentation.Save(fileStream); + //Close the presentation. + presentation.Close(); + //Dispose the file stream + fileStream.Dispose(); + + + 'Create instance for memory stream + Dim fileStream As New MemoryStream() + 'Open a presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200) + 'Save the presentation using stream + presentation__1.Save(fileStream) + 'Close the presentation. + presentation__1.Close() + 'Dispose the file stream + fileStream.Dispose() + + + + + + Saves the presentation to the specified HttpResponse instance. + + + At present, the Essential Presentation library only supports the PPTX file + format. + + The name of the file in HttpResponse. + The format type of the presentation. + The HttpResponse to save the presentation. + + + //Create a presentation + IPresentation presentation = Presentation.Create(); + //Save the presentation to the specified HttpResponse + presentation.Save("Sample.pptx", FormatType.Pptx, HttpContext.Current.Response); + + + 'Create a presentation + Dim presentation__1 As IPresentation = Presentation.Create() + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200); + 'Save the presentation to the specified HttpResponse + presentation__1.Save("Sample.pptx", FormatType.Pptx, Response) + + + + + + Encrypts the presentation using the specified password. + + The password to encrypt the presentation. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a new slide of content with caption slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.ContentWithCaption); + //Add a auto shape of moon type auto shape. + IShape shape = slide.Shapes.AddShape(AutoShapeType.Moon, 50, 0, 200, 200); + //Add a paragraph with text content to the shape. + shape.TextBody.AddParagraph("Text for moon shape"); + //Encrypt the presentation with the combination of alpha and symbol string password. + presentation.Encrypt("MYPASSWORD!@#$%"); + //Save the presentation. + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a new slide of content with caption slide layout type. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.ContentWithCaption) + 'Add a auto shape of moon type auto shape. + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Moon, 50, 0, 200, 200) + 'Add a paragraph with text content to the shape. + shape.TextBody.AddParagraph("Text for moon shape") + 'Encrypt the presentation with the combination of alpha and symbol string password. + presentation__1.Encrypt("MYPASSWORD!@#$%") + 'Save the presentation. + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Removes the encryption from presentation. + + + + //Open the encrypted presentation. + IPresentation presentation = Presentation.Open("Input.pptx", "MYPASSWORD!@#$%"); + //Remove the encryption. + presentation.RemoveEncryption(); + //Save the presentation. + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Open the encrypted presentation. + Dim presentation__1 As IPresentation = Presentation.Open("Input.pptx", "MYPASSWORD!@#$%") + 'Remove the encryption. + presentation__1.RemoveEncryption() + 'Save the presentation. + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Converts the presentation slides to images and returns the image array. + + Specifies the image type to convert slides. + Returns the array of the converted images. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a content with caption slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.ContentWithCaption); + //Add a table to the slide. + ITable table = slide.Tables.AddTable(5, 5, 20, 20, 500, 500); + //Set the built in table style. + table.BuiltInStyle = BuiltInTableStyle.DarkStyle2Accent3Accent4; + //Iterate through the row collection. + foreach (IRow row in table.Rows) + { + //Iterate through the cell collection. + foreach (ICell cell in row.Cells) + { + //Add a paragraph to the cell. + cell.TextBody.AddParagraph("New Paragraph"); + } + } + //Converts the each and every slide in the presentation to image of System.Drawing.Image type array. + System.Drawing.Image[] imageArray = presentation.RenderAsImages(Syncfusion.Drawing.ImageType.Metafile); + //Iterate the image array. + foreach (System.Drawing.Image image in imageArray) + { + //Save the image of .bmp format. + image.Save("RenderAsImage" + Guid.NewGuid() + ".bmp"); + } + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a content with caption slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.ContentWithCaption) + 'Add a table to the slide. + Dim table As ITable = slide.Tables.AddTable(5, 5, 20, 20, 500, 500) + 'Set the built in table style. + table.BuiltInStyle = BuiltInTableStyle.DarkStyle2Accent3Accent4 + 'Iterate through the row collection. + For Each row As IRow In table.Rows + 'Iterate through the cell collection. + For Each cell As ICell In row.Cells + 'Add a paragraph to the cell. + cell.TextBody.AddParagraph("New Paragraph") + Next + Next + 'Converts the each and every slide in the presentation to image of System.Drawing.Image type array. + Dim imageArray As Image() = presentation__1.RenderAsImages(Syncfusion.Drawing.ImageType.Metafile) + 'Iterate the image array. + For Each image As Image In imageArray + 'Save the image of .bmp format. + image.Save("RenderAsImage" + Guid.NewGuid() + ".bmp") + Next + 'Close the presentation. + presentation__1.Close() + + + + + + Converts the presentation slides to images and returns the stream array. + + Specifies the image format to convert slides. + Returns the array of the converted images. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a content with caption slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.ContentWithCaption); + //Add a table to the slide. + ITable table = slide.Tables.AddTable(5, 5, 0, 0, 500, 500); + //Set the built in table style. + table.BuiltInStyle = BuiltInTableStyle.DarkStyle2Accent3Accent4; + //Iterate through the row collection. + foreach (IRow row in table.Rows) + { + //Iterate through the cell collection. + foreach (ICell cell in row.Cells) + { + //Add a paragraph to the cell. + cell.TextBody.AddParagraph("New Paragraph"); + } + } + //Converts the each and every slide in the presentation to image of stream array type. + Stream[] imageStreamArray = presentation.RenderAsImages(Syncfusion.Drawing.ImageFormat.Jpeg); + //Iterate the stream array. + foreach (Stream stream in imageStreamArray) + { + //Save the stream in image of .jpg format. + Image.FromStream(stream).Save("RenderAsImage" + Guid.NewGuid() + ".jpg"); + } + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a content with caption slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.ContentWithCaption) + 'Add a table to the slide. + Dim table As ITable = slide.Tables.AddTable(5, 5, 0, 0, 500, 500) + 'Set the built in table style. + table.BuiltInStyle = BuiltInTableStyle.DarkStyle2Accent3Accent4 + 'Iterate through the row collection. + For Each row As IRow In table.Rows + 'Iterate through the cell collection. + For Each cell As ICell In row.Cells + 'Add a paragraph to the cell. + cell.TextBody.AddParagraph("New Paragraph") + Next + Next + 'Converts the each and every slide in the presentation to image of stream array type. + Dim imageStreamArray As Stream() = presentation__1.RenderAsImages(Syncfusion.Drawing.ImageFormat.Jpeg) + 'Iterate the stream array. + For Each stream As Stream In imageStreamArray + 'Save the stream in image of .jpg format. + Image.FromStream(stream).Save("RenderAsImage" + Guid.NewGuid() + ".jpg") + Next + 'Close the presentation. + presentation__1.Close() + + + + + + Releases any resources associated with the presentation instance. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a new slide of comparison slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Comparison); + //Save the presentation. + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a new slide of comparison slide layout type. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Comparison) + 'Save the presentation. + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Creates an independent copy of instance. + + Returns the cloned presentation instance. + + + //Create an instance for presentation + IPresentation presentation = Presentation.Create(); + //Add a new slide of comparison slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Comparison); + //Clone the entire presentation. + IPresentation presentationClone = presentation.Clone(); + //Add a new slide of title layout type. + slide = presentationClone.Slides.Add(SlideLayoutType.Title); + //Add an auto shape of regular pentagon auto shape type. + slide.Shapes.AddShape(AutoShapeType.RegularPentagon, 10, 20, 300, 400); + //Save the cloned presentation + presentationClone.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + //Close the cloned presentation. + presentationClone.Close(); + + + 'Create an instance for presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a new slide of comparison slide layout type. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Comparison) + 'Clone the entire presentation. + Dim presentationClone As IPresentation = presentation__1.Clone() + 'Add a new slide of title layout type. + slide = presentationClone.Slides.Add(SlideLayoutType.Title) + 'Add an auto shape of regular pentagon auto shape type. + slide.Shapes.AddShape(AutoShapeType.RegularPentagon, 10, 20, 300, 400) + 'Save the cloned presentation + presentationClone.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + 'Close the cloned presentation. + presentationClone.Close() + + + + + + Removes the macros from the presentation instance. + + + + //Opens an existing macro enabled PowerPoint presentation + IPresentation pptxDoc = Presentation.Open("Sample.PPTM"); + //Checks whether the presentation has macros and then removes them + if (pptxDoc.HasMacros) + pptxDoc.RemoveMacros(); + //Saves the presentation + pptxDoc.Save("Output.pptx"); + //Closes the presentation + pptxDoc.Close(); + + + 'Opens an existing macro enabled PowerPoint presentation + Dim pptxDoc As IPresentation = Presentation.Open("Sample.PPTM") + 'Checks whether the presentation has macros and then removes them + If pptxDoc.HasMacros Then + pptxDoc.RemoveMacros() + End If + 'Saves the presentation + pptxDoc.Save("Output.pptx") + 'Closes the presentation + pptxDoc.Close() + + + + + + Sets the write protection for the presentation instance + + Password to enforce protection. + Maximum length of password should be 15. If it exceeds 15, first 15 characters will be considered for protection, remaining will be ignored. + + + //Create an instance for presentation + IPresentation presentation = Presentation.Create(); + //Add a new slide of comparison slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Comparison); + //Add an auto shape of regular pentagon auto shape type. + slide.Shapes.AddShape(AutoShapeType.RegularPentagon, 10, 20, 300, 400); + //Set the write protection for Presentation instance with password. + presentation.SetWriteProtection("MYPASSWORD"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create an instance for presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a new slide of comparison slide layout type. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Comparison) + 'Add an auto shape of regular pentagon auto shape type. + slide.Shapes.AddShape(AutoShapeType.RegularPentagon, 10, 20, 300, 400) + 'Set the write protection for Presentation instance with password. + presentation.SetWriteProtection("MYPASSWORD") + 'Save the presentation + presentation.Save("Sample.pptx") + 'Close the presentation. + presentation.Close() + + + + + + Removes the write Protection from presentation instance + + + + //Create an instance for presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Check whether the presentation is write protected. + if (presentation.IsWriteProtected) + { + //Removes the write protection from presentation instance + presentation.RemoveWriteProtection(); + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create an instance for presentation + Dim presentation As IPresentation = Presentation.Open("Sample.pptx") + 'Check whether the presentation is write protected. + if (presentation.IsWriteProtected) + { + //Removes the write protection from presentation instance + presentation.RemoveWriteProtection() + } + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation. + presentation.Close() + + + + + + Finds the text based on specified string, taking into the consideration of caseSensitive and wholeWord options. + + + A text to find. + + + Set to true to match the similar case text which specified in the parameter; otherwise false. + + + Set to true to match the whole word text which specified in the parameter; otherwise false. + + + The that contains the found text in the document. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + // Finds the text from the Presentation document + ITextSelection textSelection = presentation.Find("World", false, false); + // Gets the found text containing text parts + foreach (ITextPart textPart in textSelection.GetTextParts()) + { + //Sets Bold property + textPart.Font.Bold = true; + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds the text from the Presentation document + Dim textSelection As ITextSelection = presentation.Find("World", False, False) + 'Gets the text parts from the selection + For Each textPart As ITextPart In textSelection.GetTextParts() + textPart.Font.Bold = True + Next + presentation.Save("Output.pptx") + presentation.Close() + + + + + + Finds the first occurrence of text that matches the specified Regex pattern. + + + The used to find the text. + + + The that contains the found text in the document. + + /// + + //Opens an existing presentation. + using (IPresentation pptxDoc = Presentation.Open("Input.pptx")) + { + // Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Regex regex = new Regex("H.+?o"); + //Find the first occurrence of a specified regular expression. + ITextSelection textSelection = pptxDoc.Find(regex); + //Gets the found text as single text part + ITextPart textPart = textSelection.GetAsOneTextPart(); + //Replace the text + textPart.Text = "Replaced text"; + //Saves the Presentation + pptxDoc.Save("Output.pptx"); + } + + + 'Opens an existing presentation. + Using pptxDoc As IPresentation = Presentation.Open("Input.pptx") + ' Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Dim regex As Regex = New Regex("H.+?o") + 'Find the first occurrence of a specified regular expression. + Dim textSelection As ITextSelection = pptxDoc.Find(regex) + 'Gets the found text as single text part + Dim textPart As ITextPart = textSelection.GetAsOneTextPart() + 'Replace the text + textPart.Text = "Replaced text" + 'Saves the Presentation + pptxDoc.Save("Output.pptx") + End Using + + + + + + Finds and returns all entries of the specified string, taking into the consideration of caseSensitive and wholeWord options. + + + A text to find. + + + Set to true to match the similar case text which specified in the parameter; otherwise false. + + + Set to true to match the whole word text which specified in the parameter; otherwise false. + + + The collection that contains all the entries of the found text in the document. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + // Finds all the text from the Presentation document + ITextSelection[] textSelections = presentation.FindAll("World", false, false); + foreach (ITextSelection textSelection in textSelections) + { + //Gets the found text as single text part + ITextPart textPart = textSelection.GetAsOneTextPart(); + //Replace the text + textPart.Text = "Replaced text"; + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds the text from the Presentation document + Dim textSelections As ITextSelection() = presentation.FindAll("World", False, False) + 'Gets the found text as single text part and replace it + For Each textSelection As ITextSelection In textSelections + Dim textPart As ITextPart = textSelection.GetAsOneTextPart() + textPart.Text = "Replaced text" + Next + presentation.Save("Output.pptx") + presentation.Close() + + + + + + Finds all occurrences of text that match the specified Regex pattern. + + + The used to find the text. + + + The collection that contains all the entries of the found text in the document. + + + + //Opens an existing presentation. + using (IPresentation pptxDoc = Presentation.Open("Input.pptx")) + { + // Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Regex regex = new Regex("H.+?o"); + //Finds all the occurrences of a specified regular expression. + ITextSelection[] textSelections = pptxDoc.FindAll(regex); + foreach (ITextSelection textSelection in textSelections) + { + //Gets the found text as single text part + ITextPart textPart = textSelection.GetAsOneTextPart(); + //Replace the text + textPart.Text = "Replaced text"; + } + //Saves the Presentation + pptxDoc.Save("Output.pptx"); + } + + + 'Opens an existing presentation. + Using pptxDoc As IPresentation = Presentation.Open("Input.pptx") + ' Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Dim regex As Regex = New Regex("H.+?o") + 'Finds all the occurrences of a specified regular expression. + Dim textSelections As ITextSelection() = pptxDoc.FindAll(regex) + For Each textSelection As ITextSelection In textSelections + 'Gets the found text as single text part + Dim textPart As ITextPart = textSelection.GetAsOneTextPart() + 'Replace the text + textPart.Text = "Replaced text" + Next + 'Saves the Presentation + pptxDoc.Save("Output.pptx") + End Using + + + + + + Returns a collection of instances. Read-only. + + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Sets a name to the created section + section.Name = "SectionDemo"; + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Saves the PowerPoint presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Sets a name to the created section + section.Name = "SectionDemo" + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Sample.pptx") + 'Close the Presentation instance + presentation__1.Close() + + + + + + Gets the slide collection in the presentation. Read-only. + + + + //Open a presentation. + IPresentation presentation = Presentation.Open("Input.pptx"); + //Retrieve the slide collection, it is read only + ISlides slides = presentation.Slides; + //Add a slide to the presentation + ISlide slide = slides[0]; + //Create instance for slide background + IBackground background = slide.Background; + //Set the fill type for background as Pattern fill + background.Fill.FillType = FillType.Pattern; + //Set the pattern + background.Fill.PatternFill.Pattern = PatternFillType.DashedHorizontal; + //set the fore color of pattern + background.Fill.PatternFill.ForeColor = ColorObject.Lavender; + //Set the back color of pattern + background.Fill.PatternFill.BackColor = ColorObject.Brown; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open a presentation. + Dim presentation__1 As IPresentation = Presentation.Open("Input.pptx") + 'Retrieve the slide collection, it is read only + Dim slides As ISlides = presentation__1.Slides + 'Add a slide to the presentation + Dim slide As ISlide = slides(0) + 'Create instance for slide background + Dim background As IBackground = slide.Background + 'Set the fill type for background as Pattern fill + background.Fill.FillType = FillType.Pattern + 'Set the pattern + background.Fill.PatternFill.Pattern = PatternFillType.DashedHorizontal + 'set the fore color of pattern + background.Fill.PatternFill.ForeColor = ColorObject.Lavender + 'Set the back color of pattern + background.Fill.PatternFill.BackColor = ColorObject.Brown + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + + Gets or sets a value indicating whether the instance is marked as final. + + + + //Create an instance for PowerPoint presentation + IPresentation pptxDoc = Presentation.Create(); + //Add slide to the presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Mark the presentation as final + pptxDoc.Final = true; + //Save the presentation + pptxDoc.Save("Sample.pptx"); + //Close the presentation + pptxDoc.Close(); + + + 'Create an instance for PowerPoint presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Mark the presentation as final + pptxDoc.Final = True + 'Save the presentation + pptxDoc.Save("Sample.pptx") + 'Close the presentation + pptxDoc.Close() + + + + + + + Gets the instance. + + + Initialize the ChartToImageConverter in-order to convert the chart in presentation to image. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Initialize the chart to image converter. + presentation.ChartToImageConverter = new ChartToImageConverter(); + //Set the scaling mode for the chart. + presentation.ChartToImageConverter.ScalingMode = ScalingMode.Best; + //Add a blank slide for the chart. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a chart to the slide. + IPresentationChart officeChart = slide.Charts.AddChart(100, 100, 600, 400); + //Set chart data + officeChart.ChartData.SetValue(1, 4, "Month"); + officeChart.ChartData.SetValue(2, 4, "July"); + officeChart.ChartData.SetValue(3, 4, "August"); + officeChart.ChartData.SetValue(4, 4, "September"); + officeChart.ChartData.SetValue(5, 4, "October"); + officeChart.ChartData.SetValue(6, 4, "November"); + officeChart.ChartData.SetValue(7, 4, "December"); + officeChart.ChartData.SetValue(1, 1, "2013"); + officeChart.ChartData.SetValue(2, 1, 35); + officeChart.ChartData.SetValue(3, 1, 37); + officeChart.ChartData.SetValue(4, 1, 30); + officeChart.ChartData.SetValue(5, 1, 29); + officeChart.ChartData.SetValue(6, 1, 25); + officeChart.ChartData.SetValue(7, 1, 30); + officeChart.ChartData.SetValue(1, 2, "2014"); + officeChart.ChartData.SetValue(2, 2, 30); + officeChart.ChartData.SetValue(3, 2, 25); + officeChart.ChartData.SetValue(4, 2, 29); + officeChart.ChartData.SetValue(5, 2, 35); + officeChart.ChartData.SetValue(6, 2, 38); + officeChart.ChartData.SetValue(7, 2, 32); + officeChart.ChartData.SetValue(1, 3, "2015"); + officeChart.ChartData.SetValue(2, 3, 35); + officeChart.ChartData.SetValue(3, 3, 37); + officeChart.ChartData.SetValue(4, 3, 30); + officeChart.ChartData.SetValue(5, 3, 50); + officeChart.ChartData.SetValue(6, 3, 25); + officeChart.ChartData.SetValue(7, 3, 30); + //Add chart serie. + IOfficeChartSerie serie1 = officeChart.Series.Add("2013"); + //Set serie value. + serie1.Values = officeChart.ChartData[2, 1, 7, 1]; + //Add chart serie. + IOfficeChartSerie serie2 = officeChart.Series.Add("2014"); + //Set serie value. + serie2.Values = officeChart.ChartData[2, 2, 7, 2]; + //Add chart serie. + IOfficeChartSerie serie3 = officeChart.Series.Add("2015"); + //Set serie value. + serie3.Values = officeChart.ChartData[2, 3, 7, 3]; + //Set category labels value for the primary category axis. + officeChart.PrimaryCategoryAxis.CategoryLabels = officeChart.ChartData[2, 4, 7, 4]; + //Set the chart type. + officeChart.ChartType = OfficeChartType.Column_Clustered; + //Set the chart title. + officeChart.ChartTitle = "Mine Chart"; + //Convert the chart to image. + System.Drawing.Image[] chartImages = presentation.RenderAsImages(Syncfusion.Drawing.ImageType.Metafile); + foreach (System.Drawing.Image image in chartImages) + { + //Save the image. + image.Save("ChartToImageConverter" + Guid.NewGuid() + ".png"); + } + //Save the presentation. + presentation.Save("ChartToImageConverter.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Initialize the chart to image converter. + presentation__1.ChartToImageConverter = New ChartToImageConverter() + 'Set the scaling mode for the chart. + presentation__1.ChartToImageConverter.ScalingMode = ScalingMode.Best + 'Add a blank slide for the chart. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a chart to the slide. + Dim officeChart As IPresentationChart = slide.Charts.AddChart(100, 100, 600, 400) + 'Set chart data + officeChart.ChartData.SetValue(1, 4, "Month") + officeChart.ChartData.SetValue(2, 4, "July") + officeChart.ChartData.SetValue(3, 4, "August") + officeChart.ChartData.SetValue(4, 4, "September") + officeChart.ChartData.SetValue(5, 4, "October") + officeChart.ChartData.SetValue(6, 4, "November") + officeChart.ChartData.SetValue(7, 4, "December") + officeChart.ChartData.SetValue(1, 1, "2013") + officeChart.ChartData.SetValue(2, 1, 35) + officeChart.ChartData.SetValue(3, 1, 37) + officeChart.ChartData.SetValue(4, 1, 30) + officeChart.ChartData.SetValue(5, 1, 29) + officeChart.ChartData.SetValue(6, 1, 25) + officeChart.ChartData.SetValue(7, 1, 30) + officeChart.ChartData.SetValue(1, 2, "2014") + officeChart.ChartData.SetValue(2, 2, 30) + officeChart.ChartData.SetValue(3, 2, 25) + officeChart.ChartData.SetValue(4, 2, 29) + officeChart.ChartData.SetValue(5, 2, 35) + officeChart.ChartData.SetValue(6, 2, 38) + officeChart.ChartData.SetValue(7, 2, 32) + officeChart.ChartData.SetValue(1, 3, "2015") + officeChart.ChartData.SetValue(2, 3, 35) + officeChart.ChartData.SetValue(3, 3, 37) + officeChart.ChartData.SetValue(4, 3, 30) + officeChart.ChartData.SetValue(5, 3, 50) + officeChart.ChartData.SetValue(6, 3, 25) + officeChart.ChartData.SetValue(7, 3, 30) + 'Add chart serie. + Dim serie1 As IOfficeChartSerie = officeChart.Series.Add("2013") + 'Set serie value. + serie1.Values = officeChart.ChartData(2, 1, 7, 1) + 'Add chart serie. + Dim serie2 As IOfficeChartSerie = officeChart.Series.Add("2014") + 'Set serie value. + serie2.Values = officeChart.ChartData(2, 2, 7, 2) + 'Add chart serie. + Dim serie3 As IOfficeChartSerie = officeChart.Series.Add("2015") + 'Set serie value. + serie3.Values = officeChart.ChartData(2, 3, 7, 3) + 'Set category labels value for the primary category axis. + officeChart.PrimaryCategoryAxis.CategoryLabels = officeChart.ChartData(2, 4, 7, 4) + 'Set the chart type. + officeChart.ChartType = OfficeChartType.Column_Clustered + 'Set the chart title. + officeChart.ChartTitle = "Mine Chart" + 'Convert the chart to image. + Dim chartImages As Image() = presentation__1.RenderAsImages(Syncfusion.Drawing.ImageType.Metafile) + For Each image As Image In chartImages + 'Save the image. + image.Save("ChartToImageConverter" + Guid.NewGuid() + ".png") + Next + 'Save the presentation. + presentation__1.Save("ChartToImageConverter.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Gets an instance that represents the built in document properties of presentation. Read-only. + + + + //Create an instance for presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the built-in document property, it is read only + IBuiltInDocumentProperties builtin = presentation.BuiltInDocumentProperties; + //Set the application name + builtin.ApplicationName = "Essential Presentation"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create an instance for presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the built-in document property, it is read only + Dim builtin As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the application name + builtin.ApplicationName = "Essential Presentation" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance that represents the custom document properties of presentation. Read-only. + + + + //Create a new presentation + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document properties. + ICustomDocumentProperties customDocumentProperties = presentation.CustomDocumentProperties; + //Add a new custom document property + customDocumentProperties.Add("Property1"); + //Set a Boolean value. + customDocumentProperties["Property1"].Boolean = true; + //Add a new custom document property + customDocumentProperties.Add("Property2"); + //Set a date time. + customDocumentProperties["Property2"].DateTime = DateTime.Now; + //Save the presentation + presentation.Save("CustomProperty.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document properties. + Dim customDocumentProperties As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add a new custom document property + customDocumentProperties.Add("Property1") + 'Set a Boolean value. + customDocumentProperties("Property1").[Boolean] = True + 'Add a new custom document property + customDocumentProperties.Add("Property2") + 'Set a date time. + customDocumentProperties("Property2").DateTime = DateTime.Now + 'Save the presentation + presentation__1.Save("CustomProperty.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets whether the presentation has macros. Read-only. + + + + //Opens an existing macro enabled PowerPoint presentation + IPresentation pptxDoc = Presentation.Open("Sample.PPTM"); + //Checks whether the presentation has macros and then removes them + if (pptxDoc.HasMacros) + pptxDoc.RemoveMacros(); + //Saves the presentation + pptxDoc.Save("Output.pptx"); + //Closes the presentation + pptxDoc.Close(); + + + 'Opens an existing macro enabled PowerPoint presentation + Dim pptxDoc As IPresentation = Presentation.Open("Sample.PPTM") + 'Checks whether the presentation has macros and then removes them + If pptxDoc.HasMacros Then + pptxDoc.RemoveMacros() + End If + 'Saves the presentation + pptxDoc.Save("Output.pptx") + 'Closes the presentation + pptxDoc.Close() + + + + + + Gets whether the presentation is write Protected. Read-only. + + + + //Create an instance for presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Check whether the presentation is write protected. + if (presentation.IsWriteProtected) + { + //Removes the write protection from presentation instance + presentation.RemoveWriteProtection(); + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create an instance for presentation + Dim presentation As IPresentation = Presentation.Open("Sample.pptx") + 'Check whether the presentation is write protected. + if (presentation.IsWriteProtected) + { + 'Removes the write protection from presentation instance + presentation.RemoveWriteProtection() + } + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation. + presentation.Close() + + + + + + Gets or sets the first slide number of the PowerPoint Presentation. The default value is 1. + + + First slide number is the starting slide number of presentation, and this API allows to set the first slide number from 0 to 9999. + + + + //Creates a new PowerPint Presentation. + using (IPresentation presentation = Presentation.Create()) + { + //Sets the first slide number of the PowerPoint Presentation. + presentation.FirstSlideNumber = 5; + //Adds slide to the PowerPoint. + ISlide slide1 = presentation.Slides.Add(SlideLayoutType.TitleAndContent); + //Adds slide to the PowerPoint. + ISlide slide2 = presentation.Slides.Add(SlideLayoutType.TitleAndContent); + //Adds slide to the PowerPoint. + ISlide slide3 = presentation.Slides.Add(SlideLayoutType.TitleAndContent); + //Gets the first slide slidenumber. + int firstSlideNumber = slide1.SlideNumber; + //Gets the second slide slidenumber. + int secondSlideNumber = slide2.SlideNumber; + //Saves the PowerPoint Presentation. + presentation.Save("Output.pptx"); + } + + + 'Creates a PowerPoint instance + Using pptxDoc As IPresentation = Presentation.Create() + 'Sets the first slide number of the PowerPoint Presentation. + pptxDoc.FirstSlideNumber = 5 + 'Adds a slide to the PowerPoint presentation + Dim slide1 As ISlide = pptxDoc.Slides.Add(SlideLayoutType.TitleAndContent) + 'Adds a slide to the PowerPoint presentation + Dim slide2 As ISlide = pptxDoc.Slides.Add(SlideLayoutType.TitleAndContent) + 'Adds a slide to the PowerPoint presentation + Dim slide3 As ISlide = pptxDoc.Slides.Add(SlideLayoutType.TitleAndContent) + 'Gets the first slide slidenumber. + Dim firstSlideNumber As Integer = slide1.SlideNumber + 'Gets the second slide slidenumber. + Dim secondSlideNumber As Integer = slide2.SlideNumber + 'Saves the Presentation to the file system. + pptxDoc.Save("Output.pptx") + End Using + + + + + + Represents the slide in the presentation. + + + + + Converts the slide to image. + + Specifies the image type to convert the slide. + Returns an image instance that represents the converted slide. + + + //Open a PowerPoint presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Convert the slides to images + System.Drawing.Image[] images = presentation.RenderAsImages(Syncfusion.Drawing.ImageType.Bitmap); + //Close the PowerPoint presentation + presentation.Close(); + + + 'Open a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Open("Sample.pptx") + 'Convert the slides to images + Dim images As Image() = presentation__1.RenderAsImages(Syncfusion.Drawing. ImageType.Bitmap) + 'Close the PowerPoint presentation + presentation__1.Close() + + + + + + Converts the slide to image. + + Specifies the image format to convert the slide. + Returns a stream instance that represents the converted slide. + + + //Create a presentation. + IPresentation presentation = Presentation.Open("Input.pptx"); + //Create instance for chart to image converter + presentation.ChartToImageConverter = new ChartToImageConverter(); + //Set the scaling mode + presentation.ChartToImageConverter.ScalingMode = Syncfusion.OfficeChart.ScalingMode.Best; + //Retrieve the first slide from presentation + ISlide slide = presentation.Slides[0]; + //Convert slide to image + Image image = Image.FromStream(slide.ConvertToImage(Syncfusion.Drawing.ImageFormat.Emf)); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation. + Dim presentation__1 As IPresentation = Presentation.Open("Input.pptx") + 'Create instance for chart to image converter + presentation__1.ChartToImageConverter = New ChartToImageConverter() + 'Set the scaling mode + presentation__1.ChartToImageConverter.ScalingMode = Syncfusion.OfficeChart.ScalingMode.Best + 'Retrieve the first slide from presentation + Dim slide As ISlide = presentation__1.Slides(0) + 'Convert slide to image + Dim image__2 As Image = Image.FromStream(slide.ConvertToImage(Syncfusion.Drawing.ImageFormat.Emf)) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Moves the slide to the start of the specified section index. + + Specifies the section index to be moved. + + + + Adds a new notes to the slide. + + Returns the notes slide of instance. + + + + Adds a text box to the slide. + + Represents the left position,in points. The Left value ranges from -169056 to 169056. + Represents the top position,in points. The Top value ranges from -169056 to 169056. + Represents the width,in points. The Width value ranges from 0 to 169056. + Represents the height,in points. The Height value ranges from 0 to 169056. + Returns an instance that represents the text box. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a new slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide. + IShape shape = slide.AddTextBox(10, 10, 300, 350); + //Add a paragraph with text content to the shape. + shape.TextBody.AddParagraph("This is a new text box"); + //Save the presentation. + presentation.Save("Slide_TextBox.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a new slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide. + Dim shape As IShape = slide.AddTextBox(10, 10, 300, 350) + 'Add a paragraph with text content to the shape. + shape.TextBody.AddParagraph("This is a new text box") + 'Save the presentation. + presentation__1.Save("Slide_TextBox.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Creates an independent copy of instance. + + Returns the cloned slide instance. + + + //Open an existing presentation. + IPresentation presentation = Presentation.Open("Presentation.pptx"); + //Retrieve the slide instance. + ISlide slide = presentation.Slides[0]; + //Create a cloned copy of slide. + ISlide slideClone = slide.Clone(); + //Add a new text box to the cloned slide. + IShape textboxShape = slideClone.AddTextBox(0, 0, 250, 250); + //Add a paragraph with text content to the shape. + textboxShape.TextBody.AddParagraph("Hello Presentation"); + //Add the slide to the presentation. + presentation.Slides.Add(slideClone); + //Save the presentation to the file system. + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open an existing presentation. + Dim presentation__1 As IPresentation = Presentation.Open("Presentation.pptx") + 'Retrieve the slide instance. + Dim slide As ISlide = presentation__1.Slides(0) + 'Create a cloned copy of slide. + Dim slideClone As ISlide = slide.Clone() + 'Add a new text box to the cloned slide. + Dim textboxShape As IShape = slideClone.AddTextBox(0, 0, 250, 250) + 'Add a paragraph with text content to the shape. + textboxShape.TextBody.AddParagraph("Hello Presentation") + 'Add the slide to the presentation. + presentation__1.Slides.Add(slideClone) + 'Save the presentation to the file system. + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the notes slide. + + + + + Gets or sets the boolean value which indicates whether the slide is visible or not. + + + true if this slide instance is visible; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Hide the slide in presentation + slide.Visible = false; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Hide the slide in presentation + slide.Visible = False + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of the current slide. Read-only. + + + + + Returns the section instance of the slide. Read-only. + + If there is no sections associated with the slide then the Section property will be “null” + + + + Gets the Unique ID for the current slide. Read-only. The Unique ID ranges from 256 to 2147483647. + + + + + Gets the current notes slide instance. Returns null if no notes are present. + + + + + Gets the layout slide instance of current slide. + + + + + Returns the collection of slide comments. Read-only. + + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add a paragraph to the textbody of the shape + shape.TextBody.AddParagraph("Hi Syncfusion Customers"); + //Add a comment to the slide + IComment comment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + //Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + //Get the collection of the comments + IComments comments = slide.Comments; + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add a paragraph to the text body of the shape + shape.TextBody.AddParagraph() + 'Add a comment to the slide + Dim comment As IComment = slide.Comments.Add(0.35, 0.04, "Author1", "A1", "Essential Presentation is available from 13.1 versions of Essential Studio", DateTime.Now); + 'Author2 add reply to a parent comment + slide.Comments.Add("Author2", "A2", "Does it support rendering of slides as images or PDF?", DateTime.Now, comment); + 'Get the collection of the comments + Dim comments As IComments = slide.Comments; + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Represents the slide collection. + + + + + Adds a slide at the end of the slide collection. + + Returns the newly created instance. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Add slide to presentation + slides.Add(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Create instance to hold the slide collection + Dim slides As ISlides = presentation__1.Slides + 'Add slide to presentation + slides.Add() + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Creates an instance with relation to the specified instance and adds it to the collection. + + Layout slide instance + Returns the slide with the specified slide layout. + + + + Adds the specified slide at the end of the slide collection. + + Represents an instance to be added. + Returns the zero based index of the specified slide in the slide collection if found otherwise -1 + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Add slide to collection + ISlide slide = slides.Add(SlideLayoutType.TwoContent); + //Retrieve the specific slide item, read only + ISlide _slide = slides[0]; + slides.Add(_slide); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Create instance to hold the slide collection + Dim slides As ISlides = presentation__1.Slides + 'Add slide to collection + Dim slide As ISlide = slides.Add(SlideLayoutType.TwoContent) + 'Retrieve the specific slide item, read only + Dim _slide As ISlide = slides(0) + slides.Add(_slide) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds the specified cloned slide at the end of slide collection with specified paste options. + + An instance to be added to the destination presentation. + Specifies the for merging the slide. + Optional Parameter. An instance of the source presentation from which the slide is cloned from. + The cloned slide can be added within the same presentation or this can be done between one presentation to another + + + //Open the source presentation + IPresentation sourcePresentation = Presentation.Open("Source.pptx"); + //Open the destination presentation + IPresentation destinationPresentation = Presentation.Open("Destination.pptx"); + //Clone the first slide of the source presentation. + ISlide clonedSlide = sourcePresentation.Slides[0].Clone(); + //Merge the cloned slide to the destination presentation with paste option - Destination Them. + destinationPresentation.Slides.Add(clonedSlide, PasteOptions.UseDestinationTheme); + //Save the destination presentation. + destinationPresentation.Save("Output.pptx"); + // Close the presentation + destinationPresentation.Close(); + sourcePresentation.Close(); + + + 'Open the source presentation + Dim sourcePresentation As IPresentation = Presentation.Open("Source.pptx") + 'Open the destination presentation + Dim destinationPresentation As IPresentation = Presentation.Open("Destination.pptx") + 'Clone the first slide of the source presentation. + Dim clonedSlide As ISlide = sourcePresentation.Slides(0).Clone() + 'Merge the cloned slide to the destination presentation with paste option - Destination Them. + destinationPresentation.Slides.Add(clonedSlide, PasteOptions.UseDestinationTheme) + 'Save the destination presentation. + destinationPresentation.Save("Output.pptx") + 'Closes the destination presentation. + destinationPresentation.Close() + sourcePresentation.Close() + + + + + + Creates a slide with the specified layout type and adds the new slide to the end of slide collection. + + Specifies the slide layout type. + Returns the newly created instance. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Add slide to collection + ISlide slide = slides.Add(SlideLayoutType.TwoContent); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Create instance to hold the slide collection + Dim slides As ISlides = presentation__1.Slides + 'Add slide to collection + Dim slide As ISlide = slides.Add(SlideLayoutType.TwoContent) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Inserts the specified slide into the slide collection at specified index. + + The zero-based index at which the slide should be inserted. + The slide value to insert. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Add slide to collection + ISlide slide = slides.Add(SlideLayoutType.TwoContent); + //Insert a slide at specific index in collection + slides.Insert(2, slides.Add()); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Create instance to hold the slide collection + Dim slides As ISlides = presentation__1.Slides + 'Add slide to collection + Dim slide As ISlide = slides.Add(SlideLayoutType.TwoContent) + 'Insert a slide at specific index in collection + slides.Insert(2, slides.Add()) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the slide at the specified index, from the slide collection. + + The zero-based index of the element to be removed. + + + //Create a new presentation. + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Remove slide from specific index + slides.RemoveAt(0); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Open("Sample.pptx") + 'Create instance to hold the slide collection + Dim slides As ISlides = presentation__1.Slides + 'Remove slide from specific index + slides.RemoveAt(0) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified slide from the slide collection. + + The slide to be removed from the collection. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Add slide to collection + ISlide slide = slides.Add(SlideLayoutType.TwoContent); + //Remove a specific slide object + slides.Remove(slide); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Create instance to hold the slide collection + Dim slides As ISlides = presentation__1.Slides + 'Add slide to collection + Dim slide As ISlide = slides.Add(SlideLayoutType.TwoContent) + 'Remove a specific slide object + slides.Remove(slide) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the instance within the slide collection. + + The instance to locate in the collection. + Returns the zero-based index of the first occurrence of slide within the collection, if found; otherwise, –1. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Add slide to collection + ISlide slide = slides.Add(SlideLayoutType.TwoContent); + //Get the index of the slide instance + int index = slides.IndexOf(slide); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Create instance to hold the slide collection + Dim slides As ISlides = presentation__1.Slides + 'Add slide to collection + Dim slide As ISlide = slides.Add(SlideLayoutType.TwoContent) + 'Get the index of the slide instance + Dim index As Integer = slides.IndexOf(slide) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes all the slides in the presentation. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Add slide to collection + ISlide slide = slides.Add(SlideLayoutType.TwoContent); + //Retrieve the specific slide item, read only + ISlide _slide = slides[0]; + slides.Add(_slide); + //Clear the slide collection + slides.Clear(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Create instance to hold the slide collection + Dim slides As ISlides = presentation__1.Slides + 'Add slide to collection + Dim slide As ISlide = slides.Add(SlideLayoutType.TwoContent) + 'Retrieve the specific slide item, read only + Dim _slide As ISlide = slides(0) + slides.Add(_slide) + 'Clear the slide collection + slides.Clear() + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds the specified cloned slide at the specified index of slide collection with specified paste options. + + Specifies the index position of the slide in which the cloned slide should get added + An instance to be added to the destination presentation. + Specifies the for merging the slide. + Optional Parameter. An instance of the source presentation from which the slide is cloned from. + The cloned slide can be added within the same presentation or this can be done between one presentation to another + + + //Open the source presentation + IPresentation sourcePresentation = Presentation.Open("Source.pptx"); + //Open the destination presentation + IPresentation destinationPresentation = Presentation.Open("Destination.pptx"); + //Clone the first slide of the source presentation. + ISlide clonedSlide = sourcePresentation.Slides[0].Clone(); + //Merge the cloned slide to the destination presentation with paste option - Destination Them. + destinationPresentation.Slides.Insert(1, clonedSlide, PasteOptions.UseDestinationTheme); + //Save the destination presentation. + destinationPresentation.Save("Output.pptx"); + + + 'Open the source presentation + Dim sourcePresentation As IPresentation = Presentation.Open("Source.pptx") + 'Open the destination presentation + Dim destinationPresentation As IPresentation = Presentation.Open("Destination.pptx") + 'Clone the first slide of the source presentation. + Dim clonedSlide As ISlide = sourcePresentation.Slides(0).Clone() + 'Merge the cloned slide to the destination presentation with paste option - Destination Them. + destinationPresentation.Slides.Insert(1, clonedSlide, PasteOptions.UseDestinationTheme) + 'Save the destination presentation. + destinationPresentation.Save("Output.pptx") + + + + + + Gets the number of elements in the slide collection. Read-only. + + + The total count of the slides. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Add slide to presentation + slides.Add(); + //Add a blank slide to the presentation. + slides.Add(SlideLayoutType.Blank); + //Add slide to the collection by passing the slide instance + slides.Add(slides.Add(SlideLayoutType.Title)); + //Get the slide count, read only + int count = slides.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Create instance to hold the slide collection + Dim slides As ISlides = presentation__1.Slides + 'Add slide to presentation + slides.Add() + 'Add a blank slide to the presentation. + slides.Add(SlideLayoutType.Blank) + 'Add slide to the collection by passing the slide instance + slides.Add(slides.Add(SlideLayoutType.Title)) + 'Get the slide count, read only + Dim count As Integer = slides.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the instance at the specified index in slide collection. Read-only. + + The index to locate the slide. + Returns the slide at the specified index in slide collection. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Add slide to presentation + slides.Add(); + //Add a blank slide to the presentation. + slides.Add(SlideLayoutType.Blank); + //Add slide to the collection by passing the slide instance + slides.Add(slides.Add(SlideLayoutType.Title)); + //Retrieve the specific slide item, read only + ISlide _slide = slides[0]; + //Set the slide name + _slide.Name = "My Slide"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Create instance to hold the slide collection + Dim slides As ISlides = presentation__1.Slides + 'Add slide to presentation + slides.Add() + 'Add a blank slide to the presentation. + slides.Add(SlideLayoutType.Blank) + 'Add slide to the collection by passing the slide instance + slides.Add(slides.Add(SlideLayoutType.Title)) + 'Retrieve the specific slide item, read only + Dim _slide As ISlide = slides(0) + 'Set the slide name + _slide.Name = "My Slide" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents the size and bounds of a slide. + + + + + Gets or sets the predefined size type. + + + The slide size type of the slide. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide size + ISlideSize slideSize = slide.SlideSize; + //Set the type of slide size + slideSize.Type = SlideSizeType.Banner; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide size + Dim slideSize As ISlideSize = slide.SlideSize + 'Set the type of slide size + slideSize.Type = SlideSizeType.Banner + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the width, in points. Read-only. + + + The width of the slide. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide size + ISlideSize slideSize = slide.SlideSize; + //Get the width of the slide size, read only + double width = slideSize.Width; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide size + Dim slideSize As ISlideSize = slide.SlideSize + 'Get the width of the slide size, read only + Dim width As Double = slideSize.Width + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the height, in points. Read-only. + + + The height of the slide. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide size + ISlideSize slideSize = slide.SlideSize; + //Get the height of the slide size, read only + double height = slideSize.Height; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide size + Dim slideSize As ISlideSize = slide.SlideSize + 'Get the height of the slide size, read only + Dim height As Double = slideSize.Height + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the slide orientation. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance for slide size + ISlideSize slideSize = slide.SlideSize; + //Retrieve the slide orientation + SlideOrientation slideOrientation = slideSize.SlideOrientation; + //Set the slide orientation + slideOrientation = SlideOrientation.Landscape; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance for slide size + Dim slideSize As ISlideSize = slide.SlideSize + 'Retrieve the slide orientation + Dim slideOrientation__2 As SlideOrientation = slideSize.SlideOrientation + 'Set the slide orientation + slideOrientation__2 = SlideOrientation.Landscape + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents the font attributes of the text. + + + + + Gets or sets the caps type. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Set the caps type for text part + font.CapsType = TextCapsType.Small; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Set the caps type for text part + font.CapsType = TextCapsType.Small + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the foreground color of the text. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Create instance to hold color properties of font + IColor color = font.Color; + //Set font color for text part + color = ColorObject.Green; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Create instance to hold color properties of font + Dim color As IColor = font.Color + 'Set font color for text part + color = ColorObject.Green + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a value that indicates whether the text is bold or not. + + + true if bold; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Set text part with bold style + font.Bold = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Set text part with bold style + font.Bold = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value that indicates whether the text is italic or not. + + + true if italic; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Set text part with italic style + font.Italic = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Set text part with italic style + font.Italic = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value that indicates whether the text is subscript or not. + + + true if subscript; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Set the subscript + font.Subscript = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Set the subscript + font.Subscript = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value that indicates whether the text is superscript or not. + + + true if superscript; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Set the superscript + font.Superscript = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Set the superscript + font.Superscript = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the name of the font. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Set the font name + font.FontName = "Calibri"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Set the font name + font.FontName = "Calibri" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the size of the font. + + + + ///Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Set font size of the text + font.FontSize = 32; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Set font size of the text + font.FontSize = 32 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the strike through type. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Set strike type for text part + font.StrikeType = TextStrikethroughType.None; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Set strike type for text part + font.StrikeType = TextStrikethroughType.None + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the underline type. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Set underline type of font + font.Underline = TextUnderlineType.Dash; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Set underline type of font + font.Underline = TextUnderlineType.Dash + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the language identifier (locale). + + The short value that specifies the equivalent locale id. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Sets a language as "Spanish (Argentina)" for TextPart + font.LanguageID = (short) LocaleIDs.es_AR; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Sets a language as "Spanish (Argentina)" for TextPart + font.LanguageID = CType(LocaleIDs.es_AR,Short) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the Highlight color of the text. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Create instance by adding text part to the shape + ITextPart textPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph, second TextPart"); + //Create font instance for text part + IFont font = textPart.Font; + //Create instance to hold color properties of font + IColor color = ColorObject.Yellow; + //Set Highlight color for text part + font.HighlightColor = color; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Create instance by adding text part to the shape + Dim textPart As ITextPart = shape.TextBody.AddParagraph().AddTextPart("First Paragraph") + 'Create font instance for text part + Dim font As IFont = textPart.Font + 'Create instance to hold highlight color properties of font + Dim color As IColor = font.HighlightColor + 'Set font color for text part + color = ColorObject.Yellow + 'Save the presentation + presentation.Save("Sample.pptx") + 'Close the presentation + presentation.Close() + + + + + + Represents a list or bullet formatting options. + + + + The picture stream. + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + //Set the list type as Numbered + paragraph.ListFormat.Type = ListType.Picture; + //Set the image for the list. + paragraph.ListFormat.Picture(new MemoryStream(Syncfusion.Drawing.Image.FromFile("Image.gif").ImageData)); + // Set the picture size. If 100, here means 100% of its text. Possible values can range from 25 to 400 + paragraph.ListFormat.Size = 150; + //Set the list level as 1 + paragraph.IndentLevelNumber = 1; + // Set the hanging value + paragraph.FirstLineIndent = -20; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + 'Set the list type as Numbered + paragraph.ListFormat.Type = ListType.Picture + 'Set the image for the list. + paragraph.ListFormat.Picture(New MemoryStream(Syncfusion.Drawing.Image.FromFile("Image.gif").ImageData)) + ' Set the picture size. If 100, here means 100% of its text. Possible values can range from 25 to 400 + paragraph.ListFormat.Size = 150 + 'Set the list level as 1 + paragraph.IndentLevelNumber = 1 + ' Set the hanging value + paragraph.FirstLineIndent = -20 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the Unicode character value that is used for bullets in the specified text. + + + The character. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + //Set the list level as 1 + paragraph.IndentLevelNumber = 1; + // Set the hanging value + paragraph.FirstLineIndent = -20; + //Create list format instance for the paragraph + IListFormat listFormat = paragraph.ListFormat; + //Set the type of list + listFormat.Type = ListType.Bulleted; + //Set the character for bullet + listFormat.BulletCharacter = '♠'; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + 'Set the list level as 1 + paragraph.IndentLevelNumber = 1 + ' Set the hanging value + paragraph.FirstLineIndent = -20 + 'Create list format instance for the paragraph + Dim listFormat As IListFormat = paragraph.ListFormat + 'Set the type of list + listFormat.Type = ListType.Bulleted + 'Set the character for bullet + listFormat.BulletCharacter = "♠"C + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + The number style. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + //Set the list level as 1 + paragraph.IndentLevelNumber = 1; + // Set the hanging value + paragraph.FirstLineIndent = -20; + //Create instance for list format + IListFormat listFormat = paragraph.ListFormat; + //Set the list type as Numbered + listFormat.Type = ListType.Numbered; + //Set the numbered style (list numbering) as Arabic number following by period. + listFormat.NumberStyle = NumberedListStyle.ArabicPeriod; + //Set the starting value as 1 + listFormat.StartValue = 1; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + 'Set the list level as 1 + paragraph.IndentLevelNumber = 1 + ' Set the hanging value + paragraph.FirstLineIndent = -20 + 'Create instance for list format + Dim listFormat As IListFormat = paragraph.ListFormat + 'Set the list type as Numbered + listFormat.Type = ListType.Numbered + 'Set the numbered style (list numbering) as Arabic number following by period. + listFormat.NumberStyle = NumberedListStyle.ArabicPeriod + 'Set the starting value as 1 + listFormat.StartValue = 1 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + The start value. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + //Set the list level as 1 + paragraph.IndentLevelNumber = 1; + // Set the hanging value + paragraph.FirstLineIndent = -20; + //Create instance for list format + IListFormat listFormat = paragraph.ListFormat; + //Set the list type as Numbered + listFormat.Type = ListType.Numbered; + //Set the numbered style (list numbering) as Arabic number following by period. + listFormat.NumberStyle = NumberedListStyle.ArabicPeriod; + //Set the starting value as 10 + listFormat.StartValue = 10; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + 'Set the list level as 1 + paragraph.IndentLevelNumber = 1 + ' Set the hanging value + paragraph.FirstLineIndent = -20 + 'Create instance for list format + Dim listFormat As IListFormat = paragraph.ListFormat + 'Set the list type as Numbered + listFormat.Type = ListType.Numbered + 'Set the numbered style (list numbering) as Arabic number following by period. + listFormat.NumberStyle = NumberedListStyle.ArabicPeriod + 'Set the starting value as 10 + listFormat.StartValue = 10 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the . + + + The type. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + //Add another paragraph to the text body + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Reynold Xin, PhD student at UC Berkeley AMPLab"); + //Set the list level as 1 + paragraph.IndentLevelNumber = 1; + // Set the hanging value + paragraph.FirstLineIndent = -25; + //Retrieve the list format of paragraph + IListFormat listFormat = paragraph.ListFormat; + //Set the list type as Numbered + listFormat.Type = ListType.Numbered; + //Set the numbered style (list numbering) as Arabic number following by period. + listFormat.NumberStyle = NumberedListStyle.ArabicPeriod; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add another paragraph to the text body + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Reynold Xin, PhD student at UC Berkeley AMPLab") + 'Set the list level as 1 + paragraph.IndentLevelNumber = 1 + ' Set the hanging value + paragraph.FirstLineIndent = -25 + 'Retrieve the list format of paragraph + Dim listFormat As IListFormat = paragraph.ListFormat + 'Set the list type as Numbered + listFormat.Type = ListType.Numbered + 'Set the numbered style (list numbering) as Arabic number following by period. + listFormat.NumberStyle = NumberedListStyle.ArabicPeriod + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the list size relative to the size of the first text character in the paragraph. + + + The size. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + //Set the list level as 1 + paragraph.IndentLevelNumber = 1; + // Set the hanging value + paragraph.FirstLineIndent = -20; + //Create instance for list format + IListFormat listFormat = paragraph.ListFormat; + //Set the list type as Numbered + listFormat.Type = ListType.Numbered; + //Set the numbered style (list numbering) as Arabic number following by period. + listFormat.NumberStyle = NumberedListStyle.ArabicPeriod; + //Set the starting value as 1 + listFormat.StartValue = 1; + // Set the bullet character size. If 100, here means 100% of its text. Possible values can range from 25 to 400 + listFormat.Size = 100; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + 'Set the list level as 1 + paragraph.IndentLevelNumber = 1 + ' Set the hanging value + paragraph.FirstLineIndent = -20 + 'Create instance for list format + Dim listFormat As IListFormat = paragraph.ListFormat + 'Set the list type as Numbered + listFormat.Type = ListType.Numbered + 'Set the numbered style (list numbering) as Arabic number following by period. + listFormat.NumberStyle = NumberedListStyle.ArabicPeriod + 'Set the starting value as 1 + listFormat.StartValue = 1 + ' Set the bullet character size. If 100, here means 100% of its text. Possible values can range from 25 to 400 + listFormat.Size = 100 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the font name for the list. + + + The name of the font. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + //Add another paragraph to the text body + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Reynold Xin, PhD student at UC Berkeley AMPLab"); + //Set the list level as 1 + paragraph.IndentLevelNumber = 1; + // Set the hanging value + paragraph.FirstLineIndent = -20; + //Create list format instance for the paragraph + IListFormat listFormat = paragraph.ListFormat; + //Set the type of list + listFormat.Type = ListType.Bulleted; + //Set font name for the bullet + listFormat.FontName = "Helvetica"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add another paragraph to the text body + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Reynold Xin, PhD student at UC Berkeley AMPLab") + 'Set the list level as 1 + paragraph.IndentLevelNumber = 1 + ' Set the hanging value + paragraph.FirstLineIndent = -20 + 'Create list format instance for the paragraph + Dim listFormat As IListFormat = paragraph.ListFormat + 'Set the type of list + listFormat.Type = ListType.Bulleted + 'Set font name for the bullet + listFormat.FontName = "Helvetica" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the color of instance. + + + The color. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + //Add another paragraph to the text body + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Reynold Xin, PhD student at UC Berkeley AMPLab"); + //Set the list level as 1 + paragraph.IndentLevelNumber = 1; + // Set the hanging value + paragraph.FirstLineIndent = -20; + //Create list format instance for the paragraph + IListFormat listFormat = paragraph.ListFormat; + //Set the type of list + listFormat.Type = ListType.Bulleted; + //Set the character for bullet + listFormat.BulletCharacter = '♠'; + //Set the color of the bullet + listFormat.Color = ColorObject.FromArgb(23, 12, 234); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add another paragraph to the text body + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Reynold Xin, PhD student at UC Berkeley AMPLab") + 'Set the list level as 1 + paragraph.IndentLevelNumber = 1 + ' Set the hanging value + paragraph.FirstLineIndent = -20 + 'Create list format instance for the paragraph + Dim listFormat As IListFormat = paragraph.ListFormat + 'Set the type of list + listFormat.Type = ListType.Bulleted + 'Set the character for bullet + listFormat.BulletCharacter = "♠"C + 'Set the color of the bullet + listFormat.Color = ColorObject.FromArgb(23, 12, 234) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents a paragraph in the shape. + + + + + Adds a text part to the text part collection. + + + Returns an instance this method creates. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Add first paragraph to the text body + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Create instance for text part + ITextPart textPart = paragraph.AddTextPart(); + //Set text for the text part + textPart.Text = " First Paragraph, second Textpart"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Create instance for text part + Dim text part As ITextPart = paragraph.AddTextPart() + 'Set text for the text part + text part.Text = " First Paragraph, second Textpart" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a text part to the text part collection with the specified text. + + The text content to initialize the new instance. + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Add first paragraph to the text body + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Add first paragraph to the text body + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Creates an independent copy of instance. + + Returns the cloned paragraph instance. + /// + + //Open an existing presentation. + IPresentation presentation = Presentation.Open("Presentation.pptx"); + //Retrieve the slide instance. + ISlide slide = presentation.Slides[0]; + //Add a new text box to the slide. + IShape textboxShape = slide.AddTextBox(0, 0, 250, 250); + //Add a paragraph with text content to the shape. + IParagraph paragraph = textboxShape.TextBody.AddParagraph("Hello Presentation"); + //Create a cloned copy of paragraph. + IParagraph clonedParagraph = paragraph.Clone(); + clonedParagraph.TextParts[0].Text = "Replaced text"; + //Save the presentation to the file system. + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Open an existing presentation. + Dim presentation__1 As IPresentation = Presentation.Open("Presentation.pptx") + 'Retrieve the slide instance. + Dim slide As ISlide = presentation__1.Slides(0) + 'Add a new text box to the cloned slide. + Dim textboxShape As IShape = slide.AddTextBox(0, 0, 250, 250) + 'Add a paragraph with text content to the shape. + Dim paragraph As IParagraph = textboxShape.TextBody.AddParagraph("Hello Presentation") + 'Create a cloned copy of paragraph. + Dim clonedParagraph As IParagraph = paragraph.Clone(); + clonedParagraph.TextParts[0].Text = "Replaced Text"; + 'Add the slide to the presentation. + presentation__1.Slides.Add(slideClone) + 'Save the presentation to the file system. + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds the hyperlink to the textpart with the specified link. + + The text content to initialize the new instance. + Represents the address of the target document path or web url. + Returns an instance. + + + //Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Add paragraph into the shape + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Add hyperlink to the TextPart and screen tip to the hyperlink. + IHyperLink hyperLink = paragraph.AddHyperlink("Google", "https://www.google.com"); + hyperLink.ScreenTip = "This hyperlink navigates to Google site"; + //Save the presentation + ppDoc.Save("Sample.pptx"); + //Close the presentation + ppDoc.Close(); + + /// + 'Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide into the presentation + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Adds paragraph into the shape + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Add hyperlink to the TextPart and screen tip to the hyperlink. + Dim hyperLink As IHyperLink = paragraph.AddHyperlink("Google", "https://www.google.com") + hyperLink.ScreenTip = "This hyperlink navigates to Google site" + 'Saves the Presentation. + ppDoc.Save("Sample.pptx") + 'Close the presentation. + ppDoc.Close() + + + + + + Gets an instance that represents the list formatting for the specified paragraph. Read-only. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + //Get the list format of paragraph, read only + IListFormat listFormat = paragraph.ListFormat; + //Set the list type + listFormat.Type = ListType.Bulleted; + //Set the character for bullet + listFormat.BulletCharacter = '♠'; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + 'Get the list format of paragraph, read only + Dim listFormat As IListFormat = paragraph.ListFormat + 'Set the list type + listFormat.Type = ListType.Bulleted + 'Set the character for bullet + listFormat.BulletCharacter = "♠"C + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the text content of the paragraph. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Add first paragraph to the text body + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart"); + //Add text part to the paragraph + ITextPart textPart = paragraph.AddTextPart(); + //Set text for the text part + textPart.Text = " First Paragraph, second Textpart"; + //Get the paragraph text, it is read only + string entireText = paragraph.Text; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Add first paragraph to the text body + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart") + 'Add text part to the paragraph + Dim text part As ITextPart = paragraph.AddTextPart() + 'Set text for the text part + text part.Text = " First Paragraph, second Textpart" + 'Get the paragraph text, it is read only + Dim entireText As String = paragraph.Text + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the horizontal alignment of the paragraph. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + //Set the horizontal alignment + paragraph.HorizontalAlignment = HorizontalAlignmentType.Justify; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + 'Set the horizontal alignment + paragraph.HorizontalAlignment = HorizontalAlignmentType.Justify + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the text part collection of instance. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Add first paragraph to the text body + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart"); + //Create instance for text part + ITextPart textPart = paragraph.AddTextPart(); + //Set text for the text part + textPart.Text = " First Paragraph, second Textpart"; + //Get the collection of text part in a paragraph, it is read only + ITextParts textParts = paragraph.TextParts; + //Set the first text part with bold style + textParts[0].Font.Bold = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Add first paragraph to the text body + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart") + 'Create instance for text part + Dim text part As ITextPart = paragraph.AddTextPart() + 'Set text for the text part + text part.Text = " First Paragraph, second Textpart" + 'Get the collection of text part in a paragraph, it is read only + Dim text parts As ITextParts = paragraph.TextParts + 'Set the first text part with bold style + text parts(0).Font.Bold = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance of the paragraph. Read-only. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + //Retrieve the paragraph font + IFont font = paragraph.Font; + //Set the font size + font.FontSize = 26; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + 'Retrieve the paragraph font + Dim font As IFont = paragraph.Font + 'Set the font size + font.FontSize = 26 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + + Gets or sets the first line indent of the paragraph, in points. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + // Set the hanging value + paragraph.FirstLineIndent = 20; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + ' Set the hanging value + paragraph.FirstLineIndent = 20 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the left indent of the paragraph, in points. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Add first paragraph to the text body + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart"); + //Set the left indent + paragraph.LeftIndent = 20; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Add first paragraph to the text body + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart") + 'Set the left indent + paragraph.LeftIndent = 20 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the indent level as an integer from 0 to 8, where 0 indicates a first-level + paragraph with no indentation. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Add first paragraph to the text body + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart"); + //Create instance for text part + ITextPart textPart = paragraph.AddTextPart(); + //Set text for the text part + textPart.Text = " First Paragraph, second Textpart"; + //Set the list level as 1 + paragraph.IndentLevelNumber = 1; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Add first paragraph to the text body + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart") + 'Create instance for text part + Dim text part As ITextPart = paragraph.AddTextPart() + 'Set text for the text part + text part.Text = " First Paragraph, second Textpart" + 'Set the list level as 1 + paragraph.IndentLevelNumber = 1 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the line spacing, in points. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Add first paragraph to the text body + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart"); + //Set line spacing for paragraph + paragraph.LineSpacing = 20; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Add first paragraph to the text body + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Add first text part to the paragraph + paragraph.AddTextPart("First Paragraph, First Textpart") + 'Set line spacing for paragraph + paragraph.LineSpacing = 20 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the amount of space after the last line in each paragraph of the specified text, in points. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph1 = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + //Add another paragraph. + IParagraph paragraph2 = textBoxShape.TextBody.AddParagraph("Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."); + //Set space after + paragraph1.SpaceAfter = 30; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph1 As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + 'Add another paragraph. + Dim paragraph2 As IParagraph = textBoxShape.TextBody.AddParagraph("Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.") + 'Set space after + paragraph1.SpaceAfter = 30 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the amount of space before the first line in each paragraph of the specified text, in points. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with the text in the left hand side text box. + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."); + //Set space before + paragraph.SpaceBefore = 10; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation instance. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + ' Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + ' Add a new paragraph with the text in the left hand side text box. + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") + 'Set space before + paragraph.SpaceBefore = 10 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents a collection of instance in a . + + + + + Adds a paragraph at the end of the paragraph collection. + + Returns an instance. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Create instance to hold paragraph collection + IParagraphs paragraphs = shape.TextBody.Paragraphs; + //Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Create instance to hold paragraph collection + Dim paragraphs As IParagraphs = shape.TextBody.Paragraphs + 'Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a paragraph with the specified text, at the end of the paragraph collection. + + Specifies the text content to add. + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Create instance to hold paragraph collection + IParagraphs paragraphs = shape.TextBody.Paragraphs; + //Add paragraph to collection + IParagraph paragraph = paragraphs.Add("Lorem ipsum dolor sit amet, consectetur adipiscing elit"); + //Retrieve the paragraph font + IFont font = paragraph.Font; + //Set the font size + font.FontSize = 26; + //Set the horizontal alignment + paragraph.HorizontalAlignment = HorizontalAlignmentType.Justify; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Add paragraph to collection + Dim paragraph As IParagraph = paragraphs.Add("Lorem ipsum dolor sit amet, consectetur adipiscing elit") + 'Retrieve the paragraph font + Dim font As IFont = paragraph.Font + 'Set the font size + font.FontSize = 26 + 'Set the horizontal alignment + paragraph.HorizontalAlignment = HorizontalAlignmentType.Justify + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Inserts a specific paragraph at the specific location of the paragraph collection. + + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Add second paragraph + IParagraph paragraph2 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[1].AddTextPart("Add Second Paragraph"); + //Add second paragraph + textBody.Paragraphs.Insert(0, textBody.Paragraphs[1]); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Add second paragraph + Dim paragraph2 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(1).AddTextPart("Add Second Paragraph") + 'Add second paragraph + textBody.Paragraphs.Insert(0, paragraph2) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified instance from the paragraph collection. + + The paragraph instance to be removed from the collection. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Create instance to hold paragraph collection + IParagraphs paragraphs = shape.TextBody.Paragraphs; + //Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet"); + //Add paragraph to collection + IParagraph paragraph = paragraphs.Add(", consectetur adipiscing elit"); + //Remove a specific paragraph instance + paragraphs.Remove(paragraph); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Create instance to hold paragraph collection + Dim paragraphs As IParagraphs = shape.TextBody.Paragraphs + 'Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet") + 'Add paragraph to collection + Dim paragraph As IParagraph = paragraphs.Add(", consectetur adipiscing elit") + 'Remove a specific paragraph instance + paragraphs.Remove(paragraph) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the instance at the specified index of the paragraph collection. + + The zero-based index of the element to be removed. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Create instance to hold paragraph collection + IParagraphs paragraphs = shape.TextBody.Paragraphs; + //Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet"); + //Add paragraph to collection + IParagraph paragraph = paragraphs.Add(", consectetur adipiscing elit"); + //Remove paragraph at specific index + paragraphs.RemoveAt(0); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Create instance to hold paragraph collection + Dim paragraphs As IParagraphs = shape.TextBody.Paragraphs + 'Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet") + 'Add paragraph to collection + Dim paragraph As IParagraph = paragraphs.Add(", consectetur adipiscing elit") + 'Remove paragraph at specific index + paragraphs.RemoveAt(0) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the instance within the collection. + + The IParagraph instance to locate in the collection. + Returns the zero-based index of the first occurrence of the paragraph within the collection, if found; otherwise, –1. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Create instance to hold paragraph collection + IParagraphs paragraphs = shape.TextBody.Paragraphs; + //Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet"); + //Create instance for paragraph + IParagraph paragraph = paragraphs.Add(", consectetur adipiscing elit"); + //Get the index of specific paragraph instance + int index = paragraphs.IndexOf(paragraph); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Create instance to hold paragraph collection + Dim paragraphs As IParagraphs = shape.TextBody.Paragraphs + 'Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet") + 'Create instance for paragraph + Dim paragraph As IParagraph = paragraphs.Add(", consectetur adipiscing elit") + 'Get the index of specific paragraph instance + Dim index As Integer = paragraphs.IndexOf(paragraph) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes all the elements from paragraph collection. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Create instance to hold paragraph collection + IParagraphs paragraphs = shape.TextBody.Paragraphs; + //Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet"); + //Add paragraph to paragraphs + paragraphs.Add("sed do eiusmod tempor incididunt"); + paragraphs.Add("ut labore et dolore magna aliqua."); + //Clear the paragraph collection + paragraphs.Clear(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Create instance to hold paragraph collection + Dim paragraphs As IParagraphs = shape.TextBody.Paragraphs + 'Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet") + 'Add paragraph to paragraphs + paragraphs.Add("sed do eiusmod tempor incididunt") + paragraphs.Add("ut labore et dolore magna aliqua.") + 'Clear the paragraph collection + paragraphs.Clear() + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the paragraph collection. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Create instance to hold paragraph collection + IParagraphs paragraphs = shape.TextBody.Paragraphs; + //Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet"); + //Create instance for paragraph + IParagraph paragraph = paragraphs.Add(", consectetur adipiscing elit"); + //Get the paragraphs count, read only + int count = paragraphs.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Create instance to hold paragraph collection + Dim paragraphs As IParagraphs = shape.TextBody.Paragraphs + 'Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet") + 'Create instance for paragraph + Dim paragraph As IParagraph = paragraphs.Add(", consectetur adipiscing elit") + 'Get the paragraphs count, read only + Dim count As Integer = paragraphs.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance at the specified index from the collection. Read-only. + + Determines the index of the text part. + Returns an instance. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //Create instance to hold paragraph collection + IParagraphs paragraphs = shape.TextBody.Paragraphs; + //Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet"); + //Create instance for paragraph + IParagraph paragraph = paragraphs.Add(", consectetur adipiscing elit"); + //Get the specific paragraph instance, read only + IParagraph paragraph1 = paragraphs[0]; + // Set the hanging value + paragraph1.FirstLineIndent = 20; + //Set the list level as 1 + paragraph1.IndentLevelNumber = 1; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'Create instance to hold paragraph collection + Dim paragraphs As IParagraphs = shape.TextBody.Paragraphs + 'Add paragraph to collection; in turn add text part + paragraphs.Add().TextParts.Add("Lorem ipsum dolor sit amet") + 'Create instance for paragraph + Dim paragraph As IParagraph = paragraphs.Add(", consectetur adipiscing elit") + 'Get the specific paragraph instance, read only + Dim paragraph1 As IParagraph = paragraphs(0) + ' Set the hanging value + paragraph1.FirstLineIndent = 20 + 'Set the list level as 1 + paragraph1.IndentLevelNumber = 1 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents the alignment and anchoring of the text. + + + + + Adds a paragraph at the end of the paragraph collection. + + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a paragraph at the end of the collection. + + Represents the text content. + Returns an instance this method creates. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph("Add First Paragraph"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph("Add First Paragraph") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the distance between the bottom of the text body and the bottom of the rectangle shape that contains the text, in points. Value ranges from 1 to 1583. + + + The margin bottom of the TextBody. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Set the Margin bottom + textBody.MarginBottom = 100; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Set the Margin bottom + textBody.MarginBottom = 100 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the distance between the left edge of the text body and the left edge of the rectangle shape that contains the text, in points. Value ranges from 1 to 1583. + + + The margin left of the TextBody. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Set the Margin left + textBody.MarginLeft = 150; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Set the Margin left + textBody.MarginLeft = 130 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the distance between the right edge of the text body and the right edge of the rectangle shape that contains the text, in points. Value ranges from 1 to 1583. + + + The margin right of the TextBody. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Set the Margin right + textBody.MarginRight = 50; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Set the Margin right + textBody.MarginRight = 160 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the distance between the top of the text body and the top of the rectangle shape that contains the text, in points. Value ranges from 1 to 1583. + + + The margin top of the TextBody. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Set the Margin top + textBody.MarginTop = 140; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Set the Margin Top + textBody.MarginTop = 200 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance that represents the paragraph collection. Read-only. + + + The paragraphs object of the TextBody. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Retrieve the paragraph from text body + IParagraph paragraph = textBody.Paragraphs[0]; + //Add second text part to the first paragraph + paragraph.AddTextPart().Text = ",2nd text part in 1st paragraph"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Retrieve the paragraph from text body + Dim paragraph As IParagraph = textBody.Paragraphs(0) + 'Add second text part to the first paragraph + paragraph.AddTextPart().Text = ",2nd text part in 1st paragraph" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the text content of the text body. + + + The text of the TextBody. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Get the text of text body, read only + string text = textBody.Text; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Get the text of text body, read only + Dim text As String = textBody.Text + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value indicates whether lines break automatically to fit inside the shape. + + + true if [wrap text]; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Retrieve the paragraph from text body + IParagraph paragraph = textBody.Paragraphs[0]; + //Add second text part to the first paragraph + paragraph.AddTextPart().Text = ",2nd text part in 1st paragraph"; + //Set wrap text to fit the text within shape + textBody.WrapText = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Retrieve the paragraph from text body + Dim paragraph As IParagraph = textBody.Paragraphs(0) + 'Add second text part to the first paragraph + paragraph.AddTextPart().Text = ",2nd text part in 1st paragraph" + 'Set wrap text to fit the text within shape + textBody.WrapText = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the vertical alignment of text in a text body. + + + The vertical alignment type of the TextBody. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Retrieve the paragraph from text body + IParagraph paragraph = textBody.Paragraphs[0]; + //Add second text part to the first paragraph + paragraph.AddTextPart().Text = ",2nd text part in 1st paragraph"; + //Set vertical alignment + textBody.VerticalAlignment = VerticalAlignmentType.Middle; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Retrieve the paragraph from text body + Dim paragraph As IParagraph = textBody.Paragraphs(0) + 'Add second text part to the first paragraph + paragraph.AddTextPart().Text = ",2nd text part in 1st paragraph" + 'Set vertical alignment + textBody.VerticalAlignment = VerticalAlignmentType.Middle + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value indicates whether to anchor center with the vertical alignment. + + + true if [anchor center]; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Set anchor center to the textBody + textBody.AnchorCenter = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Set anchor center to the textBody + textBody.AnchorCenter = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the text direction. + + + The text direction type of the TextBody. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 350); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph(); + //Add first text part to the paragraph + textBody.Paragraphs[0].AddTextPart("Add First Paragraph"); + //Set the text direction + textBody.TextDirection = TextDirectionType.Horizontal; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 350) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph() + 'Add first text part to the paragraph + textBody.Paragraphs(0).AddTextPart("Add First Paragraph") + 'Set the text direction + textBody.TextDirection = TextDirectionType.Horizontal + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value indicates whether to enable shrink text on overflow + + + true if [ShrinkTextOnOverflow]; otherwise, false. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 50); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph + IParagraph paragraph1 = textBody.AddParagraph("Hi hello welcome to syncfusion."); + //Add second paragraph + IParagraph paragraph2 = textBody.AddParagraph("A warm welcome to the syncfusion with greedy hearts."); + //Set ShrinkTextOnOverflow to the textBody + textBody.FitTextOption = FitTextOption.ShrinkTextOnOverFlow; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 50) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph("Hi hello welcome to syncfusion.") + 'Add second paragraph + Dim paragraph1 As IParagraph = textBody.AddParagraph("A warm welcome to syncfusion with greedy hearts.") + 'Set ShrinkTextOnOverflow to the textBody + textBody.FitTextOption = FitTextOption.ShrinkTextOnOverFlow; + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents an individual text part in a paragraph. + + + + + Sets the hyperlink to the textpart. + + Represents the address of the target hyperlink + Returns an instance. + The target can be a document path, web url, target slide, email_id. + + + //Create a new presentation. + IPresentation presDoc = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph to text body + textBody.AddParagraph(); + //Create instance for text part + ITextPart textPart = textBody.Paragraphs[0].AddTextPart(); + //Set text for the text part + textPart.Text = "Syncfusion"; + //Set HyperLink for this textpart + IHyperLink hyperLink = textPart.SetHyperlink("www.syncfusion.com"); + //Save the presentation to the file system. + presDoc.Save("Output.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph to text body + textBody.AddParagraph() + 'Create instance for text part + Dim textPart As ITextPart = textBody.Paragraphs(0).AddTextPart() + 'Set text for the text part + textPart.Text = "Syncfusion" + 'Set HyperLink for this textpart + Dim hyperLink As IHyperLink = textPart.SetHyperlink("www.syncfusion.com") + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + + + + + + Removes the hyperlink from the current textpart. + + + + //Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Adds paragraph into the shape + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Adds text to the TextPart + paragraph.Text = "Google"; + //Set hyperlink to the TextPart + IHyperLink hyperLink = paragraph.TextParts[0].SetHyperlink("https://www.google.com"); + //Set screen tip to the hyperlink + hyperLink.ScreenTip = "This hyperlink navigates to Google site"; + //Remove the hyperlink. + paragraph.TextParts[0].RemoveHyperLink(); + //Save the presentation + ppDoc.Save("Sample.pptx"); + //Close the presentation + ppDoc.Close(); + + + 'Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Adds paragraph into the shape + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Adds text to the TextPart + paragraph.Text = "Google" + 'Set hyperlink to the TextPart + Dim hyperLink As IHyperLink = paragraph.TextParts(0).SetHyperlink("https://www.google.com") + 'Set screen tip to the hyperlink + hyperLink.ScreenTip = "This hyperlink navigates to Google site" + 'Remove the hyperlink + paragraph.TextParts(0).RemoveHyperLink() + 'Save the presentation + ppDoc.Save("Sample.pptx") + 'Close the presentation + ppDoc.Close() + + + + + + Gets an instance of the text part. Read-only. + + + The font of the TextPart. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph to text body + textBody.AddParagraph(); + //Create instance for text part + ITextPart textPart = textBody.Paragraphs[0].AddTextPart("FirstParagraph, first TextPart"); + //Create instance to hold font properties of text part + IFont font = textPart.Font; + //Set the bold style + font.Bold = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph to text body + textBody.AddParagraph() + 'Create instance for text part + Dim textPart As ITextPart = textBody.Paragraphs(0).AddTextPart("FirstParagraph, first TextPart") + 'Create instance to hold font properties of text part + Dim font As IFont = textPart.Font + 'Set the bold style + font.Bold = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the text content. + + + The text value of the TextPart. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph to text body + textBody.AddParagraph(); + //Create instance for text part + ITextPart textPart = textBody.Paragraphs[0].AddTextPart(); + //Set text for the text part + textPart.Text = "FirstParagraph, first TextPart"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph to text body + textBody.AddParagraph() + 'Create instance for text part + Dim textPart As ITextPart = textBody.Paragraphs(0).AddTextPart() + 'Set text for the text part + textPart.Text = "FirstParagraph, first TextPart" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the underline color for the text. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //create instance for text body from shape + ITextBody textBody = shape.TextBody; + //Add first paragraph to text body + textBody.AddParagraph(); + //Create instance for text part + ITextPart textPart = textBody.Paragraphs[0].AddTextPart(); + //Set text for the text part + textPart.Text = "FirstParagraph, first TextPart"; + IColor underlineColor = textPart.UnderlineColor; + //Set the text part underline color + underlineColor = ColorObject.Navy; + //Set underline type for text part + textPart.Font.Underline = TextUnderlineType.Double; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'create instance for text body from shape + Dim textBody As ITextBody = shape.TextBody + 'Add first paragraph to text body + textBody.AddParagraph() + 'Create instance for text part + Dim textPart As ITextPart = textBody.Paragraphs(0).AddTextPart() + 'Set text for the text part + textPart.Text = "FirstParagraph, first TextPart" + Dim underlineColor As IColor = textPart.UnderlineColor + 'Set the text part underline color + underlineColor = ColorObject.Navy + 'Set underline type for text part + textPart.Font.Underline = TextUnderlineType.[Double] + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns an instance that represents the hyperlink for the specified textpart. Read-only. + + + + //Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + //Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + //Add a rectangle to the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100); + //Adds paragraph into the shape + IParagraph paragraph = shape.TextBody.AddParagraph(); + //Adds text to the TextPart + paragraph.Text = "Google"; + //Set hyperlink to the TextPart + IHyperLink hyperLink = paragraph.TextParts[0].SetHyperlink("https://www.google.com"); + //Set screen tip to the hyperlink + hyperLink.ScreenTip = "This hyperlink navigates to Google site"; + //Remove the hyperlink. + paragraph.TextParts[0].RemoveHyperLink(); + //Save the presentation + ppDoc.Save("Sample.pptx"); + //Close the presentation + ppDoc.Close(); + + + 'Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a rectangle to the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 100, 100) + 'Adds paragraph into the shape + Dim paragraph As IParagraph = shape.TextBody.AddParagraph() + 'Adds text to the TextPart + paragraph.Text = "Google" + 'Set hyperlink to the TextPart + Dim hyperLink As IHyperLink = paragraph.TextParts(0).SetHyperlink("https://www.google.com") + 'Set screen tip to the hyperlink + hyperLink.ScreenTip = "This hyperlink navigates to Google site" + 'Save the presentation + ppDoc.Save("Sample.pptx") + 'Close the presentation + ppDoc.Close() + + + + + + Represents a collection of instance in a paragraph. + + + + + Adds a new instance to the text part collection. + + Returns the newly created instance. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add paragraph to the shape's text body + IParagraph paragraph = shape.TextBody.Paragraphs.Add(); + //Retrieve the text parts of a paragraph + ITextParts textParts = paragraph.TextParts; + //Add a text part to the collection + ITextPart textPart = textParts.Add(); + //Set text to text part + textPart.Text = "Reynold Xin, PhD student at UC Berkeley AMPLab"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add paragraph to the shape's text body + Dim paragraph As IParagraph = shape.TextBody.Paragraphs.Add() + 'Retrieve the text parts of a paragraph + Dim text parts As ITextParts = paragraph.TextParts + 'Add a text part to the collection + Dim text part As ITextPart = text parts.Add() + 'Set text to text part + text part.Text = "Reynold Xin, PhD student at UC Berkeley AMPLab" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified instance from the text part collection. + + Represents the instance to remove. + /// /// + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add paragraph to the shape's text body + IParagraph paragraph = shape.TextBody.Paragraphs.Add(); + //Retrieve the text parts of a paragraph + ITextParts textParts = paragraph.TextParts; + //Add text part to collection + textParts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab"); + //Add a text part to the collection + ITextPart textPart = textParts.Add(); + //Set text to text part + textPart.Text = "My Textpart"; + //Remove a particular text part from collection + textParts.Remove(textPart); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add paragraph to the shape's text body + Dim paragraph As IParagraph = shape.TextBody.Paragraphs.Add() + 'Retrieve the text parts of a paragraph + Dim text parts As ITextParts = paragraph.TextParts + 'Add text part to collection + text parts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab") + 'Add a text part to the collection + Dim text part As ITextPart = text parts.Add() + 'Set text to text part + text part.Text = "My Textpart" + 'Remove a particular text part from collection + text parts.Remove(text part) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the instance at the specified index of the text part collection. + + The zero-based index of the text part to be removed. + /// + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add paragraph to the shape's text body + IParagraph paragraph = shape.TextBody.Paragraphs.Add(); + //Retrieve the text parts of a paragraph + ITextParts textParts = paragraph.TextParts; + //Add text part to collection + textParts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab"); + //Add a text part to the collection + ITextPart textPart = textParts.Add(); + //Set text to text part + textPart.Text = "My Textpart"; + //Remove text part at specific index + textParts.RemoveAt(1); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add paragraph to the shape's text body + Dim paragraph As IParagraph = shape.TextBody.Paragraphs.Add() + 'Retrieve the text parts of a paragraph + Dim text parts As ITextParts = paragraph.TextParts + 'Add text part to collection + text parts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab") + 'Add a text part to the collection + Dim text part As ITextPart = text parts.Add() + 'Set text to text part + text part.Text = "My Textpart" + 'Remove text part at specific index + text parts.RemoveAt(1) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the instance within the collection. + + The instance to locate in the collection. + Returns the zero-based index of the first occurrence of instance within the collection, if found; otherwise, –1. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add paragraph to the shape's text body + IParagraph paragraph = shape.TextBody.Paragraphs.Add(); + //Retrieve the text parts of a paragraph + ITextParts textParts = paragraph.TextParts; + //Add text part to collection + textParts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab"); + //Add a text part to the collection + ITextPart textPart = textParts.Add(); + //Set text to text part + textPart.Text = "My Textpart"; + //Get the index position of a text part + int index = textParts.IndexOf(textPart); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add paragraph to the shape's text body + Dim paragraph As IParagraph = shape.TextBody.Paragraphs.Add() + 'Retrieve the text parts of a paragraph + Dim text parts As ITextParts = paragraph.TextParts + 'Add text part to collection + text parts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab") + 'Add a text part to the collection + Dim text part As ITextPart = text parts.Add() + 'Set text to text part + text part.Text = "My Textpart" + 'Get the index position of a text part + Dim index As Integer = text parts.IndexOf(text part) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes all the instance from text part collection. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add paragraph to the shape's text body + IParagraph paragraph = shape.TextBody.Paragraphs.Add(); + //Retrieve the text parts of a paragraph + ITextParts textParts = paragraph.TextParts; + //Add a text part to the collection + ITextPart textPart = textParts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab"); + //Clear the text parts + textParts.Clear(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add paragraph to the shape's text body + Dim paragraph As IParagraph = shape.TextBody.Paragraphs.Add() + 'Retrieve the text parts of a paragraph + Dim text parts As ITextParts = paragraph.TextParts + 'Add a text part to the collection + Dim text part As ITextPart = text parts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab") + 'Clear the text parts + text parts.Clear() + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds a new instance at the end of the text part collection with the specified text. + + Represents the text content to initialize the text part. + Returns the newly added instance. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add paragraph to the shape's text body + IParagraph paragraph = shape.TextBody.Paragraphs.Add(); + //Retrieve the text parts of a paragraph + ITextParts textParts = paragraph.TextParts; + //Add a text part to the collection + ITextPart textPart = textParts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add paragraph to the shape's text body + Dim paragraph As IParagraph = shape.TextBody.Paragraphs.Add() + 'Retrieve the text parts of a paragraph + Dim text parts As ITextParts = paragraph.TextParts + 'Add a text part to the collection + Dim text part As ITextPart = text parts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns a boolean value indicates whether the specified text content is in the text part collection or not. + + The text to locate in the text part collection. + Returns true if text founds in the collection otherwise false + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add paragraph to the shape's text body + IParagraph paragraph = shape.TextBody.Paragraphs.Add(); + //Retrieve the text parts of a paragraph + ITextParts textParts = paragraph.TextParts; + //Add text part to collection + textParts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab"); + //Add a text part to the collection + ITextPart textPart = textParts.Add(); + //Set text to text part + textPart.Text = "My Textpart"; + //Check if text exist in the text part collection + if (textParts.Contains("My Textpart")) + textParts.RemoveAt(1); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add paragraph to the shape's text body + Dim paragraph As IParagraph = shape.TextBody.Paragraphs.Add() + 'Retrieve the text parts of a paragraph + Dim text parts As ITextParts = paragraph.TextParts + 'Add text part to collection + text parts.Add("Reynold Xin, PhD student at UC Berkeley AMPLab") + 'Add a text part to the collection + Dim text part As ITextPart = text parts.Add() + 'Set text to text part + text part.Text = "My Textpart" + 'Check if text exist in the text part collection + If text parts.Contains("My Textpart") Then + text parts.RemoveAt(1) + End If + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the text part collection. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add paragraph to the shape's text body + IParagraph paragraph = shape.TextBody.Paragraphs.Add(); + //Retrieve the text parts of a paragraph + ITextParts textParts = paragraph.TextParts; + //Add a text part to the collection + ITextPart textPart = textParts.Add(); + //Set text to text part + textPart.Text = "Reynold Xin, PhD student at UC Berkeley AMPLab"; + //Add text part to paragraph + shape.TextBody.Paragraphs[0].AddTextPart("First Paragraph, second TextPart"); + //Get the count of the text parts, read only + int count = textParts.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add paragraph to the shape's text body + Dim paragraph As IParagraph = shape.TextBody.Paragraphs.Add() + 'Retrieve the text parts of a paragraph + Dim text parts As ITextParts = paragraph.TextParts + 'Add a text part to the collection + Dim text part As ITextPart = text parts.Add() + 'Set text to text part + text part.Text = "Reynold Xin, PhD student at UC Berkeley AMPLab" + 'Add text part to paragraph + shape.TextBody.Paragraphs(0).AddTextPart("First Paragraph, second TextPart") + 'Get the count of the text parts, read only + Dim count As Integer = text parts.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance at the specified index of the collection. Read-only. + + Determines the index of the text part. + Returns an instance. + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a blank slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a text box to the slide + IShape shape = slide.Shapes.AddTextBox(100, 150, 300, 200); + //Add paragraph to the shape's text body + IParagraph paragraph = shape.TextBody.Paragraphs.Add(); + //Retrieve the text parts of a paragraph + ITextParts textParts = paragraph.TextParts; + //Add a text part to the collection + ITextPart textPart = textParts.Add(); + //Set text to text part + textPart.Text = "Reynold Xin, PhD student at UC Berkeley AMPLab"; + //Add text part to paragraph + shape.TextBody.Paragraphs[0].AddTextPart(); + //Retrieve the text part using index position + ITextPart _textPart = textParts[1]; + //Set the font name for text part + _textPart.Font.FontName = "Calibri"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a blank slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to the slide + Dim shape As IShape = slide.Shapes.AddTextBox(100, 150, 300, 200) + 'Add paragraph to the shape's text body + Dim paragraph As IParagraph = shape.TextBody.Paragraphs.Add() + 'Retrieve the text parts of a paragraph + Dim text parts As ITextParts = paragraph.TextParts + 'Add a text part to the collection + Dim text part As ITextPart = text parts.Add() + 'Set text to text part + text part.Text = "Reynold Xin, PhD student at UC Berkeley AMPLab" + 'Add text part to paragraph + shape.TextBody.Paragraphs(0).AddTextPart() + 'Retrieve the text part using index position + Dim _text part As ITextPart = text parts(1) + 'Set the font name for text part + _text part.Font.FontName = "Calibri" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represent a selection of text inside paragraph. + + + + + Gets the selected text parts. + + Array of TextParts + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + ITextSelection textSelection = presentation.Find("World", false, false); + // Gets the found text containing text parts + foreach (ITextPart textPart in textSelection.GetTextParts()) + { + //Sets Bold property + textPart.Font.Bold = true; + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds the text from the Presentation document + Dim textSelection As ITextSelection = presentation.Find("World", False, False) + 'Gets the text parts from the selection + For Each textPart As ITextPart In textSelection.GetTextParts() + textPart.Font.Bold = True + Next + presentation.Save("Output.pptx") + presentation.Close() + + + + + + Gets as one text part. + + TextPart + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + // Finds the text from the mentioned slide + ITextSelection[] textSelections = slide.FindAll("World", false, false); + foreach (ITextSelection textSelection in textSelections) + { + //Gets the found text as single text part + ITextPart textPart = textSelection.GetAsOneTextPart(); + //Replace the text + textPart.Text = "Replaced text"; + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds the text from the mentioned slide + Dim textSelections As ITextSelection() = slide.FindAll("World", False, False) + 'Gets the found text as single text part and replace it + For Each textSelection As ITextSelection In textSelections + Dim textPart As ITextPart = textSelection.GetAsOneTextPart() + textPart.Text = "Replaced text" + Next + presentation.Save("Output.pptx") + presentation.Close() + + + + + + Gets the selected text. Read-only. + + The string that represents the selected text. + + string that contains the selected text. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + // Finds the text from the Presentation document + ITextSelection textSelection = presentation.Find("World", false, false); + // Gets the selected text from the text selection + string text = textSelection.SelectedText; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds the text from the Presentation document + Dim textSelection As ITextSelection = presentation.Find("World", False, False) + 'Gets the selected text from the text selection + Dim text As String = textSelection.SelectedText + presentation.Save("Output.pptx") + presentation.Close() + + + + + + Gets the string at the specified index from the + collection. + + The zero-based index of the string to get. + The string at the specified collection. + + string that contains the selected text from the specified index. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + // Finds all the text from the Presentation document + ITextSelection[] textSelections = presentation.FindAll("World", false, false); + string text = textSelections[0].SelectedText; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds all the text from the Presentation document + Dim textSelections As ITextSelection() = presentation.FindAll("World", False, False) + 'Gets the selected text from the text selections index + Dim text As String = textSelections(0).SelectedText + presentation.Save("Output.pptx") + presentation.Close() + + + + + + Gets the number of text chunks in the collection. Read-only. + + The count. + + integer value that represents the number of text chunks. + + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + ITextSelection textSelection = presentation.Find("World", false, false); + int count = textSelection.Count; + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim presentation As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds the text from the Presentation document + Dim textSelection As ITextSelection = presentation.Find("World", False, False) + 'Gets the selected text from the text selections index + Dim count As Integer = textSelection.Count + presentation.Save("Output.pptx") + presentation.Close() + + + + + + Represents the table cell. + + + + + Creates a copy of the current cell. + + Returns the cloned cell object + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Gets the first column cell. + ICell cell = table.Columns[0].Cells[0]; + //Clone the cell element. + ICell clonedCell = cell.Clone(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Gets the first column cell. + Dim cell As ICell = table.Columns(0).Cells(0) + 'Clone the cell element. + Dim clonedCell As ICell = cell.Clone() + 'Saves the Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the presentation. + pptxDoc.Close() + + + + + + Gets an instance that represents the borders and diagonal lines of a cell. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Get the cell border properties, read only + ICellBorders cellBorders = cell.CellBorders; + //Set the Cell border property + cellBorders.BorderBottom.BeginArrowheadLength = ArrowheadLength.Medium; + //Save the presentation + presentation.Save("CellBorders.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Get the cell border properties, read only + Dim cellBorders As ICellBorders = cell.CellBorders + 'Set the Cell border property + cellBorders.BorderBottom.BeginArrowheadLength = ArrowheadLength.Medium + 'Save the presentation + presentation__1.Save("CellBorders.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the number of cells merged in a row. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Set the column span + cell.ColumnSpan = 2; + //Save the presentation + presentation.Save("ColumnSpan.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Set the column span + cell.ColumnSpan = 2 + 'Save the presentation + presentation__1.Save("ColumnSpan.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the column width in points. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Set the column width + cell.ColumnWidth = 40; + //Save the presentation + presentation.Save("ColumnWidth.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Set the column width + cell.ColumnWidth = 40 + 'Save the presentation + presentation__1.Save("ColumnWidth.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance that contains fill formatting options. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Set the fill type of the cell as solid + cell.Fill.FillType = FillType.Solid; + //Set color for the solid fill + cell.Fill.SolidFill.Color = ColorObject.FromArgb(10, 34, 89, 32); + //Save the presentation + presentation.Save("CellFill.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Set the fill type of the cell as solid + cell.Fill.FillType = FillType.Solid + 'Set color for the solid fill + cell.Fill.SolidFill.Color = ColorObject.FromArgb(10, 34, 89, 32) + 'Save the presentation + presentation__1.Save("CellFill.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets whether this cell is part of a horizontally merged cells. Read-only. + + + true if horizontal merge; otherwise, false. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Set the column span + cell.ColumnSpan = 2; + //Check if it is horizontal merge, it is read only + bool horizontalMerge = cell.IsHorizontalMerge; + //Save the presentation + presentation.Save("HorizontalMerge.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Set the column span + cell.ColumnSpan = 2 + 'Check if it is horizontal merge, it is read only + Dim horizontalMerge As Boolean = cell.IsHorizontalMerge + 'Save the presentation + presentation__1.Save("HorizontalMerge.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the number of cells merged in a column. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Set the row span + cell.RowSpan = 2; + //Save the presentation + presentation.Save("RowSpan.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Set the row span + cell.RowSpan = 2 + 'Save the presentation + presentation__1.Save("RowSpan.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance that represents the text in a paragraph. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Set the text content for the cell + cell.TextBody.AddParagraph("First row First Cell"); + //Save the presentation + presentation.Save("CellTextBody.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Set the text content for the cell + cell.TextBody.AddParagraph("First row First Cell") + 'Save the presentation + presentation__1.Save("CellTextBody.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets whether this cell is part of a vertically merged cells. Read-only. + + + true if vertical merge; otherwise, false. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Set the column span + cell.ColumnSpan = 2; + //Check if it is vertical merge, it is read only + bool verticalMerge = cell.IsVerticalMerge; + //Save the presentation + presentation.Save("VerticalMerge.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Set the column span + cell.ColumnSpan = 2 + 'Check if it is vertical merge, it is read only + Dim verticalMerge As Boolean = cell.IsVerticalMerge + 'Save the presentation + presentation__1.Save("VerticalMerge.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represent the borders and diagonal lines of a cell. + + + + + Gets the bottom border of the cell. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Get the cell border properties + ICellBorders cellBorders = cell.CellBorders; + //Get the border bottom of the cell, read only + ILineFormat borderBottom = cellBorders.BorderBottom; + //Set the begin arrow head length + borderBottom.BeginArrowheadLength = ArrowheadLength.Long; + //Set the dash style of border bottom + borderBottom.DashStyle = LineDashStyle.DashDotDot; + //Set the weight + borderBottom.Weight = 5; + //Save the presentation + presentation.Save("BorderBottom.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Get the cell border properties + Dim cellBorders As ICellBorders = cell.CellBorders + 'Get the border bottom of the cell, read only + Dim borderBottom As ILineFormat = cellBorders.BorderBottom + 'Set the begin arrow head length + borderBottom.BeginArrowheadLength = ArrowheadLength.[Long] + 'Set the dash style of border bottom + borderBottom.DashStyle = LineDashStyle.DashDotDot + 'Set the weight + borderBottom.Weight = 5 + 'Save the presentation + presentation__1.Save("BorderBottom.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the diagonal down border of the cell. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Get the cell border properties + ICellBorders cellBorders = cell.CellBorders; + //Get the border diagonal down of the cell, read only + ILineFormat borderDiagonalDown = cellBorders.BorderDiagonalDown; + //Set the fill type of border diagonal down + borderDiagonalDown.Fill.FillType = FillType.Solid; + //Set the color for solid fill + borderDiagonalDown.Fill.SolidFill.Color = ColorObject.Navy; + //Save the presentation + presentation.Save("BorderDiagonalDown.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Get the cell border properties + Dim cellBorders As ICellBorders = cell.CellBorders + 'Get the border diagonal down of the cell, read only + Dim borderDiagonalDown As ILineFormat = cellBorders.BorderDiagonalDown + 'Set the fill type of border diagonal down + borderDiagonalDown.Fill.FillType = FillType.Solid + 'Set the color for solid fill + borderDiagonalDown.Fill.SolidFill.Color = ColorObject.Navy + 'Save the presentation + presentation__1.Save("BorderDiagonalDown.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the diagonal up border of the cell. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Get the cell border properties + ICellBorders cellBorders = cell.CellBorders; + //Get the border diagonal up of the cell, read only + ILineFormat borderDiagonalUp = cellBorders.BorderDiagonalUp; + //Set the end arrow head style of border diagonal up + borderDiagonalUp.EndArrowheadStyle = ArrowheadStyle.ArrowOpen; + //Save the presentation + presentation.Save("BorderDiagonalUp.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Get the cell border properties + Dim cellBorders As ICellBorders = cell.CellBorders + 'Get the border diagonal up of the cell, read only + Dim borderDiagonalUp As ILineFormat = cellBorders.BorderDiagonalUp + 'Set the end arrow head style of border diagonal up + borderDiagonalUp.EndArrowheadStyle = ArrowheadStyle.ArrowOpen + 'Save the presentation + presentation__1.Save("BorderDiagonalUp.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the left border of the cell. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Get the cell border properties + ICellBorders cellBorders = cell.CellBorders; + //Get the border left of the cell, read only + ILineFormat borderLeft = cellBorders.BorderLeft; + //Set the end arrow head width + borderLeft.EndArrowheadWidth = ArrowheadWidth.Narrow; + //Set the cap style + borderLeft.CapStyle = LineCapStyle.Round; + //Save the presentation + presentation.Save("BorderLeft.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Get the cell border properties + Dim cellBorders As ICellBorders = cell.CellBorders + 'Get the border left of the cell, read only + Dim borderLeft As ILineFormat = cellBorders.BorderLeft + 'Set the end arrow head width + borderLeft.EndArrowheadWidth = ArrowheadWidth.Narrow + 'Set the cap style + borderLeft.CapStyle = LineCapStyle.Round + 'Save the presentation + presentation__1.Save("BorderLeft.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the right border of the cell. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Get the cell border properties + ICellBorders cellBorders = cell.CellBorders; + //Get the border right of the cell, read only + ILineFormat borderRight = cellBorders.BorderRight; + //Set the end arrow head style of border right + borderRight.EndArrowheadStyle = ArrowheadStyle.ArrowStealth; + //Save the presentation + presentation.Save("BorderRight.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Get the cell border properties + Dim cellBorders As ICellBorders = cell.CellBorders + 'Get the border right of the cell, read only + Dim borderRight As ILineFormat = cellBorders.BorderRight + 'Set the end arrow head style of border right + borderRight.EndArrowheadStyle = ArrowheadStyle.ArrowStealth + 'Save the presentation + presentation__1.Save("BorderRight.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the top border of the cell. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200); + //Get the cell from a row in a table + ICell cell = table.Rows[0].Cells[0]; + //Get the cell border properties + ICellBorders cellBorders = cell.CellBorders; + //Get the border top of the cell, read only + ILineFormat borderTop = cellBorders.BorderTop; + //Set the begin arrow head width of border top + borderTop.BeginArrowheadWidth = ArrowheadWidth.Wide; + //Set the line type of border top + borderTop.LineJoinType = LineJoinType.Miter; + //Save the presentation + presentation.Save("BorderTop.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 3, 100, 120, 300, 200) + 'Get the cell from a row in a table + Dim cell As ICell = table.Rows(0).Cells(0) + 'Get the cell border properties + Dim cellBorders As ICellBorders = cell.CellBorders + 'Get the border top of the cell, read only + Dim borderTop As ILineFormat = cellBorders.BorderTop + 'Set the begin arrow head width of border top + borderTop.BeginArrowheadWidth = ArrowheadWidth.Wide + 'Set the line type of border top + borderTop.LineJoinType = LineJoinType.Miter + 'Save the presentation + presentation__1.Save("BorderTop.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents a collection of objects in a table. + + + + + Gets the number of cells in the row or column. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200); + //Create instance to hold the cell collection from the table + ICells cells = table.Rows[0].Cells; + //Get the count of cells, read only + int count = cells.Count; + //Save the presentation + presentation.Save("Cells.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200) + 'Create instance to hold the cell collection from the table + Dim cells As ICells = table.Rows(0).Cells + 'Get the count of cells, read only + Dim count As Integer = cells.Count + 'Save the presentation + presentation__1.Save("Cells.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance at the specified index from the row or column. Read-only. + + The zero-based index of the element. + Returns the cell at the particular index if found otherwise -1. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200); + //Create instance to hold the cell collection from the table + ICells cells = table.Rows[0].Cells; + //Get the specific cell from the collection, read only + ICell cell = cells[0]; + //Add text content to cell + cell.TextBody.AddParagraph("First row, first cell"); + //Save the presentation + presentation.Save("Cells.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200) + 'Create instance to hold the cell collection from the table + Dim cells As ICells = table.Rows(0).Cells + 'Get the specific cell from the collection, read only + Dim cell As ICell = cells(0) + 'Add text content to cell + cell.TextBody.AddParagraph("First row, first cell") + 'Save the presentation + presentation__1.Save("Cells.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents the row in a table. + + + + + Creates a copy of the current row. + + Returns the cloned row object + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Clone the row element. + IRow row = table.Rows[0].Clone(); + //Add text content to the cell. + row.Cells[0].TextBody.Text = "Cloned row"; + //Add row to the collection + table.Rows.Add(row); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Clone the row element. + Dim row As IRow = table.Rows(0).Clone() + 'Add text content to the cell. + row.Cells(0).TextBody.Text = "Cloned row" + 'Add row to the collection + table.Rows.Add(row) + 'Saves the Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the presentation. + pptxDoc.Close() + + + + + + Gets an instance that represents the cell collection. Read-only + + + The cells. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row from row collection + IRow row = table.Rows[0]; + //Get the cell collection from the row, read only + ICells cells = row.Cells; + //Set the text content for cells in row + cells[0].TextBody.AddParagraph("First row, First Column"); + cells[1].TextBody.AddParagraph("First row, Second Column"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row from row collection + Dim row As IRow = table.Rows(0) + 'Get the cell collection from the row, read only + Dim cells As ICells = row.Cells + 'Set the text content for cells in row + cells(0).TextBody.AddParagraph("First row, First Column") + cells(1).TextBody.AddParagraph("First row, Second Column") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets height of the row, in points. + + + The height. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row from row collection + IRow row = table.Rows[0]; + //Set the height of the row + row.Height = 40; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row from row collection + Dim row As IRow = table.Rows(0) + 'Set the height of the row + row.Height = 40 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents a collection of objects in a table. + + + + + Adds a new row at the end of the row collection. + + Returns the newly added instance. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row collection from table + IRows rows = table.Rows; + //Add row to the collection + rows.Add(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row collection from table + Dim rows As IRows = table.Rows + 'Add row to the collection + rows.Add() + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds the specified row at the end of the row collection. + + Represents an instance to be added. + Returns the zero-based index of the newly added row object in the row collection. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row collection from table + IRows rows = table.Rows; + //Retrieve a single row from the row collection, read only + IRow row = table.Rows[0]; + //Add a specific row to the collection + rows.Add(row); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row collection from table + Dim rows As IRows = table.Rows + 'Retrieve a single row from the row collection, read only + Dim row As IRow = table.Rows(0) + 'Add a specific row to the collection + rows.Add(row) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Inserts the specified row at specified index in the table. + + The zero-based index at which the row should be inserted. + The row instance to insert. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve a single row from the row collection, read only + IRow row = table.Rows[0]; + //Set fill type for the cell in a row + row.Cells[0].Fill.FillType = FillType.Solid; + //Set color of the solid fill + row.Cells[0].Fill.SolidFill.Color = ColorObject.SaddleBrown; + //Get the row collection from table + IRows rows = table.Rows; + //Insert row at index 2 + rows.Insert(2, row); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve a single row from the row collection, read only + Dim row As IRow = table.Rows(0) + 'Set fill type for the cell in a row + row.Cells(0).Fill.FillType = FillType.Solid + 'Set color of the solid fill + row.Cells(0).Fill.SolidFill.Color = ColorObject.SaddleBrown + 'Insert row at index 2 + rows.Insert(2, row) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the row at the specified index of the row collection. + + The zero-based index of the row to remove. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 2, 100, 120, 300, 200); + //Get the row collection from table + IRows rows = table.Rows; + //Remove a specific row instance + rows.RemoveAt(0); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 2, 100, 120, 300, 200) + 'Remove a specific row instance + rows.RemoveAt(0) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified row from the row collection. + + The row object to be removed from the collection. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve a single row from the row collection, read only + IRow row = table.Rows[0]; + //Get the row collection from table + IRows rows = table.Rows; + //Remove a specific row instance + rows.Remove(row); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve a single row from the row collection, read only + Dim row As IRow = table.Rows(0) + 'Remove a specific row instance + rows.Remove(row) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the instance within the collection. + + The instance to locate in the collection. + Returns the zero-based index of the first occurrence of row instance within the collection, if found; otherwise, –1. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row collection from table + IRows rows = table.Rows; + //Retrieve a single row from the row collection, read only + IRow row = table.Rows[0]; + //Add a specific row to the collection + rows.Add(row); + //Get the index of a specific row from the collection + int index = rows.IndexOf(row); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row collection from table + Dim rows As IRows = table.Rows + 'Retrieve a single row from the row collection, read only + Dim row As IRow = table.Rows(0) + 'Add a specific row to the collection + rows.Add(row) + 'Get the index of a specific row from the collection + Dim index As Integer = rows.IndexOf(row) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes all the elements from row collection. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row collection from table + IRows rows = table.Rows; + //Retrieve a single row from the row collection, read only + IRow row = table.Rows[0]; + //Add a specific row to the collection + rows.Add(row); + //Clear the row collection + rows.Clear(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row collection from table + Dim rows As IRows = table.Rows + 'Retrieve a single row from the row collection, read only + Dim row As IRow = table.Rows(0) + 'Add a specific row to the collection + rows.Add(row) + 'Clear the row collection + rows.Clear() + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the rows collection. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row collection from table + IRows rows = table.Rows; + //Retrieve a single row from the row collection, read only + IRow row = table.Rows[0]; + //Add a specific row to the collection + rows.Add(row); + //Get the count of row collection, read only + int count = rows.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row collection from table + Dim rows As IRows = table.Rows + 'Retrieve a single row from the row collection, read only + Dim row As IRow = table.Rows(0) + 'Add a specific row to the collection + rows.Add(row) + 'Get the count of row collection, read only + Dim count As Integer = rows.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance at the specified index from the row collection. Read-only. + + Specifies the index of the row to locate. + Returns an instance. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row from row collection + IRow row = table.Rows[0]; + //Set the height of the row + row.Height = 30; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row from row collection + Dim row As IRow = table.Rows(0) + 'Set the height of the row + row.Height = 30 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents the table in a slide. + + + + + Gets the dynamic height of the table. + + + + //Create instance of PowerPoint presentation + IPresentation presDoc = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 10); + //Set the text content for specific cell in a row + table.Rows[0].Cells[0].TextBody.AddParagraph("Hello World"); + //Get the dynamic height of the table + float height = table.GetActualHeight(); + //Save the presentation + presDoc.Save("Sample.pptx"); + //Close the presentation + presDoc.Close(); + + /// + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Open Table in the slide to make changes + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 10) + ‘Set the text content for specific cell in a row + table.Rows[0].Cells[0].TextBody.AddParagraph("Hello World"); + ‘Get the dynamic height of table + Dim height As float = table.GetActualHeight() + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + /// + + + + + Inserts the column at the specified index position of the table + + The index position to insert the column + + + //Create instance of PowerPoint presentation + IPresentation presDoc = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Insert the column at the specified index position + table.InsertColumn(1); + //Save the presentation + presDoc.Save("Sample.pptx"); + //Close the presentation + presDoc.Close(); + + + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + ‘Insert the column at the specified index position + table.InsertColumn(1); + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + /// + + + + + Gets or sets a boolean value indicates whether to display special formatting for the first column. + + + true if this instance has first column; otherwise, false. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve each cell and fill text content to the cell, it is read only + ICell cell = table[0, 0]; + cell.TextBody.AddParagraph("First Row and First Column"); + cell = table[0, 1]; + cell.TextBody.AddParagraph("First Row and Second Column"); + cell = table[1, 0]; + cell.TextBody.AddParagraph("Second Row and First Column"); + cell = table[1, 1]; + cell.TextBody.AddParagraph("Second Row and Second Column"); + //Set the table has first column + table.HasFirstColumn = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve each cell and fill text content to the cell, it is read only + Dim cell As ICell = table(0, 0) + cell.TextBody.AddParagraph("First Row and First Column") + cell = table(0, 1) + cell.TextBody.AddParagraph("First Row and Second Column") + cell = table(1, 0) + cell.TextBody.AddParagraph("Second Row and First Column") + cell = table(1, 1) + cell.TextBody.AddParagraph("Second Row and Second Column") + 'Set the table has first column + table.HasFirstColumn = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value indicates whether to display special formatting for the first row. + + + true if this instance has header row; otherwise, false. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve each cell and fill text content to the cell, it is read only + ICell cell = table[0, 0]; + cell.TextBody.AddParagraph("First Row and First Column"); + cell = table[0, 1]; + cell.TextBody.AddParagraph("First Row and Second Column"); + cell = table[1, 0]; + cell.TextBody.AddParagraph("Second Row and First Column"); + cell = table[1, 1]; + cell.TextBody.AddParagraph("Second Row and Second Column"); + //Set the header row + table.HasHeaderRow = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve each cell and fill text content to the cell, it is read only + Dim cell As ICell = table(0, 0) + cell.TextBody.AddParagraph("First Row and First Column") + cell = table(0, 1) + cell.TextBody.AddParagraph("First Row and Second Column") + cell = table(1, 0) + cell.TextBody.AddParagraph("Second Row and First Column") + cell = table(1, 1) + cell.TextBody.AddParagraph("Second Row and Second Column") + 'Set the table has header row + table.HasHeaderRow = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value indicates whether to display banded rows, in which even rows are formatted differently from odd rows. + + + true if this instance has banded rows; otherwise, false. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve each cell and fill text content to the cell, it is read only + ICell cell = table[0, 0]; + cell.TextBody.AddParagraph("First Row and First Column"); + cell = table[0, 1]; + cell.TextBody.AddParagraph("First Row and Second Column"); + cell = table[1, 0]; + cell.TextBody.AddParagraph("Second Row and First Column"); + cell = table[1, 1]; + cell.TextBody.AddParagraph("Second Row and Second Column"); + //Set horizontal banding for the table + table.HasBandedRows = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve each cell and fill text content to the cell, it is read only + Dim cell As ICell = table(0, 0) + cell.TextBody.AddParagraph("First Row and First Column") + cell = table(0, 1) + cell.TextBody.AddParagraph("First Row and Second Column") + cell = table(1, 0) + cell.TextBody.AddParagraph("Second Row and First Column") + cell = table(1, 1) + cell.TextBody.AddParagraph("Second Row and Second Column") + 'Set horizontal banding for the table + table.HasBandedRows = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value indicates whether to display special formatting for the last column. + + + true if this instance has last column; otherwise, false. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve each cell and fill text content to the cell, it is read only + ICell cell = table[0, 0]; + cell.TextBody.AddParagraph("First Row and First Column"); + cell = table[0, 1]; + cell.TextBody.AddParagraph("First Row and Second Column"); + cell = table[1, 0]; + cell.TextBody.AddParagraph("Second Row and First Column"); + cell = table[1, 1]; + cell.TextBody.AddParagraph("Second Row and Second Column"); + //Set the last column + table.HasLastColumn = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve each cell and fill text content to the cell, it is read only + Dim cell As ICell = table(0, 0) + cell.TextBody.AddParagraph("First Row and First Column") + cell = table(0, 1) + cell.TextBody.AddParagraph("First Row and Second Column") + cell = table(1, 0) + cell.TextBody.AddParagraph("Second Row and First Column") + cell = table(1, 1) + cell.TextBody.AddParagraph("Second Row and Second Column") + 'Set the table has last column + table.HasLastColumn = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value indicates whether to display special formatting for the last row of the specified table. + + + true if this instance has total row; otherwise, false. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve each cell and fill text content to the cell, it is read only + ICell cell = table[0, 0]; + cell.TextBody.AddParagraph("First Row and First Column"); + cell = table[0, 1]; + cell.TextBody.AddParagraph("First Row and Second Column"); + cell = table[1, 0]; + cell.TextBody.AddParagraph("Second Row and First Column"); + cell = table[1, 1]; + cell.TextBody.AddParagraph("Second Row and Second Column"); + //Set the total row + table.HasTotalRow = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve each cell and fill text content to the cell, it is read only + Dim cell As ICell = table(0, 0) + cell.TextBody.AddParagraph("First Row and First Column") + cell = table(0, 1) + cell.TextBody.AddParagraph("First Row and Second Column") + cell = table(1, 0) + cell.TextBody.AddParagraph("Second Row and First Column") + cell = table(1, 1) + cell.TextBody.AddParagraph("Second Row and Second Column") + 'Set the table has total row + table.HasTotalRow = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance that represents the row collection. Read-only. + + + The rows. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row collection from the table, it is read only + IRows rows = table.Rows; + //Set the text content for specific cell in a row + rows[0].Cells[0].TextBody.AddParagraph("Row - 1, Column - 1"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row collection from the table, it is read only + Dim rows As IRows = table.Rows + 'Set the text content for specific cell in a row + rows(0).Cells(0).TextBody.AddParagraph("Row - 1, Column - 1") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance that represents the column collection. Read-only. + + + The columns. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row collection from the table, it is read only + IColumns columns = table.Columns; + //Set the text content for specific cell in a column + columns[0].Cells[0].TextBody.AddParagraph("Column - 1, Row - 1"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row collection from the table, it is read only + Dim columns As IColumns = table.Columns + 'Set the text content for specific cell in a column + columns(0).Cells(0).TextBody.AddParagraph("Column - 1, Row - 1") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a instance that represents the table style. + + + The built in style. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the row collection from the table, it is read only + IRows rows = table.Rows; + //Set the text content for specific cell in a row + rows[0].Cells[0].TextBody.AddParagraph("Row - 1, Column - 1"); + //Set the builtin style for the table + table.BuiltInStyle = BuiltInTableStyle.MediumStyle2Accent6; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the row collection from the table, it is read only + Dim rows As IRows = table.Rows + 'Set the text content for specific cell in a row + rows(0).Cells(0).TextBody.AddParagraph("Row - 1, Column - 1") + 'Set the builtin style for the table + table.BuiltInStyle = BuiltInTableStyle.MediumStyle2Accent6 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets a boolean value indicates whether to display banded columns, in which even columns are formatted differently from odd columns. + + + true if this instance has banded columns; otherwise, false. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve each cell and fill text content to the cell, it is read only + ICell cell = table[0, 0]; + cell.TextBody.AddParagraph("First Row and First Column"); + cell = table[0, 1]; + cell.TextBody.AddParagraph("First Row and Second Column"); + cell = table[1, 0]; + cell.TextBody.AddParagraph("Second Row and First Column"); + cell = table[1, 1]; + cell.TextBody.AddParagraph("Second Row and Second Column"); + //Set vertical banding for the table + table.HasBandedColumns = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve each cell and fill text content to the cell, it is read only + Dim cell As ICell = table(0, 0) + cell.TextBody.AddParagraph("First Row and First Column") + cell = table(0, 1) + cell.TextBody.AddParagraph("First Row and Second Column") + cell = table(1, 0) + cell.TextBody.AddParagraph("Second Row and First Column") + cell = table(1, 1) + cell.TextBody.AddParagraph("Second Row and Second Column") + 'Set vertical banding for the table + table.HasBandedColumns = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a single instance from the table. Read-only. + + Determines the row index. + Determines the column index. + Returns an instance. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve each cell and fill text content to the cell, it is read only + ICell cell = table[0, 0]; + cell.TextBody.AddParagraph("First Row and First Column"); + cell = table[0, 1]; + cell.TextBody.AddParagraph("First Row and Second Column"); + cell = table[1, 0]; + cell.TextBody.AddParagraph("Second Row and First Column"); + cell = table[1, 1]; + cell.TextBody.AddParagraph("Second Row and Second Column"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Retrieve each cell and fill text content to the cell, it is read only + Dim cell As ICell = table(0, 0) + cell.TextBody.AddParagraph("First Row and First Column") + cell = table(0, 1) + cell.TextBody.AddParagraph("First Row and Second Column") + cell = table(1, 0) + cell.TextBody.AddParagraph("Second Row and First Column") + cell = table(1, 1) + cell.TextBody.AddParagraph("Second Row and Second Column") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the total number of columns in the table. + + + + //Create instance of PowerPoint presentation + IPresentation presDoc = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presDoc.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the total number of columns in the table + int columnsCount = table.ColumnsCount; + //Save the presentation + presDoc.Save("Sample.pptx"); + //Close the presentation + presDoc.Close(); + + /// + Dim presDoc As IPresentation = Presentation.Create() + ‘Add slide to the presentation + Dim slide As ISlide = presDoc.Slides.Add(SlideLayoutType.Blank) + ‘Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + ‘Get the total number of columns in the table + Dim columnsCount As Integer = table.ColumnsCount + ‘Save the presentation + presDoc.Save("Sample.pptx") + ‘Close the presentation + presDoc.Close() + /// + + + + + Represents a collection of instance. + + + + + Adds a table to the shape collection with the specified number of rows and columns. The valid range is 1 to 75. + + Specifies the row count of the table. The valid range is 1 to 75. + Specifies the column count of the table. The valid range is 1 to 75. + Represents the left position, in points. The Left value ranges from -169056 to 169056. + Represents the top position, in points. The Top value ranges from -169056 to 169056. + Represents the width, in points. The Width value ranges from 0 to 169056. + Represents the height, in points. The Height value ranges from 0 to 169056. + Returns the instance that represents the newly created table. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold table collection in a slide + ITables tables = slide.Tables; + //Add tables to the table collection + ITable table = tables.AddTable(2, 2, 100, 120, 300, 200); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold table collection in a slide + Dim tables As ITables = slide.Tables + 'Add tables to the table collection + Dim table As ITable = tables.AddTable(2, 2, 100, 120, 300, 200) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the instance within the collection. + + The instance to locate in the collection. + Returns the zero-based index of the first occurrence of table within the collection, if found; otherwise, –1. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold table collection in a slide + ITables tables = slide.Tables; + //Add tables to the table collection + ITable table = tables.AddTable(2, 2, 100, 120, 300, 200); + tables.AddTable(1, 1, 300, 200, 100, 100); + tables.AddTable(1, 1, 400, 30, 100, 100); + //Get the index of a specific table + int index = tables.IndexOf(table); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold table collection in a slide + Dim tables As ITables = slide.Tables + 'Add tables to the table collection + Dim table As ITable = tables.AddTable(2, 2, 100, 120, 300, 200) + tables.AddTable(1, 1, 300, 200, 100, 100) + tables.AddTable(1, 1, 400, 30, 100, 100) + 'Get the index of a specific table + Dim index As Integer = tables.IndexOf(table) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified table from the table collection. + + The table object to be removed from the collection. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold table collection in a slide + ITables tables = slide.Tables; + //Add tables to the table collection + ITable table = tables.AddTable(2, 2, 100, 120, 300, 200); + tables.AddTable(1, 1, 300, 200, 100, 100); + tables.AddTable(1, 1, 400, 30, 100, 100); + //Get the specific table from the collection using index, read only + ITable _table = tables[1]; + //Remove a particular table instance + tables.Remove(_table); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold table collection in a slide + Dim tables As ITables = slide.Tables + 'Add tables to the table collection + Dim table As ITable = tables.AddTable(2, 2, 100, 120, 300, 200) + tables.AddTable(1, 1, 300, 200, 100, 100) + tables.AddTable(1, 1, 400, 30, 100, 100) + 'Get the specific table from the collection using index, read only + Dim _table As ITable = tables(1) + 'Remove a particular table instance + tables.Remove(_table) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the table at the specified index of the table collection. + + The zero-based index of the element to be removed. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold table collection in a slide + ITables tables = slide.Tables; + //Add tables to the table collection + ITable table = tables.AddTable(2, 2, 100, 120, 300, 200); + tables.AddTable(1, 1, 300, 200, 100, 100); + //Remove table using index position + tables.RemoveAt(1); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold table collection in a slide + Dim tables As ITables = slide.Tables + 'Add tables to the table collection + Dim table As ITable = tables.AddTable(2, 2, 100, 120, 300, 200) + tables.AddTable(1, 1, 300, 200, 100, 100) + 'Remove table using index position + tables.RemoveAt(1) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance at specified index from the collection. Read-only. + + Determines the table index. + Returns an instance. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold table collection in a slide + ITables tables = slide.Tables; + //Add tables to the table collection + ITable table = tables.AddTable(2, 2, 100, 120, 300, 200); + tables.AddTable(1, 1, 300, 200, 100, 100); + tables.AddTable(1, 1, 400, 30, 100, 100); + //Get the specific table from the collection using index, read only + ITable _table = tables[1]; + //Set the built-in style for the table + _table.BuiltInStyle = BuiltInTableStyle.MediumStyle2Accent6; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold table collection in a slide + Dim tables As ITables = slide.Tables + 'Add tables to the table collection + Dim table As ITable = tables.AddTable(2, 2, 100, 120, 300, 200) + tables.AddTable(1, 1, 300, 200, 100, 100) + tables.AddTable(1, 1, 400, 30, 100, 100) + 'Get the specific table from the collection using index, read only + Dim _table As ITable = tables(1) + 'Set the built-in style for the table + _table.BuiltInStyle = BuiltInTableStyle.MediumStyle2Accent6 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the table collection. Read-only. + + + The total count of the table. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Create instance to hold table collection in a slide + ITables tables = slide.Tables; + //Add tables to the table collection + ITable table = tables.AddTable(2, 2, 100, 120, 300, 200); + tables.AddTable(1, 1, 300, 200, 100, 100); + tables.AddTable(1, 1, 400, 30, 100, 100); + //Get the count of table collection, it is read only + int count = tables.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Create instance to hold table collection in a slide + Dim tables As ITables = slide.Tables + 'Add tables to the table collection + Dim table As ITable = tables.AddTable(2, 2, 100, 120, 300, 200) + tables.AddTable(1, 1, 300, 200, 100, 100) + tables.AddTable(1, 1, 400, 30, 100, 100) + 'Get the count of table collection, it is read only + Dim count As Integer = tables.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents the Column in a table. + + + + + Creates a copy of the current column. + + Returns the cloned column object + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Clone the column element. + IColumn column = table.Columns[0].Clone(); + //Add text content to the cell. + column.Cells[0].TextBody.Text = "Cloned column"; + //Add column to the collection + table.Columns.Add(column); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Clone the column element. + Dim column As IColumn = table.Columns(0).Clone() + 'Add text content to the cell. + column.Cells(0).TextBody.Text = "Cloned column" + 'Add column to the collection + table.Columns.Add(column) + 'Saves the Presentation. + pptxDoc.Save("Sample.pptx") + 'Close the presentation. + pptxDoc.Close() + + + + + + Gets an instance that represents the cell collection. Read-only + + + The cells. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the column from column collection + IColumn column = table.Columns[0]; + //Get the cell collection from the column, read only + ICells cells = column.Cells; + //Set the text content for cells in column + cells[0].TextBody.AddParagraph("First row, First Column"); + cells[1].TextBody.AddParagraph("Second row, First Column"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the column from column collection + Dim column As IColumn = table.Columns(0) + 'Get the cell collection from the column, read only + Dim cells As ICells = column.Cells + 'Set the text content for cells in column + cells(0).TextBody.AddParagraph("First row, First Column") + cells(1).TextBody.AddParagraph("Second row, First Column") + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets width of the column, in points. + + + The width. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the column from column collection + IColumn column = table.Columns[0]; + //Set the width of the column + column.Width = 240; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the column from column collection + Dim column As IColumn = table.Columns(0) + 'Set the width of the column + column.Width = 240 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Represents a collection of objects in a table. + + + + + Adds a new column at the end of the column collection. + + Returns the newly added instance. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the column collection from table + IColumns columns = table.Columns; + //Add column to the collection + columns.Add(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the column collection from table + Dim columns As IColumns = table.Columns + 'Add column to the collection + columns.Add() + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Adds the specified column at the end of the column collection. + + Represents an instance to be added. + Returns the zero-based index of the newly added column object in the column collection. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the column collection from table + IColumns columns = table.Columns; + //Retrieve a single column from the column collection, read only + IColumn column = columns[0]; + //Add a specific column to the collection + columns.Add(column); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the column collection from table + Dim columns As IColumns = table.Columns + 'Retrieve a single column from the column collection, read only + Dim column As IColumn = columns(0) + 'Add a specific column to the collection + columns.Add(column) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Inserts the specified column at specified index in the table. + + The zero-based index at which the column should be inserted. + The column instance to insert. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve a single column from the column collection, read only + IColumn column = table.Columns[0]; + //Set fill type for the cell in a column + column.Cells[0].Fill.FillType = FillType.Solid; + //Set color of the solid fill + column.Cells[0].Fill.SolidFill.Color = ColorObject.SaddleBrown; + //Get the column collection from table + IColumns columns = table.Columns; + //Insert column at index 2 + columns.Insert(2, column); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the column collection from table + Dim columns As IColumns = table.Columns + 'Retrieve a single column from the column collection, read only + Dim column As IColumn = columns(0) + 'Set fill type for the cell in a column + column.Cells(0).Fill.FillType = FillType.Solid + 'Set color of the solid fill + column.Cells(0).Fill.SolidFill.Color = ColorObject.SaddleBrown + 'Insert column at index 2 + columns.Insert(2, column) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the column at the specified index of the column collection. + + The zero-based index of the column to remove. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(4, 2, 100, 120, 300, 200); + //Get the column collection from table + IColumns columns = table.Columns; + //Remove a specific column instance + columns.RemoveAt(0); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(4, 2, 100, 120, 300, 200) + 'Get the column collection from table + Dim columns As IColumns = table.Columns + 'Remove a specific column instance + columns.RemoveAt(0) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes the first occurrence of a specified column from the column collection. + + The column object to be removed from the collection. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Retrieve a single column from the column collection, read only + IColumn column = table.Columns[0]; + //Get the column collection from table + IColumns columns = table.Columns; + //Remove a specific column instance + columns.Remove(column); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the column collection from table + Dim columns As IColumns = table.Columns + 'Retrieve a single column from the column collection, read only + Dim column As IColumn = table.Columns(0) + 'Remove a specific column instance + columns.Remove(column) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Returns the zero-based index of the first occurrence of the instance within the collection. + + The instance to locate in the collection. + Returns the zero-based index of the first occurrence of column instance within the collection, if found; otherwise, –1. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the column collection from table + IColumns columns = table.Columns; + //Retrieve a single column from the column collection, read only + IColumn column = table.Columns[0]; + //Add a specific column to the collection + columns.Add(column); + //Get the index of a specific column from the collection + int index = columns.IndexOf(column); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the column collection from table + Dim columns As IColumns = table.Columns + 'Retrieve a single column from the column collection, read only + Dim column As IColumn = columns(0) + 'Add a specific column to the collection + columns.Add(column) + 'Get the index of a specific column from the collection + Dim index As Integer = columns.IndexOf(column) + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Removes all the elements from column collection. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the column collection from table + IColumns columns = table.Columns; + //Retrieve a single column from the column collection, read only + IColumn column = columns[0]; + //Add a specific column to the collection + columns.Add(column); + //Clear the column collection + columns.Clear(); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the column collection from table + Dim columns As IColumns = table.Columns + 'Retrieve a single column from the column collection, read only + Dim column As IColumn = columns(0) + 'Add a specific column to the collection + columns.Add(column) + 'Clear the column collection + columns.Clear() + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the number of elements in the column collection. Read-only. + + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the column collection from table + IColumns columns = table.Columns; + //Retrieve a single column from the column collection, read only + IColumn column = columns[0]; + //Add a specific column to the collection + columns.Add(column); + //Get the count of column collection, read only + int count = columns.Count; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the column collection from table + Dim columns As IColumns = table.Columns + 'Retrieve a single column from the column collection, read only + Dim column As IColumn = columns(0) + 'Add a specific column to the collection + columns.Add(column) + 'Get the count of column collection, read only + Dim count As Integer = columns.Count + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets a instance at the specified index from the column collection. Read-only. + + Specifies the index of the column to locate. + Returns an instance. + + + //Create instance of PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200); + //Get the column from column collection + IColumn column = table.Columns[0]; + //Set the width of the column + column.Width = 240; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create instance of PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(2, 2, 100, 120, 300, 200) + 'Get the column from column collection + Dim column As IColumn = table.Columns(0) + 'Set the width of the column + column.Width = 300 + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Check whether current line has different height or not. + + Returns true, if it has different height; Otherwise false. + + + + Gets or Sets a height of line. + + + + + Gets or Sets a maximum ascent of the line. + + + + + Represents a TextBody column information. Used in multi column layouting. + + + + + Create a object of ColumnInfo. + + Represents a owner text body, where this column exists. + + + + Gets a owner text body of the column. + + + + + Gets or Sets the paragraph start index of this column. + + + + + Gets or Sets the line start index of the paragraph. + + + + + Gets or Sets the height of the column. + + + + + Gets or Sets a TextBody columns information. Used in multi column layouting. + + + + + Represent a CharacterRangeType of current text range. + + + + + Parse a ColorMapOvr elements of slide. + + Represent a reader object. + Represent a Baseslide. + + + + Parse the ole object + + + + + + + Parse the ole data + + + + + + + Check whether the mentioned node exists or not + + + + + + + + Extracts extended properties from reader and inserts it workbook. + + XmlReader to extract extended properties from. + + + + Extracts core properties from reader and inserts it workbook. + + XmlReader to extract core properties from. + + + + Extracts custom properties from reader and inserts it workbook. + + XmlReader to extract custom properties from. + + + + Extracts custom property from reader and inserts it into custom property implementation. + + XmlReader to extract data from. + Custom property. + + + + Parses the smart art whole property. + + Represents the reader object. + Represents the Smart Art data model. + + + + Parse the extension list properties + + + + + + + Parse the extension + + + + + + + Parse the NonVisual drawing properties for SmartArtPoint + + + + + + + + + + + + + + + + + + + + + + + + Get Path adjust value + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents the font settings in the PowerPoint document. + + + + + + //Open the existing PowerPoint presentation. + IPresentation pptxDoc = Presentation.Open("Template.pptx"); + //Initializes a set of default fallback fonts. + pptxDoc.FontSettings.FallbackFonts.InitializeDefault(); + //Converts the first slide into image + Image image = pptxDoc.Slides[0].ConvertToImage(Syncfusion.Drawing.ImageType.Metafile); + //Disposes the image + image.Dispose(); + //Close the Presentation + pptxDoc.Close(); + + + 'Open the existing PowerPoint presentation. + Dim pptxDoc As IPresentation = Presentation.Open("Template.pptx") + 'Initializes a set of default fallback fonts. + pptxDoc.FontSettings.FallbackFonts.InitializeDefault() + 'Converts the first slide into image + Dim image As Image = pptxDoc.Slides(0).ConvertToImage(Syncfusion.Drawing.ImageType.Metafile) + 'Disposes the image + image.Dispose() + 'Close the Presentation + pptxDoc.Close() + + + + + + Gets the font based on given font details. + + Name of the font. + Size of the font. + Style of the font. + The created font, or substituted font by event. + + + + Creates font based on given font details. + + Name of the font. + Size of the font. + Style of the font. + The created font. + + + + Dispose the objects of FontSetting class. + + + + + + + //Open the existing PowerPoint presentation. + IPresentation pptxDoc = Presentation.Open("Template.pptx"); + //Adds fallback font for "Hebrew" script type. + pptxDoc.FontSettings.FallbackFonts.Add(ScriptType.Hebrew, "Arial, Courier New"); + //Adds fallback font for "Hindi" script type. + pptxDoc.FontSettings.FallbackFonts.Add(ScriptType.Hindi, "Mangal, Nirmala UI"); + //Converts the first slide into image + Image image = pptxDoc.Slides[0].ConvertToImage(Syncfusion.Drawing.ImageType.Metafile); + //Disposes the image + image.Dispose(); + //Close the Presentation + pptxDoc.Close(); + + + 'Open the existing PowerPoint presentation. + Dim pptxDoc As IPresentation = Presentation.Open("Template.pptx") + 'Adds fallback font for "Hebrew" script type. + pptxDoc.FontSettings.FallbackFonts.Add(ScriptType.Hebrew, "Arial, Courier New") + 'Adds fallback font for "Hindi" script type. + pptxDoc.FontSettings.FallbackFonts.Add(ScriptType.Hindi, "Mangal, Nirmala UI") + 'Converts the first slide into image + Dim image As Image = pptxDoc.Slides(0).ConvertToImage(Syncfusion.Drawing.ImageType.Metafile) + 'Disposes the image + image.Dispose() + 'Close the Presentation + pptxDoc.Close() + + + + + + Represents the method that handles substitute font event. + + + + + + Represents the original font name. + + + + + Represents the substitute font name. + + + + + Represents the substitute font name. + + + + + Represents the original fontstyle. + + + + + Initializes a new instance of class for the specified document + with original (missing) font name, and alternate font name. + + Name of the original (missing) font name. + Name of the alternate font name. + Font style of the font + + + + Gets the original font name. Read Only. + + The string that specifies the original font name. + + + //Load the PowerPoint presentation and convert to image + IPresentation pptxDoc = Presentation.Open("Sample.pptx"); + // Initializes the 'SubstituteFont' event to set the replacement font + pptxDoc.FontSettings.SubstituteFont += FontSettings_SubstituteFont; + //Converts the first slide into image + Image image = pptxDoc.Slides[0].ConvertToImage(Syncfusion.Drawing.ImageType.Metafile); + //Disposes the image + image.Dispose(); + //Close the presentation. + pptxDoc.Close(); + /// + /// Sets the alternate font when a specified font is unavailable in the production environment + /// + /// FontSettings type of the Presentation in which the specified font is used but unavailable in production environment. + /// Retrieves the unavailable font name and receives the substitute font name for conversion. + private static void FontSettings_SubstituteFont(object sender, SubstituteFontEventArgs args) + { + if (args.OriginalFontName == "Arial Unicode MS") + args.AlternateFontName = "Arial"; + else if (args.OriginalFontName == "Calibri Light") + args.AlternateFontName = "Calibri"; + else + args.AlternateFontName = "TimesNewRoman"; + } + + + 'Load the PowerPoint presentation and convert to image + Dim pptxDoc As IPresentation = Presentation.Open("Sample.pptx") + 'Initializes the 'SubstituteFont' event to set the replacement font + AddHandler pptxDoc.FontSettings.SubstituteFont, AddressOf SubstituteFont + 'Convert the PowerPoint presentation to image. + Dim image As Image = pptxDoc.Slides(0).ConvertToImage(Syncfusion.Drawing.ImageType.Metafile) + 'Dispose the image + image.Dispose() + 'Close the Presentation. + pptxDoc.Close() + ''' + ''' Sets the alternate font when a specified font is unavailable in the production environment + ''' + ''' FontSettings type of the Presentation in which the specified font is used but unavailable in production environment. + ''' Retrieves the unavailable font name and receives the substitute font name for conversion. + Private Sub SubstituteFont(ByVal sender As Object, ByVal args As SubstituteFontEventArgs) + ' Sets the alternate font when a specified font is not installed in the production environment + If args.OriginalFontName = "Arial Unicode MS" Then + args.AlternateFontName = "Arial" + ElseIf args.OriginalFontName = "Calibri Light" Then + args.AlternateFontName = "Calibri" + Else + args.AlternateFontName = "Times New Roman" + End If + End Sub + + + + + + Gets or sets the alternate font name. + + The string that specifies the alternate font name. + + + //Load the PowerPoint presentation and convert to image + IPresentation pptxDoc = Presentation.Open("Sample.pptx"); + // Initializes the 'SubstituteFont' event to set the replacement font + pptxDoc.FontSettings.SubstituteFont += FontSettings_SubstituteFont; + //Converts the first slide into image + Image image = pptxDoc.Slides[0].ConvertToImage(Syncfusion.Drawing.ImageType.Metafile); + //Disposes the image + image.Dispose(); + //Close the presentation. + pptxDoc.Close(); + /// + /// Sets the alternate font when a specified font is unavailable in the production environment + /// + /// FontSettings type of the Presentation in which the specified font is used but unavailable in production environment. + /// Retrieves the unavailable font name and receives the substitute font name for conversion. + private static void FontSettings_SubstituteFont(object sender, SubstituteFontEventArgs args) + { + if (args.OriginalFontName == "Arial Unicode MS") + args.AlternateFontName = "Arial"; + else if (args.OriginalFontName == "Calibri Light") + args.AlternateFontName = "Calibri"; + else + args.AlternateFontName = "TimesNewRoman"; + } + + + 'Load the PowerPoint presentation and convert to image + Dim pptxDoc As IPresentation = Presentation.Open("Sample.pptx") + 'Initializes the 'SubstituteFont' event to set the replacement font + AddHandler pptxDoc.FontSettings.SubstituteFont, AddressOf SubstituteFont + 'Convert the PowerPoint presentation to image. + Dim image As Image = pptxDoc.Slides(0).ConvertToImage(Syncfusion.Drawing.ImageType.Metafile) + 'Dispose the image + image.Dispose() + 'Close the Presentation. + pptxDoc.Close() + ''' + ''' Sets the alternate font when a specified font is unavailable in the production environment + ''' + ''' FontSettings type of the Presentation in which the specified font is used but unavailable in production environment. + ''' Retrieves the unavailable font name and receives the substitute font name for conversion. + Private Sub SubstituteFont(ByVal sender As Object, ByVal args As SubstituteFontEventArgs) + ' Sets the alternate font when a specified font is not installed in the production environment + If args.OriginalFontName = "Arial Unicode MS" Then + args.AlternateFontName = "Arial" + ElseIf args.OriginalFontName = "Calibri Light" Then + args.AlternateFontName = "Calibri" + Else + args.AlternateFontName = "Times New Roman" + End If + End Sub + + + + + + + + Contains types that support Presentation which is used to create and manipulate PowerPoint Presentations. + + + + + + Represents the PowerPoint presentation. + + + + + Stream name that represent summary name. + + + + + Stream name that represent document summary name. + + + + + Creates a new instance. + + Returns the newly created presentation instance. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Add a new slide of comparison slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Comparison); + //Save the presentation. + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Add a new slide of comparison slide layout type. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Comparison) + 'Save the presentation. + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Opens the presentation from the specified file name. + + Specifies the file name of the presentation to open. + Returns a object that represents the opened presentation. + + + //Open a presentation. + Presentation presentation = Presentation.Open("Input.pptx") as Presentation; + //Add a new slide of comparison slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Comparison); + //Save the presentation. + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Open a presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Open("Input.pptx"), Presentation) + 'Add a new slide of comparison slide layout type. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Comparison) + 'Save the presentation. + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Opens the presentation from the specified stream. + + The stream instance that represents the presentation. + Returns a object that represents the opened presentation. + From v20.4.0.x release, this method will not dispose the given . You should handle the disposal of in your application. + + + //Create instance for memory stream + MemoryStream fileStream = new MemoryStream(); + //Open a presentation + IPresentation presentation = Presentation.Open(fileStream); + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + //Dispose the filestream + fileStream.Dispose(); + + + 'Create instance for memory stream + Dim fileStream As New MemoryStream() + 'Open a presentation + Dim presentation__1 As IPresentation = Presentation.Open(fileStream) + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + 'Dispose the filestream + fileStream.Dispose() + + + + + + Saves the presentation to the specified file name. + + Specifies the file name to save the presentation. + At present, the Essential Presentation library only supports the PPTX file format. + + + //Create an instance of presentation + Presentation presentation = Presentation.Create() as Presentation; + //Add slide to the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add table to the slide + ITable table = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create an instance of presentation + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Add slide to the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add table to the slide + Dim table As ITable = slide.Shapes.AddTable(3, 3, 100, 120, 300, 200) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + At present, the Essential Presentation library only supports the PPTX file format. + + + //Create instance for memory stream + MemoryStream fileStream = new MemoryStream(); + //Create an instance of presentation + Presentation presentation = Presentation.Create() as Presentation; + //Save the presentation using stream + presentation.Save(fileStream); + //Close the presentation. + presentation.Close(); + //Dispose the filestream + fileStream.Dispose(); + + + 'Create instance for memory stream + Dim fileStream As New MemoryStream() + 'Create an instance of presentation + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Save the presentation using stream + presentation__1.Save(fileStream) + 'Close the presentation. + presentation__1.Close() + 'Dispose the filestream + fileStream.Dispose() + + + + + + Creates an independent copy of instance. + /// Returns the cloned presentation instance. + + + //Create an instance for presentation + Presentation presentation = Presentation.Create() as Presentation; + //Add a new slide of comparison slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Comparison); + //Clone the entire presentation. + IPresentation presentationClone = presentation.Clone(); + //Add a new slide of title layout type. + slide = presentationClone.Slides.Add(SlideLayoutType.Title); + //Add an auto shape of regular pentagon auto shape type. + slide.Shapes.AddShape(AutoShapeType.RegularPentagon, 10, 20, 300, 400); + //Save the cloned presentation + presentationClone.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + //Close the cloned presentation. + presentationClone.Close(); + + + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Add a new slide of comparison slide layout type. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Comparison) + 'Clone the entire presentation. + Dim presentationClone As IPresentation = presentation__1.Clone() + 'Add a new slide of title layout type. + slide = presentationClone.Slides.Add(SlideLayoutType.Title) + 'Add an auto shape of regular pentagon auto shape type. + slide.Shapes.AddShape(AutoShapeType.RegularPentagon, 10, 20, 300, 400) + 'Save the cloned presentation + presentationClone.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + 'Close the cloned presentation. + presentationClone.Close() + + + + + + Saves the presentation to the specified HttpResponse instance. + + + At present, the Essential Presentation library only supports the PPTX file + format. + + The name of the file in HttpResponse. + The format type of the presentation. + The HttpResponse to save the presentation. + + + //Create a presentation + Presentation presentation = Presentation.Create() as Presentation; + //Save the presentation to the specified HttpResponse + presentation.Save("Sample.pptx", FormatType.Pptx, HttpContext.Current.Response); + + + 'Create a presentation + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Save the presentation to the specified HttpResponse + presentation__1.Save("Sample.pptx", FormatType.Pptx, Response) + + + + + + Opens the encrypted presentation from the specified file name and password. + + Path of the presentation file. + Password required to open the presentation file. + Returns a object that represents the opened presentation. + + + //Open the encrypted presentation. + Presentation presentation = Presentation.Open("Input.pptx", "MYPASSWORD!@#$%") as Presentation; + //Save the presentation. + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Open the encrypted presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Open("Input.pptx", "MYPASSWORD!@#$%"), Presentation) + 'Save the presentation. + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Opens the encrypted presentation from the specified stream and password. + + The instance of the presentation. + The password required to open the presentation. + Returns the object that represents the opened presentation. + From v20.4.0.x release, this method will not dispose the given . You should handle the disposal of in your application. + + + //Create instance for memory stream + MemoryStream fileStream = new MemoryStream(); + //Open a presentation + string InputPath = ""; + IPresentation presentation = Presentation.Open(fileStream,InputPath); + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + //Dispose the filestream + fileStream.Dispose(); + + + 'Create instance for memory stream + Dim fileStream As New MemoryStream() + 'Open a presentation + Dim presentation__1 As IPresentation = Presentation.Open(fileStream, Input.pptx) + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + 'Dispose the filestream + fileStream.Dispose() + + + + + + Encrypts the presentation using the specified password. + + Password to encrypt the presentation. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Add a new slide of content with caption slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.ContentWithCaption); + //Add a auto shape of moon type auto shape. + IShape shape = slide.Shapes.AddShape(AutoShapeType.Moon, 50, 0, 200, 200); + //Add a paragraph with text content to the shape. + shape.TextBody.AddParagraph("Text for moon shape"); + //Encrypt the presentation with the combination of alpha and symbol string password. + presentation.Encrypt("MYPASSWORD!@#$%"); + //Save the presentation. + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Add a new slide of content with caption slide layout type. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.ContentWithCaption) + 'Add a auto shape of moon type auto shape. + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Moon, 50, 0, 200, 200) + 'Add a paragraph with text content to the shape. + shape.TextBody.AddParagraph("Text for moon shape") + 'Encrypt the presentation with the combination of alpha and symbol string password. + presentation__1.Encrypt("MYPASSWORD!@#$%") + 'Save the presentation. + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Removes the encryption from presentation. + + To remove the encryption we must have opened the presentation with password. + + + //Open the encrypted presentation. + Presentation presentation = Presentation.Open("Input.pptx", "MYPASSWORD!@#$%") as Presentation; + //Remove the encryption. + presentation.RemoveEncryption(); + //Save the presentation. + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Open the encrypted presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Open("Input.pptx", "MYPASSWORD!@#$%"), Presentation) + 'Remove the encryption. + presentation__1.RemoveEncryption() + 'Save the presentation. + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Add a watermark to the presentation file + + The presentation instance + + + + Add a watermark to the slide + + The slide instance + + + + Add a watermark shape to the center of the master slide + + + + + + + + + + Add a watermark shape to the bottom of the first and last slide + + + + + + + + + + Converts the slides in presentation to images using the specified image format. + + Specifies the image format in which you want to convert slides. + Returns the array of the converted images. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Add a content with caption slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.ContentWithCaption); + //Add a table to the slide. + ITable table = slide.Tables.AddTable(5, 5, 0, 0, 500, 500); + //Set the built in table style. + table.BuiltInStyle = BuiltInTableStyle.DarkStyle2Accent3Accent4; + //Iterate through the row collection. + foreach (IRow row in table.Rows) + { + //Iterate through the cell collection. + foreach (ICell cell in row.Cells) + { + //Add a paragraph to the cell. + cell.TextBody.AddParagraph("New Paragraph"); + } + } + //Converts the each and every slide in the presentation to image of stream array type. + Stream[] imageStreamArray = presentation.RenderAsImages(Syncfusion.Drawing.ImageFormat.Jpeg); + //Iterate the stream array. + foreach (Stream stream in imageStreamArray) + { + //Save the stream in image of .jpg format. + Image.FromStream(stream).Save("RenderAsImage" + Guid.NewGuid() + ".jpg"); + } + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Add a content with caption slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.ContentWithCaption) + 'Add a table to the slide. + Dim table As ITable = slide.Tables.AddTable(5, 5, 0, 0, 500, 500) + 'Set the built in table style. + table.BuiltInStyle = BuiltInTableStyle.DarkStyle2Accent3Accent4 + 'Iterate through the row collection. + For Each row As IRow In table.Rows + 'Iterate through the cell collection. + For Each cell As ICell In row.Cells + 'Add a paragraph to the cell. + cell.TextBody.AddParagraph("New Paragraph") + Next + Next + 'Converts the each and every slide in the presentation to image of stream array type. + Dim imageStreamArray As Stream() = presentation__1.RenderAsImages(Syncfusion.Drawing.ImageFormat.Jpeg) + 'Iterate the stream array. + For Each stream As Stream In imageStreamArray + 'Save the stream in image of .jpg format. + Image.FromStream(stream).Save("RenderAsImage" + Guid.NewGuid() + ".jpg") + Next + 'Close the presentation. + presentation__1.Close() + + + + + + Converts the slides in presentation to images using the specified image type. + + Specifies the image type in which you want to convert slides. + Returns the array of the converted images. + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Add a content with caption slide to the presentation. + ISlide slide = presentation.Slides.Add(SlideLayoutType.ContentWithCaption); + //Add a table to the slide. + ITable table = slide.Tables.AddTable(5, 5, 0, 0, 500, 500); + //Set the built in table style. + table.BuiltInStyle = BuiltInTableStyle.DarkStyle2Accent3Accent4; + //Iterate through the row collection. + foreach (IRow row in table.Rows) + { + //Iterate through the cell collection. + foreach (ICell cell in row.Cells) + { + //Add a paragraph to the cell. + cell.TextBody.AddParagraph("New Paragraph"); + } + } + //Converts the each and every slide in the presentation to image of System.Drawing.Image type array. + Image[] imageArray = presentation.RenderAsImages(Syncfusion.Drawing.ImageType.Metafile); + //Iterate the image array. + foreach (Image image in imageArray) + { + //Save the image of .bmp format. + image.Save("RenderAsImage" + Guid.NewGuid() + ".bmp"); + } + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Add a content with caption slide to the presentation. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.ContentWithCaption) + 'Add a table to the slide. + Dim table As ITable = slide.Tables.AddTable(5, 5, 0, 0, 500, 500) + 'Set the built in table style. + table.BuiltInStyle = BuiltInTableStyle.DarkStyle2Accent3Accent4 + 'Iterate through the row collection. + For Each row As IRow In table.Rows + 'Iterate through the cell collection. + For Each cell As ICell In row.Cells + 'Add a paragraph to the cell. + cell.TextBody.AddParagraph("New Paragraph") + Next + Next + 'Converts the each and every slide in the presentation to image of System.Drawing.Image type array. + Dim imageArray As Image() = presentation__1.RenderAsImages(Syncfusion.Drawing.ImageType.Metafile) + 'Iterate the image array. + For Each image As Image In imageArray + 'Save the image of .bmp format. + image.Save("RenderAsImage" + Guid.NewGuid() + ".bmp") + Next + 'Close the presentation. + presentation__1.Close() + + + + + + Prepares response before saving. + + + + + + + Adds the preserved elements into new presentation. + + + + + + Releases any resources associated with the presentation instance. + + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Add a new slide of comparison slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Comparison); + //Save the presentation. + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Add a new slide of comparison slide layout type. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Comparison) + 'Save the presentation. + presentation__1.Save("Sample.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Releases all resources used by the instance. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Add a new slide of comparison slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Comparison); + //Save the presentation. + presentation.Save("Sample.pptx"); + //Dispose the presentation. + presentation.Dispose(); + + + 'Create a new presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add a new slide of comparison slide layout type. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Comparison) + 'Save the presentation. + presentation__1.Save("Sample.pptx") + 'Dispose the presentation. + presentation__1.Dispose() + + + + + + Determines whether the data in the stream are encrypted or not. + + Stream in which the presentation content are stored. + Returns whether the stream is encrypted or not. + + + + Removes the macros from the presentation instance. + + + + //Opens an existing macro enabled PowerPoint presentation + IPresentation pptxDoc = Presentation.Open("Sample.PPTM"); + //Checks whether the presentation has macros and then removes them + if (pptxDoc.HasMacros) + pptxDoc.RemoveMacros(); + //Saves the presentation + pptxDoc.Save("Output.pptx"); + //Closes the presentation + pptxDoc.Close(); + + + 'Opens an existing macro enabled PowerPoint presentation + Dim pptxDoc As IPresentation = Presentation.Open("Sample.PPTM") + 'Checks whether the presentation has macros and then removes them + If pptxDoc.HasMacros Then + pptxDoc.RemoveMacros() + End If + 'Saves the presentation + pptxDoc.Save("Output.pptx") + 'Closes the presentation + pptxDoc.Close() + + + + + + Sets the write protection for the presentation instance + + Password to enforce protection. + Maximum length of password should be 15. If it exceeds 15, first 15 characters will be considered for protection, remaining will be ignored. + + + //Create an instance for presentation + IPresentation presentation = Presentation.Create(); + //Add a new slide of comparison slide layout type. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Comparison); + //Add an auto shape of regular pentagon auto shape type. + slide.Shapes.AddShape(AutoShapeType.RegularPentagon, 10, 20, 300, 400); + //Set the write protection for Presentation instance with password. + presentation.SetWriteProtection("MYPASSWORD"); + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create an instance for presentation + Dim presentation As IPresentation = Presentation.Create() + 'Add a new slide of comparison slide layout type. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Comparison) + 'Add an auto shape of regular pentagon auto shape type. + slide.Shapes.AddShape(AutoShapeType.RegularPentagon, 10, 20, 300, 400) + 'Set the write protection for Presentation instance with password. + presentation.SetWriteProtection("MYPASSWORD") + 'Save the presentation + presentation.Save("Sample.pptx") + 'Close the presentation. + presentation.Close() + + + + + + Removes the write Protection from presentation instance + + + + //Create an instance for presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Check whether the presentation is write protected. + if (presentation.IsWriteProtected) + { + //Removes the write protection from presentation instance + presentation.RemoveWriteProtection(); + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create an instance for presentation + Dim presentation As IPresentation = Presentation.Open("Sample.pptx") + 'Check whether the presentation is write protected. + if (presentation.IsWriteProtected) + { + 'Removes the write protection from presentation instance + presentation.RemoveWriteProtection() + } + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation. + presentation.Close() + + + + + + Finds all the given text from the presentation document + + + + + The collection that contains all the entries of the found text in the document. + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + // Finds all the text from the Presentation document + ITextSelection[] textSelections = presentation.FindAll("World", false, false); + foreach (ITextSelection textSelection in textSelections) + { + //Gets the found text as single text part + ITextPart textPart = textSelection.GetAsOneTextPart(); + //Replace the text + textPart.Text = "Replaced text"; + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds the text from the Presentation document + Dim textSelections As ITextSelection() = pptxDoc.FindAll("World", False, False) + 'Gets the found text as single text part and replace it + For Each textSelection As ITextSelection In textSelections + Dim textPart As ITextPart = textSelection.GetAsOneTextPart() + textPart.Text = "Replaced text" + Next + pptxDoc.Save("Output.pptx") + 'Close the presentation. + pptxDoc.Close() + + + + + + Finds all the given text from the presentation document using Regex Pattern + + + The collection that contains all the entries of the found text in the document. + + + //Opens an existing presentation. + IPresentation pptxDoc = Presentation.Open("Input.pptx"); + // Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Regex regex = new Regex("H.+?o"); + //Finds all the occurrences of a specified regular expression. + ITextSelection[] textSelections = pptxDoc.FindAll(regex); + foreach (ITextSelection textSelection in textSelections) + { + //Gets the found text as single text part + ITextPart textPart = textSelection.GetAsOneTextPart(); + //Replace the text + textPart.Text = "Replaced text"; + } + //Saves the Presentation + pptxDoc.Save("Output.pptx"); + // Close the presentation. + pptxDoc.Close(); + + + 'Opens an existing presentation. + Dim pptxDoc As IPresentation = Presentation.Open("Input.pptx") + ' Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Dim regex As Regex = New Regex("H.+?o") + 'Finds all the occurrences of a specified regular expression. + Dim textSelections As ITextSelection() = pptxDoc.FindAll(regex) + For Each textSelection As ITextSelection In textSelections + 'Gets the found text as single text part + Dim textPart As ITextPart = textSelection.GetAsOneTextPart() + 'Replace the text + textPart.Text = "Replaced text" + Next + 'Saves the Presentation + pptxDoc.Save("Output.pptx") + 'Close the presentation. + pptxDoc.Close() + + + + + + Finds the first occurance of the given word from the presentation + + + + + The that contains the found text in the document. + + + //Create a new presentation instance. + IPresentation presentation = Presentation.Create(); + //Add the slide into the presentation + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + // Add a text box to hold the list + IShape textBoxShape = slide.AddTextBox(65, 140, 410, 270); + // Add a new paragraph with a text + IParagraph paragraph = textBoxShape.TextBody.AddParagraph("Hello World"); + // Finds the text from the Presentation document + ITextSelection textSelection = presentation.Find("World", false, false); + // Gets the found text containing text parts + foreach (ITextPart textPart in textSelection.GetTextParts()) + { + //Sets Bold property + textPart.Font.Bold = true; + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Add the slide into the presentation + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a text box to hold the list + Dim textBoxShape As IShape = slide.AddTextBox(65, 140, 410, 270) + 'Add a new paragraph with a text + Dim paragraph As IParagraph = textBoxShape.TextBody.AddParagraph("Hello World") + 'Finds the text from the Presentation document + Dim textSelection As ITextSelection = presentation__1.Find("World", False, False) + 'Gets the text parts from the selection + For Each textPart As ITextPart In textSelection.GetTextParts() + textPart.Font.Bold = True + Next + presentation__1.Save("Output.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Finds the first occurance of the given word from the presentation using Regex Pattern + + + The that contains the found text in the document. + + + //Opens an existing presentation. + IPresentation pptxDoc = Presentation.Open("Input.pptx"); + // Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Regex regex = new Regex("H.+?o"); + //Find the first occurrence of a specified regular expression. + ITextSelection textSelection = pptxDoc.Find(regex); + //Gets the found text as single text part + ITextPart textPart = textSelection.GetAsOneTextPart(); + //Replace the text + textPart.Text = "Replaced text"; + //Saves the Presentation + pptxDoc.Save("Output.pptx"); + //Close the presentation + pptxDoc.Close(); + + + 'Opens an existing presentation. + Dim pptxDoc As IPresentation = Presentation.Open("Input.pptx") + 'Create a regex pattern to find a text that starts with 'H' and ends with 'o'. + Dim regex As Regex = New Regex("H.+?o") + 'Find the first occurrence of a specified regular expression. + Dim textSelection As ITextSelection = pptxDoc.Find(regex) + 'Gets the found text as single text part + Dim textPart As ITextPart = textSelection.GetAsOneTextPart() + 'Replace the text + textPart.Text = "Replaced text" + 'Saves the Presentation + pptxDoc.Save("Output.pptx") + 'Close the presentation. + pptxDoc.Close() + + + + + + Returns a collection of instances. Read-only. + + + + //Creates a PowerPoint presentation + IPresentation presentation = Presentation.Create(); + //Adds a section to the PowerPoint presentation + ISection section = presentation.Sections.Add(); + //Sets a name to the created section + section.Name = "SectionDemo"; + //Adds a slide to the created section + ISlide slide = section.AddSlide(SlideLayoutType.Blank); + //Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo"); + //Saves the PowerPoint presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Creates a PowerPoint presentation + Dim presentation__1 As IPresentation = Presentation.Create() + 'Adds a section to the PowerPoint presentation + Dim section As ISection = presentation__1.Sections.Add() + 'Sets a name to the created section + section.Name = "SectionDemo" + 'Adds a slide to the created section + Dim slide As ISlide = section.AddSlide(SlideLayoutType.Blank) + 'Adds a text box to the slide + slide.AddTextBox(10, 10, 100, 100).TextBody.AddParagraph("Slide in SectionDemo") + 'Saves the PowerPoint presentation + presentation__1.Save("Sample.pptx") + 'Close the Presentation instance + presentation__1.Close() + + + + + + Gets the font settings. Read Only. + + The font settings in the PowerPoint document. + + + //Load the PowerPoint presentation and convert to image + IPresentation pptxDoc = Presentation.Open("Sample.pptx"); + // Initializes the 'SubstituteFont' event to set the replacement font + pptxDoc.FontSettings.InitializeFallbackFonts(); + //Converts the first slide into image + Image image = pptxDoc.Slides[0].ConvertToImage(Syncfusion.Drawing.ImageType.Metafile); + //Close the presentation. + pptxDoc.Close(); + + + 'Load the PowerPoint presentation and convert to image + Dim pptxDoc As IPresentation = Presentation.Open("Sample.pptx") + 'Use a sets of default FallbackFont collection to IPresentation. + pptxDoc.FontSettings.FallbackFonts.InitializeDefault() + 'Convert the PowerPoint presentation to image. + Dim image As Image = pptxDoc.Slides(0).ConvertToImage(Syncfusion.Drawing.ImageType.Metafile) + 'Close the Presentation instance + pptxDoc.Close() + + + + + + Gets the collection of the instance. Read-only. + + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the collection of layout Slide + IMasterSlides masterslides = presentation.Masters; + //Get a master by specifying the index in collection + IMasterSlide masterSlide = presentation.Masters[0]; + //Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200,234,198,173); + //Add an autoshape - bevel to master slide + masterSlide.Shapes.AddShape(AutoShapeType.Bevel,237,45,187,120); + //Add master slide to the collection + masterslides.Add(masterSlide); + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the collection of layout Slide + Dim masterslides As IMasterSlides = presentation__1.Masters + 'Get a master by specifying the index in collection + Dim masterSlide As IMasterSlide = presentation__1.Masters(0) + 'Add a group shape to master slide + masterSlide.GroupShapes.AddGroupShape(200, 234, 198, 173) + 'Add an autoshape - bevel to master slide + masterSlide.Shapes.AddShape(AutoShapeType.Bevel, 237, 45, 187, 120) + 'Add master slide to the collection + masterslides.Add(masterSlide) + 'Save the presentation + presentation__1.Save("Output.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets the slide collection of instance. Read-only. + + + + //Create a new presentation. + IPresentation presentation = Presentation.Create(); + //Create instance to hold the slide collection + ISlides slides = presentation.Slides; + //Add slide to presentation + slides.Add(); + //Add a blank slide to the presentation. + slides.Add(SlideLayoutType.Blank); + //Add slide to the collection by passing the slide instance + slides.Add(slides.Add(SlideLayoutType.Title)); + //Retrieve the specific slide item, read only + ISlide _slide = slides[0]; + //Set the slide name + _slide.Name = "My Slide"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a new presentation. + IPresentation presentation = Presentation.Create(); + 'Create instance to hold the slide collection + ISlides slides = presentation.Slides; + 'Add slide to presentation + slides.Add(); + 'Add a blank slide to the presentation. + slides.Add(SlideLayoutType.Blank); + 'Add slide to the collection by passing the slide instance + slides.Add(slides.Add(SlideLayoutType.Title)); + 'Retrieve the specific slide item, read only + ISlide _slide = slides[0]; + 'Set the slide name + slide.Name = "My Slide"; + 'Save the presentation + presentation.Save("Sample.pptx"); + 'Close the presentation + presentation.Close(); + + + + + + Gets or sets a value indicating whether the instance is marked as final. + + + + //Create an instance for PowerPoint presentation + IPresentation pptxDoc = Presentation.Create(); + //Add slide to the presentation + ISlide slide = pptxDoc.Slides.Add(SlideLayoutType.Blank); + //Mark the presentation as final + pptxDoc.Final = true; + //Save the presentation + pptxDoc.Save("Sample.pptx"); + //Close the presentation + pptxDoc.Close(); + + + 'Create an instance for PowerPoint presentation + Dim pptxDoc As IPresentation = Presentation.Create() + 'Add slide to the presentation + Dim slide As ISlide = pptxDoc.Slides.Add(SlideLayoutType.Blank) + 'Mark the presentation as final + pptxDoc.Final = True + 'Save the presentation + pptxDoc.Save("Sample.pptx") + 'Close the presentation + pptxDoc.Close() + + + + + + Gets an instance. + + + Initialize the ChartToImageConverter in-order to convert a chart in presentation to image. + + + + //Create a new presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Initialize the chart to image converter. + presentation.ChartToImageConverter = new ChartToImageConverter(); + //Set the scaling mode for the chart. + presentation.ChartToImageConverter.ScalingMode = ScalingMode.Best; + //Add a blank slide for the chart. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Add a chart to the slide. + IPresentationChart officeChart = slide.Charts.AddChart(100, 100, 600, 400); + //Set chart data + officeChart.ChartData.SetValue(1, 4, "Month"); + officeChart.ChartData.SetValue(2, 4, "July"); + officeChart.ChartData.SetValue(3, 4, "August"); + officeChart.ChartData.SetValue(4, 4, "September"); + officeChart.ChartData.SetValue(5, 4, "October"); + officeChart.ChartData.SetValue(6, 4, "November"); + officeChart.ChartData.SetValue(7, 4, "December"); + officeChart.ChartData.SetValue(1, 1, "2013"); + officeChart.ChartData.SetValue(2, 1, 35); + officeChart.ChartData.SetValue(3, 1, 37); + officeChart.ChartData.SetValue(4, 1, 30); + officeChart.ChartData.SetValue(5, 1, 29); + officeChart.ChartData.SetValue(6, 1, 25); + officeChart.ChartData.SetValue(7, 1, 30); + officeChart.ChartData.SetValue(1, 2, "2014"); + officeChart.ChartData.SetValue(2, 2, 30); + officeChart.ChartData.SetValue(3, 2, 25); + officeChart.ChartData.SetValue(4, 2, 29); + officeChart.ChartData.SetValue(5, 2, 35); + officeChart.ChartData.SetValue(6, 2, 38); + officeChart.ChartData.SetValue(7, 2, 32); + officeChart.ChartData.SetValue(1, 3, "2015"); + officeChart.ChartData.SetValue(2, 3, 35); + officeChart.ChartData.SetValue(3, 3, 37); + officeChart.ChartData.SetValue(4, 3, 30); + officeChart.ChartData.SetValue(5, 3, 50); + officeChart.ChartData.SetValue(6, 3, 25); + officeChart.ChartData.SetValue(7, 3, 30); + //Add chart serie. + IOfficeChartSerie serie1 = officeChart.Series.Add("2013"); + //Set serie value. + serie1.Values = officeChart.ChartData[2, 1, 7, 1]; + //Add chart serie. + IOfficeChartSerie serie2 = officeChart.Series.Add("2014"); + //Set serie value. + serie2.Values = officeChart.ChartData[2, 2, 7, 2]; + //Add chart serie. + IOfficeChartSerie serie3 = officeChart.Series.Add("2015"); + //Set serie value. + serie3.Values = officeChart.ChartData[2, 3, 7, 3]; + //Set category labels value for the primary category axis. + officeChart.PrimaryCategoryAxis.CategoryLabels = officeChart.ChartData[2, 4, 7, 4]; + //Set the chart type. + officeChart.ChartType = OfficeChartType.Column_Clustered; + //Set the chart title. + officeChart.ChartTitle = "Mine Chart"; + //Convert the chart to image. + Image[] chartImages = presentation.RenderAsImages(Syncfusion.Drawing.ImageType.Metafile); + foreach (Image image in chartImages) + { + //Save the image. + image.Save("ChartToImageConverter" + Guid.NewGuid() + ".png"); + } + //Save the presentation. + presentation.Save("ChartToImageConverter.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create a new presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Initialize the chart to image converter. + presentation__1.ChartToImageConverter = New ChartToImageConverter() + 'Set the scaling mode for the chart. + presentation__1.ChartToImageConverter.ScalingMode = ScalingMode.Best + 'Add a blank slide for the chart. + Dim slide As ISlide = presentation__1.Slides.Add(SlideLayoutType.Blank) + 'Add a chart to the slide. + Dim officeChart As IPresentationChart = slide.Charts.AddChart(100, 100, 600, 400) + 'Set chart data + officeChart.ChartData.SetValue(1, 4, "Month") + officeChart.ChartData.SetValue(2, 4, "July") + officeChart.ChartData.SetValue(3, 4, "August") + officeChart.ChartData.SetValue(4, 4, "September") + officeChart.ChartData.SetValue(5, 4, "October") + officeChart.ChartData.SetValue(6, 4, "November") + officeChart.ChartData.SetValue(7, 4, "December") + officeChart.ChartData.SetValue(1, 1, "2013") + officeChart.ChartData.SetValue(2, 1, 35) + officeChart.ChartData.SetValue(3, 1, 37) + officeChart.ChartData.SetValue(4, 1, 30) + officeChart.ChartData.SetValue(5, 1, 29) + officeChart.ChartData.SetValue(6, 1, 25) + officeChart.ChartData.SetValue(7, 1, 30) + officeChart.ChartData.SetValue(1, 2, "2014") + officeChart.ChartData.SetValue(2, 2, 30) + officeChart.ChartData.SetValue(3, 2, 25) + officeChart.ChartData.SetValue(4, 2, 29) + officeChart.ChartData.SetValue(5, 2, 35) + officeChart.ChartData.SetValue(6, 2, 38) + officeChart.ChartData.SetValue(7, 2, 32) + officeChart.ChartData.SetValue(1, 3, "2015") + officeChart.ChartData.SetValue(2, 3, 35) + officeChart.ChartData.SetValue(3, 3, 37) + officeChart.ChartData.SetValue(4, 3, 30) + officeChart.ChartData.SetValue(5, 3, 50) + officeChart.ChartData.SetValue(6, 3, 25) + officeChart.ChartData.SetValue(7, 3, 30) + 'Add chart serie. + Dim serie1 As IOfficeChartSerie = officeChart.Series.Add("2013") + 'Set serie value. + serie1.Values = officeChart.ChartData(2, 1, 7, 1) + 'Add chart serie. + Dim serie2 As IOfficeChartSerie = officeChart.Series.Add("2014") + 'Set serie value. + serie2.Values = officeChart.ChartData(2, 2, 7, 2) + 'Add chart serie. + Dim serie3 As IOfficeChartSerie = officeChart.Series.Add("2015") + 'Set serie value. + serie3.Values = officeChart.ChartData(2, 3, 7, 3) + 'Set category labels value for the primary category axis. + officeChart.PrimaryCategoryAxis.CategoryLabels = officeChart.ChartData(2, 4, 7, 4) + 'Set the chart type. + officeChart.ChartType = OfficeChartType.Column_Clustered + 'Set the chart title. + officeChart.ChartTitle = "Mine Chart" + 'Convert the chart to image. + Dim chartImages As Image() = presentation__1.RenderAsImages(Syncfusion.Drawing.ImageType.Metafile) + For Each image As Image In chartImages + 'Save the image. + image.Save("ChartToImageConverter" + Guid.NewGuid() + ".png") + Next + 'Save the presentation. + presentation__1.Save("ChartToImageConverter.pptx") + 'Close the presentation. + presentation__1.Close() + + + + + + Represents the Show Header and Footer Placeholders on Title slide + + + + + Gets an instance. Read-only. + + + + //Create a presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Retrieve the built-in document property, it is read only + IBuiltInDocumentProperties builtin = presentation.BuiltInDocumentProperties; + //Set the application name + builtin.ApplicationName = "Essential Presentation"; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Retrieve the built-in document property, it is read only + Dim builtin As IBuiltInDocumentProperties = presentation__1.BuiltInDocumentProperties + 'Set the application name + builtin.ApplicationName = "Essential Presentation" + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets an instance. Read-only. + + + + //Create a presentation. + IPresentation presentation = Presentation.Create(); + //Retrieve the custom document property, it is read only + ICustomDocumentProperties custom = presentation.CustomDocumentProperties; + //Add custom document property + custom.Add("PropertyA"); + //Set the boolean property + custom["PropertyA"].Boolean = true; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation. + Dim presentation__1 As IPresentation = Presentation.Create() + 'Retrieve the custom document property, it is read only + Dim [custom] As ICustomDocumentProperties = presentation__1.CustomDocumentProperties + 'Add custom document property + [custom].Add("PropertyA") + 'Set the boolean property + [custom]("PropertyA").[Boolean] = True + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the first slide number of the PowerPoint Presentation. The default value is 1. + + + First slide number is the starting slide number of presentation, and this API allows to set the first slide number from 0 to 9999. + + + + //Creates a new PowerPint Presentation. + using (IPresentation presentation = Presentation.Create()) + { + //Sets the first slide number of the PowerPoint Presentation. + presentation.FirstSlideNumber = 5; + //Adds slide to the PowerPoint. + ISlide slide1 = presentation.Slides.Add(SlideLayoutType.TitleAndContent); + //Adds slide to the PowerPoint. + ISlide slide2 = presentation.Slides.Add(SlideLayoutType.TitleAndContent); + //Adds slide to the PowerPoint. + ISlide slide3 = presentation.Slides.Add(SlideLayoutType.TitleAndContent); + //Gets the first slide slidenumber. + int firstSlideNumber = slide1.SlideNumber; + //Gets the second slide slidenumber. + int secondSlideNumber = slide2.SlideNumber; + //Saves the PowerPoint Presentation. + presentation.Save("Output.pptx"); + } + + + 'Creates a PowerPoint instance + Using pptxDoc As IPresentation = Presentation.Create() + 'Sets the first slide number of the PowerPoint Presentation. + pptxDoc.FirstSlideNumber = 5 + 'Adds a slide to the PowerPoint presentation + Dim slide1 As ISlide = pptxDoc.Slides.Add(SlideLayoutType.TitleAndContent) + 'Adds a slide to the PowerPoint presentation + Dim slide2 As ISlide = pptxDoc.Slides.Add(SlideLayoutType.TitleAndContent) + 'Adds a slide to the PowerPoint presentation + Dim slide3 As ISlide = pptxDoc.Slides.Add(SlideLayoutType.TitleAndContent) + 'Gets the first slide slidenumber. + Dim firstSlideNumber As Integer = slide1.SlideNumber + 'Gets the second slide slidenumber. + Dim secondSlideNumber As Integer = slide2.SlideNumber + 'Saves the Presentation to the file system. + pptxDoc.Save("Output.pptx") + End Using + + + + + + Gets the notes size of instance. Read-only. + + + + + Gets or sets the slide names and its ISlide instance from input file. + + + + + Gets the slide size of instance. Read-only. + + + + //Create a presentation. + Presentation presentation = Presentation.Create() as Presentation; + //Add a blank slide for the chart. + ISlide slide = presentation.Slides.Add(SlideLayoutType.Blank); + //Retrieve the slides size, read only + ISlideSize slidesize = presentation.SlideSize; + //Set the slide orientation of presentation + slidesize.SlideOrientation = SlideOrientation.Landscape; + //Save the presentation + presentation.Save("Sample.pptx"); + //Close the presentation + presentation.Close(); + + + 'Create a presentation. + Dim presentation__1 As Presentation = TryCast(Presentation.Create(), Presentation) + 'Add a blank slide for the chart. + Dim slide As ISlide = presentation.Slides.Add(SlideLayoutType.Blank) + 'Retrieve the slides size, read only + Dim slidesize As ISlideSize = presentation__1.SlideSize + 'Set the slide orientation of presentation + slidesize.SlideOrientation = SlideOrientation.Landscape + 'Save the presentation + presentation__1.Save("Sample.pptx") + 'Close the presentation + presentation__1.Close() + + + + + + Gets or sets the theme override count. + + + + + Gets or sets the VML drawing count. + + + + + Represents a RendererBase object. + + Used to perform a MeasureString process. + + + + Gets or sets the password for the current presentation. + + + + + Get or Sets the ExcelCount in the presentation + + + + + Gets or sets whether the presentation has macros. + + + + //Opens an existing macro enabled PowerPoint presentation + IPresentation pptxDoc = Presentation.Open("Sample.PPTM"); + //Checks whether the presentation has macros and then removes them + if (pptxDoc.HasMacros) + pptxDoc.RemoveMacros(); + //Saves the presentation + pptxDoc.Save("Output.pptx"); + //Closes the presentation + pptxDoc.Close(); + + + 'Opens an existing macro enabled PowerPoint presentation + Dim pptxDoc As IPresentation = Presentation.Open("Sample.PPTM") + 'Checks whether the presentation has macros and then removes them + If pptxDoc.HasMacros Then + pptxDoc.RemoveMacros() + End If + 'Saves the presentation + pptxDoc.Save("Output.pptx") + 'Closes the presentation + pptxDoc.Close() + + + + + + Gets whether the presentation is write Protected. Read-only. + + + + //Create an instance for presentation + IPresentation presentation = Presentation.Open("Sample.pptx"); + //Check whether the presentation is write protected. + if (presentation.IsWriteProtected) + { + //Removes the write protection from presentation instance + presentation.RemoveWriteProtection(); + } + //Save the presentation + presentation.Save("Output.pptx"); + //Close the presentation. + presentation.Close(); + + + 'Create an instance for presentation + Dim presentation As IPresentation = Presentation.Open("Sample.pptx") + 'Check whether the presentation is write protected. + if (presentation.IsWriteProtected) + { + 'Removes the write protection from presentation instance + presentation.RemoveWriteProtection() + } + 'Save the presentation + presentation.Save("Output.pptx") + 'Close the presentation. + presentation.Close() + + + + + + Specifies the iterations count (spin count) to run hashing algorithm. + + + + + Specifies the dictionary used to hold the attributes and values for modifyVerifier/writeProtection element. + Key - Attribute name and Value - Attribute values. + + + + + Generates necessary attributes and its values of write protection element for setting the write protection. + + + + + + Removes all the attributes and its values of write protection element. + + + + + Creates the salt. + + The length. + + + + + Computes the hash. + + The salt. + The encrypted password. + + + + + Combines the byte arrays. + + The array1. + The array2. + + + + + Specifies the dictionary used to hold the attributes and values for modifyVerifier/writeProtection element. + Key - Attribute name and Value - Attribute values. + + + + + Gets a Boolean value represents whether the dictionary has any attributes and values for modifyVerifier/writeProtection element. + + + + + Gets the remove image element dictionary. + + + + + + Retrieves the content type based on the specified relation ID. + + The ID of the relation used to look up the content type. + + The content type associated with the given relation ID if found; otherwise, null. + + + + + Draw notes placeholder shape. + + Represents the shape to be draw. + + + + Check whether the picture is cropped with predefined shape path. + + Specify the picture to check + Return true, if picture is cropped with shape; otherwise return false. + + + + Apply duotone to the give image. + + In where the duotone need to apply. + duotone color informations. + Duotone applied image. + + + + Apply color Transformation to the given color. + + Color Transformation information. + color in where the transformation occur. + Transformation applied color. + + + + Executes Linear interpolation for Duotone. + + In where the factor is applied. + In where the factor is applied. + Factor value. + Final factorized color. + + + + Draws the paragraph collection. + + The collection of paragraphs to draw. + + + + Draws the paragraphs of notes slide shapes. + + The collection of paragraphs to draw. + + + + Draws the string using character spacing by splitting the string into character. + + Represents the paragraph object. + Represents the System.Drawing.Font. + Represents the solid brush to draw the text. + Represents the bounds of the text. + Represents the text content. + Represents the font instance. + + + + Gets or sets a value, which indicates whether the converted PDF document is tagged or not. + + + + + Draws a solid Rectangle in the image with the given Rectangle object that acts as a Highlight Color for that textpart + + Highlight color of the textpart + Rectangle object that has to be filled with the highlight color + + + + Draws the notes slide content. + + The notes slide to draw. + An array of streams containing the rendered content of notes slide. + + + + Radial Gradient Fill implementation. + + Path + + + + + + Specifies whether azure compatible with Metafile creation + + + + + Determine to check whether Azure compatible with EMF creation + + + + + + Creates the image. + + + + + + Change the Syncfusion.Drawing.ImageFormat to System.Drawing.Imaging.ImageFormat. + + Represent the image format to change. + Returns the System.Drawing.Imaging.ImageFormat. + + + + Specifies whether azure compatible with Metafile creation + + + + + Represents the conversion of PowerPoint slide to series of images based on animation order. + + + + + + //Open a PowerPoint Presentation. + IPresentation pptxDoc = Presentation.Open("Input.pptx"); + //Initialize the PresentationAnimationConverter to perform slide to image conversion based on animation order. + PresentationAnimationConverter animationConverter = new PresentationAnimationConverter(); + int i = 0; + foreach (ISlide slide in pptxDoc.Slides) + { + //Convert the PowerPoint slide to a series of images based on entrance animation effects. + Stream[] imageStreams = animationConverter.Convert(slide, Syncfusion.Drawing.ImageFormat.Png); + //Save the image stream. + foreach (Stream stream in imageStreams) + { + //Dispose the stream. + stream.Dispose(); + } + } + //Close the Presentation + pptxDoc.Close(); + //Dispose the instance. + animationConverter.Dispose(); + + + 'Open a PowerPoint Presentation. + Dim pptxDoc As IPresentation = Presentation.Open("Input.pptx") + 'Initialize the PresentationAnimationConverter to perform slide to image conversion based on animation order. + Dim animationConverter As PresentationAnimationConverter = New PresentationAnimationConverter() + Dim i As Integer = 0 + For Each slide As ISlide In pptxDoc.Slides + 'Convert the PowerPoint slide to a series of images based on entrance animation effects. + Dim imageStreams As Stream() = animationConverter.Convert(slide, Syncfusion.Drawing.ImageFormat.Png) + 'Save the image stream. + For Each stream As Stream In imageStreams + 'Dispose the stream. + stream.Dispose() + Next + Next + 'Close the Presentation + pptxDoc.Close() + 'Dispose the instance. + animationConverter.Dispose() + + + + + + Releases all resources used by the object. + + + + //Open a PowerPoint Presentation. + IPresentation pptxDoc = Presentation.Open("Input.pptx"); + //Initialize the PresentationAnimationConverter to perform slide to image conversion based on animation order. + PresentationAnimationConverter animationConverter = new PresentationAnimationConverter(); + int i = 0; + foreach (ISlide slide in pptxDoc.Slides) + { + //Convert the PowerPoint slide to a series of images based on entrance animation effects. + Stream[] imageStreams = animationConverter.Convert(slide, Syncfusion.Drawing.ImageFormat.Png); + //Save the image stream. + foreach (Stream stream in imageStreams) + { + //Dispose the stream. + stream.Dispose(); + } + } + //Close the Presentation + pptxDoc.Close(); + //Dispose the instance. + animationConverter.Dispose(); + + + 'Open a PowerPoint Presentation. + Dim pptxDoc As IPresentation = Presentation.Open("Input.pptx") + 'Initialize the PresentationAnimationConverter to perform slide to image conversion based on animation order. + Dim animationConverter As PresentationAnimationConverter = New PresentationAnimationConverter() + Dim i As Integer = 0 + For Each slide As ISlide In pptxDoc.Slides + 'Convert the PowerPoint slide to a series of images based on entrance animation effects. + Dim imageStreams As Stream() = animationConverter.Convert(slide, Syncfusion.Drawing.ImageFormat.Png) + 'Save the image stream. + For Each stream As Stream In imageStreams + 'Dispose the stream. + stream.Dispose() + Next + Next + 'Close the Presentation + pptxDoc.Close() + 'Dispose the instance. + animationConverter.Dispose() + + + + + + Gets the animated object list of the given slide. + + Represent the slide. + Represents the animated object collection. + Represents the trigger type of each animation effects. + Returns the animated object list of the given slide. + + + + + + + + + + + + + + + + + + + + + + + + + + Get Curved Connector path + + + formulaColl.Add("x2","*/ w adj1 100000"); + formulaColl.Add("x1","+/ l x2 2"); + formulaColl.Add("x3","+/ r x2 2"); + formulaColl.Add("y3","*/ h 3 4"); + + + + + + + + Get Bent Connector path + + + formulaColl.Add("x1","*/ w adj1 100000"); + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Get Triangle path + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the right arrow path. + + + + + + Gets the left arrow path. + + + + + + Gets down arrow path. + + + + + + Gets the left right arrow path. + + + + + + Gets the curved right arrow path. + + + + + + Gets the curved left arrow path. + + + + + + Gets the curved up arrow path. + + + + + + Gets the curved down arrow path. + + + + + + Gets up down arrow path. + + + + + + Gets the quad arrow path. + + + + + + Gets the left right up arrow path. + + + + + + Gets the bent arrow path. + + + + + + Gets the U trun arrow path. + + + + + + Gets the left up arrow path. + + + + + + Gets the bent up arrow path. + + + + + + Gets the striped right arrow path. + + + + + + Gets the notched right arrow path. + + + + + + Gets the pentagon path. + + + + + + Gets the chevron path. + + + + + + Gets the right arrow callout path. + + + + + + Gets down arrow callout path. + + + + + + Gets the left arrow callout path. + + + + + + Gets up arrow callout path. + + + + + + Gets the left right arrow callout path. + + + + + + Gets the quad arrow callout path. + + + + + + Gets the circular arrow path. + + + + + + Gets the math plus path. + + + + + + Gets the math minus path. + + + + + + Gets the math multiply path. + + + + + + Gets the math division path. + + + + + + Gets the math equal path. + + + + + + Gets the math not equal path. + + + + + + Gets the flow chart alternate process path. + + + + + + Gets the flow chart predefined process path. + + + + + + Gets the flow chart internal storage path. + + + + + + Gets the flow chart document path. + + + + + + Gets the flow chart multi document path. + + + + + + Gets the flow chart terminator path. + + + + + + Gets the flow chart preparation path. + + + + + + Gets the flow chart manual input path. + + + + + + Gets the flow chart manual operation path. + + + + + + Gets the flow chart connector path. + + + + + + Gets the flow chart off page connector path. + + + + + + Gets the flow chart card path. + + + + + + Gets the flow chart punched tape path. + + + + + + Gets the flow chart summing junction path. + + + + + + Gets the flow chart or path. + + + + + + Gets the flow chart collate path. + + + + + + Gets the flow chart sort path. + + + + + + Gets the flow chart extract path. + + + + + + Gets the flow chart merge path. + + + + + + Gets the flow chart online storage path. + + + + + + Gets the flow chart delay path. + + + + + + Gets the flow chart sequential access storage path. + + + + + + Gets the flow chart magnetic disk path. + + + + + + Gets the flow chart direct access storage path. + + + + + + Gets the flow chart display path. + + + + + + Gets the rectangular callout path. + + + + + + Gets the rounded rectangular callout path. + + + + + + Gets the oval callout path. + + + + + + Gets the cloud callout path. + + + + + + Gets the line callout1 path. + + + + + + Gets the line callout2 path. + + + + + + Gets the line callout3 path. + + + + + + Gets the line callout1 accent bar path. + + + + + + Gets the line callout2 accent bar path. + + + + + + Gets the line callout3 accent bar path. + + + + + + Gets the line callout1 no border path. + + + + + + Gets the line callout2 no border path. + + + + + + Gets the line callout3 no border path. + + + + + + Gets the line callout1 border and accent bar path. + + + + + + Gets the line callout2 border and accent bar path. + + + + + + Gets the line callout3 border and accent bar path. + + + + + + + + + + + + + + + + + + + + + Sets the font name of the bullet. + + Represent the font name. + + + + Compares the current ListFormat object with given ListFormat object. + + The ListFormat object to compare with the current instance. + True if the ListFormat objects are equal; otherwise, false. + + + + Specifies default numbering format. + + + + + Specifies UppRoman numbering format. + + + + + Specifies LowRoman numbering format. + + + + + Specifies UpLetter numbering format. + + + + + Specifies LowLetter numbering format. + + + + + Specifies Ordinal numbering format. + + + + + Specifies Number numbering format. + + + + + Specifies OrdinalText numbering format. + + + + + Specifies LeadingZero numbering format. + + + + + Specifies Bullet numbering format. + + + + + + + + + + Special numbering format. + + + + + Specifies None numbering format. + + + + + Compare the input font instance with current font instance. + + Represent a input font to compare. + Returns true, if input font is same as current font;Otherwise false. + + + + Gets the Default HighlightColor from the slide + + Color object + + + + Gets the Default HighlightColor from the layout or master slide + + ColorObject + + + + Gets a font name to render. + + + + + + Gets the default size for table font from master slide text style list. + + Returns the master slide other text style font size otherwise the default size + + + + Retrieves the theme color from the preserved elements of the specified shape. + + The shape object from which to retrieve the color. + + Returns the theme color based on the "fontRef" key from the preserved elements if it exists; otherwise, returns null. + + + + + Applies color mapping to the specified ColorObject. + + The ColorObject to which the color mapping will be applied. + The modified ColorObject with the color mapping applied. + + + + Gets the HighlightColor from style list or Placeholder + + ColorObject + + + + Gets the highlightColor from the Master Slide + + + + ColorObject + + + + Gets the default highlightColor from the Presentation + + ColorObject + + + + Gets the default highlightColor from the Stylelist + + + ColorObject + + + + Returns a font name value bases on script type. + + + + + + Sets the highlight colorobject + + + + + + Gets the highlight colorobject + + Highlight color + + + + Returns the bold property from the current paragraph + + + + + Creates color object to the color mapping value in the base slide + + + + + Updates the properties of the text part based on the current settings and styles. + + + + + Updates the style list properties for the given property type. + + The property type to update in the style list (e.g., "solidFill", "typeface"). + + + + Updates the style list properties with the given element. + + A dictionary where keys are style names and values are objects. + The element string used to update the properties of paragraphs in the style list. + + A boolean value indicating whether the update was successful. + + + + + Sets the character spacing to the current font instance. + + Character spacing value. + + + + Gets the character spacing of the current font. + + Returns the character spacing value. + + + + Gets whether character spacing is applied in current font or not. + + + + + + Represent whether TextPart is bi-directional or not. + + + + + Gets or sets the language identifier (locale). + + The short value that specifies the equivalent locale id. + + + + Check whether current font object has a font name or not. + + + + + Gets and Sets the Highlight color for the Font + + + + + Returns the bold property from the hierarchy if it is not mentioned in the current paragraph + + + + + Represent the RTL property. + + + + + Gets the BaseSlide from the paragraph, if available. + + + + + Gets a Language value as string. + + + + + Gets or sets the character spacing value for the text in a paragraph. + + + + + Splits the text part based on line break character. + + Specifies the given text. + Specifies the current text part. + + + + Adds a line break text part to the text part collection. + + + + + Adds the specified text part to the textpart collection with the specified link. + + The text content to initialize the new instance. + Applies hyperlink with to the textpart. + Returns an instance. + + + + Gets a default Alignement Type from table styles. + + Returns a default alignment type. + + + + Split a text part based on the font script type. + + + + + Check whether textInfo collection has a word split characters ' ', '-', '\t' (Tab) or not. + + Represent a input textinfo collection to check. + Retruns true if textInfo collection has a word split characters ' ', '-', '\t'; Otherwise false. + + + + Check whether input text has RTL text or not. + + Represent a input text + + Returns true, if input text has RTL character; Otherwise false. + + + + To check whether the specified language is arabic language or not. + + Specify the language local id + Return true if the language id is represent the arabic + + + + Split a text part based on the RTL text. + + + + + + Combine the TextPart by consicutive LTR and RTL texts. + + + + + Shift the layouted textpart in right to left direction + + + + + Update a bounds of re-ordered widgets. + + + + + + + + Get the start position of line based on paraBidi property. + + + + + + + + + Reorders the child widgets of a line for RTL text. + + + + + + Check whether to insert a WordSplit Character into left or right. + + + + + + + + + Update a CharacterRange type based on previous and next characters. + + + + + + + + + + Check whether current line has RTL content or not. + + Returns true, if current line have a RTL text; Otherwise false. + + + + Gets the line spacing value for the line + + + + + + + Check whether the last text part of the paragraph is line break + + + + + Close and Dispose the memory. + Note: Do not invoke this method, use Close method clear the memmory. + + + + + Finds all the occurance of the given word from the paragraph + + + List of TextSelection + + + + Finds the first occurance of the given word in the paragraph + + + Text selection + + + + Update the start and end index of the paragraph text parts + + + + + + Compares the content and properties of the current Paragraph object with given Paragraph object. + + The Paragraph object to compare with the current instance. + True if the content and properties of the Paragraph objects are equal; otherwise, false. + + + + Updates the properties of the paragraph based on certain conditions and style list properties. + + + + + Updates the paragraph properties based on a specified property by checking both the TextBody's + and the Presentation's default style list, if available. + + The property to update from the style lists. + + + + Updates the style list properties with the given element. + + A dictionary where keys are style names and values are objects. + The element string used to update the properties of paragraphs in the style list. + + A boolean value indicating whether the update was successful. + + + + + Gets or Sets the hidden property of paragraph based on animation. + + + + + Property to access the end paragraph font properties + + + + + Check whether the paragraph collection is hidden or not. + + Returns true, if its hidden; Otherwise, false. + + + + Compares the content and properties of the current Paragraphs object with given Paragraphs object. + + The Paragraphs object to compare with the current instance. + True if the content and properties of the Paragraphs objects are equal; otherwise, false. + + + + Check whether langauage has been defined or not. + + + + + + + Change first letter of string to uppercase. + + + + + + + Finds all the occurance of the given word from the TextBody + + + List of TextSelection + + + + Finds the first occurance of the given word in the TextBody + + + Text selection + + + + Compares the current TextBody object with given TextBody object. + + The TextBody object to compare with the current instance. + True if the TextBody objects are equal; otherwise, false. + + + + Compares the styles in the current style list with given style list. + + The dictionary representing the style list to compare with the current instance. + True if the styles in the style lists are equal; otherwise, false. + + + + Splits the paragraph if it contains '\n' and adds the splitted paragraph to the paragraph collection. + + The collection to which the split paragraphs are added. + The collection of split paragraphs. + + + + Gets or sets the spacing between the columns. + + + This property only valid, when there is more than 1 column present. + + + + + Gets or sets the right to left order of columns. + + + + + Sets the hyperlink to the textpart. + + Represents the address of the target hyperlink + Returns an instance. + The target can be a document path, web url, target slide, email_id. + + + + Gets a updated slide number value. + + Returns a corrsponding slide number value. + + + + Gets a updated date and time string. + + Returns a upated date and time string + + + + Removes the hyperlink from the current textpart. + + + + + Check whether current TextPart is, only having a WordSplit characters or not. + + Returns true, if it only has a WordSplit characters. Otherwise false. + + + + Check whether current TextPart is Hindi or not. + + Returns true, if it is a Hindi character. Otherwise false. + + + + Compares the content and properties of the current TextPart object with given TextPart object. + + The TextPart object to compare with the current instance. + True if the content and properties of the TextPart objects are equal; otherwise, false. + + + + Represent a FontScriptType of current text range. + + + + + Represents whether current TextRange has any chinese or symbol unicode or not. + + + + + Represent a CharacterRangeType of current text range. + + + + + Returns an instance that represents the hyperlink for the specified textpart. + + + + + Gets or Sets the starting position of the TextPart in a Paragraph + + + + + Represents the Text Selection + + + + + Initializes a new instance of the class. + + The paragraph. + The start char position. + The end char position. + + + + Splits and returns the required text part from the parent text part + + Text part array + + + + Combines and returns the splited text parts as one text part. + + Text part + + + + Split the required text part from the owner text part + + + + + Ensure the indexes + + + + + Gets the start or end range index + + + + + integer + + + + Add the text parts to the list + + + + + Update the following text selections + + + + + + Gets the selected text. Read-only. + + The string that represents the selected text. + + + + Gets the string at the specified index from the + collection. + + The zero-based index of the string to get. + The string at the specified collection. + + + + Gets the number of text chunks in the collection. Read-only. + + The count. + integer count of the selection + + + + Compares the content and properties of the current TextParts object with given TextParts object. + + The TextParts object to compare with the current instance. + True if the content and properties of the TextParts objects are equal; otherwise, false. + + + + This class used for implementing Advanced Encryption Standard algorithm. + + + + + Initializes a new instance of the Aes class. + + Key size. + Key bytes + + + + Initializes this instance. + + + + + Encipher 16 bit input + + 16 bit Input + Output value + + + + Decipher 16-bit input + + + + + + + Sets the nb nk nr. + + Size of the key. + + + + Builds the sbox. + + + + + Builds the inv sbox. + + + + + Builds the rcon. + + + + + Adds the round key. + + The round. + + + + Subs the bytes. + + + + + Invs the sub bytes. + + + + + Shifts the rows. + + + + + Invs the shift rows. + + + + + Mixes the columns. + + + + + Invs the mix columns. + + + + + Keys the expansion. + + + + + Subs the word. + + The word. + + + + + Rots the word. + + The word. + + + + + Possible key sizes. + key size, in bits, for constructor. + + + + + 128-bit. + + + + + 192-bit. + + + + + 256-bit. + + + + + This class is responsible for decryption of Agile encryption (Word 2010/2013) files. + + + + + Segment size. + + + + + Dataspace map. + + + + + Encryption info. + + + + + Compound storage that should be decrypted. + + + + + Intermediate key. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Hashing Algorithm used to compute hash. + + + + + Computes a Hash-based Message Authentication Code (HMAC) using the System.Security.Cryptography.SHA1 hash function. + + + + + Decrypts internal storage. + + Decrypted stream. + + + + Prepares decryptor for actual decryption. + + Compound storage to get required data. + + + + Checks whether password is correct. + + Password to check. + True if password verification succeeded. + + + + Checks the encrypted package. + + The encrypted package. + + + + + Decrypts the specified data. + + The data. + Size of the block. + The arr key. + The IV. + The actual length. + + + + + Parses the transform. + + The data spaces. + + + + Parses the data space map. + + The data spaces. + + + + Parses the transform info. + + The transform storage. + + + + Represents the agile encryption info for Encryption/Decryption of Word 2010/2013 documents. + + + + + A Version structure where Version.vMajor MUST be 0x0004, and Version.vMinor MUST be 0x0004. + + + + + A Reserved 4 bytes, MUST be 0x00000040. + + + + + An XmlEncryptionDescriptor structure that specifies encryption and hashing algorithm. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Default constructor. + + + + + Initializes new instance. + + Stream to get data from. + + + + Serializes object into stream. + + Stream to serialize into. + + + + Gets or sets the version info. + + The version info. + + + + Gets or sets the reserved. + + The reserved. + + + + An XmlEncryptionDescriptor structure that specifies encryption and hashing algorithm. + + + + + This class used to encrypt data using Agile encryption (Word 2010/2013). + + + + + Default version. + + + + + Reserved bytes. + + + + + Segment size. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Hashing Algorithm used to compute hash. + + + + + Computes a Hash-based Message Authentication Code (HMAC) using the System.Security.Cryptography.SHA1 hash function. + + + + + Hashing Algorithm name used to compute hash. + + + + + Encryption key bits. + + + + + Hash size. + + + + + Initializes encryptor for agile encryption. + + + + + Initializes encryptor for agile encryption. + + The hash algorithm. + The key bits. + Size of the hash. + + + + Encrypts specified stream. + + Data to encrypt. + Password to use. + Root storage to put encrypted data into. + + + + Prepares the encryption info. + + The data. + The root. + The password. + + + + Prepares the encrypted package. + + The data. + The root. + The key data. + The intermediate key. + + + + + Initializes the key data. + + The key data. + + + + Initializes the encrypted key. + + The key. + + + + Preparse data spaces structures inside specified storage. + + Storage to put DataSpaces inside. + + + + Serializes VersionInfo stream inside specified storage. + + Storage to serialize VersionInfo into. + + + + Serializes transformation info. + + Storage to serialize into. + + + + Serializes dataspace info. + + Storage to serialize into. + + + + Serializes DataSpaceMap stream. + + Storage to place stream into. + + + + Creates the salt. + + The length. + + + + + Encrypts the specified data. + + The data. + Size of the block. + The key. + The IV. + + + + + Represents the data space definition for Encryption/Decryption of Word documents. + + + + + Default header size. + + + + + Header length. + + + + + List with transform references. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Initializes new instance. + + + + + Initializes new instance of DataSpaceDefinition. + + Stream to get data from. + + + + Serializes dataspace definition into the stream. + + Stream to serialize into. + + + + List with transform references. + + + + + Represents the data space map for Encryption/Decryption of Word documents. + + + + + Size of the header. + + + + + Map entries. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Default constructor. + + + + + Initializes new instance of the DataSpaceMap. + + Stream to get data from. + + + + Serializes dataspace map into the stream. + + Stream to serialize into. + + + + Map entries. + + + + + Represents the data space map entry for Encryption/Decryption of Word documents. + + + + + List of the reference components. + + + + + DataSpace name. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Default constructor. + + + + + Initializes new instance of the map entry. + + Stream to get data from. + + + + Serializes single dataspace map entry into the stream. + + Stream to serialize into. + + + + List of the reference components. + + + + + DataSpace name. + + + + + Represents the data space reference component for Encryption/Decryption of Word documents. + + + + + Component type. + + + + + Component name. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Initializes new instance of the reference component. + + Component type. + Component name. + + + + Initializes new instance of the component reference. + + Stream to get data from. + + + + Serializes object into stream. + + Stream to serialize into. + + + + Component type. + + + + + Component name. + + + + + Represents the encryption header for Encryption/Decryption of Word documents. + + + + + An EncryptionHeaderFlags structure that specifies properties of the encryption algorithm used. + + + + + Reserved, MUST be 0x00000000. + + + + + A signed integer that specifies the encryption algorithm. + + + + + A signed integer that specifies the hashing algorithm in concert with the Flags.fExternal bit. + + + + + An unsigned integer that specifies the number of bits in the encryption key. + MUST be a multiple of 8. + + + + + An implementation specified value which corresponds to constants accepted by + the specified CSP. MUST be compatible with the chosen CSP. + + + + + Undefined and MUST be ignored. + + + + + MUST be 0x00000000 and MUST be ignored. + + + + + A null-terminated Unicode string that specifies the CSP name. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Default constructor. + + + + + Initializes new instance of the header and extracts its data from the stream. + + Stream to get data from. + + + + Extracts item's data from the specified stream. + + Stream to get data from. + + + + Serialize item in the specified stream. + + Stream to serialize data into. + + + + An EncryptionHeaderFlags structure that specifies properties of the encryption algorithm used. + + + + + Reserved, MUST be 0x00000000. + + + + + A signed integer that specifies the encryption algorithm. + + + + + A signed integer that specifies the hashing algorithm in concert with the Flags.fExternal bit. + + + + + An unsigned integer that specifies the number of bits in the encryption key. + MUST be a multiple of 8. + + + + + An implementation specified value which corresponds to constants accepted by + the specified CSP. MUST be compatible with the chosen CSP. + + + + + Undefined and MUST be ignored. + + + + + MUST be 0x00000000 and MUST be ignored. + + + + + A null-terminated Unicode string that specifies the CSP name. + + + + + Represents the encryption transform info for Encryption/Decryption of Word documents. + + + + + Transform name. + + + + + Block size. + + + + + Cipher mode. + + + + + Reserved. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Default constructor. + + + + + Initializes new instance of the class. + + Stream to get data from. + + + + Serializes object into stream. + + Stream. + + + + Transform name. + + + + + Block size. + + + + + Cipher mode. + + + + + Reserved. + + + + + Represents the encryption verifier for Encryption/Decryption of Word documents. + + + + + An array of bytes that specifies the salt value used during password hash + generation. MUST NOT be the same data used for the verifier stored encrypted + in the EncryptedVerifier field. + + + + + MUST be the randomly generated Verifier value encrypted using the algorithm + chosen by the implementation. + + + + + An array of bytes that contains the encrypted form of the hash of the randomly + generated Verifier value. The length of the array MUST be the size of the + encryption block size multiplied by the number of blocks needed to encrypt + the hash of the Verifier. If the encryption algorithm is RC4, the length + MUST be 20 bytes. If the encryption algorithm is AES, the length MUST be 32 bytes. + + + + + Size of the verifier hash. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Default constructor. + + + + + Initializes new instance of the verifier. + + Stream to get data from. + + + + Extracts object from stream. + + Stream to get data from. + + + + Serializes object into stream. + + Stream to serialize into. + + + + An array of bytes that specifies the salt value used during password hash + generation. MUST NOT be the same data used for the verifier stored encrypted + in the EncryptedVerifier field. + + + + + MUST be the randomly generated Verifier value encrypted using the algorithm + chosen by the implementation. + + + + + An array of bytes that contains the encrypted form of the hash of the randomly + generated Verifier value. The length of the array MUST be the size of the + encryption block size multiplied by the number of blocks needed to encrypt + the hash of the Verifier. If the encryption algorithm is RC4, the length + MUST be 20 bytes. If the encryption algorithm is AES, the length MUST be 32 bytes. + + + + + Gets/sets size of the verifier hash. + + + + + + + + + + Initializes a new instance of the class. + + + + + Initializes this instance. + + + + + Initializes the before reading the document. + + + + + Reads the Fib records from the specified stream. + + The stream. + + + + Reads the Fib records from the decrypted stream. + + The stream. + + + + Reads the Fib records after 64 bytes - cslw from the specified stream. + + The stream. + + + + Validates the cbRgFcLcb. + + + + + Validates the CSW new. + + + + + + + + + + Writes the Fib records to the specified stream. + + The stream. + + + + Writes the internal. + + The stream. + + + + Writes the after encryption. + + The stream. + + + + Updates the fcMac. + + + + + Closes this instance. + + + + + Gets the fib version determined in the Word document as per file format specifications. + + + The fib version. + + + + + Gets or sets an unsigned integer that specifies that this is a Word Binary File. This value MUST be 0xA5EC. + + + The w ident. + + + + + + Gets or sets the unused value. + This value is undefined and MUST be ignored. + + + The BaseUnused. + + + + + Gets or sets a LID that specifies the install language of the application that is producing the document. + If nFib is 0x00D9 or greater, then any East Asian install lid or any install lid with a base language of Spanish, German or French MUST be recorded as lidAmerican. + If the nFib is 0x0101 or greater, then any install lid with a base language of Vietnamese, Thai, or Hindi MUST be recorded as lidAmerican. + + + The lid. + + + + + Gets or sets an unsigned integer that specifies the offset in the WordDocument stream of the FIB for the document which contains all the AutoText items. + If this value is 0, there are no AutoText items attached. Otherwise the FIB is found at file location pnNext�512. + If fGlsy is 1 or fDot is 0, this value MUST be 0. + If pnNext is not 0, each FIB MUST share the same values for FibRgFcLcb97.fcPlcBteChpx, FibRgFcLcb97.lcbPlcBteChpx, FibRgFcLcb97.fcPlcBtePapx, FibRgFcLcb97.lcbPlcBtePapx, and FibRgLw97.cbMac. + + + The pn next. + + + + + Gets or sets a value specifies whether this is a document template (1). + + + true if this is a document template; otherwise, false. + + + + + Gets or sets a value specifies whether this is a document that contains only AutoText items (see FibRgFcLcb97.fcSttbfGlsy, FibRgFcLcb97.fcPlcfGlsy and FibRgFcLcb97.fcSttbGlsyStyle). + + + true if this is a document that contains only AutoText items; otherwise, false. + + + + + Gets or sets a value specifies that the last save operation that was performed on this document was an incremental save operation. + + + true if fComplex; otherwise, false. + + + + + + Gets or sets an unsigned integer. + If nFib is less than 0x00D9, then cQuickSaves specifies the number of consecutive times this document was incrementally saved. + If nFib is 0x00D9 or greater, then cQuickSaves MUST be 0xF. + + + The c quick saves. + + + + + Gets or sets a value specifies whether the document is encrypted or obfuscated as specified in Encryption and Obfuscation. + + + true if the document is encrypted or obfuscated; otherwise, false. + + + + + Gets or sets a value specifies the Table stream to which the FIB refers. When this value is set to 1, use 1Table; when this value is set to 0, use 0Table. + + + true if the Table stream is 1Table; otherwise, false. + + + + + Gets or sets a value specifies whether the document author recommended that the document be opened in read-only mode. + + + true if the document to be opened in read-only mode; otherwise, false. + + + + + Gets or sets a value specifies whether the document has a write-reservation password. + + + true if the document has a write-reservation password; otherwise, false. + + + + + Gets or sets a value indicating ext character. + This value MUST be 1. + + + true if ext character; otherwise, false. + + + + + Gets or sets a value specifies whether to override the language information and font that are specified in the paragraph style at istd 0 (the normal style) with the defaults that are appropriate for the installation language of the application. + + + true if load override; otherwise, false. + + + + + Gets or sets a value specifies whether the installation language of the application that created the document was an East Asian language. + + + true if far east; otherwise, false. + + + + + Gets or sets a value specifies whether the document is obfuscated by using XOR obfuscation. + If fEncrypted is 1, this bit specifies whether the document is obfuscated by using XOR obfuscation (section 2.2.6.1); otherwise, this bit MUST be ignored. + + + true if the document is obfuscated by using XOR obfuscation; otherwise, false. + + + + + + Gets or sets the key. + If fEncrypted is 1 and fObfuscation is 1, this value specifies the XOR obfuscation (section 2.2.6.1) password verifier. + If fEncrypted is 1 and fObfuscation is 0, this value specifies the size of the EncryptionHeader that is stored at the beginning of the Table stream as described in Encryption and Obfuscation. + Otherwise, this value MUST be 0. + + + The l key. + + + + + Gets or sets the envr. + This value MUST be 0, and MUST be ignored. + + + The envr. + + + + + Gets or sets a value indicating whether mac. + This value MUST be 0, and MUST be ignored. + + + true if mac; otherwise, false. + + + + + + Gets or sets a value specifies whether to override the section properties for page size, orientation, and margins with the defaults that are appropriate for the installation language of the application. + + + true if load override page; otherwise, false. + + + + + Gets or sets a value indicating the reserved1. + This value is undefined and MUST be ignored. + + + true if reserved1; otherwise, false. + + + + + Gets or sets a value indicating the reserved2. + This value is undefined and MUST be ignored. + + + true if reserved2; otherwise, false. + + + + + Gets or sets the spare0. + This value is undefined and MUST be ignored. + + + The f spare0. + + + + + Gets or sets a value indicating the reserved3. + This value MUST be 0 and MUST be ignored. + + + The reserved3. + + + + + Gets or sets a value indicating the reserved4. + This value MUST be 0 and MUST be ignored. + + + The reserved4. + + + + + Gets or sets a value indicating the reserved5. + This value is undefined and MUST be ignored. + + + The reserved5. + + + + + Gets or sets a value indicating the reserved6. + This value is undefined and MUST be ignored. + + + The reserved6. + + + + + Gets or sets an unsigned integer that specifies the count of 16-bit values corresponding to fibRgW that follow. MUST be 0x000E. + + + The CSW. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg w reserved1. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg w reserved2. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg w reserved3. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fib rg w reserved4. + + + + + + + + + + + + + + A LID whose meaning depends on the nFib value. Gets or sets the lid fe. + + + The lid fe. + + + + + Gets or sets an unsigned integer that specifies the count of 32-bit values corresponding to fibRgLw that follow. MUST be 0x0016. + + + The CSLW. + + + + + Specifies the count of bytes of those written to the WordDocument stream of the file that have any meaning. Gets or sets the cb mac. + + + The cb mac. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The rg lw reserved1. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The rg lw reserved2. + + + + + Specifies the count of CPs in the main document. Gets or sets the CCP text. + + + The CCP text. + + + + + Specifies the count of CPs in the footnote subdocument. Gets or sets the CCP FTN. + + + The CCP FTN. + + + + + Specifies the count of CPs in the header subdocument. Gets or sets the CCP HDD. + + + The CCP HDD. + + + + + Gets or sets this value MUST be zero and MUST be ignored. + + + The rg lw reserved3. + + + + + Specifies the count of CPs in the comment subdocument. Gets or sets the CCP atn. + + + The CCP atn. + + + + + Specifies the count of CPs in the endnote subdocument. Gets or sets the CCP edn. + + + The CCP edn. + + + + + Specifies the count of CPs in the textbox subdocument of the main document. Gets or sets the CCP TXBX. + + + The CCP TXBX. + + + + + Specifies the count of CPs in the textbox subdocument of the header. Gets or sets the CCP HDR TXBX. + + + The CCP HDR TXBX. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The rg lw reserved4. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The rg lw reserved5. + + + + + Gets or sets the rg lw reserved6. + + + The rg lw reserved6. + + + + + Gets or sets this value is undefined and MUST be ignored + + + The rg lw reserved7. + + + + + Gets or sets this value is undefined and MUST be ignored + + + The rg lw reserved8. + + + + + Gets or sets the rg lw reserved9. + + + The rg lw reserved9. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The rg lw reserved10. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The rg lw reserved11. + + + + + + Gets or sets this value MUST be zero and MUST be ignored. + + + The rg lw reserved13. + + + + + Gets or sets this value MUST be zero and MUST be ignored. + + + The rg lw reserved14. + + + + + Gets or sets an unsigned integer that specifies the count of 64-bit values corresponding to fibRgFcLcbBlob that follow. + This MUST be one of the following values, depending on the value of nFib. + Value of nFib cbRgFcLcb + 0x00C1 0x005D + 0x00D9 0x006C + 0x0101 0x0088 + 0x010C 0x00A4 + 0x0112 0x00B7 + + + The cb rg fc LCB. + + + + the fib rg fc LCB97 fc STSHF original. + Gets or sets This value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc STSHF original. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fib rg fc LCB97 LCB STSHF original. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An STSH that specifies the + style sheet for this document begins at this offset. + + + The fc STSHF. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the STSH that begins at offset + fcStshf in the Table Stream. This MUST be a nonzero value. + + + The LCB STSHF. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcffndRef begins at this + offset and specifies the locations of footnote references in the Main Document, and whether those references + use auto-numbering or custom symbols. If lcbPlcffndRef is zero, fcPlcffndRef is undefined and MUST be + ignored. + + + The fc PLCFFND reference. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcffndRef that begins at offset + fcPlcffndRef in the Table Stream. + + + The LCB PLCFFND reference. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcffndTxt begins at this + offset and specifies the locations of each block of footnote text in the Footnote Document. If lcbPlcffndTxt + is zero, fcPlcffndTxt is undefined and MUST be ignored. + + + The fc PLCFFND text. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcffndTxt that begins at offset + fcPlcffndTxt in the Table Stream. + + + The LCB PLCFFND text. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfandRef begins at this + offset and specifies the dates, user initials, and locations of comments in the Main Document. If + lcbPlcfandRef is zero, fcPlcfandRef is undefined and MUST be ignored. + + + The fc plcfand reference. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfandRef at offset fcPlcfandRef + in the Table Stream. + + + The LCB plcfand reference. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfandTxt begins at this + offset and specifies the locations of comment text ranges in the Comment Document. If lcbPlcfandTxt is zero, + fcPlcfandTxt is undefined, and MUST be ignored. + + + The fc plcfand text. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfandTxt at offset fcPlcfandTxt + in the Table Stream. + + + The LCB plcfand text. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfSed begins at this + offset and specifies the locations of property lists for each section in the Main Document. If lcbPlcfSed is + zero, fcPlcfSed is undefined and MUST be ignored. + + + The LCB plcfand text. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfSed that begins at offset + fcPlcfSed in the Table Stream. + + + The LCB PLCF sed. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc PLC pad. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The fc PLC pad. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Plc at offset fcPlcfPhe in the + Table Stream. + + + The LCB PLCF phe. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A SttbfGlsy that contains + information about the AutoText items that are defined in this document begins at this offset. + + + The fc STTBF glsy. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbfGlsy at offset fcSttbfGlsy + in the Table Stream. If base.fGlsy of the Fib that contains this FibRgFcLcb97 is zero, this value MUST be + zero. + + + The LCB STTBF glsy. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfGlsy that contains + information about the AutoText items that are defined in this document begins at this offset. + + + The fc PLCF glsy. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfGlsy at offset fcPlcfGlsy in + the Table Stream. If base.fGlsy of the Fib that contains this FibRgFcLcb97 is zero, this value MUST be zero. + + + The LCB PLCF glsy. + + + + + Gets or sets An unsigned integer that specifies the offset in the Table Stream where a Plcfhdd begins. The + Plcfhdd specifies the locations of each block of header/footer text in the WordDocument Stream. + + + The fc PLCF HDD. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Plcfhdd at offset fcPlcfHdd in + the Table Stream. If there is no Plcfhdd, this value MUST be zero. A Plcfhdd MUST exist if FibRgLw97.ccpHdd + indicates that there are characters in the Header Document + + + The LCB PLCF HDD. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcBteChpx begins at the + offset. fcPlcfBteChpx MUST be greater than zero, and MUST be a valid offset in the Table Stream. + + + The fc PLCF bte CHPX. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcBteChpx at offset + fcPlcfBteChpx in the Table Stream. lcbPlcfBteChpx MUST be greater than zero. + + + The LCB PLCF bte CHPX. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcBtePapx begins at the + offset. fcPlcfBtePapx MUST be greater than zero, and MUST be a valid offset in the Table Stream. + + + The fc PLCF bte papx. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcBtePapx at offset + fcPlcfBtePapx in the Table Stream. lcbPlcfBteChpx MUST be greater than zero. + + + The LCB PLCF bte papx. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc PLCF sea. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB PLCF sea. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An SttbfFfn begins at this + offset. This table specifies the fonts that are used in the document. If lcbSttbfFfn is 0, fcSttbfFfn is + undefined and MUST be ignored. + + + The fc STTBF FFN. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbfFfn at offset fcSttbfFfn in + the Table Stream. + + + The LCB STTBF FFN. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcFld begins at this + offset and specifies the locations of field characters in the Main Document. All CPs in this PlcFld MUST be + greater than or equal to 0 and less than or equal to FibRgLw97.ccpText. If lcbPlcfFldMom is zero, + fcPlcfFldMom is undefined and MUST be ignored. + + + The fc PLCF field mom. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcFld at offset fcPlcfFldMom in + the Table Stream. + + + The LCB PLCF field mom. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcFld begins at this + offset and specifies the locations of field characters in the Header Document. All CPs in this PlcFld are + relative to the starting position of the Header Document. + + + The fc PLCF field HDR. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcFld at offset fcPlcfFldHdr in + the Table Stream. + + + The LCB PLCF field HDR. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcFld begins at this + offset and specifies the locations of field characters in the Footnote Document. All CPs in this PlcFld are + relative to the starting position of the Footnote Document. + + + The fc PLCF field FTN. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcFld at offset fcPlcfFldFtn in + the Table Stream. + + + The LCB PLCF field FTN. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcFld begins at this + offset and specifies the locations of field characters in the Comment Document. All CPs in this PlcFld are + relative to the starting position of the Comment Document. + + + The fc PLCF field atn. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcFld at offset fcPlcfFldAtn in + the Table Stream. + + + The LCB PLCF field atn. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc PLCF field MCR. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB PLCF field MCR. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An SttbfBkmk that contains + the names of the bookmarks (1) in the document begins at this offset. + + + The fc STTBF BKMK. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbfBkmk at offset fcSttbfBkmk. + + + The LCB STTBF BKMK. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfBkf that contains + information about the standard bookmarks (1) in the document begins at this offset. If lcbPlcfBkf is zero, + fcPlcfBkf is undefined and MUST be ignored. + + + The fc PLCF BKF. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfBkf at offset fcPlcfBkf. + + + The LCB PLCF BKF. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfBkl that contains + information about the standard bookmarks (1) in the document begins at this offset. + + + The fc PLCF BKL. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfBkl at offset fcPlcfBkl. + + + The LCB PLCF BKL. + + + + + Gets or sets An unsigned integer that specifies the offset in the Table Stream of a Tcg that specifies + command-related customizations. If lcbCmds is zero, fcCmds is undefined and MUST be ignored. + + + The fc CMDS. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Tcg at offset fcCmds. + + + The LCB CMDS. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc unused1. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB unused1. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc STTBF MCR. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB STTBF MCR. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. The PrDrvr, which contains + printer driver information (the names of drivers, port, and so on), begins at this offset. + + + The fc pr DRVR. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PrDrvr at offset fcPrDrvr. + + + The LCB pr DRVR. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. The PrEnvPort that is the + print environment in portrait mode begins at this offset. If lcbPrEnvPort is zero, fcPrEnvPort is undefined + and MUST be ignored. + + + The fc pr env port. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PrEnvPort at offset fcPrEnvPort. + + + The LCB pr env port. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. The PrEnvLand that is the + print environment in landscape mode begins at this offset. If lcbPrEnvLand is zero, fcPrEnvLand is undefined + and MUST be ignored. + + + The fc pr env land. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PrEnvLand at offset fcPrEnvLand. + + + The LCB pr env land. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A Selsf begins at this offset + and specifies the last selection that was made in the Main Document. If lcbWss is zero, fcWss is undefined + and MUST be ignored. + + + The fc WSS. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Selsf at offset fcWss. + + + The LCB WSS. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A Dop begins at this offset. + + + The fc dop. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Dopat fcDop. This value MUST NOT + be zero. + + + The LCB dop. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An SttbfAssoc that contains + strings that are associated with the document begins at this offset. + + + The fc STTBF assoc. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbfAssoc at offset fc + SttbfAssoc. This value MUST NOT be zero. + + + The LCB STTBF assoc. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A Clx begins at this offset. + + + The fc CLX. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Clx at offset fcClx in the Table + Stream. This value MUST be greater than zero. + + + The LCB CLX. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc PLCF PGD FTN. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB PLCF PGD FTN. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc autosave source. + + + + + Gets or sets This value MUST be zero and MUST be ignored. + + + The LCB autosave source. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An array of XSTs begins at + this offset. The value of cch for all XSTs in this array MUST be less than 56. The number of entries in this + array is limited to 0x7FFF. + + + The fc GRP XST atn owners. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the XST array at offset + fcGrpXstAtnOwners in the Table Stream. + + + The LCB GRP XST atn owners. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An SttbfAtnBkmk that contains + information about the annotation bookmarks in the document begins at this offset. + + + The fc STTBF atn BKMK. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbfAtnBkmk at offset + fcSttbfAtnBkmk. + + + The LCB STTBF atn BKMK. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc unused2. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB unused2. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc unused3. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB unused3. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfSpa begins at this + offset. The PlcfSpa contains shape information for the Main Document. + + + The fc PLC spa mom. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfSpa at offset fcPlcSpaMom. + + + The LCB PLC spa mom. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfSpa begins at this + offset. The PlcfSpa contains shape information for the Header Document. + + + The fc PLC spa HDR. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfSpa at the offset + fcPlcSpaHdr. + + + The LCB PLC spa HDR. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfBkf that contains + information about annotation bookmarks in the document begins at this offset. If lcbPlcfAtnBkf is zero, + fcPlcfAtnBkf is undefined and MUST be ignored. + + + The LCB PLC spa HDR. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfBkf at offset fcPlcfAtnBkf. + + + The LCB PLCF atn BKF. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfBkl that contains + information about annotation bookmarks in the document begins at this offset. If lcbPlcfAtnBkl is zero, then + fcPlcfAtnBkl is undefined and MUST be ignored. + + + The fc PLCF atn BKL. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfBkl at offset fcPlcfAtnBkl. + + + The LCB PLCF atn BKL. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A Pms, which contains the + current state of a print merge operation, begins at this offset. If lcbPms is zero, fcPms is undefined and + MUST be ignored. + + + The fc PMS. + + + + + Gets or sets An unsigned integer which specifies the size, in bytes, of the Pms at offset fcPms. + + + The LCB PMS. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc form field STTBS. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB form field STTBS. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfendRef that begins at + this offset specifies the locations of endnote references in the Main Document and whether those references + use auto-numbering or custom symbols. + + + The fc plcfend reference. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfendRef that begins at offset + fcPlcfendRef in the Table Stream. + + + The LCB plcfend reference. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfendTxt begins at this + offset and specifies the locations of each block of endnote text in the Endnote Document. If lcbPlcfendTxt + is zero, fcPlcfendTxt is undefined and MUST be ignored. + + + The fc plcfend text. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfendTxt that begins at offset + fcPlcfendTxt in the Table Stream. + + + The LCB plcfend text. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcFld begins at this + offset and specifies the locations of field characters in the Endnote Document. + + + The fc PLCF field edn. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcFld at offset fcPlcfFldEdn in + the Table Stream. + + + The LCB PLCF field edn. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc unused4. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB unused4. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An OfficeArtContent that + contains information about the drawings in the document begins at this offset. + + + The fc DGG information. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the OfficeArtContent at the offset + fcDggInfo. If lcbDggInfo is zero, there MUST NOT be any drawings in the document. + + + The LCB DGG information. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An SttbfRMark that contains + the names of authors who have added revision marks or comments to the document begins at this offset. + + + The fc STTBF r mark. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbfRMark at the offset + fcSttbfRMark. + + + The LCB STTBF r mark. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An SttbfCaption that contains + information about the captions that are defined in this document begins at this offset. + + + The fc STTBF caption. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbfCaption at offset + fcSttbfCaption in the Table Stream. If base.fDot of the Fib that contains this FibRgFcLcb97 is zero, this + value MUST be zero. + + + The LCB STTBF caption. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A SttbfAutoCaption that + contains information about the AutoCaption strings defined in this document begins at this offset. + + + The fc STTBF automatic caption. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbfAutoCaption at offset + fcSttbfAutoCaption in the Table Stream. If base.fDot of the Fib that contains this FibRgFcLcb97 is zero, + this MUST be zero. + + + The LCB STTBF automatic caption. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfWKB that contains + information about all master documents and subdocuments begins at this offset. + + + The fc PLCF WKB. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfWKB at offset fcPlcfWkb in + the Table Stream. If lcbPlcfWkb is zero, fcPlcfWkb is undefined and MUST be ignored. + + + The LCB PLCF WKB. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A Plcfspl, which specifies + the state of the spell checker for each text range, begins at this offset. If lcbPlcfSpl is zero, then + fcPlcfSpl is undefined and MUST be ignored. + + + The fc PLCF SPL. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Plcfspl that begins at offset + fcPlcfSpl in the Table Stream. + + + The LCB PLCF SPL. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcftxbxTxt begins at this + offset and specifies which ranges of text are contained in which textboxes. If lcbPlcftxbxTxt is zero, + fcPlcftxbxTxt is undefined and MUST be ignored. + + + The fc PLCFTXBX text. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcftxbxTxt that begins at offset + fcPlcftxbxTxt in the Table Stream. + + + The LCB PLCFTXBX text. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcFld begins at this + offset and specifies the locations of field characters in the Textbox Document. All CPs in this PlcFld are + relative to the starting position of the Textbox Document. + + + The fc PLCF field TXBX. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcFld at offset fcPlcfFldTxbx in + the Table Stream. + + + The LCB PLCF field TXBX. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfHdrtxbxTxt begins at + this offset and specifies which ranges of text are contained in which header textboxes. + + + The fc PLCF HDRTXBX text. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfHdrtxbxTxt that begins at + offset fcPlcfHdrtxbxTxt in the Table Stream. + + + The LCB PLCF HDRTXBX text. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcFld at offset fcPlcffldHdrTxbx + in the Table Stream. + + + The fc PLCFFLD HDR TXBX. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcFld at offset fcPlcffldHdrTxbx + in the Table Stream. + + + The LCB PLCFFLD HDR TXBX. + + + + + Gets or sets An unsigned integer that specifies an offset into the Table Stream. An StwUser that specifies + the user-defined variables and VBAdigital signature (2), as specified by [MS-OSHARED] section 2.3.2, begins + at this offset. + + + The fc STW user. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the StwUser at offset fcStwUser. + + + The LCB STW user. + + + + + Gets or sets An unsigned integer that specifies an offset into the Table Stream. A SttbTtmbd begins at this + offset and specifies information about the TrueType fonts that are embedded in the document. If lcbSttbTtmbd + is zero, fcSttbTtmbd is undefined and MUST be ignored. + + + The fc STTB TTMBD. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbTtmbd at offset fcSttbTtmbd. + + + The LCB STTB TTMBD. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the RgCdb at offset fcCookieData in + the Table Stream. + + + The LCB cookie data. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated document page layout + cache at offset fcPgdMotherOldOld in the Table Stream. + + + The LCB PGD mother old old. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated document text flow + break cache at offset fcBkdMotherOldOld in the Table Stream. + + + The LCB BKD mother old old. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated footnote layout cache + at offset fcPgdFtnOldOld in the Table Stream. + + + The LCB PGD FTN old old. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated footnote text flow + break cache at offset fcBkdFtnOldOld in the Table Stream. + + + The LCB BKD FTN old old. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated endnote layout cache + at offset fcPgdEdnOldOld in the Table Stream. + + + The LCB PGD edn old old. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated endnote text flow + break cache at offset fcBkdEdnOldOld in the Table Stream. + + + The LCB BKD edn old old. + + + + + Gets or sets this value is undefined and MUST be ignored. + + + The fib rg fc LCB97 fc STTBF intl field. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB STTBF intl field. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the RouteSlip at offset fcRouteSlip + in the Table Stream. + + + The LCB route slip. + + + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An SttbFnm that contains + information about the external files that are referenced by this document begins at this offset. If + lcbSttbFnm is zero, fcSttbFnm is undefined and MUST be ignored. + + + The fc STTB FNM. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbFnm at the offset fcSttbFnm. + + + The LCB STTB FNM. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlfLst that contains list + formatting information begins at this offset. An array of LVLs is appended to the PlfLst. + + + The fc PLF LST. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlfLst at the offset fcPlfLst. + This does not include the size of the array of LVLs that are appended to the PlfLst. + + + The LCB PLF LST. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlfLfo that contains list + formatting override information begins at this offset. If lcbPlfLfo is zero, fcPlfLfo is undefined and MUST + be ignored. + + + The fc PLF lfo. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlfLfo at the offset fcPlfLfo. + + + The LCB PLF lfo. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcftxbxBkd begins at this + offset and specifies which ranges of text go inside which textboxes. + + + The fc PLCF TXBX BKD. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcftxbxBkd that begins at offset + fcPlcfTxbxBkd in the Table Stream. + + + The LCB PLCF TXBX BKD. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfTxbxHdrBkd begins at + this offset and specifies which ranges of text are contained inside which header textboxes. + + + The fc PLCF TXBX HDR BKD. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfTxbxHdrBkd that begins at + offset fcPlcfTxbxHdrBkd in the Table Stream. + + + The LCB PLCF TXBX HDR BKD. + + + + + + Gets or sets An unsigned integer. If this is nonzero, version-specific undo information exists at offset + fcDocUndoWord9 in the WordDocument Stream. + + + The LCB document undo word9. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the version-specific undo information + at offset fcRgbUse in the WordDocument Stream. + + + The LCB RGB use. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the version-specific undo + information at offset fcUsp in the WordDocument Stream. + + + The LCB usp. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the version-specific undo informatio + at offset fcUskf in the Table Stream. + + + The LCB uskf. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Plc at offset fcPlcupcRgbUse in + the Table Stream. + + + The LCB plcupc RGB use. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Plc at offset fcPlcupcUsp in the + Table Stream. + + + The LCB plcupc usp. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A SttbGlsyStyle, which + contains information about the styles that are used by the AutoText items which are defined in this + document, begins at this offset. + + + The fc STTB glsy style. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbGlsyStyle at offset + fcSttbGlsyStyle in the Table Stream. If base.fGlsy of the Fib that contains this FibRgFcLcb97 is zero, this + value MUST be zero. + + + The LCB STTB glsy style. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlfGosl begins at the + offset. If lcbPlgosl is zero, fcPlgosl is undefined and MUST be ignored. + + + The fc plgosl. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlfGosl at offset fcPlgosl in the + Table Stream. + + + The LCB plgosl. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A RgxOcxInfo that specifies + information about the OLE controls in the document begins at this offset. + + + The fc plcocx. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the RgxOcxInfo at the offset + fcPlcocx. + + + The LCB plcocx. + + + + + + + Gets or sets The low-order part of a FILETIME structure, as specified by [MS-DTYP], that specifies when the + document was last saved. + + + The dw low date time. + + + + + Gets or sets The high-order part of a FILETIME structure, as specified by [MS-DTYP], that specifies when the + document was last saved. + + + The dw high date time. + + + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfAsumy begins at the + offset. If lcbPlcfAsumy is zero, fcPlcfAsumy is undefined and MUST be ignored. + + + The fc PLCF asumy. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfAsumy at offset fcPlcfAsumy + in the Table Stream. + + + The LCB PLCF asumy. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A Plcfgram, which specifies + the state of the grammar checker for each text range, begins at this offset. If lcbPlcfGram is zero, then + fcPlcfGram is undefined and MUST be ignored. + + + The fc PLCF gram. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Plcfgram that begins at offset + fcPlcfGram in the Table Stream. + + + The LCB PLCF gram. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A SttbListNames, which + specifies the LISTNUM field names of the lists in the document, begins at this offset. + + + The fc STTB list names. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbListNames at the offset + fcSttbListNames. + + + The LCB STTB list names. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated, version-specific undo + information at offset fcSttbfUssr in the Table Stream. + + + The LCB STTBF ussr. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcfTch at offset fcPlcfTch. + + + The LCB PLCF TCH. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An RmdThreading that specifies the data concerning the e-mail + messages and their authors in this document begins at this offset. + + + The fc RMD threading. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the RmdThreading at the offset fcRmdThreading. This value MUST NOT be zero. + + + The LCB RMD threading. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A double-byte character Unicode string that specifies the + message identifier of the document begins at this offset. This value MUST be ignored. + + + The fc mid. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the double-byte character Unicode string at offset fcMid. This value MUST be ignored. + + + The LCB mid. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A SttbRgtplc that specifies the styles of lists in the document + begins at this offset. If lcbSttbRgtplc is zero, fcSttbRgtplc is undefined and MUST be ignored. + + + The fc STTB RGTPLC. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbRgtplc at the offset fcSttbRgtplc. + + + The LCB STTB RGTPLC. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An MsoEnvelopeCLSID, which specifies the envelope data as + specified by [MS-OSHARED] section 2.3.8.1, begins at this offset. If lcbMsoEnvelope is zero, fcMsoEnvelope is undefined and MUST be ignored. + + + The fc mso envelope. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the MsoEnvelopeCLSID at the offset fcMsoEnvelope. + + + The LCB mso envelope. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A Plcflad begins at this offset and specifies the language + auto-detect state of each text range. If lcbPlcfLad is zero, fcPlcfLad is undefined and MUST be ignored. + + + The fc PLCF lad. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the Plcflad that begins at offset fcPlcfLad in the Table Stream. + + + The LCB PLCF lad. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A variable-length array with elements of type Dofrh begins at that offset. + The elements of this array are records that support the frame set and list style features. If lcbRgDofr is zero, fcRgDofr is undefined and MUST be ignored. + + + The fc rg dofr. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the array that begins at offset fcRgDofr in the Table Stream. + + + The LCB rg dofr. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A PlfCosl begins at the offset. If lcbPlcosl is zero, + fcPlcosl is undefined and MUST be ignored. + + + The fc plcosl. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PlfCosl at offset fcPlcosl in the Table Stream. + + + The LCB plcosl. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PlcfcookieOld at offset fcPlcfcookieOld in the Table Stream. + + + The LCB PLCF cookie old. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated document page layout cache at offset fcPgdMotherOld in the Table Stream. + + + The LCB PGD mother old. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated document text flow break cache at offset fcBkdMotherOld in the Table Stream. + + + The LCB BKD mother old. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated footnote layout cache at offset fcPgdFtnOld in the Table Stream. + + + The LCB PGD FTN old. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated footnote text flow break cache at offset fcBkdFtnOld in the Table Stream. + + + The LCB BKD FTN old. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated endnote layout cache at offset fcPgdEdnOld in the Table Stream. + + + The LCB PGD edn old. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated endnote text flow break cache at offset fcBkdEdnOld in the Table Stream. + + + The LCB BKD edn old. + + + + + Gets or sets the fc unused1. This value is undefined and MUST be ignored. + + + The fc unused1. + + + + + Gets or sets the LCB unused1.This value MUST be zero, and MUST be ignored + + + The LCB unused1. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A PGPArray begins at this offset. + If lcbPlcfPgp is 0, fcPlcfPgp is undefined and MUST be ignored. + + + The fc PLCF PGP. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PGPArray that is stored at offset fcPlcfPgp. + + + The LCB PLCF PGP. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A Plcfuim begins at this offset. + If lcbPlcfuim is zero, fcPlcfuim is undefined and MUST be ignored. + + + The fc plcfuim. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the Plcfuim at offset fcPlcfuim. + + + The LCB plcfuim. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A PlfguidUim begins at this offset. + If lcbPlfguidUim is zero, fcPlfguidUim is undefined and MUST be ignored. + + + The fc plfguid uim. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PlfguidUim at offset fcPlfguidUim. + + + The LCB plfguid uim. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. An AtrdExtra begins at this offset. + If lcbAtrdExtra is zero, fcAtrdExtra is undefined and MUST be ignored. + + + The fc atrd extra. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the AtrdExtra at offset fcAtrdExtra in the Table Stream. + + + The LCB atrd extra. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A PLRSID begins at this offset. + If lcbPlrsid is zero, fcPlrsid is undefined and MUST be ignored. + + + The fc plrsid. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PLRSID at offset fcPlrsid in the Table Stream. + + + The LCB plrsid. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An SttbfBkmkFactoid containing + information about smart tag bookmarks in the document begins at this offset. If lcbSttbfBkmkFactoid is zero, + fcSttbfBkmkFactoid is undefined and MUST be ignored. + + + The fc STTBF BKMK factoid. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the SttbfBkmkFactoid at offset fcSttbfBkmkFactoid. + + + The LCB STTBF BKMK factoid. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfBkfd that contains + information about the smart tag bookmarks in the document begins at this offset. If lcbPlcfBkfFactoid is zero, + fcPlcfBkfFactoid is undefined and MUST be ignored. + + + The fc PLCF BKF factoid. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PlcfBkfd at offset fcPlcfBkfFactoid. + + + The LCB PLCF BKF factoid. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the Plcfcookie at offset fcPlcfcookie in the Table Stream. + + + The LCB plcfcookie. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A Plcfbkld that contains + information about the smart tag bookmarks in the document begins at this offset. If lcbPlcfBklFactoid is zero, + fcPlcfBklFactoid is undefined and MUST be ignored. + + + The fc PLCF BKL factoid. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the Plcfbkld at offset fcPlcfBklFactoid. + + + The LCB PLCF BKL factoid. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A SmartTagData begins + at this offset and specifies information about the smart tag recognizers that are used in this document. + If lcbFactoidData is zero, fcFactoidData is undefined and MUST be ignored. + + + The fc factoid data. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the SmartTagData at offset fcFactoidData in the Table Stream. + + + The LCB factoid data. + + + + + + Gets or sets An unsigned integer. If this value is nonzero, version-specific undo information exists at offset fcDocUndo in the WordDocument Stream. + + + The LCB document undo. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. An SttbfBkmkFcc that contains + information about the format consistency-checker bookmarks in the document begins at this offset. + If lcbSttbfBkmkFcc is zero, fcSttbfBkmkFcc is undefined and MUST be ignored. + + + The fc STTBF BKMK FCC. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the SttbfBkmkFcc at offset fcSttbfBkmkFcc. + + + The LCB STTBF BKMK FCC. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcfBkfd that contains + information about format consistency-checker bookmarks in the document begins at this offset. If lcbPlcfBkfFcc is zero, + fcPlcfBkfFcc is undefined and MUST be ignored. + + + The fc PLCF BKF FCC. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PlcfBkfd at offset fcPlcfBkfFcc. + + + The LCB PLCF BKF FCC. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A PlcfBkld that contains information + about the format consistency-checker bookmarks in the document begins at this offset. If lcbPlcfBklFcc is zero, + fcPlcfBklFcc is undefined and MUST be ignored. + + + The fc PLCF BKL FCC. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PlcfBkld at offset fcPlcfBklFcc. + + + The LCB PLCF BKL FCC. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. An SttbfBkmkBPRepairs + that contains information about the repair bookmarks in the document begins at this offset. If lcbSttbfBkmkBPRepairs + is zero, fcSttbfBkmkBPRepairs is undefined and MUST be ignored. + + + The fc STTBFBKMK bp repairs. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the SttbfBkmkBPRepairs at offset fcSttbfBkmkBPRepairs. + + + The LCB STTBFBKMK bp repairs. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A PlcfBkf that contains + information about the repair bookmarks in the document begins at this offset. If lcbPlcfBkfBPRepairs is zero, + fcPlcfBkfBPRepairs is undefined and MUST be ignored. + + + The fc PLCFBKF bp repairs. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PlcfBkf at offset fcPlcfbkfBPRepairs. + + + The LCB PLCFBKF bp repairs. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A PlcfBkl that contains + information about the repair bookmarks in the document begins at this offset. If lcbPlcfBklBPRepairs is zero, + fcPlcfBklBPRepairs is undefined and MUST be ignored. + + + The fc PLCFBKL bp repairs. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PlcfBkl at offset fcPlcfBklBPRepairs. + + + The LCB PLCFBKL bp repairs. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A new Pms, which contains + the current state of a print merge operation, begins at this offset. If lcbPmsNew is zero, fcPmsNew is + undefined and MUST be ignored. + + + The fc PMS new. + + + + + Gets or sets an unsigned integer which specifies the size, in bytes, of the Pms at offset fcPmsNew. + + + The LCB PMS new. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. Office Data Source Object + (ODSO) data that is used to perform mail merge begins at this offset. The data is stored in an array of + ODSOPropertyBase items. The ODSOPropertyBase items are of variable size and are stored contiguously. + The complete set of properties that are contained in the array is determined by reading each ODSOPropertyBase, + until a total of lcbODSO bytes of data are read. If lcbODSO is zero, fcODSO is undefined and MUST be ignored. + + + The fc odso. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the Office Data Source Object data + at offset fcODSO in the Table Stream. + + + The LCB odso. + + + + + + + + + + + Gets or sets the fc unused2.This value is undefined and MUST be ignored. + + + The fc unused2. + + + + + Gets or sets the LCB unused2.This value MUST be zero, and MUST be ignored. + + + The LCB unused2. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A Plcffactoid, which specifies + the smart tag recognizer state of each text range, begins at this offset. If lcbPlcffactoid is zero, fcPlcffactoid + is undefined and MUST be ignored. + + + The fc plcffactoid. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes of the Plcffactoid that begins at offset + fcPlcffactoid in the Table Stream. + + + The LCB plcffactoid. + + + + + + + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An Hplxsdr structure begins + at this offset. This structure specifies information about XML schema definition references. + + + The fc HPLXSDR. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the Hplxsdr structure at the offset + fcHplxsdr in the Table Stream. If lcbHplxsdr is zero, then fcHplxsdr is undefined and MUST be ignored. + + + The LCB HPLXSDR. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An SttbfBkmkSdt that contains + information about the structured document tag bookmarks in the document begins at this offset. If lcbSttbfBkmkSdt is zero, then fcSttbfBkmkSdt is undefined and MUST be ignored. + + + The fc STTBF BKMK SDT. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the SttbfBkmkSdt at offset + fcSttbfBkmkSdt. + + + The LCB STTBF BKMK SDT. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcBkfd that contains + information about the structured document tag bookmarks in the document begins at this offset. If + lcbPlcfBkfSdt is zero, fcPlcfBkfSdt is undefined and MUST be ignored. + + + The fc PLCF BKF SDT. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcBkfd at offset fcPlcfBkfSdt. + + + The LCB PLCF BKF SDT. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. A PlcBkld that contains + information about the structured document tag bookmarks in the document begins at this offset. If + lcbPlcfBklSdt is zero, fcPlcfBklSdt is undefined and MUST be ignored. + + + The fc PLCF BKL SDT. + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the PlcBkld at offset fcPlcfBklSdt. + + + The LCB PLCF BKL SDT. + + + + + Gets or sets An unsigned integer that specifies an offset in the Table Stream. An array of 16-bit Unicode + characters, which specifies the full path and file name of the XML Stylesheet to apply when saving this + document in XML format, begins at this offset. If lcbCustomXForm is zero, fcCustomXForm is undefined and MUST + be ignored. + + + The fc custom x form. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the array at offset fcCustomXForm in + the Table Stream. This value MUST be less than or equal to 4168 and MUST be evenly divisible by two. + + + The LCB custom x form. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. An SttbfBkmkProt that + contains information about range-level protection bookmarks in the document begins at this offset. If + lcbSttbfBkmkProt is zero, fcSttbfBkmkProt is undefined and MUST be ignored. + + + The fc STTBF BKMK prot. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the SttbfBkmkProt at offset + fcSttbfBkmkProt. + + + The LCB STTBF BKMK prot. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A PlcBkf that contains + information about range-level protection bookmarks in the document begins at this offset. If lcbPlcfBkfProt + is zero, then fcPlcfBkfProt is undefined and MUST be ignored. + + + The fc PLCF BKF prot. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PlcBkf at offset fcPlcfBkfProt. + + + The LCB PLCF BKF prot. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A PlcBkl containing + information about range-level protection bookmarks in the document begins at this offset. If lcbPlcfBklProt + is zero, then fcPlcfBklProt is undefined and MUST be ignored. + + + The fc PLCF BKL prot. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the PlcBkl at offset fcPlcfBklProt. + + + The LCB PLCF BKL prot. + + + + + Gets or sets an unsigned integer that specifies an offset in the Table Stream. A SttbProtUser that specifies + the usernames that are used for range-level protection begins at this offset. + + + The fc STTB prot user. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the SttbProtUser at the offset + fcSttbProtUser. + + + The LCB STTB prot user. + + + + + Gets or sets this value MUST be zero, and MUST be ignored. + + + The fc unused. + + + + + Gets or sets this value MUST be zero, and MUST be ignored. + + + The LCB unused. + + + + + + + + + + + + + + + + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated document page layout + cache at offset fcPgdMother in the Table Stream. + + + The fc PGD mother. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated document text flow + break cache at offset fcBkdMother in the Table Stream. + + + The fc BKD mother. + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated document text flow + break cache at offset fcBkdMother in the Table Stream. + + + The LCB BKD mother. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated document author filter + cache at offset fcAfdMother in the Table Stream. + + + The LCB afd mother. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated footnote layout cache + at offset fcPgdFtn in the Table Stream. + + + The LCB PGD FTN. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated footnote text flow + break cache at offset fcBkdFtn in the Table Stream. + + + The LCB BKD FTN. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated footnote author filter + cache at offset fcAfdFtn in the Table Stream. + + + The LCB afd FTN. + + + + + + Gets or sets an unsigned integer that specifies the size, in bytes, of the deprecated endnote layout cache + at offset fcPgdEdn in the Table Stream. + + + The LCB PGD edn. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated endnote text flow + break cache at offset fcBkdEdn in the Table Stream. + + + The LCB BKD edn. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated endnote author filter + cache at offset fcAfdEdn in the Table Stream. + + + The LCB afd edn. + + + + + + Gets or sets An unsigned integer that specifies the size, in bytes, of the deprecated AFD structure at + offset fcAfd in the Table Stream. + + + The LCB afd. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc PLCFMTHD. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB PLCFMTHD. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc STTBF BKMK move from. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB STTBF BKMK move from. + + + + + Gets or sets This value is undefined and MUST be ignored + + + The fc PLCF BKF move from. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB PLCF BKF move from. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc PLCF BKL move from. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB PLCF BKL move from. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc STTBF BKMK move to. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB STTBF BKMK move to. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc PLCF BKF move to. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB PLCF BKF move to. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc PLCF BKL move to. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB PLCF BKL move to. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc unused1. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB unused1. + + + + + Gets or sets This value is undefined and MUST be ignored + + + The fc unused2. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB unused2. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc unused3. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB unused3. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc STTBF BKMK arto. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB STTBF BKMK arto. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc PLCF BKF arto. + + + + + Gets or sets This value MUST be zero, and MUST be ignored + + + The LCB PLCF BKF arto. + + + + + Gets or sets Undefined and MUST be ignored. + + + The fc PLCF BKL arto. + + + + + Gets or sets MUST be zero, and MUST be ignored. + + + The LCB PLCF BKL arto. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc arto data. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB arto data. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc unused4. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB unused4. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc unused5. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB unused5. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc unused6. + + + + + Gets or sets This value MUST be zero, and MUST be ignored. + + + The LCB unused6. + + + + + Gets or sets This value is undefined and MUST be ignored. + + + + The fc oss theme. + + + + + + Gets or sets This value is undefined and MUST be ignored. + + + The fc color scheme mapping. + + + + + + Gets or sets an unsigned integer that specifies the count of 16-bit values corresponding to fibRgCswNew that follow. + This MUST be one of the following values, depending on the value of nFib. + Value of nFib cswNew + 0x00C1 0 + 0x00D9 0x0002 + 0x0101 0x0002 + 0x010C 0x0002 + 0x0112 0x0005 + + + The CSW new. + + + + + Gets or sets an unsigned integer that specifies the version number of the file format that is used. + This value MUST be one of the following. + 0x00D9 + 0x0101 + 0x010C + 0x0112 + + + The n fib new. + + + + + Gets or sets an unsigned integer that specifies the number of times that this document was incrementally saved since the last full save. This value MUST be between 0 and 0x000F, inclusively. + + + The c quick saves new. + + + + + Gets or sets the lid theme other. + This value is undefined and MUST be ignored. + + + The lid theme other. + + + + + Gets or sets the lid theme far east. + This value is undefined and MUST be ignored. + + + The lid theme fe. + + + + + Gets or sets the lid theme complex script. + This value is undefined and MUST be ignored. + + + The lid theme cs. + + + + + Gets the size of the encoding character. + + + The size of the encoding character. + + + + + Gets or sets the encoding. + + + The encoding. + + + + + Summary description for MD5_CTX. + + + + + + + + + + scratch buffer + + + + + input buffer + + + + + actual digest after MD5Final call + + + + + Updates + + The input buf. + The buffer length. + + + + Finals this instance. + + + + + Stores the digest. + + + + + F(x, y, z) + + The x. + The y. + The z. + + + + + G(x, y, z) + + The x. + The y. + The z. + + + + + H(x, y, z) + + The x. + The y. + The z. + + + + + I(x, y, z) + + The x. + The y. + The z. + + + + + ROTATE_LEFT + + The x. + The n. + + + + + FF + + A. + The b. + The c. + The d. + The x. + The s. + The ac. + + + + GG + + A. + The b. + The c. + The d. + The x. + The s. + The ac. + + + + HH + + A. + The b. + The c. + The d. + The x. + The s. + The ac. + + + + II + + A. + The b. + The c. + The d. + The x. + The s. + The ac. + + + + Transforms the specified inn. + + The inn. + + + + Gets the I. + + The I. + + + + Gets the buffer. + + The buffer. + + + + Gets the input buffer. + + The input buffer. + + + + Gets the digest. + + The digest. + + + + This class contains utility methods used by Word 2007 and Word 2010 Encryption/Decryption implementation. + + + + + Number of iterations used for key generation. + + + + + Name of encryption info stream. + + + + + Name of dataspaces storage. + + + + + Name of dataspace map stream. + + + + + Name of the transform primary stream. + + + + + Name of dataspace info storage. + + + + + Name of transform info storage. + + + + + Name of encrypted package stream. + + + + + Gets the type of the encryption. + + The storage. + + + + + Reads Int32 value from the stream. + + Stream to get data from. + Temporary buffer to put extracted bytes into. + Extracted Int32 value. + + + + Extracts padded unicode string from a stream. + + Stream to get data from. + Extracted string. + + + + Read zero-terminated string from the stream. + + Stream to get string from. + Extracted string (without trailing zero). + + + + Writes Int32 value into the stream. + + Stream to put data into. + Value to write. + + + + Writes padded unicode string from a stream. + + Stream to get data from. + Value to write. + + + + Writes zero-terminated string into the stream. + + Stream to put string into. + Value to write. + + + + Creates key object based on the salt and password. + + Password to use. + Salt to use. + Required key length. + Array with created key. + + + + Creates the agile encryption key. + + The password. + The salt. + The block key. + Length of the key. + The iteration count. + + + + + Encrypts/decrypts buffer with specified method. + + Data to process. + Method to use. + Size of the encryption block. + Modified (encrypted/decrypted) data. + + + + Combines two arrays into one. + + The first buffer to combine. + The second buffer to combine. + Combined array. + + + + Corrects the size. + + The hash buf. + The size. + The padding. + + + + + Concatenates the IV. + + The data. + The IV. + + + + + Compares the array. + + The buffer1. + The buffer2. + + + + + Represents type of the encryption. + + + + + Word 2007 encryption format. + + + + + Word 2010 encryption format. + + + + + Wrong encryption format. + + + + + This class is responsible for decryption of Standard encryption (Word 2007) files. + + + + + Size of the decryption block. + + + + + Dataspace map. + + + + + Encryption info. + + + + + Compound storage that should be decrypted. + + + + + Array containing key data. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Decrypts internal storage. + + Decrypted stream. + + + + Prepares decryptor for actual decryption. + + Compound storage to get required data from. + + + + Checks whether password is correct. + + Password to check. + True if password verification succeeded. + + + + Decrypts specified buffer. + + + + + + + + Extracts transform data from the storage. + + Storage to get data from. + + + + Extracts dataspace map from the storage. + + Storage to get data from. + + + + Extracts TransformInfo from the storage. + + Storage to get data from. + + + + Represents the standard encryption info for Encryption/Decryption of Word documents. + + + + + A Version structure where Version.vMajor MUST be 0x0003, and Version.vMinor MUST be 0x0002. + + + + + A copy of the Flags stored in the EncryptionHeader field of this structure. + + + + + An EncryptionHeader structure that specifies parameters used to encrypt data. + + + + + An EncryptionVerifier structure. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Default constructor. + + + + + Initializes new instance. + + Stream to get data from. + + + + Serializes object into stream. + + Stream to serialize into. + + + + A Version structure where Version.vMajor MUST be 0x0003, and Version.vMinor MUST be 0x0002. + + + + + A copy of the Flags stored in the EncryptionHeader field of this structure. + + + + + An EncryptionHeader structure that specifies parameters used to encrypt data. + + + + + An EncryptionVerifier structure. + + + + + This class used to encrypt data using Standard encryption (Word 2007) with AES 128 + encryption algorithm and SHA-1 hashing algorithm. + + + + + Key length. + + + + + Default version. + + + + + Default flags. + + + + + Encryption algorithm id (AES-128). + + + + + Hashing algorithm id (SHA-1). + + + + + Provider type. + + + + + Default CSP name. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Encrypts specified stream. + + Data to encrypt. + Password to use. + Root storage to put encrypted data into. + + + + Preparse data spaces structures inside specified storage. + + Storage to put DataSpaces inside. + + + + Serializes VersionInfo stream inside specified storage. + + Storage to serialize VersionInfo into. + + + + Serializes transformation info. + + Storage to serialize into. + + + + Serializes dataspace info. + + Storage to serialize into. + + + + Serializes DataSpaceMap stream. + + Storage to place stream into. + + + + Prepare EncryptionInfo record and stores it in appropriate stream. + + Root storage. + Encryption password. + Encryption key. + + + + Creates random salt. + + Desired salt length. + Array with random data. + + + + Encrypts specified buffer. + + Data to encrypt. + Encryption key. + Encrypted data. + + + + Encrypt specified stream. + + Stream to encrypt. + Encryption key. + Output stream. + + + + Represents the transform info header for Encryption/Decryption of Word documents. + + + + + An unsigned integer that specifies the type of transform to be applied. + + + + + An identifier associated with a specific transform. + + + + + The friendly name of the transform. + + + + + The reader version. + + + + + The updater version. + + + + + The writer version. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Default constructor. + + + + + Initializes new instance of the class. + + Stream to get data from. + + + + Serializes object into stream. + + Stream to serialize into. + + + + An unsigned integer that specifies the type of transform to be applied. + + + + + An identifier associated with a specific transform. + + + + + The friendly name of the transform. + + + + + The reader version. + + + + + The updater version. + + + + + The writer version. + + + + + Represents the version information for Encryption/Decryption of Word documents. + + + + + The functionality for which the DataSpaceVersionInfo structure specifies + version information. MUST be "Microsoft.Container.DataSpaces". + + + + + The reader version of the data spaces structure. + + + + + The updater version of the data spaces structure. + + + + + The writer version of the data spaces structure. + + + + + Security helper contains utility methods for encryption/decryption. + + + + + Default constructor. + + + + + Serializes object into specified stream. + + Stream to serialize into. + + + + The functionality for which the DataSpaceVersionInfo structure specifies + version information. MUST be "Microsoft.Container.DataSpaces". + + + + + The reader version of the data spaces structure. + + + + + The updater version of the data spaces structure. + + + + + The writer version of the data spaces structure. + + + + + Represents the xml encryption descriptor for Encryption/Decryption of Word 2010/2013 documents. + + + + + Specifies the key data used for Encryption/Decryption. + + + + + Specifies the data integrity used for Encryption/Decryption. + + + + + Specifies the key encryptors used for Encryption/Decryption. + + + + + Default constructor. + + + + + Parses the specified stream. + + The stream. + + + + Serializes object into stream. + + Stream to serialize into. + + + + Create xml writer + + The stream + returns the xml writer + + + + Gets or sets the key data. + + The key data. + + + + Gets or sets the data integrity. + + The data integrity. + + + + Gets or sets the key encryptors. + + The key encryptors. + + + + Represents the key data for Encryption/Decryption of Word 2010 documents. + + + + + Specifies the number of bytes used by salt. + + + + + Specifies the number of bytes used to encrypt one block of data. + + + + + Specifies the number of bits used by encryption algorithm. + + + + + Specifies the number of bytes used by hash value. + + + + + Specifies the cipher algorithm. + + + + + Specifies the chaining mode used by the cipher algorithm. + + + + + Specifies the hashing algorithm. + + + + + Specifies the salt value. + + + + + Default constructor. + + + + + Parses the specified reader. + + The reader. + + + + Serializes the specified writer. + + The writer. + + + + Gets or sets the size of the salt. + + The size of the salt. + + + + Gets or sets the size of the block. + + The size of the block. + + + + Gets or sets the key bits. + + The key bits. + + + + Gets or sets the size of the hash. + + The size of the hash. + + + + Gets or sets the cipher algorithm. + + The cipher algorithm. + + + + Gets or sets the cipher chaining. + + The cipher chaining. + + + + Gets or sets the hash algorithm. + + The hash algorithm. + + + + Gets or sets the salt. + + The salt. + + + + Represents the data integrity for Encryption/Decryption of Word 2010 documents. + + + + + Specifies an encrypted key used for generating the encryptedHmacValue. + + + + + Specifies an HMAC derived from the encryptedHmacKey and the encrypted data. + + + + + Default constructor. + + + + + Parses the specified reader. + + The reader. + + + + Serializes the specified writer. + + The writer. + + + + Gets or sets the encrypted hmac key. + + The encrypted hmac key. + + + + Gets or sets the encrypted hmac value. + + The encrypted hmac value. + + + + Represents the key encryptors for Encryption/Decryption of Word 2010 documents. + + + + + Specifies encrypted key used for Encryption/Decryption. + + + + + Default constructor. + + + + + Parses the specified reader. + + The reader. + + + + Serializes the specified writer. + + The writer. + + + + Gets or sets the encrypted key. + + The encrypted key. + + + + Represents the encrypted key for Encryption/Decryption of Word 2010 documents. + + + + + Specifies the spin count + + + + + Specifies the number of bytes used by salt. + + + + + Specifies the number of bytes used to encrypt one block of data. + + + + + Specifies the number of bits used by encryption algorithm. + + + + + Specifies the number of bytes used by hash value. + + + + + Specifies the cipher algorithm. + + + + + Specifies the chaining mode used by the cipher algorithm. + + + + + Specifies the hashing algorithm. + + + + + Specifies the salt value. + + + + + Specifies the encrypted verifier hash input used in password verification. + + + + + Specifies the encrypted verifier hash value used in password verification. + + + + + Specifies the encrypted form of the intermediate key. + + + + + Default constructor. + + + + + Parses the specified reader. + + The reader. + + + + Serializes the specified writer. + + The writer. + + + + Gets or sets the spin count. + + The spin count. + + + + Gets or sets the size of the salt. + + The size of the salt. + + + + Gets or sets the size of the block. + + The size of the block. + + + + Gets or sets the key bits. + + The key bits. + + + + Gets or sets the size of the hash. + + The size of the hash. + + + + Gets or sets the cipher algorithm. + + The cipher algorithm. + + + + Gets or sets the cipher chaining. + + The cipher chaining. + + + + Gets or sets the hash algorithm. + + The hash algorithm. + + + + Gets or sets the salt. + + The salt. + + + + Gets or sets the encrypted verifier hash input. + + The encrypted verifier hash input. + + + + Gets or sets the encrypted verifier hash value. + + The encrypted verifier hash value. + + + + Gets or sets the encrypted key value. + + The encrypted key value. + + + + Prefix for DocPropsVTypes namespace. + + + + + Name of the relation type that indicates XSI part. + + + + + Prefix for core properties namespace. + + + + + Name of the relation type that indicates dublin core part. + + + + + Prefix for dublin core namespace. + + + + + Name of the relation type that indicates dublin core terms part. + + + + + Prefix for dublin core terms namespace. + + + + + Name of the relation type that indicates DCMIType part. + + + + + Name of the relation type that indicates that part contains extended document properties. + + + + + Name of the relation type that indicates that part contains core properties. + + + + + Writes the theme override. + + XML writer instance + Baseslide theme collection + + + + Serializes the Theme override elements. + + XML writer instance + Baseslide theme collection + + + + Serializes extended document properties. + + XmlWriter to serialize extended properties into. + + + + Serializes core properties into XmlWriter. + + XmlWriter to serialize core properties into. + + + + Serializes created and modified datetime element into XmlWriter. + + XmlWriter to serialize into. + Element tag name. + Date time value. + + + + Serializes custom properties into XmlWriter. + + XmlWriter to serialize properties into. + + + + Serializes attribute if it differs from default value. + + XmlWriter to serialize into. + Attribute name. + Attribute value. + Default value. + + + + Serializes attribute if it differs from default value. + + XmlWriter to serialize into. + Attribute name. + Attribute value. + Default value. + + + + Serializes custom property into XmlWriter. + + XmlWriter to serialize into. + Custom property to serialize. + Custom property id. + + + + Serialize the extension list properties + + + + + + + Serialize the NonVisual SmartArtPoint properties + + + + + + + Adds a relation to the layout slide with specified number and master slide. + + The relation id of the layout slide. + The master slide of the layout slide. + The collection of relations after adding the relation. + + + + Generates the layout number. + + + + + Adds a layout slide at the end of the collection. + + Represents an instance to be added. + + + + Creates an instance with the specified and layout name, then adds it to the collection. + + The layout type to customize + The custom name of the layout slide + Returns the created layout slide with specified name and type + + + + Inserts an element into the layout slide collection at the specified index. + + The zero-based index at which value should be inserted. + The layout slide item to insert. + + + + Inserts an element into the layout slide collection at the specified index. + + The zero-based index at which value should be inserted. + The layout slide item to insert. + + + + Inserts a layout slide into the collection at the specified index. + + The zero-based index at which the layout slide should be inserted. + The layout slide to insert into the collection. + The type of the layout slide. + The name of the layout slide. + The inserted layout slide. + + + + Generates a unique layout ID. + + A string representing the generated layout ID. + + + + Sorts the string list in ascending order. + + The string list to be sorted. + The largest value among the list. + + + + Remove a layout slide relation from the master slide and presentation document. + + Represent the layout slide to remove. + + + + Gets a LayoutSlide collection with respect to its SlideLayoutType. + + Represent a SlideLayoutType to select. + Returns a LayoutSlide collection with respect to its SlideLayoutType. + + + + Gets a LayoutSlide collection with respect to its LayoutSlide name. + + Represent a LayoutSlide name to select. + Returns a LayoutSlide collection with respect to its LayoutSlide name + + + + Filter (Remove) a LayoutSlide based on available PlaceHolders. + + Represent a PlaceHolderType to compare. + Represent a LayoutSlide collection to filter. + + + + Gets a equivalent LayoutSlide from a destination Presentation. + + Represent a source LayoutSlide to compare. + Returns a equivalent LayoutSlide from a destination Presentation. + + + + Adds a master slide at the end of the collection. + + Represents an instance to be added. + + + + Inserts the master slide to the collection at the specified index. + + Represents index position at which the master slide should be inserted. + Represents the master slide to be inserted. + + + + Inserts the master slide to the collection at the specified index. + + Represents index position at which the master slide should be inserted. + Represents the master slide to be inserted. + + + + Clears the master slides collection. + + + + + Remove the MasterSlide from PowerPoint document. + + Represent a master slide to remove. + + + + Add the master slide to the collection at the specified index. + + Represents index position at which the master slide should be inserted. + Represents the master slide to be inserted. + Represents the source Presentation. + + + + Updates the VML drawing relations for a master slide and its associated layout slides, + if they contain OLE objects with VML drawing. + + The master slide whose VML drawing relations need to be updated. + + + + Updates the layout slide relation. + + + + + + Check whether the relation need to be removed. + + Represents the string value to be checked. + Returns true if the string does not contains the keywords; otherwise false + + + + Updates the master slide theme relation. + + + + + + Updates the layout slide id and gets the master slide id. + + Represents the master slide. + Returns the new master slide id. + + + + Sorts the list. + + Represents the list to be sorted. + Returns the largest value of the list. + + + + Sort the layout slide list. + + Represents the layout slide list. + + + + Adds a new notes to the slide. + + Returns the notes slide of instance. + + + + Removes the notes slide. + + + + + Gets the Unique ID for the current slide. Read-only. The Unique ID ranges from 256 to 2147483647. + + + + + Gets the number of the current slide. Read-only. + + + + + Gets the current notes slide instance. Returns null if no notes are present. + + + + + Adds the specified cloned slide at the end of slide collection with specified paste options. + + An instance to be added to the destination presentation. + Specifies the for merging the slide. + Optional Parameter. An instance of the source presentation from which the slide is cloned from. + The cloned slide can be added within the same presentation or this can be done between one presentation to another + + + + Updates the comments author in the destination document. + + The cloned slide. + + If the source document author is not present in the destination, a source author will be newly added to the destination and linked with the cloned comment. + Otherwise, if the source document author is present in the destination, the cloned comment is linked with the same author in the destination. + + + + + Checks if a given master slide and layout slide have related master and layout slides in a presentation. + + The source master slide to compare. + The source layout slide to compare. + Related master slide number. + True if a related master and layout are found; otherwise, false. + + + + Updates the properties of each paragraph within shapes in the presentation. + + The source presentation containing the shapes. + The collection of shapes to inspect. + + + + Inserts an element into the slide collection at the specified index. + + The zero-based index at which value should be inserted. + The slide value to insert. + + + + Adds the specified cloned slide at the specified index of slide collection with specified paste options. + + Specifies the index position of the slide in which the cloned slide should get added + An instance to be added to the destination presentation. + Specifies the for merging the slide. + Optional Parameter. An instance of the source presentation from which the slide is cloned from. + The cloned slide can be added within the same presentation or this can be done between one presentation to another + + + + Updates the layout slide relationship of the slide. + + Represents the master slide. + The slide to be updated with the layout slide relation. + + + + Compares the current SlideSize object with given SlideSize object. + + The SlideSize object to compare with the current instance. + True if the SlideSize objects are equal; otherwise, false. + + + + Checks whether all the cell borders are applied + + Return false if any one cell border was not applied + + + + Sets a default line for cell borders + + + + + Gets the column index from the specified cell index. + + Represent the index of a cell. + Return the column index of the cell. + + + + Gets the row index from the specified cell index. + + Represent the index of a cell. + Return the row index of the cell. + + + + Creates a copy of the current cell. + + Returns the cloned cell object + + + + If the column is passed from another table or another slide Sets the parent as the current base slide + + Represents the column object + + + + Creates a copy of the current row. + + Returns the cloned row object + + + + If the row is passed from another table or from another slide Sets the parent as the current base slide + + Represents the row object + + + + Gets the adjacent cell border for the current border. + + Represent the current cell index. + Represent the current border type. + Returns the adjacent cell border + + + + Compares the current Shape object with given Shape object. + + The Shape object to compare with the current instance. + True if the Shape objects are equal; otherwise, false. + + + + Creates a copy of the current table. + + Returns the cloned table object + + + + Retrieves the font name based on the specified theme and font reference index. + + + + + + + Compares the current DefaultFonts object with given DefaultFonts object. + + The DefaultFonts object to compare with the current instance. + True if the DefaultFonts objects are equal; otherwise, false. + + + + Compares the current Theme object with given Theme object. + + The Theme object to compare with the current instance. + True if the Theme objects are equal; otherwise, false. + + + + Compares the theme colors in the current theme color dictionary with given theme color dictionary. + + The dictionary representing the theme color list to compare with the current instance. + True if the theme colors in the dictionaries are equal; otherwise, false. + + + + Compares the fills in the current fill list with given fill list. + + The list representing the fill list to compare with the current instance. + True if the fills in the lists are equal; otherwise, false. + + + + Compares the background fills in the current fill list with given fill list. + + The list representing the fill list to compare with the current instance. + True if the background fills in the lists are equal; otherwise, false. + + + + Compares the line formats in the current line format list with given line format list. + + The list representing the line format list to compare with the current instance. + True if the line formats in the lists are equal; otherwise, false. + + + + Compares the effect styles in the current effect style list with given effect style list. + + The list representing the effect style list to compare with the current instance. + True if the effect styles in the lists are equal; otherwise, false. + + + + Name of the theme. + + + + + Name of the color scheme. + + + + + Represents the conversion utilities. + + + + UtilityMethods utility = new UtilityMethods(); + //Convert emu to inch + double inch = UtilityMethods.EmuToInch(234); + //Convert emu to point + double point = UtilityMethods.EmuToPoint(234); + //Convert inch to emu + double emu = UtilityMethods.InchToEmu(12); + //Convert inch to pixel + float pixel = UtilityMethods.InchToPixel(34); + //convert inch to point + float inchToPoint = UtilityMethods.InchToPoint(540); + //Convert point to emu + double pointToEmu = UtilityMethods.PointToEmu(45.89); + //Convert point to pixel + double pointToPixel = UtilityMethods.PointToPixel(786.90); + + + Dim utility As New UtilityMethods() + 'Convert emu to inch + Dim inch As Double = UtilityMethods.EmuToInch(234) + 'Convert emu to point + Dim point As Double = UtilityMethods.EmuToPoint(234) + 'Convert inch to emu + Dim emu As Double = UtilityMethods.InchToEmu(12) + 'Convert inch to pixel + Dim pixel As Single = UtilityMethods.InchToPixel(34) + 'convert inch to point + Dim inchToPoint As Single = UtilityMethods.InchToPoint(540) + 'Convert point to emu + Dim pointToEmu As Double = UtilityMethods.PointToEmu(45.89) + 'Convert point to pixel + Dim pointToPixel As Double = UtilityMethods.PointToPixel(786.9) + + + + + + Creates xml reader to read data from the stream. + + Data to read. + Created xml reader. + + + + Creates xml reader to read data from the stream. + + Data to read. + + Created xml reader. + + + + Check whether input XML document is in valid structure + + Represent the input XML document stream + Return whether this is an valid XML or not + + + + Creates xml writer to read data from the stream. + + Data to read. + Created xml writer. + + + + Convert and returns the given word as Regex pattern + + + + + Regex pattern + + + + Converts the specified Emu unit to the equivalent Point unit. + + Specifies the value in Emu unit. + Returns the value in Point unit. + + + + Converts the specified Emu unit to the equivalent Inch unit. + + Specifies the value in Emu unit. + Returns the value in Inch unit. + + + + Converts the specified Inch unit to the equivalent Emu unit. + + Specifies the value in Inch unit. + Returns the value in Emu unit. + + + + Converts the specified Point unit to the equivalent Emu unit. + + Specifies the value in Point unit. + Returns the value in Emu unit. + + + + Converts the specified Inch unit to the equivalent Point unit. + + Specifies the value in Inch unit. + Returns the value in Point unit. + + + + Converts the specified Inch unit to the equivalent Pixel unit. + + Specifies the value in Inch unit. + Returns the value in Pixel unit. + + + + Converts the specified Emu unit to the equivalent Point unit. + + Specifies the value in Emu unit. + Returns the value in Point unit. + + + + Converts the specified Point unit to the equivalent Pixel unit. + + The value to convert. + Returns the converted value in Pixel unit. + 1 inch equals 72 points. + + + + This interface represents stream in the compound file. + + + + + Name of the stream. + + + + + Initializes new instance of the compound stream object. + + Name of the stream. + + + + Copies stream content into another stream object. + + Stream to copy data into. + + + + Returns name of the stream. + + + + + This interface gives access to compound file functionality. + + + + + Flushes content into internal buffer. + + + + + Saves compound file into stream + + Stream to save data into. + + + + Saves compound file into file. + + Name of the file to save into. + + + + Returns root storage object for this file. + + + + + This interface represents storage object in the compound file. + + + + + Creates new stream inside this storage. + + Name of the stream to create. + Created stream object. + + + + Opens existing stream inside this storage. + + Name of the stream to open. + + + + + Removes existing stream from this storage. + + Name of the stream to remove. + + + + Determines whether storage contains specified stream. + + Name of the stream to check. + true if storage contains specified stream. + + + + Creates new substorage inside this one. + + Name of the storage to create. + Created storage object. + + + + Opens existing substorage inside this one. + + Name of the storage to open. + Created storage object. + + + + Removes exisiting substorage from this one. + + Name of the storage to remove. + + + + Determines whether this storage contains substorage with specified name. + + Name of the storage to check. + true if storage contains substorage with specified name. + + + + Commits changes. + + + + + Inserts copy of the storage and all subitems inside current storage. + + Storage to copy. + + + + Inserts copy of the stream inside current storage. + + Stream to copy. + + + + Returns all stream names that are placed inside this stream. + + + + + Returns all storage names that are placed inside this stream. + + + + + Returns name of the storage. + + + + + .Net compound file implementation. + + + + + Name of the root entry. + + + + + Source stream. + + + + + File header. + + + + + + + + + + + + + + + + + + + + Root storage. + + + + + Short stream. + + + + + Stream containing items described by minifat. + + + + + MiniFAT. + + + + + Indicates whether substreams should maintain their own stream or should write + directly into the file's stream. + + + + + + + + + + Writes directory structure into file. + + Destination path. + Directory to write. + + + + Writes storage to specified path + + Destination path. + Storage to write. + + + + Writes stream into file + + Destination path. + Stream name. + Parent storage object. + + + + Default constructor. + + + + + Default constructor. + + + + + Default constructor. + + + + + + + + + + + Initializes internal variables. + + + + + + + + + + + + + + + + + + + + + Sets stream data for directory entry. + + Directory entry to update stream data for. + Stream to set. + + + + Sets entrie's long stream. + + Entry to update data for. + Data to set. + + + + Sets entrie's short stream. + + Entry to update data for. + Data to set. + + + + Writes stream data into compound file main stream + + Main stream to write into. + Start sector to write. + Stream to write. + Fat object. + + + + Here we have to allocate required sectors number. + + Entry to allocate sectors for. + Number of already allocated sectors. + Number of required sectors. + FAT object. + + + + Allocates sectors. + + Start sector in the chain. + Number of already allocated sectors. + Number of required sectors. + Fat object. + Start sector of the added chain. + + + + Gets offset to the sector. + + Zero-based sector index. + Sector shift (2^sectorShift = sector size). + Offset to the required sector. + + + + Gets offset to the sector. + + Zero-based sector index. + Sector shift (2^sectorShift = sector size). + Size of the header. + Offset to the required sector. + + + + Checks whether stream header belongs to compound file. + + Stream to check. + True if stream probably contains compound file data. + + + + Allocates new directory entry. + + Name of the stream. + Entry type. + Created directory entry. + + + + Marks item as free. + + Directory entry to be removed/freed. + + + + Reads data from internal stream. + + Entry to read data from. + Position inside entry stream. + Buffer that will cotain read data. + Size of the data to read. + Number of actually read bytes. + + + + Writes data into internal stream. + + Entry to write data into. + Position inside entry stream. + Buffer containing data to write. + Offset inside buffer to the data to write. + Size of the data to write. + + + + Saves compound file into stream. + + Stream to save data into. + + + + Writes internal stream into specified one. + + Destination stream to write into. + + + + Saves mini stream data. + + + + + Serializes directory entries. + + + + + Saves compound file into file. + + Name of the file to save into. + + + + Performs application-defined tasks associated with freeing, + releasing, or resetting unmanaged resources. + + + + + + + + + + + + + + + Returns root storage. + + + + + + + + + + + + + + + Returns base stream. Read-only. + + + + + Gets or sets value indicating whether substreams should maintain their own stream + or should write directly into the file's stream. + + + + + Returns root storage object for this file. + + + + + This is exception thrown when experiencing problems with compound file. + + + + + Default exception message. + + + + + Default constructor. + + + + + Initializes new instance of the exception. + + Exception message. + + + + + + + + + RBTree with child elements. + + + + + + + + + + Initializes new instance of the storage. + + Parent file. + Name of the new storage. + Index to the directory entry that stores storage information. + + + + Initializes new instance of the storage. + + Parent compound file object. + Entry that describes current storage. + + + + + + + + + + Creates new stream. + + Name of the stream to create. + Created stream. + + + + Opens stream. + + Name of the stream to open. + Opened stream or null if there is no such stream. + + + + Removes stream from the storage, if it contains stream with such name. + + Stream name to delete. + + + + Checks whether storage contains stream with specified name. + + Name of the stream to check. + True if storage has stream with such name; false otherwise. + + + + Opens existing storage. + + Name of the storage to open. + Opened storage item or null if it was impossible to open it. + + + + Removes substorage from existing storage. + + Name of the storage to remove. + + + + + + + + + Checks whether this storage contains substorage with specified name. + + Name to check. + True if there is such storage; false otherwise. + + + + + + + + + Returns directory entry id that corresponds to the specified node. + + + + + + + Returns name of the storage. + + + + + Returns directory entry for this stream. + + + + + This is wrapper over compound stream object. Simply redirects all calls to it + with one exception - it doesn't dispose underlying stream object. + + + + + Wrapped storage object. + + + + + Initializes new instance of the wrapper. + + Object to wrap. + + + + Frees all allocated resources. + + + + + Creates new stream inside this storage. + + Name of the stream to create. + Created stream object. + + + + Opens existing stream inside this storage. + + Name of the stream to open. + + + + + Removes existing stream from this storage. + + Name of the stream to remove. + + + + Determines whether storage contains specified stream. + + Name of the stream to check. + true if storage contains specified stream. + + + + Creates new substorage inside this one. + + Name of the storage to create. + Created storage object. + + + + Opens existing substorage inside this one. + + Name of the storage to open. + Created storage object. + + + + Removes exisiting substorage from this one. + + Name of the storage to remove. + + + + Determines whether this storage contains substorage with specified name. + + Name of the storage to check. + true if storage contains substorage with specified name. + + + + Commits changes. + + + + + Returns all stream names that are placed inside this stream. + + + + + Returns all storage names that are placed inside this stream. + + + + + Returns name of the storage. + + + + + Returns directory entry for this stream. + + + + + .Net implementation of the compound stream. + + + + + .Net implementation of the compound stream. + + + + + Parent file item. + + + + + Directory entry of this stream. + + + + + Stream with data. If it is null, then data hasn't been read yet or stream is closed. + + + + + Initializes new instance of the stream. + + Parent file object. + Entry that describes this stream item. + + + + + + + + + Reads a sequence of bytes from the current stream and advances the position + within the stream by the number of bytes read. + + An array of bytes. When this method returns, the buffer + contains the specified byte array with the values between offset and + (offset + count - 1) replaced by the bytes read from the current source. + The zero-based byte offset in buffer at which to begin + storing the data read from the current stream. + The maximum number of bytes to be read from the current stream. + The total number of bytes read into the buffer. This can be less than + the number of bytes requested if that many bytes are not currently available, + or zero (0) if the end of the stream has been reached. + + + + writes a sequence of bytes to the current stream and advances the current + position within this stream by the number of bytes written. + + An array of bytes. This method copies count bytes + from buffer to the current stream. + The zero-based byte offset in buffer at which to + begin copying bytes to the current stream. + The number of bytes to be written to the current stream. + + + + Sets the position within the current stream. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference + point used to obtain the new position. + The new position within the current stream. + + + + Sets the length of the current stream. + + The desired length of the current stream in bytes. + + + + Causes any buffered data to be written to the underlying compound file. + + + + + Releases the unmanaged resources used by the Stream and optionally releases the managed resources. + + true to release both managed and unmanaged resources; + false to release only unmanaged resources. + + + + Returns directory entry for this stream. + + + + + Gets the length in bytes of the stream. Read-only. + + + + + Gets or sets the position within the current stream. + + + + + Gets a value indicating whether the current stream supports reading. + + + + + Gets a value indicating whether the current stream supports seeking. + + + + + Gets a value indicating whether the current stream supports writing. + + + + + Stream position. + + + + + Initializes new instance of the stream. + + Parent file object. + Entry that describes this stream item. + + + + + + + + + Reads a sequence of bytes from the current stream and advances the position + within the stream by the number of bytes read. + + An array of bytes. When this method returns, the buffer + contains the specified byte array with the values between offset and + (offset + count - 1) replaced by the bytes read from the current source. + The zero-based byte offset in buffer at which to begin + storing the data read from the current stream. + The maximum number of bytes to be read from the current stream. + The total number of bytes read into the buffer. This can be less than + the number of bytes requested if that many bytes are not currently available, + or zero (0) if the end of the stream has been reached. + + + + writes a sequence of bytes to the current stream and advances the current + position within this stream by the number of bytes written. + + An array of bytes. This method copies count bytes + from buffer to the current stream. + The zero-based byte offset in buffer at which to + begin copying bytes to the current stream. + The number of bytes to be written to the current stream. + + + + Sets the position within the current stream. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference + point used to obtain the new position. + The new position within the current stream. + + + + Sets the length of the current stream. + + The desired length of the current stream in bytes. + + + + Causes any buffered data to be written to the underlying compound file. + + + + + Gets the length in bytes of the stream. Read-only. + + + + + Gets or sets the position within the current stream. + + + + + This is wrapper over compound stream object. Simply redirects all calls to it + with one exception - it doesn't dispose underlying stream object. + + + + + Wrapped stream object. + + + + + Initializes new instance of the wrapper. + + Object to wrap. + + + + Causes any buffered data to be written to the underlying compound file. + + + + + Reads a sequence of bytes from the current stream and advances the position + within the stream by the number of bytes read. + + An array of bytes. When this method returns, the buffer + contains the specified byte array with the values between offset and + (offset + count - 1) replaced by the bytes read from the current source. + The zero-based byte offset in buffer at which to begin + storing the data read from the current stream. + The maximum number of bytes to be read from the current stream. + The total number of bytes read into the buffer. This can be less than + the number of bytes requested if that many bytes are not currently available, + or zero (0) if the end of the stream has been reached. + + + + Sets the position within the current stream. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference + point used to obtain the new position. + The new position within the current stream. + + + + Sets the length of the current stream. + + The desired length of the current stream in bytes. + + + + writes a sequence of bytes to the current stream and advances the current + position within this stream by the number of bytes written. + + An array of bytes. This method copies count bytes + from buffer to the current stream. + The zero-based byte offset in buffer at which to + begin copying bytes to the current stream. + The number of bytes to be written to the current stream. + + + + + + + + + + Gets a value indicating whether the current stream supports reading. + + + + + Gets a value indicating whether the current stream supports seeking. + + + + + Gets a value indicating whether the current stream supports writing. + + + + + Gets the length in bytes of the stream. Read-only. + + + + + Gets or sets the position within the current stream. + + + + + Number of items in the file header. + + + + + List of all fat sector ids. + + + + + List with used Dif sectors. + + + + + Default constructor. + + + + + + + + + + + + Adds required number of DIF sectors. + + Number of sectors to add. + FAT object. + + + + + + + + + This class represents directory structure in the compound file. + + + + + List of directory entries. + + + + + Default constructor. + + + + + Initializes new instance of the directory. + + Data to parse. + + + + Searches for empty entry index. + + Index of the first empty directory entry. + + + + Adds new entry to the collection or replaces existing empty entry with this one. + + Entry to add. + + + + Saves directory entries into specified stream. + + Stream to save directory into. + + + + Returns list of directory entries. + + + + + Represents single directory entry in the compound file. + + + + + Size of a single directory entry. + + + + + Size of the stream name field. + + + + + Entry name. + + + + + Entry type. + + + + + Entry "color" in red-black tree. + + + + + Id of the left-sibling. + + + + + Id of the right-sibling. + + + + + Id of the child acting as the root of all the children of thes element (if entry type if Storage). + + + + + Storage CLSID. + + + + + User flags of this storage. + + + + + Create time-stamp for a storage. + + + + + Modify time-stamp for a storage. + + + + + Starting stream sector. + + + + + Stream size. + + + + + Reserved. Must be zero. + + + + + Entry id. + + + + + Last sector id. + + + + + Initializes new instance of the entry. + + Name of the new entry. + Type of the new entry. + Id of the new entry. + + + + Initializes new instance of the entry. + + Data of the new entry. + Offset to the entry data. + Entry id. + + + + Writes directory entry data inside specified stream. + + Stream to write data into. + + + + Entry name. + + + + + Entry type. + + + + + Entry "color" in red-black tree. + + + + + Id of the left-sibling. + + + + + Id of the right-sibling. + + + + + Id of the child acting as the root of all the children of thes element (if entry type if Storage). + + + + + Storage CLSID. + + + + + User flags of this storage. + + + + + Create time-stamp for a storage. + + + + + Modify time-stamp for a storage. + + + + + Starting stream sector. + + + + + Stream size. + + + + + Reserved. Must be zero. + + + + + Returns entry id. Read-only. + + + + + Possible entry types. + + + + + Invalid entry. + + + + + Entry is storage. + + + + + Entry is stream. + + + + + Root entry. + + + + + The STGTY enumeration values are used in the type member of the STATSTG + structure to indicate the type of the storage element. + + + + + Indicates that the storage element is a storage object. + + + + + Indicates that the storage element is a stream object. + + + + + Indicates that the storage element is a byte-array object. + + + + + Indicates that the storage element is a property storage object. + + + + + The STREAM_SEEK enumeration values specify the origin from which to + calculate the new seek-pointer location. + + + + + The new seek pointer is an offset relative to the beginning of + the stream. In this case, the dlibMove parameter is the new seek + position relative to the beginning of the stream. + + + + + The new seek pointer is an offset relative to the current seek + pointer location. In this case, the dlibMove parameter is the + signed displacement from the current seek position. + + + + + The new seek pointer is an offset relative to the end of the stream. + In this case, the dlibMove parameter is the new seek position + relative to the end of the stream. + + + + + The LOCKTYPE enumeration values indicate the type of locking requested + for the specified range of bytes. + + + + + If this lock is granted, the specified range of bytes can be opened + and read any number of times, but writing to the locked range is + prohibited except for the owner who granted this lock. + + + + + If this lock is granted, writing to the specified range of bytes is + prohibited except by the owner granted this lock. + + + + + If this lock is granted, no other LOCK_ONLYONCE lock can be obtained + on the range. Usually this lock type is an alias for some other lock + type. Thus, specific implementations can have additional behavior + associated with this lock type. + + + + + The STGM enumeration values are used in the IStorage, IStream, and + IPropertySetStorage interfaces. These elements are often combined + using an OR operator. + + + + + Indicates that the object is read-only, meaning that modifications + cannot be made. + + + + + STGM_WRITE lets you save changes to the object, but does not permit + access to its data. + + + + + STGM_READWRITE allows you to both access and modify an object's data. + + + + + Specifies that subsequent openings of the object are not denied read + or write access. If no flag from the sharing group is specified, + this flag is assumed. + + + + + Prevents others from subsequently opening the object in STGM_READ mode. + It is typically used on a root storage object. + + + + + Prevents others from subsequently opening the object for STGM_WRITE + or STGM_READWRITE access. + + + + + Prevents others from subsequently opening the object in any mode. In + transacted mode, sharing of STGM_SHARE_DENY_WRITE or STGM_SHARE_EXCLUSIVE + can significantly improve performance since they don't require snapshotting. + + + + + Opens the storage object with exclusive access to the most recently + committed version. + + + + + Indicates that an existing storage object or stream should be removed + before the new one replaces it. + + + + + Creates the new object while preserving existing data in a stream + named "Contents". + + + + + Causes the create operation to fail if an existing object with the + specified name exists. + + + + + In direct mode, each change to a storage or stream element is + written as it occurs. + + + + + In transacted mode, changes are buffered and written only if an + explicit commit operation is called. + + + + + In transacted mode, a temporary scratch file is usually used to + save modifications until the Commit method is called. + + + + + This flag is used when opening a storage object with STGM_TRANSACTED + and without STGM_SHARE_EXCLUSIVE or STGM_SHARE_DENY_WRITE. + + + + + STGM_SIMPLE is a mode that provides a much faster implementation of + a compound file in a limited, but frequently used case. + + + + + The STGM_DIRECT_SWMR supports direct mode for single-writer, + multireader file operations. + + + + + Indicates that the underlying file is to be automatically destroyed + when the root storage object is released. + + + + + The STGFMT enumeration values specify the format of a storage object + and are used in the StgCreateStorageEx and StgOpenStorageEx functions + in the STGFMT parameter. + + + + + Indicates that the file must be a compound file. + + + + + Indicates that the file must not be a compound file. + + + + + Indicates that the system will determine the file type and use the + appropriate structured storage or property set implementation. + + + + + Indicates that the file must be a compound file and is similar to + the STGFMT_STORAGE flag, but indicates that the compound-file form + of the compound-file implementation must be used. + + + + + Error code which StgOpenStorage method can return after execution. + + + + + Success code. + + + + + Filed. + + + + + Access Denied. + + + + + File already exists. + + + + + File could not be found. + + + + + There is insufficient memory available to complete operation. + + + + + Invalid flag error. + + + + + Unable to perform requested operation. + + + + + Attempted an operation on an invalid object. + + + + + The name is not valid. + + + + + Invalid pointer error. + + + + + A lock violation has occurred. + + + + + The compound file was not created with the STGM_SIMPLE flag. + + + + + The compound file was produced with a newer version of storage. + + + + + The compound file was produced with an incompatible version of storage. + + + + + The path could not be found. + + + + + A share violation has occurred. + + + + + There are insufficient resources to open another file. + + + + + The STGC enumeration constants specify the conditions for performing + the commit operation in the IStorage::Commit and IStream::Commit methods. + + + + + You can specify this condition with STGC_CONSOLIDATE or some + combination of the other three flags in this list of elements. + + + + + The commit operation can overwrite existing data to reduce overall + space requirements. + + + + + Prevents multiple users of a storage object from overwriting each + other's changes. + + + + + Commits the changes to a write-behind disk cache, but does not save + the cache to the disk. + + + + + Microsoft Windows 2000/XP: Indicates that a storage should be + consolidated after it is committed, resulting in a smaller file on disk. + + + + + Reserved global Property IDs. + + + + + PID_DICTIONARY Id. + + + + + PID_CODEPAGE Id. + + + + + PID_FIRST_USABLE Id. + + + + + PID_FIRST_NAME_DEFAULT Id. + + + + + PID_LOCALE Id. + + + + + PID_MODIFY_TIME Id. + + + + + PID_SECURITY Id. + + + + + PID_BEHAVIOR Id. + + + + + PID_ILLEGAL Id. + + + + + PID_MIN_READONLY Id. + + + + + PID_MAX_READONLY Id. + + + + + PRSPEC property ids. + + + + + INVALID Id. + + + + + LPWSTR Id. + + + + + PROPID Id. + + + + + The PROPSPEC structure is used by many of the methods of IPropertyStorage to specify a + property either by its property identifier (ID) or the associated string name. + + + + + Indicates the union member used. This member can be one of the following values. + + + + + Specifies the value of the property ID. Use either this value or the following lpwstr, not both. + + + + + This enumeration is used in VARIANT, TYPEDESC, OLE property sets, and safe arrays. + + + + + Variable type is not specified. + + + + + Variable type is 4-byte signed INT. + + + + + Variable type is date. + + + + + Variable type is binary string. + + + + + Variable type is Boolean; True=-1, False=0. + + + + + Variable type is VARIANT FAR*. + + + + + Variable type is int. + + + + + Variable type is LPSTR. + + + + + Variable type is LPWSTR + + + + + Variable type is FILENAME string. + + + + + Variable type is binary VECTOR. + + + + + Flags for GlobalAlloc function. + + + + + Allocates fixed memory. The return value is a pointer. + + + + + Allocates movable memory. Memory blocks are never moved in physical memory, + but they can be moved within the default heap. + + + + + Initializes memory contents to zero. + + + + + NO Discard memory. + + + + + This class represents FAT object in the compound file. + + + + + + + + + + List with free sectors. + + + + + Sector size. + + + + + + + + + + Default constructor. + + + + + Default constructor. + + + + + Initializes new instance of the fat. + + Parent compound file object. + Stream to extract fat from. + DIF object to help in parsing + File header object. + + + + Gets data of the compound file substream. + + Stream with compound file data. + First sector of the stream to get. + Parent compound file object. + + + + + Gets index of the next sector in the chain. + + Index of the current sector in the chain. + Next sector in the chain. + + + + Closes sectors chain by marking all those sectors as free starting from specified one. + + + + + + Enlarges existing sectors chain. + + Last sector in the chain that requires enlargment. + Number of sectors to add. + Index of the chain start (used when chain wasn't created before). + + + + Frees specified sector. + + Sector to free. + + + + Allocates required number of new sectors. + + Start sector index. + Number of sectors to allocate. + First sector in the new part of the chain. + + + + Allocates required number of free sectors. + + Start sector index (this value points to the last used sector after this operation). + Number of sectors to allocate. + First sector in the new part of the chain + + + + Saves fat data into stream. + + Stream to write fat data into. + DIF object to update after writing. + File header. + + + + Allocates required number of fat sectors. + + Number of sectors that must be allocated. + DIF structure that contains info about fat sectors sequence. + + + + Fills single fat sector. + + Index in the fat to start writing from. + Sector to fill. + First item that wasn't saved inside sector. + + + + Allocates new sector of the specified sector type. + + Sector type to allocate. + Allocated sector index. + + + + Adds single sector to the stream. + + Index of the added sector. + + + + Writes fat data directly into a stream. + + Stream to write data into. + Size of the sector to use for writing. + + + + Evaluates sector offset. + + Zero-based sector index to evaluate offset for. + Offset to the sector start. + + + + Evaluates number of sectors in the sector chain starting from the specified sector. + + Starting sector of the entry to enumerate. + Number of sectros in the sector chain. + + + + Sector size. + + + + + This class represents compound file header. + + + + + Size of the header. + + + + + Signature size. + + + + + Default (and the only supported) signature. + + + + + File signature. + + + + + Class id. + + + + + Minor version of the format. + + + + + Major version of the dll/format. + + + + + Byte order, 0xFFFE for Intel byte-ordering. + + + + + Size of sectors in power-of-two (typically 9). + + + + + Size of mini-sectors in power-of-two (typically 6). + + + + + Reserved, must be zero. + + + + + Reserved, must be zero. + + + + + Reserved, must be zero. + + + + + Number of sectors in the FAT chain. + + + + + First sector in the directory chain. + + + + + Signature used for transactioning, must be zero. + + + + + Maximum size for mini-streams. Typically 4096 bytes. + + + + + First sector in the mini-FAT chain. + + + + + Number of sectors in the mini-FAT chain. + + + + + First sector in the DIF chain. + + + + + Number of sectors in the DIF chain. + + + + + First 109 fat sectors. + + + + + Default constructor. + + + + + Initializes new instance of the file header and extracts data from the stream. + + Stream to extract header data from. + + + + Saves header into specified stream. + + Stream to write header into. + + + + Checks whether starting bytes of the stream are the same as signature of the compound file. + + Stream to check. + True if stream contains required signature. + + + + Checks whether signature is supported. + + + + + Checks whether signature is supported. + + Data to compare with default signature. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Size of the sector. Read-only. + + + + + Minor version of the format. + + + + + Major version of the dll/format. + + + + + Byte order, 0xFFFE for Intel byte-ordering. + + + + + Size of sectors in power-of-two (typically 9). + + + + + Size of mini-sectors in power-of-two (typically 6). + + + + + Reserved, must be zero. + + + + + Reserved, must be zero. + + + + + Reserved, must be zero. + + + + + Number of sectors in the FAT chain. + + + + + First sector in the directory chain. + + + + + Signature used for transactioning, must be zero. + + + + + Maximum size for mini-streams. Typically 4096 bytes. + + + + + First sector in the mini-FAT chain. + + + + + Number of sectors in the mini-FAT chain. + + + + + First sector in the DIF chain. + + + + + Number of sectors in the DIF chain. + + + + + First 109 fat sectors. + + + + + This comparer is used to compare item names inside storage. + + + + + Compares two objects and returns a value indicating whether one is less + than, equal to, or greater than the other. + + The first object to compare. + The second object to compare. + + Less than zero if x is less than y. + Zero if x equals y. + Greater than zero if x is greater than y. + + + + + Compares two objects and returns a value indicating whether one is less + than, equal to, or greater than the other. + + The first object to compare. + The second object to compare. + + Less than zero if x is less than y. + Zero if x equals y. + Greater than zero if x is greater than y. + + + + + Suitable Node colors used for 2-3-4 nodes detection. + + + + + Red color of node. + + + + + Black color of node. + + + + + Node class used for proper storing of data in the Map Collection. + + + + + Reference on left branch. + + + + + Reference on right branch. + + + + + Reference on parent branch. + + + + + Color of node branch. + + + + + Is current node Nil element or not? + + + + + Key part of stored in node data. + + + + + Value part of stored in node data. + + + + + Create red colored Tree node. + + Reference on left branch. + Reference on parent branch. + Refernce on right branch. + Key value of node. + Value part of node. + + + + Main constructor of class. + + Reference on left branch. + Reference on parent branch. + Refernce on right branch. + Key value of node. + Value part of node. + Color of node. + + + + Reference on left branch. + + + + + Reference on right branch. + + + + + Reference on parent branch. + + + + + Color of node branch. + + + + + Is current node Nil element or not? + + + + + Key part of stored in node data. + + + + + Value part of stored in node data. + + + + + Is current node set to red color? + + + + + Is current node set to black color? + + + + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + Create collection with specified comparer for Key values. + + Comparer for key values. + + + + Create Empty node for collection. + + + + + Clear collection. + + + + + Add item into collection. + + Key part. + Value. + + + + Check whether collection contains specified key. + + True if node with specified key is found; otherwise False. + Key for check. + + + + Remove from collection item with specified key. + + Key to identify item. + + + + TODO: place correct comment here + + + TODO: place correct comment here + + + + + Get minimum value for specified branch. + + Branch start node. + Reference on minimum value node. + + + + Get maximum value for specified branch. + + Branch start node. + Reference on maximum value node. + + + + Go to to next item in collection. + + Start node. + Reference on next item in collection or this.Empty if nothing found. + + + + Get previous item from collection. + + Start node. + Rererence on previous item in collection. + + + + Find node in collection by key value (search in lower side). + + Key of node to find. + Reference on found node, otherwise this.Empty value. + + + + Find node in collection by key value (search in upper side). + + Key of node to find. + Reference on found node, otherwise this.Empty value. + + + + Rotate branch into left side. + + Branch start node. + + + + Rotate branch into right side. + + Branch start node. + + + + Erase node from collection. + + Item to erase. + + + + Insert item into collection. + + Add into left side of tree or right. + Node for placement. + Key part of node. + Value part of node. + + + + Returns enumerator. + + Returns enumerator of current interface. + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + Contains constants that defines all known sector types. + + + + + Represents the behaviors. + + + + + Get the index of particulare behavior item + + behavior + Index of the particular behavior + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors index + IBehavior behavior = effect.Behaviors[0]; + int index = effect.Behaviors.IndexOf(behavior); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors index + Dim behavior As IBehavior = effect.Behaviors(0) + Dim index As Integer = effect.Behaviors.IndexOf(behavior) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the count of behavior + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors count from the effect + int count = effect.Behaviors.Count; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors count from the effect + Dim count As Integer = effect.Behaviors.Count + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Gets a instance at the specified index from the collection. Read-only. + + Determines the index of the behavior. + Returns an instance. + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behavior with index from the effect + IBehavior behavior = effect.Behaviors[0]; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behavior with index from the effect + Dim behavior As IBehavior = effect.Behaviors(0) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the color offset. + + + + + Get the color offset value0 + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IColorEffect) + { + // Assign the color effect values + IColorEffect colorEffect = (behavior as IColorEffect); + float color1 = colorEffect.By.Value0; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is color effect + If (TypeOf behavior Is ColorEffect) Then + 'Assign the color effect values + Dim colorEffect As ColorEffect = TryCast(behavior,ColorEffect) + Dim color1 As Single = colorEffect.By.Value0 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the color offset value1 + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IColorEffect) + { + // Assign the color effect values + IColorEffect colorEffect = (behavior as IColorEffect); + float color2 = colorEffect.By.Value1; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is color effect + If (TypeOf behavior Is ColorEffect) Then + 'Assign the color effect values + Dim colorEffect As ColorEffect = TryCast(behavior,ColorEffect) + Dim color2 As Single = colorEffect.By.Value1 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the color offset value2 + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IColorEffect) + { + // Assign the color effect values + IColorEffect colorEffect = (behavior as IColorEffect); + float color3 = colorEffect.By.Value2; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is color effect + If (TypeOf behavior Is ColorEffect) Then + 'Assign the color effect values + Dim colorEffect As ColorEffect = TryCast(behavior,ColorEffect) + Dim color3 As Single = colorEffect.By.Value2 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the effect. + + + + + Get the main sequences list of animations + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the sequences from the effect + ISequence effectSequence = effect.Sequence; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the sequences from the effect + Dim effectSequence As ISequence = effect.Sequence + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the build type value of text animation + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the build type from the effect + BuildType effectBuildType = effect.BuildType; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the build type from the effect + Dim effectBuildType As BuildType = effect.BuildType + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the list of behaviors in particular effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors effectBehaviors = effect.Behaviors; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim effectBehaviors As IBehaviors = effect.Behaviors + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the preset class type of effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the preset class type from the effect + EffectPresetClassType effectPresetClass = effect.PresetClassType; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the effect preset class type from the effect + Dim effectPresetClass As EffectPresetClassType = effect.PresetClassType + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the sub type value of effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the subtype from the effect + EffectSubtype effectSubType = effect.Subtype; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the subtype from the effect + Dim effectSubType As EffectSubtype = effect.Subtype + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the timing properties values of effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the timing list from the effect + ITiming effectTiming = effect.Timing; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the timing list from the effect + Dim effectTiming As ITiming = effect.Timing + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the type of effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get effect type + EffectType effectType = effect.Type; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get effect type + Dim effectType As EffectType = effect.Type + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Specifies the type of the effect preset class type + + + + + Specifies the effect preset class type is none + + + + + Specifies the effect preset class type is Entrance + + + + + Specifies the effect preset class type is Exit + + + + + Specifies the effect preset class type is Emphasis + + + + + Specifies the effect preset class type is Path + + + + + Specifies the additive type of property + + + + + Specifies the behavior additive type is Not Defined + + + + + Specifies the behavior additive type is None + + + + + Specifies the behavior additive type is Base + + + + + Specifies the behavior additive type is Sum + + + + + Specifies the behavior additive type is Replace + + + + + Specifies the behavior additive type is Multiply + + + + + Specifies the restart type of effect + + + + + Specifies the restart type is Not Defined + + + + + Specifies the restart type is Always + + + + + Specifies the restart type is When Not Active + + + + + Specifies the restart type is Never + + + + + Specifies the trigger type of effect + + + + + Specifies the effect trigger type is After Previous + + + + + Specifies the effect trigger type is On Click + + + + + Specifies the effect trigger type is With Previous + + + + + Specifies the reveal type of filter effect + + + + + Specifies the filter effect reveal type is Not Defined + + + + + Specifies the filter effect reveal type is None + + + + + Specifies the filter effect reveal type is In + + + + + Specifies the filter effect reveal type is Out + + + + + Specifies the subtype of filter effect + + + + + Specifies the filter effect subtype is None + + + + + Specifies the filter effect subtype is Across + + + + + Specifies the filter effect subtype is Down + + + + + Specifies the filter effect subtype is DownLeft + + + + + Specifies the filter effect subtype is DownRight + + + + + Specifies the filter effect subtype is From Bottom + + + + + Specifies the filter effect subtype is From Left + + + + + Specifies the filter effect subtype is From Right + + + + + Specifies the filter effect subtype is From Top + + + + + Specifies the filter effect subtype is Horizontal + + + + + Specifies the filter effect subtype is In + + + + + Specifies the filter effect subtype is InHorizontal + + + + + Specifies the filter effect subtype is InVertical + + + + + Specifies the filter effect subtype is Left + + + + + Specifies the filter effect subtype is Out + + + + + Specifies the filter effect subtype is OutHorizontal + + + + + Specifies the filter effect subtype is OutVertical + + + + + Specifies the filter effect subtype is Right + + + + + Specifies the filter effect subtype is Spokes1 + + + + + Specifies the filter effect subtype is Spokes2 + + + + + Specifies the filter effect subtype is Spokes3 + + + + + Specifies the filter effect subtype is Spokes4 + + + + + Specifies the filter effect subtype is Spokes8 + + + + + Specifies the filter effect subtype is Up + + + + + Specifies the filter effect subtype is UpLeft + + + + + Specifies the filter effect subtype is UpRight + + + + + Specifies the filter effect subtype is Vertical + + + + + Specifies the type of filter effect + + + + + Specifies the filter effect type is None + + + + + Specifies the filter effect type is Barn + + + + + Specifies the filter effect type is Blinds + + + + + Specifies the filter effect type is Box + + + + + Specifies the filter effect type is Checkerboard + + + + + Specifies the filter effect type is Circle + + + + + Specifies the filter effect type is Diamond + + + + + Specifies the filter effect type is Dissolve + + + + + Specifies the filter effect type is Fade + + + + + Specifies the filter effect type is Image + + + + + Specifies the filter effect type is Pixelate + + + + + Specifies the filter effect type is Plus + + + + + Specifies the filter effect type is RandomBar + + + + + Specifies the filter effect type is Slide + + + + + Specifies the filter effect type is Stretch + + + + + Specifies the filter effect type is Strips + + + + + Specifies the filter effect type is Wedge + + + + + Specifies the filter effect type is Wheel + + + + + Specifies the filter effect type is Wipe + + + + + Specifies the type of animation property + + + + + Specifies the animation property type is Not Defined + + + + + Specifies the animation property type is Color + + + + + Specifies the animation property type is PptHeight + + + + + Specifies the animation property type is Opacity + + + + + Specifies the animation property type is Rotation + + + + + Specifies the animation property type is RotationPPT + + + + + Specifies the animation property type is ShapesStrokeColor + + + + + Specifies the animation property type is StrokeOn + + + + + Specifies the animation property type is ShapeFillType + + + + + Specifies the animation property type is ShapeFillBackColor + + + + + Specifies the animation property type is Shape Fill Color + + + + + Specifies the animation property type is Shape Fill Color2 + + + + + Specifies the animation property type is Shape Fill On + + + + + Specifies the animation property type is ShapeFillOpacity + + + + + Specifies the animation property type is ShapeLineColor + + + + + Specifies the animation property type is ShapeLineOn + + + + + Specifies the animation property type is Shape Picture Brightness + + + + + Specifies the animation property type is Shape Picture Contrast + + + + + Specifies the animation property type is Shape Picture Gamma + + + + + Specifies the animation property type is Shape Picture Gray Scale + + + + + Specifies the animation property type is Shape Shadow Color + + + + + Specifies the animation property type is Shape Shadow OffsetX + + + + + Specifies the animation property type is Shape Shadow OffsetY + + + + + Specifies the animation property type is Shape Shadow On + + + + + Specifies the animation property type is Shape Shadow Opacity + + + + + Specifies the animation property type is Shape Shadow Type + + + + + Specifies the animation property type is Text Bullet Character + + + + + Specifies the animation property type is Text Bullet Color + + + + + Specifies the animation property type is Text Bullet Font Name + + + + + Specifies the animation property type is Text Bullet Number + + + + + Specifies the animation property type is Text Bullet Relative Size + + + + + Specifies the animation property type is Text Bullet Style + + + + + Specifies the animation property type is Text Bullet Type + + + + + Specifies the animation property type is Text Font Bold + + + + + Specifies the animation property type is Text Font Color + + + + + Specifies the animation property type is Text Font Emboss + + + + + Specifies the animation property type is Text Font Italic + + + + + Specifies the animation property type is Text Font Name + + + + + Specifies the animation property type is Text Font Shadow + + + + + Specifies the animation property type is Text Font Size + + + + + Specifies the animation property type is Text Font Style + + + + + Specifies the animation property type is Text Font Weight + + + + + Specifies the animation property type is Text Font StrikeThrough + + + + + Specifies the animation property type is Text font Subscript + + + + + Specifies the animation property type is Text font Superscript + + + + + Specifies the animation property type is Text Font Underline + + + + + Specifies the animation property type is Visibility + + + + + Specifies the animation property type is PptWidth + + + + + Specifies the animation property type is PptX + + + + + Specifies the animation property type is PptY + + + + + Specifies the animation property type is PptXPptY + + + + + Specifies the animation property type is XShear + + + + + Specifies the value type of property effect + + + + + Specifies the property value type is NotDefined + + + + + Specifies the property value type is String + + + + + Specifies the property value type is Number + + + + + Specifies the property value type is Color + + + + + Specifies the calcMode type of property effect + + + + + Specifies the property calcMode type is NotDefined + + + + + Specifies the property calcMode type is Discrete + + + + + Specifies the property calcMode type is Linear + + + + + Specifies the property calcMode type is Formula + + + + + Specifies the motion path edit mode + + + + + Specifies the motion path edit mode is NotDefined + + + + + Specifies the motion path edit mode is Relative + + + + + Specifies the motion path edit mode is Fixed + + + + + Specifies the points type of motion path + + + + + Specifies the motion path points type is None + + + + + Specifies the motion path points type is Auto + + + + + Specifies the motion path points type is Corner + + + + + Specifies the motion path points type is Straight + + + + + Specifies the motion path points type is Smooth + + + + + Specifies the motion path points type is CurveAuto + + + + + Specifies the motion path points type is CurveCorner + + + + + Specifies the motion path points type is CurveStraight + + + + + Specifies the motion path points type is CurveSmooth + + + + + Specifies the motion command path type of motion effect + + + + + Specifies the motion command path type is MoveTo + + + + + Specifies the motion command path type is LineTo + + + + + Specifies the motion command path type is CurveTo + + + + + Specifies the motion command path type is CloseLoop + + + + + Specifies the motion command path type is End + + + + + Specifies the origin type of motion effect + + + + + Specifies the motion origin type is NotDefined + + + + + Specifies the motion origin type is Parent + + + + + Specifies the motion origin type is Layout + + + + + Specifies the color direction value for color effect + + + + + Specifies the color direction value is NotDefined + + + + + Specifies the color direction value is ClockWise + + + + + Specifies the color direction value is CounterClockWise + + + + + Specifies the color space value for color effect + + + + + Specifies the color space value is NotDefined + + + + + Specifies the color space value is RGB + + + + + Specifies the color space value is HSL + + + + + Specifies the type of the animation effect + + + + + Specifies the animation effect type is Appear + + + + + Specifies the animation effect type is CurveUpdown + + + + + Specifies the animation effect type is Ascend + + + + + Specifies the animation effect type is Blast + + + + + Specifies the animation effect type is Blinds + + + + + Specifies the animation effect type is Blink + + + + + Specifies the animation effect type is BoldFlash + + + + + Specifies the animation effect type is BoldReveal + + + + + Specifies the animation effect type is Boomerang + + + + + Specifies the animation effect type is Bounce + + + + + Specifies the animation effect type is Box + + + + + Specifies the animation effect type is BrushOnColor + + + + + Specifies the animation effect type is BrushOnUnderline + + + + + Specifies the animation effect type is CenterRevolve + + + + + Specifies the animation effect type is ChangeFillColor + + + + + Specifies the animation effect type is ChangeFont + + + + + Specifies the animation effect type is ChangeFontColor + + + + + Specifies the animation effect type is ChangeFontSize + + + + + Specifies the animation effect type is ChangeFontStyle + + + + + Specifies the animation effect type is ChangeLineColor + + + + + Specifies the animation effect type is Checkerboard + + + + + Specifies the animation effect type is Circle + + + + + Specifies the animation effect type is ColorBlend + + + + + Specifies the animation effect type is ColorTypewriter + + + + + Specifies the animation effect type is ColorWave + + + + + Specifies the animation effect type is ComplementaryColor + + + + + Specifies the animation effect type is ComplementaryColor2 + + + + + Specifies the animation effect type is Compress + + + + + Specifies the animation effect type is ContrastingColor + + + + + Specifies the animation effect type is Crawl + + + + + Specifies the animation effect type is Credits + + + + + Specifies the animation effect type is Custom + + + + + Specifies the animation effect type is Darken + + + + + Specifies the animation effect type is Desaturate + + + + + Specifies the animation effect type is Descend + + + + + Specifies the animation effect type is Diamond + + + + + Specifies the animation effect type is Dissolve + + + + + Specifies the animation effect type is EaseInOut + + + + + Specifies the animation effect type is Expand + + + + + Specifies the animation effect type is Fade + + + + + Specifies the animation effect type is FadedSwivel + + + + + Specifies the animation effect type is FadedZoom + + + + + Specifies the animation effect type is FlashBulb + + + + + Specifies the animation effect type is FlashOnce + + + + + Specifies the animation effect type is Flicker + + + + + Specifies the animation effect type is Flip + + + + + Specifies the animation effect type is Float + + + + + Specifies the animation effect type is Fly + + + + + Specifies the animation effect type is Fold + + + + + Specifies the animation effect type is Glide + + + + + Specifies the animation effect type is GrowAndTurn + + + + + Specifies the animation effect type is GrowShrink + + + + + Specifies the animation effect type is GrowWithColor + + + + + Specifies the animation effect type is Lighten + + + + + Specifies the animation effect type is LightSpeed + + + + + Specifies the animation effect type is Path4PointStar + + + + + Specifies the animation effect type is Path5PointStar + + + + + Specifies the animation effect type is Path6PointStar + + + + + Specifies the animation effect type is Path8PointStar + + + + + Specifies the animation effect type is PathArcDown + + + + + Specifies the animation effect type is PathArcLeft + + + + + Specifies the animation effect type is PathArcRight + + + + + Specifies the animation effect type is PathArcUp + + + + + Specifies the animation effect type is PathBean + + + + + Specifies the animation effect type is PathBounceLeft + + + + + Specifies the animation effect type is PathBounceRight + + + + + Specifies the animation effect type is PathBuzzsaw + + + + + Specifies the animation effect type is PathCircle + + + + + Specifies the animation effect type is PathCrescentMoon + + + + + Specifies the animation effect type is PathCurvedSquare + + + + + Specifies the animation effect type is PathCurvedX + + + + + Specifies the animation effect type is PathCurvyLeft + + + + + Specifies the animation effect type is PathCurvyRight + + + + + Specifies the animation effect type is PathCurvyStar + + + + + Specifies the animation effect type is PathDecayingWave + + + + + Specifies the animation effect type is PathDiagonalDownRight + + + + + Specifies the animation effect type is PathDiagonalUpRight + + + + + Specifies the animation effect type is PathDiamond + + + + + Specifies the animation effect type is PathDown + + + + + Specifies the animation effect type is PathEqualTriangle + + + + + Specifies the animation effect type is PathFigure8Four + + + + + Specifies the animation effect type is PathFootball + + + + + Specifies the animation effect type is PathFunnel + + + + + Specifies the animation effect type is PathHeart + + + + + Specifies the animation effect type is PathHeartbeat + + + + + Specifies the animation effect type is PathHexagon + + + + + Specifies the animation effect type is PathHorizontalFigure8 + + + + + Specifies the animation effect type is PathInvertedSquare + + + + + Specifies the animation effect type is PathInvertedTriangle + + + + + Specifies the animation effect type is PathLeft + + + + + Specifies the animation effect type is PathLoopdeLoop + + + + + Specifies the animation effect type is PathNeutron + + + + + Specifies the animation effect type is PathOctagon + + + + + Specifies the animation effect type is PathParallelogram + + + + + Specifies the animation effect type is PathPeanut + + + + + Specifies the animation effect type is PathPentagon + + + + + Specifies the animation effect type is PathPlus + + + + + Specifies the animation effect type is PathPointyStar + + + + + Specifies the animation effect type is PathRight + + + + + Specifies the animation effect type is PathRightTriangle + + + + + Specifies the animation effect type is PathSCurve1 + + + + + Specifies the animation effect type is PathSCurve2 + + + + + Specifies the animation effect type is PathSineWave + + + + + Specifies the animation effect type is PathSpiralLeft + + + + + Specifies the animation effect type is PathSpiralRight + + + + + Specifies the animation effect type is PathSpring + + + + + Specifies the animation effect type is PathSquare + + + + + Specifies the animation effect type is PathStairsDown + + + + + Specifies the animation effect type is PathSwoosh + + + + + Specifies the animation effect type is PathTeardrop + + + + + Specifies the animation effect type is PathTrapezoid + + + + + Specifies the animation effect type is PathTurnDown + + + + + Specifies the animation effect type is PathTurnRight + + + + + Specifies the animation effect type is PathTurnUp + + + + + Specifies the animation effect type is PathTurnUpRight + + + + + Specifies the animation effect type is PathUp + + + + + Specifies the animation effect type is PathUser + + + + + Specifies the animation effect type is PathVerticalFigure8 + + + + + Specifies the animation effect type is PathWave + + + + + Specifies the animation effect type is PathZigzag + + + + + Specifies the animation effect type is Peek + + + + + Specifies the animation effect type is Pinwheel + + + + + Specifies the animation effect type is Plus + + + + + Specifies the animation effect type is RandomBars + + + + + Specifies the animation effect type is RandomEffects + + + + + Specifies the animation effect type is RiseUp + + + + + Specifies the animation effect type is Shimmer + + + + + Specifies the animation effect type is Sling + + + + + Specifies the animation effect type is Spin + + + + + Specifies the animation effect type is Spinner + + + + + Specifies the animation effect type is Spiral + + + + + Specifies the animation effect type is Split + + + + + Specifies the animation effect type is Stretch + + + + + Specifies the animation effect type is Strips + + + + + Specifies the animation effect type is StyleEmphasis + + + + + Specifies the animation effect type is Swish + + + + + Specifies the animation effect type is Swivel + + + + + Specifies the animation effect type is Teeter + + + + + Specifies the animation effect type is Thread + + + + + Specifies the animation effect type is Transparency + + + + + Specifies the animation effect type is Unfold + + + + + Specifies the animation effect type is VerticalGrow + + + + + Specifies the animation effect type is Wave + + + + + Specifies the animation effect type is Wedge + + + + + Specifies the animation effect type is Wheel + + + + + Specifies the animation effect type is Whip + + + + + Specifies the animation effect type is Wipe + + + + + Specifies the animation effect type is Magnify + + + + + Specifies the animation effect type is Zoom + + + + + Specifies the subtype of animation effect + + + + + Specifies the animation effect Subtype is NotDefined + + + + + Specifies the animation effect Subtype is None + + + + + Specifies the animation effect Subtype is Across + + + + + Specifies the animation effect Subtype is Bottom + + + + + Specifies the animation effect Subtype is BottomLeft + + + + + Specifies the animation effect Subtype is BottomRight + + + + + Specifies the animation effect Subtype is Center + + + + + Specifies the animation effect Subtype is Clockwise + + + + + Specifies the animation effect Subtype is CounterClockwise + + + + + Specifies the animation effect Subtype is GradualAndCycleClockwise + + + + + Specifies the animation effect Subtype is GradualAndCycleCounterClockwise + + + + + Specifies the animation effect Subtype is Down + + + + + Specifies the animation effect Subtype is DownLeft + + + + + Specifies the animation effect Subtype is DownRight + + + + + Specifies the animation effect Subtype is FontAllCaps + + + + + Specifies the animation effect Subtype is FontBold + + + + + Specifies the animation effect Subtype is FontItalic + + + + + Specifies the animation effect Subtype is FontShadow + + + + + Specifies the animation effect Subtype is FontStrikethrough + + + + + Specifies the animation effect Subtype is FontUnderline + + + + + Specifies the animation effect Subtype is Gradual + + + + + Specifies the animation effect Subtype is Horizontal + + + + + Specifies the animation effect Subtype is HorizontalIn + + + + + Specifies the animation effect Subtype is HorizontalOut + + + + + Specifies the animation effect Subtype is In + + + + + Specifies the animation effect Subtype is InBottom + + + + + Specifies the animation effect Subtype is InCenter + + + + + Specifies the animation effect Subtype is InSlightly + + + + + Specifies the animation effect Subtype is Instant + + + + + Specifies the animation effect Subtype is Left + + + + + Specifies the animation effect Subtype is OrdinalMask + + + + + Specifies the animation effect Subtype is Out + + + + + Specifies the animation effect Subtype is OutBottom + + + + + Specifies the animation effect Subtype is OutCenter + + + + + Specifies the animation effect Subtype is OutSlightly + + + + + Specifies the animation effect Subtype is Right + + + + + Specifies the animation effect Subtype is Slightly + + + + + Specifies the animation effect Subtype is Top + + + + + Specifies the animation effect Subtype is TopLeft + + + + + Specifies the animation effect Subtype is TopRight + + + + + Specifies the animation effect Subtype is Up + + + + + Specifies the animation effect Subtype is UpLeft + + + + + Specifies the animation effect Subtype is UpRight + + + + + Specifies the animation effect Subtype is Vertical + + + + + Specifies the animation effect Subtype is VerticalIn + + + + + Specifies the animation effect Subtype is VerticalOut + + + + + Specifies the animation effect Subtype is Wheel1 + + + + + Specifies the animation effect Subtype is Wheel2 + + + + + Specifies the animation effect Subtype is Wheel3 + + + + + Specifies the animation effect Subtype is Wheel4 + + + + + Specifies the animation effect Subtype is Wheel8 + + + + + Specifies the build type value for text animation effect + + + + + Specifies the text animation build type is AsOneObject + + + + + Specifies the text animation build type is AllParagraphsAtOnce + + + + + Specifies the text animation build type is ByLevelParagraphs1 + + + + + Specifies the text animation build type is ByLevelParagraphs2 + + + + + Specifies the text animation build type is ByLevelParagraphs3 + + + + + Specifies the text animation build type is ByLevelParagraphs4 + + + + + Specifies the text animation build type is ByLevelParagraphs5 + + + + + Specifies the command effect type + + + + + Specifies the command effect type is Not Defined + + + + + Specifies the command effect type is event + + + + + Specifies the command effect type is Call + + + + + Specifies the command effect type is verb + + + + + Represents the motion command path. + + + + + Get the command type of motion effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + //Add the line command to move the shape in straight line + PointF[] points = new PointF[1]; + points[0] = new PointF(0, 0.25f); + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as MotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + path[0].CommandType = MotionCommandPathType.MoveTo; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As IBehavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is IMotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As IMotionEffect = TryCast(behavior,IMotionEffect) + Dim path As IMotionPath = TryCast(motionEffect.Path, IMotionPath) + path(0).CommandType = MotionCommandPathType.MoveTo + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the relative value + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + path[0].IsRelative = false; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As IBehavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is IMotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As IMotionEffect = TryCast(behavior,IMotionEffect) + Dim path As IMotionPath = TryCast(motionEffect.Path, IMotionPath) + path(0).IsRelative = false + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the path values in points + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + PointF[] points = path[0].Points; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As IBehavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is IMotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As IMotionEffect = TryCast(behavior,IMotionEffect) + Dim path As IMotionPath = TryCast(motionEffect.Path, IMotionPath) + Dim points As PointF() = path(0).Points + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the points type value of motion effect + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + path[0].PointsType = MotionPathPointsType.Auto; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As IBehavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is IMotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As IMotionEffect = TryCast(behavior,IMotionEffect) + Dim path As IMotionPath = TryCast(motionEffect.Path, IMotionPath) + path(0).PointsType = MotionPathPointsType.Auto + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the motion path. + + + + + Add the motion path values into the list + + Motion command path type + Path values in points + Motion path points type + Check bool value of relative coordination + Return the newly added path + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + //Add the line command to move the shape in straight line + PointF[] points = new PointF[1]; + points[0] = new PointF(0, 0.25f); + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + path.Add(MotionCommandPathType.LineTo, points, MotionPathPointsType.CurveSmooth, false); + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim path As MotionPath = TryCast(motionEffect.Path, MotionPath) + path.Add(MotionCommandPathType.LineTo, points, MotionPathPointsType.CurveSmooth, false) + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Clear the motion command path values from the list + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + path.Clear(); + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim path As MotionPath = TryCast(motionEffect.Path, MotionPath) + path.Clear() + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Insert the motion path into list with particular index. + + Index to insert motion path value + Motion command path type + Path value in pointF type + Motion path points type + Check bool value of relative coordination + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + path.Insert(2, MotionCommandPathType.CurveTo, points, MotionPathPointsType.Smooth, false); + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim path As MotionPath = TryCast(motionEffect.Path, MotionPath) + path.Insert(2, MotionCommandPathType.CurveTo, points, MotionPathPointsType.Smooth, false) + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Remove the particular motion command path value + + Command path item to remove from the collection + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + path.Remove(path[1]); + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim path As MotionPath = TryCast(motionEffect.Path, MotionPath) + path.Remove(path(1)) + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Remove the particular motion path with index value + + Remove the particular path from collection using index + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + path.RemoveAt(0); + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim path As MotionPath = TryCast(motionEffect.Path, MotionPath) + path.RemoveAt(0) + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the count of motion path values + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + int pathCount = path.Count; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim path As MotionPath = TryCast(motionEffect.Path, MotionPath) + Dim pathCount As Integer = path.Count + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Gets a instance at the specified index from the collection. Read-only. + + Determines the index of the effect. + Returns an instance. + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IMotionEffect) + { + // Assign the motion effect values + IMotionEffect motionEffect = (behavior as IMotionEffect); + IMotionPath path = (motionEffect.Path as IMotionPath); + IMotionCmdPath motionPath = (path[0] as IMotionCmdPath); + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.PathCrescentMoon, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is motion effect + If (TypeOf behavior Is MotionEffect) Then + 'Assign the motion effect values + Dim motionEffect As MotionEffect = TryCast(behavior,MotionEffect) + Dim path As MotionPath = TryCast(motionEffect.Path, MotionPath) + Dim motionPath As MotionCmdPath = TryCast(path(0), MotionCmdPath) + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the animation points. + + + + + Get the count of points + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + IAnimationPoints points = propertyEffect.Points; + int count = points.Count; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is PropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As PropertyEffect = TryCast(behavior,PropertyEffect) + Dim points As IAnimationPoints = propertyEffect.Points + Dim count As Integer = points.Count + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Gets a instance at the specified index from the collection. Read-only. + + Determines the index of the point. + Returns an instance. + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + IAnimationPoint point = propertyEffect.Points[0]; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As Behavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is PropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As PropertyEffect = TryCast(behavior,PropertyEffect) + Dim point As IAnimationPoint = propertyEffect.Points(0) + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the animation point. + + + + + Get the formula of point + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + IAnimationPoints points = propertyEffect.Points; + points[0].Formula = "0.5"; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As IBehavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is IPropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As IPropertyEffect = TryCast(behavior,IPropertyEffect) + Dim points As IAnimationPoints = propertyEffect.Points + points(0).Formula = "0.5" + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the time value of point + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + IAnimationPoints points = propertyEffect.Points; + points[1].Time = 90; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As IBehavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is IPropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As IPropertyEffect = TryCast(behavior,IPropertyEffect) + Dim points As IAnimationPoints = propertyEffect.Points + points(1).Time = 90 + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the value of point + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the behaviors list from the effect + IBehaviors behaviors = effect.Behaviors; + // Get behavior using foreach loop + foreach (IBehavior behavior in behaviors) + { + if (behavior is IPropertyEffect) + { + // Assign the property effect values + IPropertyEffect propertyEffect = (behavior as IPropertyEffect); + IAnimationPoints points = propertyEffect.Points; + points[0].Value = "#ppt_x"; + break; + } + } + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Fly, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the behaviors list from the effect + Dim behaviors As IBehaviors = effect.Behaviors + 'Get behavior using foreach loop + For Each behavior As IBehavior In behaviors + 'Check condition for behavior is property effect + If (TypeOf behavior Is IPropertyEffect) Then + 'Assign the property effect values + Dim propertyEffect As IPropertyEffect = TryCast(behavior,IPropertyEffect) + Dim points As IAnimationPoints = propertyEffect.Points + points(0).Value = "#ppt_x" + Exit For + End If + Next + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the sequence. + + + + + Add the effect in main sequence + + Shape to apply animation + Animation effect type + Animation Subtype + Trigger type for perform animation + Returns the newly added effect type + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Add the text animation effect in mainsequence + + Shape to apply animation effect + Animation effect type + Animation Subtype + Trigger type to perform animation + Build type for text animation + Returns the newly added animation effect + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Blink, EffectSubtype.None, EffectTriggerType.OnClick, BuildType.AsOneObject); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Blink, EffectSubtype.None, EffectTriggerType.OnClick, BuildType.AsOneObject) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Clear the effects from mainsequence list + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // clear the mainsequence + ppDoc.Slides[0].Timeline.MainSequence.Clear(); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'clear the mainsequence + ppDoc.Slides(0).TimeLine.MainSequence.Clear() + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the count of applied animation effects on particular shape + + Shape which have animation effect + Returns the animation effect count based on shape + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the effects count by shape + int effectsCount = ppDoc.Slides[0].Timeline.MainSequence.GetCount(shape); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the effects count by shape + Dim effectsCount As Integer = pres.Slides(0).TimeLine.MainSequence.GetCount(shape) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the effects list by shape in presentation + + Shape which have animation effect + Returns the effects list on particular shape + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the effects list by shape + IEffect[] effects = ppDoc.Slides[0].Timeline.MainSequence.GetEffectsByShape(shape); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the effects list by shape + Dim effects As IEffect() = pres.Slides(0).TimeLine.MainSequence.GetEffectsByShape(shape) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Insert the effect in sequence using index + + Index to add the effectr + Effect value to add in sequence + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Insert effect in mainsequence with effect value + ppDoc.Slides[0].Timeline.MainSequence.Insert(1,effect); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Insert effect in mainsequence with effect value + ppDoc.Slides(0).TimeLine.MainSequence.Insert(1, effect) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Remove the effect by particular effect item + + Effect item to remove from collection + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Remove the mainsequence with effect value + ppDoc.Slides[0].Timeline.MainSequence.Remove(effect); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Remove the mainsequence with effect value + ppDoc.Slides(0).TimeLine.MainSequence.Remove(effect) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Remove the effect by index + + Index to remove the effect from collection + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Remove the behavior with index value + ppDoc.Slides[0].Timeline.MainSequence.RemoveAt(0); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Remove the behavior with index value + ppDoc.Slides(0).TimeLine.MainSequence.RemoveAt(0) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Remove the effect by using shape + + Shape to remove the animation effects + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Remove the mainsequence with shape value + ppDoc.Slides[0].Timeline.MainSequence.RemoveByShape(shape); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Remove the mainsequence with shape value + ppDoc.Slides(0).TimeLine.MainSequence.RemoveByShape(shape); + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the count value of list of main sequence + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the main sequences count from the effect + int mainCount = ppDoc.Slides[0].Timeline.MainSequence.Count; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the main sequences count from the effect + Dim mainCount As Integer = ppDoc.Slides(0).TimeLine.MainSequence.Count + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Gets a instance at the specified index from the collection. Read-only. + + Determines the index of the effect. + Returns an instance. + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the mainsequence effect with index + IEffect mainEffect = ppDoc.Slides[0].Timeline.MainSequence[0]; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the mainsequence effect with index from the effect + Dim mainEffect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence(0) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the trigger shape value + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the trigger shape from the interactive sequence. + IShape triggerShape = ppDoc.Slides[0].Timeline.InteractiveSequences[0].TriggerShape; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the trigger shape from the interactive sequence. + Dim triggerShape As IShape = ppDoc.Slides(0).TimeLine.InteractiveSequences(0).TriggerShape + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the sequences. + + + + + Add the animation Sequence in sequences collection + + Trigger shape type for animation effect + Returns the new added sequence detail + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 250, 250, 250, 150); + // Add trigger shape on the slide + IShape triggerShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 150, 150, 200, 100); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.InteractiveSequences.Add(triggerShape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 250, 250, 250, 150) + 'Add trigger shape on the slide + Dim triggerShape As IShape = slide.Shapes.AddShape(AutoShapeType.Rectangle, 150, 150, 200, 100) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.InteractiveSequences.Add(triggerShape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Clear all the animation sequences in slide + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // clear the interactive sequences + ppDoc.Slides[0].Timeline.InteractiveSequences.Clear(); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'clear the interactive sequences + ppDoc.Slides(0).TimeLine.InteractiveSequences.Clear() + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Remove the particular sequence from collection + + Item to remove sequence + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the interactive sequence + ISequence interactiveSequence = ppDoc.Slides[0].Timeline.InteractiveSequences[0]; + // Remove the interactive sequence with effect value + ppDoc.Slides[0].Timeline.InteractiveSequences.Remove(interactiveSequence); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the interactive sequence + Dim interactiveSequence As ISequence = ppDoc.Slides(0).TimeLine.InteractiveSequences(0) + 'Remove the interactive sequence with effect value + ppDoc.Slides(0).TimeLine.InteractiveSequences.Remove(interactiveSequence) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Remove the particular sequence from collection using index + + Index to remove sequence + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Remove the behavior with index value + ppDoc.Slides[0].Timeline.InteractiveSequences.RemoveAt(0); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Remove the behavior with index value + ppDoc.Slides(0).TimeLine.InteractiveSequences.RemoveAt(0) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the effects count value + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + IShape shapeTrigger = ppDoc.Slides[0].Shapes.AddShape(AutoShapeType.Bevel, 10, 10, 20, 20); + // Add interactive sequence in slide with trigger shape + ISequence seqInter = ppDoc.Slides[0].Timeline.InteractiveSequences.Add(shapeTrigger); + // Add animation effect on the slide with shape + IEffect bouncePath = seqInter.AddEffect(shape, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the interactive sequences count from the effect + int interactiveCount = ppDoc.Slides[0].Timeline.InteractiveSequences.Count; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + Dim shapeTrigger As IShape = pres.Slides(0).Shapes.AddShape(AutoShapeType.Bevel, 10, 10, 20, 20) + 'Add interactive sequence in slide with trigger shape + Dim seqInter As ISequence = pres.Slides(0).TimeLine.InteractiveSequences.Add(shapeTrigger) + 'Add animation effect on the slide with shape + Dim bouncePath As IEffect = seqInter.AddEffect(ashp, EffectType.Bounce, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the interactive sequences count from the effect + Dim interactiveCount As Integer = ppDoc.Slides(0).TimeLine.InteractiveSequences.Count + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Gets a instance at the specified index from the collection. Read-only. + + Determines the index of the sequence. + Returns an instance. + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the interactive sequences effect with index from the effect + ISequence interactiveSequence = ppDoc.Slides[0].Timeline.InteractiveSequences[0]; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the interactive sequences effect with index from the effect + Dim interactiveSequence As ISequence = ppDoc.Slides(0).TimeLine.InteractiveSequences(0) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the animation timeline. + + + + + Get the list of interactive sequences from the slide + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.InteractiveSequences.Add(shape).AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the list of main sequence from the slide + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create() + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the timing. + + + + + Get the accelerate value of timing property + + /// + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the Timing properties of effect and assign it in new Timing property + ITiming time = (effect.Timing as ITiming); + // Assign the Set effect Accelerate property + time.Accelerate = 0; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the Timing properties of effect and assign it in new Timing property + Dim time As Timing = TryCast(effect.Timing, Timing) + 'Assign the Set effect Accelerate property + time.Accelerate = 0 + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the auto reverse value of timing property + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the Timing properties of effect and assign it in new Timing property + ITiming time = (effect.Timing as ITiming); + // Assign the Set effect Accelerate property + time.AutoReverse = false; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the Timing properties of effect and assign it in new Timing property + Dim time As Timing = TryCast(effect.Timing, Timing) + 'Assign the Set effect Accelerate property + time.AutoReverse = False + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the decelerate value of timing property + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the Timing properties of effect and assign it in new Timing property + ITiming time = (effect.Timing as ITiming); + // Assign the Set effect Accelerate property + time.Decelerate = 0; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the Timing properties of effect and assign it in new Timing property + Dim time As Timing = TryCast(effect.Timing, Timing) + 'Assign the Set effect Accelerate property + time.Decelerate = 0 + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the duration value of timing property + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the Timing properties of effect and assign it in new Timing property + ITiming time = (effect.Timing as ITiming); + // Assign the Set effect Accelerate property + time.Duration = 25; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the Timing properties of effect and assign it in new Timing property + Dim time As Timing = TryCast(effect.Timing, Timing) + 'Assign the Set effect Accelerate property + time.Duration = 25 + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the repeat count value of timing property + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the Timing properties of effect and assign it in new Timing property + ITiming time = (effect.Timing as ITiming); + // Assign the Set effect Accelerate property + time.RepeatCount = 3; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the Timing properties of effect and assign it in new Timing property + Dim time As Timing = TryCast(effect.Timing, Timing) + 'Assign the Set effect Accelerate property + time.RepeatCount = 3 + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the repeat duration value of timing property + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the Timing properties of effect and assign it in new Timing property + ITiming time = (effect.Timing as ITiming); + // Assign the Set effect Accelerate property + time.RepeatDuration = 2; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the Timing properties of effect and assign it in new Timing property + Dim time As Timing = TryCast(effect.Timing, Timing) + 'Assign the Set effect Accelerate property + time.RepeatDuration = 2 + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the restart value of timing property + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the Timing properties of effect and assign it in new Timing property + ITiming time = (effect.Timing as ITiming); + // Assign the Set effect Accelerate property + time.Restart = EffectRestartType.Always; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the Timing properties of effect and assign it in new Timing property + Dim time As Timing = TryCast(effect.Timing, Timing) + 'Assign the Set effect Accelerate property + time.Restart = EffectRestartType.Always + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the speed value of timing property + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the Timing properties of effect and assign it in new Timing property + ITiming time = (effect.Timing as ITiming); + // Assign the Set effect Accelerate property + time.Speed = 50; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the Timing properties of effect and assign it in new Timing property + Dim time As Timing = TryCast(effect.Timing, Timing) + 'Assign the Set effect Accelerate property + time.Speed = 50 + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the trigger delay time value of timing property + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the Timing properties of effect and assign it in new Timing property + ITiming time = (effect.Timing as ITiming); + // Assign the Set effect Accelerate property + time.TriggerDelayTime = 20; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the Timing properties of effect and assign it in new Timing property + Dim time As Timing = TryCast(effect.Timing, Timing) + 'Assign the Set effect Accelerate property + time.TriggerDelayTime = 20 + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Get the trigger type value of timing property + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add animation effect on the slide with shape + IEffect effect = ppDoc.Slides[0].Timeline.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick); + // Get the Timing properties of effect and assign it in new Timing property + ITiming time = (effect.Timing as ITiming); + // Assign the Set effect Accelerate property + time.TriggerType = EffectTriggerType.OnClick; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + 'Create a new presentation + Dim ppDoc As IPresentation = Presentation.Create + 'Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + 'Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + 'Add animation effect on the slide with shape + Dim effect As IEffect = ppDoc.Slides(0).TimeLine.MainSequence.AddEffect(shape, EffectType.ChangeFillColor, EffectSubtype.None, EffectTriggerType.OnClick) + 'Get the Timing properties of effect and assign it in new Timing property + Dim time As Timing = TryCast(effect.Timing, Timing) + 'Assign the Set effect Accelerate property + time.TriggerType = EffectTriggerType.OnClick + 'Save the presentation file + ppDoc.Save("Sample.pptx") + 'Close the presentation file + ppDoc.Close() + + + + + + Represents the slide show transition. + + + + + Get the Slide Transition Mouse On Click value + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble; + //Set the mouse on click bool value + slide.SlideTransition.TriggerOnClick = true; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + ' Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble + ' Set the mouse on click bool value + slide.SlideTransition.TriggerOnClick = true + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close() + + + + + + Get the Next Slide Advance Time Check Value + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble; + // Set the next slide advance time bool value + slide.SlideTransition.TriggerOnTimeDelay = true; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + ' Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble + ' Set the next slide advance time bool value + slide.SlideTransition.TriggerOnTimeDelay = True + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close() + + + + + + + Get the advance time value for navigating to next slide. + + + Max Advance time value is 86399. + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble; + // Set the next slide advance time bool value + slide.SlideTransition.TriggerOnTimeDelay = true; + // Set the advance on time value for next slide + slide.SlideTransition.TimeDelay = 25000; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + ' Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble + ' Set the next slide advance time bool value + slide.SlideTransition.TriggerOnTimeDelay = True + ' Set the advance on time value for next slide + slide.SlideTransition.TimeDelay = 25000 + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close() + + + + + + Get the Duration of the Slide Transition. + + + Max Duration is 59 seconds(0 to 59). + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble; + // Set the duration value(in seconds) for slide transition effect + slide.SlideTransition.Duration = 30; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + ' Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble + ' Set the duration value(in seconds) for slide transition effect + slide.SlideTransition.Duration = 30 + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close() + + + + + + Get the Transition effect type + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + ' Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close() + + + + + + Get the Transition effect SubType(Direction) + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble; + // Add subtype for the transition effect + slide.SlideTransition.TransitionEffectOption = TransitionEffectOption.Right; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + ' Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble + ' Add subtype for the transition effect + slide.SlideTransition.TransitionEffectOption = TransitionEffectOption.Right + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close() + + + + + + Get the Speed of the Transition effect + + + Transition duration value will change based on speed. + The duration values are Fast - 0.5 sec, Medium - 0.75 sec, Slow - 1.0 sec + + + + // Create a new presentation. + IPresentation ppDoc = Presentation.Create(); + // Add a slide to the presentation. + ISlide slide = ppDoc.Slides.Add(SlideLayoutType.Blank); + // Add shape on the slide + IShape shape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150); + // Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble; + // Add the speed value for the transition effect + slide.SlideTransition.Speed = TransitionSpeed.Slow; + // Save the presentation file + ppDoc.Save("Sample.pptx"); + // Close the presentation file + ppDoc.Close(); + + + ' Create a new presentation. + Dim ppDoc As IPresentation = Presentation.Create() + ' Add a slide to the presentation. + Dim slide As ISlide = ppDoc.Slides.Add(SlideLayoutType.Blank) + ' Add shape on the slide + Dim shape As IShape = slide.Shapes.AddShape(AutoShapeType.Diamond, 150, 150, 250, 150) + ' Add slide transition effect on the slide + slide.SlideTransition.TransitionEffect = TransitionEffect.PageCurlDouble + ' Add the speed value for the transition effect + slide.SlideTransition.Speed = TransitionSpeed.Slow + ' Save the presentation file + ppDoc.Save("Sample.pptx") + ' Close the presentation file + ppDoc.Close() + + + + + + Specifies the transition effect + + + + + Specifies the transition effect is None + + + + + Specifies the transition effect is Blinds + + + + + Specifies the transition effect is Checkerboard + + + + + Specifies the transition effect is Circle + + + + + Specifies the transition effect is Comb + + + + + Specifies the transition effect is Cover + + + + + Specifies the transition effect is Cut + + + + + Specifies the transition effect is Diamond + + + + + Specifies the transition effect is Dissolve + + + + + Specifies the transition effect is FadeAway + + + + + Specifies the transition effect is NewsFlash + + + + + Specifies the transition effect is Plus + + + + + Specifies the transition effect is Push + + + + + Specifies the transition effect is Random + + + + + Specifies the transition effect is RandomBars + + + + + Specifies the transition effect is Split + + + + + Specifies the transition effect is Strips + + + + + Specifies the transition effect is Wedge + + + + + Specifies the transition effect is Wheel + + + + + Specifies the transition effect is Wipe + + + + + Specifies the transition effect is Zoom + + + + + Specifies the transition effect is Vortex + + + + + Specifies the transition effect is Switch + + + + + Specifies the transition effect is Flip + + + + + Specifies the transition effect is Ripple + + + + + Specifies the transition effect is HoneyComb + + + + + Specifies the transition effect is Cube + + + + + Specifies the transition effect is Box + + + + + Specifies the transition effect is Rotate + + + + + Specifies the transition effect is orbit + + + + + Specifies the transition effect is Doors + + + + + Specifies the transition effect is Window + + + + + Specifies the transition effect is FerrisWheel + + + + + Specifies the transition effect is Gallery + + + + + Specifies the transition effect is Conveyor + + + + + Specifies the transition effect is Pan + + + + + Specifies the transition effect is GlitterDiamond + + + + + Specifies the transition effect is GlitterHexagon + + + + + Specifies the transition effect is Warp + + + + + Specifies the transition effect is FlyThrough + + + + + Specifies the transition effect is Flashbulb + + + + + Specifies the transition effect is Shred + + + + + Specifies the transition effect is Reveal + + + + + Specifies the transition effect is FallOver + + + + + Specifies the transition effect is Drape + + + + + Specifies the transition effect is Curtains + + + + + Specifies the transition effect is Wind + + + + + Specifies the transition effect is Prestige + + + + + Specifies the transition effect is Fracture + + + + + Specifies the transition effect is Crush + + + + + Specifies the transition effect is PeelOff + + + + + Specifies the transition effect is PageCurlSingle + + + + + Specifies the transition effect is PageCurlDouble + + + + + Specifies the transition effect is Origami + + + + + Specifies the transition effect is Airplane + + + + + Specifies the transition effect is Morph + + + + + Specifies the transition effect is Uncover + + + + + Specifies the transition effect option + + + + + Specifies the transition subtype is None + + + + + Specifies the transition subtype is Left + + + + + Specifies the transition subtype is Right + + + + + Specifies the transition subtype is Up + + + + + Specifies the transition subtype is Down + + + + + Specifies the transition subtype is LeftDown + + + + + Specifies the transition subtype is LeftUp + + + + + Specifies the transition subtype is RightDown + + + + + Specifies the transition subtype is RightUp + + + + + Specifies the transition subtype is In + + + + + Specifies the transition subtype is Out + + + + + Specifies the transition subtype is Horizontal + + + + + Specifies the transition subtype is Vertical + + + + + Specifies the transition subtype is ByObject + + + + + Specifies the transition subtype is ByWord + + + + + Specifies the transition subtype is ByChar + + + + + Specifies the transition subtype is StripsIn + + + + + Specifies the transition subtype is StripsOut + + + + + Specifies the transition subtype is RectangleIn + + + + + Specifies the transition subtype is RectangleOut + + + + + Specifies the transition subtype is SmoothLeft + + + + + Specifies the transition subtype is SmoothRight + + + + + Specifies the transition subtype is BlackLeft + + + + + Specifies the transition subtype is BlackRight + + + + + Specifies the transition subtype is Inbounce + + + + + Specifies the transition subtype is Outbounce + + + + + Specifies the transition subtype is Center + + + + + Specifies the transition subtype is HorizontalOut + + + + + Specifies the transition subtype is HorizontalIn + + + + + Specifies the transition subtype is VerticalOut + + + + + Specifies the transition subtype is VerticalIn + + + + + Specifies the transition subtype is Across + + + + + Specifies the transition subtype is ThroughBlack + + + + + Specifies the transition subtype is Smoothly + + + + + Specifies the transition subtype is Spoke1 + + + + + Specifies the transition subtype is Spokes2 + + + + + Specifies the transition subtype is Spokes3 + + + + + Specifies the transition subtype is Spokes4 + + + + + Specifies the transition subtype is Spokes8 + + + + + Specifies the transition subtype is Reverse1Spoke + + + + + Specifies the transition speed + + + + + Specifies the transition speed is None + + + + + Specifies the transition speed is Slow + + + + + Specifies the transition speed is Medium + + + + + Specifies the transition speed is Fast + + + + + Specifies the direction value is None + + + + + Specifies the direction value is Horizontal + + + + + Specifies the direction value is Vertical + + + + + Specifies the eight direction type is None. + + + + + Specifies the eight direction type is LeftDown + + + + + Specifies the eight direction type is LeftUp + + + + + Specifies the eight direction type is RightDown + + + + + Specifies the eight direction type is RightUp + + + + + Specifies the eight direction type is Left + + + + + Specifies the eight direction type is Up + + + + + Specifies the eight direction type is Down + + + + + Specifies the eight direction type is Right + + + + + Specifies the side direction is None + + + + + Specifies the side direction is Down + + + + + Specifies the side direction is Left + + + + + Specifies the side direction is Right + + + + + Specifies the side direction is Up + + + + + Specifies the InOut direction is None + + + + + Specifies the InOut direction is In + + + + + Specifies the InOut direction is Out + + + + + Specifies the Corner direction is None + + + + + Specifies the Corner direction is LeftDown + + + + + Specifies the Corner direction is LeftUp + + + + + Specifies the Corner direction is RightDown + + + + + Specifies the Corner direction is RightUp + + + + + Specifies the Pattern is None + + + + + Specifies the Pattern is Diamond + + + + + Specifies the Pattern is Hexagon + + + + + Specifies the ShredPattern is None + + + + + Specifies the ShredPattern is Strip + + + + + Specifies the ShredPattern is Rectangle + + + + + Specifies the LeftRight direction is None + + + + + Specifies the LeftRight direction is Left + + + + + Specifies the LeftRight direction is Right + + + + + Specifies the Morph option is ByObject + + + + + Specifies the Morph option is ByWord + + + + + Specifies the Morph option is ByChar + + + + + + This class holds the name of the Syncfusion.OfficeChart.Base assembly and provides a helper + routine that helps with resolving types when loading a serialization stream and when + the framework probes for assemblies by reflection. + + + + + The full name of this assembly without version information: "Syncfusion.OfficeChart" + + + + + A reference to the for the XlsIO assembly. + + + + + The root namespace of this assembly. Used internally for locating resources within the assembly. + + + + diff --git a/ZZ_Signature_C/bin/Debug/Syncfusion.XlsIO.Base.dll b/ZZ_Signature_C/bin/Debug/Syncfusion.XlsIO.Base.dll new file mode 100644 index 00000000..bd4f4edc Binary files /dev/null and b/ZZ_Signature_C/bin/Debug/Syncfusion.XlsIO.Base.dll differ diff --git a/ZZ_Signature_C/bin/Debug/Syncfusion.XlsIO.Base.xml b/ZZ_Signature_C/bin/Debug/Syncfusion.XlsIO.Base.xml new file mode 100644 index 00000000..1bd0e643 --- /dev/null +++ b/ZZ_Signature_C/bin/Debug/Syncfusion.XlsIO.Base.xml @@ -0,0 +1,309098 @@ + + + + Syncfusion.XlsIO.Base + + + + + Performs the parsing operation of Array formulas. + + + + + To check the index of "_" in a string(formula). + + + + + The operators which are involved in array formula. If these operators are not + present in formula, then formula must be returned without parsing. + + + + + Length in each splitted range of array formula. + + + + + Gets or sets the ArrayRecordPostion method from XlsIO side to get the position + of the cell in the array. + + + + + Initialize the object for parsing operations. + + An instance of . + + + + Gets or sets the instance of . + + + + + To split the strings based on the pattern involving operators(-,+,*,/,&). + For example:"A1:B1 * C1:D1" will be splitted as "A1:B1" and "C1:D1" which will + be stored separately in string array. + + The string to be splitted into string array. + String array. + + + + To calculate the height and width of the passed argument. Based on the argument's type of + cell reference or constants, they are calculated separately and if any of the width/height is less than + max height/width, correspondingly range is increased/decreased for range.The minimum width/height is + maintained. + + A string passed to compute maximum height/width. + The height determined for array. + The width determined for array. + The minimum height. + The minimum width. + The string with altered height/width. + + + + Resize range based on the max height and max width of the array and stored in a list + which needs to be parsed. For example: "A1:B3*C1:C2" will be resized based on the + height of "2"(value of smaller row count but not 1) and width of "2"(Value of smaller column count but not 1). + The arguments splitted from GetCellsFromArgs method, will be of the mentioned length of 4. Hence "A1:B3" will be + splitted and be first argument in the list and "C1:C2" will be splitted as the next argument in the list. + This list will be passed for making expressions in Parse method as "A1*C1,B1*C1,A2*C2,B2*C2". + + The formula array which needs to be adjusted and parsed. + The parsed formula string in original format. + The string array. + + + + A method that splits the formula based on the operators. + For example: if the argument is passed as "(A1:B2+C1:D2)" which will be parsed + as "A1+C1,B1+D1,A2+C2,B2+D2". + + The formula passed in with operator. + The parsed formula string in original format. + Splitted formula based on logic. + + + + A method that parses the array formula and return it as normal formula for computation. + For example if the formula is passed as "{=SUM(A1:B1*C1:D1)}", then it will be parsed + and returned as SUM(A1*C1,B1*D1). + + The array formula to be parsed. + The normal formula for parsing in CalcEngine. + + + + A method that invokes for computation of LEN,ROW,COLUMN methods in array formula. + For example if the formula SUM(ROW(A1:A5)) then it should be parsed as SUM({1,2,3,4,5})(excel behavior) + and if the formula is ROW(A1:A5), based on the required cell, the corresponding row index is returned. + + The formula's argument. + The formula name. + The computation level of the formula. + A string which holds the computed value with curly braces. + + + + The function to check if the given formula is multi cell array or not. + For example: if the formula is "{A1:B1 * C1:D1}", then it is a multi cell array + whereas, if the formula is "SUM(A1:B1*C1:D1), then it is not a multi cell array. + + The formula which is passed to check. + True; if it is multicell array;else False. + + + + To parse the multi cell array, that is to get the positon of the array record and returning + the particular formula for the given cell. + For example: if the parsed formula is "A1*C1,B1*D1,A2*C2,B2*D2",then based on the given cell if + the index is 2, then resultant formula is "B1*D1" whereas if the index is "-1", then error + messages is returned. + + formula to be parsed. + The parsed formula string in original format. + Formula required for given cell. + + + + Parsing the one/multi dimensional array constants in formula. For Eg: parsing of + {1,2,3} or {1;2;3} or {1,2;3,4}. It also parses the multi dimensional array with constants + such as {1,2}*{3,4}. + + Formula to be parsed. + The formula/value which needs to be displayed. + + + + If passed formula contains operators involving expressions with commas, then it will + be parsed by splitting the arg's based on comma and storing in the list. For eg: if the + passed argument is "{1*2,3*4,4*5}, then based on the cell's index, particular expression + will be returned + + The formula for parsing. + The height of the arg. + The width of the arg. + Expression/Value based on the formula. + + + + For parsing the horizontal arrays. (i.e) the formula which is separated by + commas, for eg: {1,2,3}. + + Formula to be parsed. + The value based on position of cell. + + + + For parsing the vertical arrays. (i.e) the formula which is separated by + semi colon, for eg: {1;2;3}. + + Formula to be parsed. + The value based on position of cell. + + + + Getting the height in which the array formula will arrange the values of selected range. + Smaller height of the given expression should be preferred but if the smaller value is 1, then the + height of another expression should be considered. + For example:"A1:B3*C1:D2" in which, the smaller height 2 will be considered and returned. + + Splitted strings from original formula. + The height required for array formula. + + + + Getting the width in which the array formula will arrange the values of selected range. + Smaller width of the given expression should be preferred but if the smaller value is 1, then the + width of another expression should be considered. + For example:"A1:B3*C1:E2" in which, the smaller width is 2 will be considered and returned. + + Splitted strings from original formula. + The width required for array formula. + + + + To get the position of the cell in the array formula applied range. + if the cell like "A5" is passed with height and width, then it finds the exact + postion in the selected range "A4:D7" from XlsIO side and returns it. + + The height of the array record. + The width of the array record + The position of the cell. + + + + To Compute the length of the given argument, based on the computational level. + For example if the formula SUM(LEN(A1:A3)), the computation level is greater than 1, + hence it should be parsed as SUM({LEN(A1),LEN(A2),LEN(A3)})(excel behavior) + and if the formula is LEN(A1:A3), the computation level is 1, then + the corresponding length of the cell is returned. + + Passed argument for computation. + Computational level. + Computed result. + + + + To Compute the row index of the given argument, based on the computational level. + For example if the formula SUM(ROW(A1:A3)), the computation level is greater than 1, + hence it should be parsed as SUM({ROW(A1),ROW(A2),ROW(A3)})(excel behavior) + and if the formula is ROW(A1:A3), the computation level is 1, then + the corresponding row index of the cell is returned. + + Passed argument for computation. + Computational level. + Computed result. + + + + To Compute the column index of the given argument, based on the computational level. + For example if the formula SUM(COLUMN(A1:C1)), the computation level is greater than 1, + hence it should be parsed as SUM({COLUMN(A1),COLUMN(B1),COLUMN(C1)})(excel behavior) + and if the formula is COLUMN(A1:C3), the computation level is 1, then + the corresponding column index of the cell is returned. + + Passed argument for computation. + Computational level. + Computed result. + + + + To compute the IF fomrula based on the computation level. + If the computation level is greater than zero and the formula is "IF(G3:G30="",0,1) get the value and perform logical test for each cell and return the array structure value(“1,1,1,1,1,1,0,0,0,1”). + + Passed argument for computation. + Computational level. + Computed result. + + + + To compute the IF fomrula based on the computation level. + + CellRange + Tokens("=",">",">=") + The criteria used to determine which cells to add. + the parsed criteria is number is set as true.otherwise false. + Computational level. + The length of parsed range. + Computed result. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Delegate defined to access the method GetArrayRecordPosition for + getting position of the cell. + + Row index of the cell. + Column index of the cell. + The height required for the selected range. + The width required for the selected range. + The method containing the four integer parameters. + + + + CalcEngine encapsulates the code required to parse and compute formulas. Hashtable + properties maintain a Formula Library of functions as well as a list + of dependent cells. + + You can add and remove library functions. + + + + + Used to store the value as double + + + + + Used to store the value as double + + + + + Used to store the value as double + + + + + used to calculate the row in Table. + + + + + used to calculate the header in Table. + + + + + used to calculate the total in Table. + + + + + used to calculate the data in Table + + + + + used to calculate all in Table + + + + + This field holds equivalent double value of 1904(DateTime). + + + + + Returns the number of days since 01 Jan 1900. + + Year, month, and day. + Number of days. + + + + Returns the number of days since 01 Jan 1900. + + Text containing a date. + Number of days. + + + + Returns the day of the serial number date. + + Serial number date. + Day of the given date. + + + + Number of days between 2 dates using 360 day year. + + Serial number date1, serial number date1 and method. + Days between the dates. + + + + returns the fraction of the year represented by the number of whole days between two given dates + + startDate, endDate, basis (optional) + returns the fraction of the year + + + + Returns the number of days between two dates. + + startDate, endDate + Returns the number of days + + + + returns the date of given date after the specific month + + startDate, months + returns the date + + + + Returns the last date of the date after the specific month of given date. + + startDate, month + return the date. + + + + Returns the week number of a specific date + + serial_number,start_day of week (optional) + 1 or omitted - Sunday + 2 Monday + 11 Monday + 12 Tuesday + 13 Wednesday + 14 Thursday + 15 Friday + 16 Saturday + 17 Sunday + 21 Monday + returns the week number + + + + Returns ISO week number of the year for a given date + + date + returns ISO week number + + + + returns the date of the given date after the number of working days + + startDate, days, holidays (optional) + returns the date + + + + Returns the value of ComputeNetworkDays + + arguments + + + + + Returns the number of whole workdays between two dates, week end and holidays are not consider as working days + + start_date, end_date,weekend (optional), holidays (optional) + return the work days + + + + Returns the serial number of the given date before or after a specified number of workdays + + startDate, days, weekend (optional) , holidays (optional) + return the serial number of specific date. + + + + Returns the hour of the given time. + + Given time. + Hour of given time. + + + + Returns the minute of the given time. + + Given time. + Minute of given time. + + + + Returns the second of the given time. + + Given time. + Second of given time. + + + + Returns the month of the given date. + + given time + Month of given date. + + + + Returns the current date and time as a date serial number. + + Parameter Ignored. + Current date and time as serial number. + + + + Returns the current date as a date serial number. + + Parameter Ignored. + Current date as date serial number. + + + + Returns a fraction of a day. + + Hour, minute, and second. + Fraction of a day. + + + + Returns a fraction of a day. + + Time as a text string. + Fraction of a day. + + + + Day of the week. + + Serial number date1 and return_type. + Days between the dates. + + + + Returns the year of the given date. + + Given date. + Month of given date. + + + + Returns the number of days or months or years between two dates. + + Start date, end date and unit. + The number of days, months, or years between two dates. + + + + Calculates the Output to the concerned base. + + Data to be converted. + Base of the Given Data + Base to be obtained. + The data concerning to the base in 'to' parameter + + + + Computes the Binary value for the given Decimal Number. + + Data to be converted. + Returns the calculated Binary value. + + + + Computes the Octal value for the given Decimal Number. + + data to be converted. + Returns the calculated Octal value. + + + + Computes the Hexadecimal value for the given Decimal Number. + + Data to be converted. + Returns the calculated Hexadecimal value. + + + + Computes the Octal Number for the given binary NUmber. + + Input BinaryNumber + The resultant Octal Number + + + + Computes the Decimal Number for the given binary NUmber. + + Input BinaryNumber + The resultant Decimal Number + + + + + + + + + + + Computes the Binary value for the given Hexadecimal Data. + + Data to be converted. + Returns the calculated Binary value. + + + + Computes the Octal Equivalent for the given Hexadecimal value + + Data to be converted. + The calculated Octal value for the given. + + + + Computes the Decimal Equivalent for the given Hexadecimal value + + Data to be converted. + The calculated Decimal value for the given. + + + + Computes the Binary value for the given Octal Number. + + Data to be converted. + Returns the calculated Binary value. + + + + Calculates the Hexadecimal equivalent value for the given Octal value + + Data to be converted. + The Converted Hexadecimal value. + + + + Computes the Decimal Equivalent for the given Octal value + + The Value to be converted to Decimal + The calculated value for the given + + + + Gets the Real part of the given Complex number. + + Given complex number. + Real part of the given complex Number. + + + + Gets the Imaginary part of the given Complex number. + + Given complex number. + Imaginary part of the given complex Number. + + + + Returns the absolute value (modulus) of a complex number in x + yi or x + yj text format. + + Input Complex Number + The absolute value (modulus) of given complex number + + + + Computes the Product of the given Complex Numbers + + Input Complex Numbers + The multiplied result of the two complex numbers. + + + + Obtains the complex number for the given real and imaginary part. + + Given real and Imaginary part. + The complex number derived from the real and imaginary part. + + + + Computes the sum of two complex number. + + Parameter that is used for performing sum + The calculated sum of the numbers + + + + Computes the Difference of two complex number. + + Parameter that is used for performing Subtraction + The calculated difference of the numbers + + + + Returns the complex conjugate of a complex number in x + yi or x + yj text format. + + Input Complex Number + The complex conjugate of a complex number in x + yi or x + yj text format. + + + + Computes the Division of the given Complex Numbers + + Input Complex Numbers + The Divided result of the two complex numbers. + + + + Returns the Square Root of the given Complex Number. + + Input Complex Number + The Square Root of the given Complex Number. + + + + Returns the argument (theta), an angle expressed in radians + + Input Complex Number + The argument (theta), an angle expressed in radians + + + + Returns the IMSin of the given Complex Number. + + Input Complex Number + The IMSin of the given Complex Number. + + + + Returns the Hyperbolic Sine value of the given Complex Number. + + Input Complex Number + The Hyperbolic Sine Value of the given Complex Number. + + + + Returns the IMCSC of the given Complex Number. + + Input Complex Number + The IMCSC of the given Complex Number. + + + + Returns the IMCos of the given Complex Number. + + Input Complex Number + The IMCos of the given Complex Number. + + + + Returns the IMSEC of the given Complex Number. + + Input Complex Number + The IMSEC of the given Complex Number. + + + + Returns the IMTan of the given Complex Number. + + Input Complex Number + The IMTan of the given Complex Number. + + + + Returns the IMCot of the given Complex Number. + + Input Complex Number + The IMCot of the given Complex Number. + + + + Returns the IMCSCH of the given Complex Number. + + Input Complex Number + The IMCSCH of the given Complex Number. + + + + Returns the Hyperbolic Cos value of the given Complex Number. + + Input Complex Number + The Hyperbolic Cos Value of the given Complex Number. + + + + Returns the IMTanH of the given Complex Number. + + Input Complex Number + The IMTanH of the given Complex Number. + + + + Returns the IMCotH of the given Complex Number. + + Input Complex Number + The IMCotH of the given Complex Number. + + + + Returns the IMSecH of the given Complex Number. + + Input Complex Number + The IMSecH of the given Complex Number. + + + + Returns the LOG10 value of the given Complex Number. + + Input Complex Number + The Log10 of the given Complex Number. + + + + Returns the Log2 of the given Complex Number. + + Input Complex Number + The Log2 of the given Complex Number. + + + + Returns the LOG value of the given Complex Number. + + Input Complex Number + The Log of the given Complex Number. + + + + Returns the Exponent of the given Complex Number. + + Input Complex Number + The Exponent of the given Complex Number. + + + + Returns the power of the given Complex Number. + + Input Complex Number + The power of the given Complex Number. + + + + Computes the Difference of two complex number. + + Parameter that is used for performing Subtraction + The difference of two complex numbers in x + yi or x + yj text format. + + + + Computes the Bit OR of the given two numbers. + + Input Numbersfor which the OR operations has to be performed. + Bit OR value of the given two numbers. + + + + Computes the Bit XoR of the given two numbers. + + Input Numbersfor which the OR operations has to be performed. + Bit OR value of the given two numbers. + + + + Computes the Bit AND of the given two numbers. + + Input Numbersfor which the AND operations has to be performed. + Bit AND value of the given two numbers. + + + + Computes the Bit Left Shift of the given number. + + Input Numbersfor which the OR operations has to be performed. + Bit Left Shift value of the given number. + + + + Computes the Bit Right Shift of the given number. + + Input Numbersfor which the Bit Right Shift operations has to be performed. + Bit Right Shift value of the given number. + + + + Returns the error function . + + Input Number + The error function. + + + + Returns the Complement of error function . + + Input Number + The Complement of error function. + + + + Returns the error function . + + Input Number + The error function. + + + + Return the value of the ComputeBesselI + + arguments + + + + + Return the value of besseli0 + + value + + + + + Returns the BesselJ function of order n of the specified number. + + Input Number + The BesselJ of the Number. + + + + Returns the Bessel function of order 1 of the specified number. + + + + + + + Returns the Bessel function of order 0 of the specified number. + + + + + + + Returns the BesselY function of order n of the specified number. + + Input Number + The BesselY of the Number. + + + + Returns the Bessel function of the second kind, of order 0 of the specified number. + + + + + + + Returns the Bessel function of the second kind, of order 1 of the specified number. + + + + + + + Returns the value of ComputebesselK + + arguments list + + + + + Returns the value of ComputeConversion + + arguments list + + + + + Clears all look up caches used in HLookUp and VLookUp calculations so they will be recreated the + next time one of these functions is used. + + + + + Returns the value of Clearsheet + + Icalcdata + + + + Use this method to reset internal error strings if you make changes to . + + + + + This method used to find the sheet id of the parsed grid. + + Intsance of ICalcData + The sheet id of the grid + + + + Used to find the determinant internally for matrix function + + double array + array length + double value + + + + Returns the Probabilitydistribution of the normal distribution. + + Value at which the distribution is evaluated. + Mean of the distribution. + Standard deviation of the distribution. + + + + find the cofactor of matrix + + + array length + return the inverse matrix + return success state + + + + To find the inverse of matrix + + matrix + cofactor matrix + matrix length + Inveser matrix + Inverse Matrix + + + + Chi-squared probability density function. + + The value at which the PDF is evaluated. + Degress of freedom, or number independent standard normal distributions. + + + + + Returns the inverse of the CDF of the normal distribution. + + Cumulative probability of the distribution. 0 <= p >= 1. + Mean of the distribution. + Standard deviation of the distribution. + + + + Returns the inverse of the CDF of the standard normal distribution. + + Cumulative probability of the distribution. p is between 0 and 1. + + + + Computes the net present value an investment. + + Delimited string containing the rate as percentage per period + and a list of invested values. + Net present value. + + + + Computes the payment for a loan. + + Delimited string containing the rate as percentage per period, + number of periods, present value, future value, and payment type (0 = end of period, 1 = start of period). + Payment amount. + + + + Computes the principal payment for a period. + + Delimited string containing the rate as percentage per period, the period, + number of periods, present value, future value, and payment type (0 = end of period, 1 = start of period). + Principal payment. + + + + Computes the present value of an investment. + + Delimited string containing the rate as percentage per period, + number of periods, payment per period, future value, and payment type (0 = end of period, 1 = start of period). + Present value. + + + + Compute the effective annual interest rate. + + the nominal annual interest rate and the number of compounding periods per year + The effective annual interest rate. + + + + Computes the internal rate of return of a series of cash flows. + + Delimited string containing a range of cells and an initial guess. + Internal rate of return. + + This IRR calculation uses Newton's method to approximate a root of + f(r) = Sum( values[i]/(1+r)^i) = 0 + where the Sum index is i = 1 to the number of values. The algorithm returns a value if + the relative difference between root approximations is less than 1e-7. It fails if this + accuracy is not attained in 20 iterations. + + + + + Computes the straight-line depreciation of an asset per period. + + Delimited string containing the cost, + salvage value, and life. + Depreciation of the asset. + + + + Computes the sum of years digits depreciation of an asset per period. + + Delimited string containing the cost, + salvage value, life, and period. + Depreciation for the requested period. + + + + Computes the variable declining balance of an asset. + + Delimited string containing the initial cost, + salvage value, life of asset, period of calculation, and factor. + Variable declining balance. + + + + Converts a number to text using currency format. + + Number and the number of digits. + Currency format string. + + + + Converts a number to text using currency format. + + Number and the number of digits. + Currency format string. + + + + Returns the weighted average of the present value of the cash flows + + Number and the number of digits + Number of years + + + + Calculates the accrued interest of a security that pays interest at maturity. + + Number and the number of digits + Accrued interest + + + + Calculates the equivalent interest rate for the growth of an investment. + + Investment periods, present and future value of the investments. + Returns the equivalent interest. + + + + Returns the future value of an initial principal after applying a series of compound interest rates. + + Number and the number of digits + Number of future value + + + + Returns the interest rate for a fully invested security. + + Number and the number of digits + Rate of interest + + + + Returns the discount rate for a security. + + Number and the number of digits + Rate of Discount + + + + Computes the future value of an investment. + + Delimited string containing the rate as percentage per period, + number of periods, payment per period, present value, and payment type (0 = end of period, 1 = start of period). + Future value of the investment. + + + + Computes the interest payment for a period. + + Delimited string containing the rate as percentage per period, the period, + number of periods, present value, future value, and payment type (0 = end of period, 1 = start of period). + Interest payment. + + + + Computes the internal rate of return of a series of cash flows. + + Delimited string containing a range of cells and an initial guess. + Internal rate of return. + + This IRR calculation uses Newton's method to approximate a root of + f(r) = Sum( values[i]/(1+r)^i) = 0 + where the Sum index is i = 1 to the number of values. The algorithm returns a value if + the relative difference between root approximations is less than 1e-5. It fails if this + accuracy is not attained in 20 iterations. + + + + + Computes the internal rate of return for a schedule of possibly non-periodic cash flows. + + A list of two or three arguments. The first argument contains a range of cash flows, the second argument + contains a list of corresponding date serial number values, and the third argument contains an initial guess at the return value. + The internal rate of return. + The computation uses a root finding algorithm. If the algorithm does not converge to a result within 100 iterations, + an error is returned. The convergence requirement is an absolute error of 0.000001. The first date must be the earliest date, + and the dates must be date serial numbers. Also, there must be at least one positive cash flow and at least one negative cash + flow in the cash flow values. + + + + + Computes the extended internal rate of return for a schedule of possibly non-periodic cash flows. + + Which contains the non periodic cashflows. + Which contains the details about the investment days of non-periodic cash flows. + Which denotes the inital guess value. + + Returns the xiir calculation value. + + + + + Computes the extended internal rate of return for a schedule of possibly non-periodic cash flows. + + Which contains the non periodic cashflows. + Which contains the details about the investment days of non-periodic cash flows. + Which denotes the guess value. + + Returns the xiir calculation value. + + + + + Computes the Net Present Value for a schedule of possibly non-periodic cash flows. + + Which contains the non periodic cashflows. + Which contains the details about the investment days of non-periodic cash flows. + Which denotes the guess value. + + Returns the Net Present Value. + + + + + Computes the Net Present Dervative Value for a schedule of possibly non-periodic cash flows. + + Which contains the non periodic cashflows. + Which contains the details about the investment days of non-periodic cash flows. + Which denotes the guess value. + + Returns the Net Present Dervative Value. + + + + + Computes the simple interest payment. + + Delimited string containing the rate as percentage per period, the period, + number of periods, and present value. + Simple interest payment. + + + + Computes the modified internal rate of return of a series of cash flows. + + Delimited string containing a range of cells, + finance interest rate, and a reinvested interest rate. + Modified internal rate of return. + + + + Computes the number of periods an investment. + + Delimited string containing the rate as percentage per period, + payment per period, present value, future value, and payment type (0 = end of period, 1 = start of period). + Number of periods. + + + + Computes the declining balance of an asset. + + Delimited string containing the initial cost, + salvage value, life of asset, period of calculation, and months in the initial year. + Declining balance. + + + + Computes the double declining balance of an asset. + + Delimited string containing the initial cost, + salvage value, life of asset, period of calculation, and factor. + Double declining balance. + + + + Returns the cumulative interest paid for an investment period with a constant interest rate. + + Number and the number of digits + Number of interest rate + + + + Calculates the accrued interest of a security in the case of periodic payments. + + Number and the number of digits + Accrued interest + + + + Returns the cumulative principal paid for an investment period with a constant interest rate. + + Number and the number of digits + Cumulative principal value + + + + Returns the amount received at maturity for a fully invested security. + + Number and the number of digits + Received amount + + + + This function computes the nominal interest rate based on the effective annual interest rate and the number of compounding periods per year. + + + A comma-separated string containing two values. The format should be: effective_rate, npery. + + effective_rate: The effective annual interest rate as a decimal (e.g., 0.053543 for 5.3543%). + npery: The number of compounding periods per year as an integer (e.g., 4 for quarterly compounding). + + + + A string representing the nominal interest rate. If the input is invalid or cannot be parsed, an error message is returned. + + + The nominal interest rate is calculated using the formula: + + nominalRate = npery * (Math.Pow(1 + effectRate, 1.0 / npery) - 1) + + where effectRate is the effective annual interest rate and npery is the number of compounding periods per year. + The method checks that the effective annual interest rate is positive and that the number of compounding periods is at least 1. + If the inputs are invalid (e.g., non-numeric values, negative rates, or invalid period counts), an appropriate error message is returned. + + + + + This function calculates the Modified Duration (MDuration) of a security, similar to the MDuration function in Excel. + This measure indicates how sensitive the bond's price is to changes in interest rates, adjusted for the bond's yield and the frequency of its coupon payments. + + + A comma-separated string of arguments. The format should be: settlement_date, maturity_date, coupon_rate, yield_rate, frequency, [basis]. + + settlement_date: The date when the bond is purchased (format: DATE function or serial number). + maturity_date: The date when the bond matures (format: DATE function or serial number). + coupon_rate: The annual coupon rate of the bond as a decimal (e.g., 0.08 for 8%). + yield_rate: The annual yield of the bond as a decimal (e.g., 0.09 for 9%). + frequency: The number of coupon payments per year (e.g., 1 for annual, 2 for semiannual, 4 for quarterly). + basis: Optional. The day count basis to use (0 for US 30/360, 1 for Actual/Actual, 2 for Actual/360, 3 for Actual/365, 4 for European 30/360). + + + + A string representing the modified duration of the bond, rounded to a reasonable number of decimal places. + If any input is invalid (e.g., incorrect date format, negative rates, or invalid frequency), an error message is returned. + + + + + Calculates the modified duration of a bond given its parameters. + + The bond's settlement date. + The bond's maturity date. + The bond's annual coupon rate. + The bond's annual yield. + The number of coupon payments per year. + The day count basis for the bond's interest calculation. + The modified duration of the bond as a string. + + + + This function computes the number of periods required for an investment to reach a specified future value based on the given interest rate and present value. + + + A comma-separated string of arguments. The format should be: rate, present_value, future_value. + + rate: The interest rate per period as a decimal (e.g., 0.025 for 2.5%). + present_value: The current value of the investment. + future_value: The desired future value of the investment. + + + + A string representing the number of periods required to reach the future value, rounded to two decimal places. + If any input is invalid (e.g., negative values or non-numeric inputs), an error message is returned. + + + + + This function computes the next coupon date after the settlement date for a bond and returns the date as a serial date number. + + + A comma-separated string of arguments. The format should be: settlement_date, maturity_date, frequency, [basis]. + + settlement_date: The date when the bond is purchased (format: DATE function or serial number). + maturity_date: The date when the bond matures (format: DATE function or serial number). + frequency: The number of coupon payments per year (e.g., 1 for annual, 2 for semiannual, 4 for quarterly). + basis: Optional. The day count basis to use (0 for US 30/360, 1 for Actual/Actual, 2 for Actual/360, 3 for Actual/365, 4 for European 30/360). + + + + A string representing the next coupon date after the settlement date, formatted as a serial date number. + If any input is invalid (e.g., incorrect date format, invalid frequency, or if the settlement date is on or after the maturity date), an error message is returned. + + + + + Checks and parses the input arguments for COUP functions. + + A string containing the arguments: settlement date, maturity date, frequency, and optionally, the basis. + Outputs the parsed settlement date. + Outputs the parsed maturity date. + Outputs the parsed coupon payment monthBetweenCoupon + Outputs the parsed day count basis (0-4). + Returns an error message if arguments are invalid, otherwise an empty string. + + + + This function computes the previous coupon date before the settlement date for a bond and returns the date as a serial date number. + + + A comma-separated string of arguments. The format should be: settlement_date, maturity_date, frequency, [basis]. + + settlement_date: The date when the bond is purchased (format: DATE function or serial number). + maturity_date: The date when the bond matures (format: DATE function or serial number). + frequency: The number of coupon payments per year (e.g., 1 for annual, 2 for semiannual, 4 for quarterly). + basis: Optional. The day count basis to use (0 for US 30/360, 1 for Actual/Actual, 2 for Actual/360, 3 for Actual/365, 4 for European 30/360). + + + + A string representing the previous coupon date before the settlement date, formatted as a serial date number. + If any input is invalid (e.g., incorrect date format, invalid frequency, or if the settlement date is on or after the maturity date), an error message is returned. + + + + + This function computes the number of days from the beginning of the coupon period to the settlement date for a bond. + + + A comma-separated string of arguments. The format should be: settlement_date, maturity_date, frequency, [basis]. + + settlement_date: The date when the bond is purchased (format: DATE function or serial number). + maturity_date: The date when the bond matures (format: DATE function or serial number). + frequency: The number of coupon payments per year (e.g., 1 for annual, 2 for semiannual, 4 for quarterly). + basis: Optional. The day count basis to use (0 for US 30/360, 1 for Actual/Actual, 2 for Actual/360, 3 for Actual/365, 4 for European 30/360). + + + + A string representing the number of days from the beginning of the coupon period to the settlement date. + If any input is invalid (e.g., incorrect date format, invalid frequency, or if the settlement date is on or after the maturity date), an error message is returned. + + + + + Computes the number of days in the coupon period that contains the settlement date. + + The settlement date. + The maturity date. + The coupon frequency (1, 2, or 4). + The day count basis (0 to 4). + A string representing the number of days in the coupon period. + + + + Calculates the number of days between two dates based on the 30/360 day count convention. + + The start date. + The end date. + The day count basis: 0 for US (NASD) 30/360, 4 for European 30/360. + The number of days between the start and end dates, adjusted according to the specified 30/360 basis. + + + + This function computes the number of days from the settlement date to the next coupon date for a bond. + + + A comma-separated string of arguments. The format should be: settlement_date, maturity_date, frequency, [basis]. + + settlement_date: The date when the bond is purchased (format: DATE function or serial number). + maturity_date: The date when the bond matures (format: DATE function or serial number). + frequency: The number of coupon payments per year (e.g., 1 for annual, 2 for semiannual, 4 for quarterly). + basis: Optional. The day count basis to use (0 for US 30/360, 1 for Actual/Actual, 2 for Actual/360, 3 for Actual/365, 4 for European 30/360). + + + + A string representing the number of days from the settlement date to the next coupon date. + If any input is invalid (e.g., incorrect date format, invalid frequency, or if the settlement date is on or after the maturity date), an error message is returned. + + + + + This function calculates the total number of days in the coupon period that contains the settlement date for a bond. + + + A comma-separated string of arguments. The format should be: settlement_date, maturity_date, frequency, [basis]. + + settlement_date: The date when the bond is purchased (format: DATE function or serial number). + maturity_date: The date when the bond matures (format: DATE function or serial number). + frequency: The number of coupon payments per year (e.g., 1 for annual, 2 for semiannual, 4 for quarterly). + basis: Optional. The day count basis to use (0 for US 30/360, 1 for Actual/Actual, 2 for Actual/360, 3 for Actual/365, 4 for European 30/360). + + + + A string representing the total number of days in the coupon period that contains the settlement date. If any input + is invalid (e.g., incorrect date format, invalid frequency, or if the settlement date is on or after the maturity date), + an error message is returned. + + + + + This function calculates the number of coupons payable between the settlement date and the maturity date. + + + A string containing the input arguments separated by commas. The format should be: "settlement, maturity, frequency, [basis]" + + + settlement: The settlement date of the security, represented as a date string. + + + maturity: The maturity date of the security, represented as a date string. + + + frequency: The number of coupon payments per year (1 for annual, 2 for semi-annual, 4 for quarterly). + + + basis [optional]: The day count basis to use (0 = US (NASD) 30/360, 1 = Actual/actual, 2 = Actual/360, 3 = Actual/365, 4 = European 30/360). If omitted, the default is 0. + + + + + A string representing the number of coupons payable between the settlement date and maturity date, rounded up to the nearest whole coupon. + Returns an error message if the input arguments are invalid or if an error occurs during the calculation. + + + + + + Check and parse the input arguments for Treasury bill formula. + + + + + This function computes the linear depreciation (AMORLINC) for an asset over each accounting period. + + + A comma-separated string containing the input arguments in the following format: "cost, datePurchased, firstPeriod, salvage, period, rate, [basis]". + + + cost: The initial cost of the asset. + + + datePurchased: The date the asset was purchased, provided in "yyyy-MM-dd" format. + + + firstPeriod: The end date of the first depreciation period, provided in "yyyy-MM-dd" format. + + + salvage: The expected salvage value of the asset at the end of its useful life. + + + period: The total number of periods over which the asset will be depreciated. + + + rate: The depreciation rate applied for each period. + + + + basis [optional]: The day count basis to use + (0 = US (NASD) 30/360, + 1 = Actual/actual, + 2 = Actual/360, + 3 = Actual/365, + 4 = European 30/360). + If omitted, the default is 0. + + + + + + A string representing the calculated depreciation for the specified period. If the input parameters are invalid, an error message is returned. + + + + + + This function calculates the price discount of a security based on its settlement date, maturity date, discount rate, redemption value, and day count basis. + + + A comma-separated containing the input arguments in the format: "settlement, maturity, discount, redemption, [basis]" + + + settlement: The settlement date of the security, represented as a date string (yyyy-MM-dd) or serial number. + + + maturity: The maturity date of the security, represented as a date string (yyyy-MM-dd) or serial number. + + + discount: The discount rate of the security, represented as a decimal value (e.g., 0.05 for 5%). Must be greater than 0. + + + redemption: The redemption value of the security, represented as a decimal value. Must be greater than 0. + + + + basis [optional]: The day count basis to use + (0 = US (NASD) 30/360, + 1 = Actual/actual, + 2 = Actual/360, + 3 = Actual/365, + 4 = European 30/360). + If omitted, the default is 0. + + + + + + A string representing the calculated price discount. Returns an error message if the input arguments are invalid or if an error occurs during the calculation. + + + + + Parses and validates input arguments for both yield and price discount methods. + + Input arguments as a string. + Array of parsed argument values. + The settlement date of the security. + The maturity date of the security. + Price or discount value, depending on the calculation. + The redemption value of the security. + The day count basis to use. + Indicates whether the method is calculating yield (true) or price (false). + Returns an error string if any issues are encountered; otherwise, returns an empty string. + + + + Determine number of days between two dates based on the day count basis. + + + + + Get the year basis for day count. + + + + + This function calculates the price per $100 face value for a Treasury bill based on the settlement date, maturity date, and discount rate. + + + A comma-separated string containing the input arguments in the format: "settlement, maturity, discount". + + + + settlement: The Treasury bill's settlement date in "yyyy-MM-dd" format. + This is the date the T-bill is purchased. + + + + + maturity: The Treasury bill's maturity date in "yyyy-MM-dd" format. + This is the date the T-bill matures, and the face value is repaid. + + + + + discount: The T-bill's discount rate expressed as a percentage + (e.g., 5.5 for 5.5%). + + + + + + A string representing the calculated price per $100 face value for the Treasury bill + If input parameters are invalid or calculation errors occur, an error message will be returned. + + + + + This function calculates and returns the yield for a Treasury bill based on the settlement date, maturity date, and price per $100 face value. + + + A comma-separated string containing the input arguments in the format: "settlement, maturity, pr". + + + + settlement: The settlement date of the Treasury bill in "yyyy-MM-dd" format. + This is the date on which the T-bill is purchased by the buyer. + + + + + maturity: The maturity date of the Treasury bill in "yyyy-MM-dd" format. + This is the date on which the T-bill expires and its face value is paid to the holder. + + + + + pr: The price of the Treasury bill per $100 face value, represented as a numeric value. + + + + + + A string representing the calculated yield of the Treasury bill as a percentage. + If the input arguments are invalid or an error occurs during calculation, an appropriate error message is returned. + + + + + This function Computes and returns the price per $100 face value of a security that pays periodic interest. + + + A comma-separated string containing the numeric input values for which the price is to be calculated. + The format should be: "settlement, maturity, rate, yld, redemption, frequency, [basis]". + + + + settlement: The settlement date of the security in "yyyy-MM-dd" format. + This is the date after the issue date when the security is traded to the buyer. + + + + + maturity: The maturity date of the security in "yyyy-MM-dd" format. + This is the date on which the security expires, and its face value is paid to the holder. + + + + + rate: The annual coupon rate of the security, represented as a decimal value + (e.g., 0.05 for 5%). + + + + + yld: The annual yield of the security, represented as a decimal value + (e.g., 0.04 for 4%). + + + + + redemption: The redemption value of the security per $100 face value, typically + represented as 100 or another numeric value. + + + + + frequency: The number of coupon payments per year. Use: + + 1 for annual payments + 2 for semiannual payments + 4 for quarterly payments + + + + + + basis [optional]: The day-count basis to use for the calculation. Valid values are: + + 0 = US (NASD) 30/360 (default) + 1 = Actual/Actual + 2 = Actual/360 + 3 = Actual/365 + 4 = European 30/360 + + If omitted, the default is 0 (30/360). + + + + + + A string representing the price per $100 face value of a security that pays periodic interest. + If the input values are invalid or if an error occurs during the calculation, an appropriate + error message is returned. + + + + + Parses and validates input arguments for yield and price calculations. + Extracts dates, rates, and other parameters, ensuring they meet the required constraints. + Returns an error message string if validation fails, or an empty string upon success. + + Array of input argument strings. + Output: Annual coupon rate as a percentage. + Output: Price of the bond. + Output: Redemption value of the bond. + Output: Number of coupon payments per year (1, 2, or 4). + Output: Day count basis (0 to 4). + Output: Serial number representing the settlement date. + Output: Serial number representing the maturity date. + + An empty string if validation succeeds, or an error message string if it fails. + + + + + Calculates the price of a bond when the number of coupons is greater than one. + Incorporates periodic coupon payments, discounting, and redemption value. + + Number of days from the beginning of the coupon period to the settlement date. + Total number of days in the coupon period. + Annual coupon rate as a percentage. + Yield to maturity as a percentage. + Redemption value of the bond. + Number of coupon payments per year. + Number of remaining coupon payments. + The computed bond price. + + + + Computes the power of a number with optimization for near-integer exponents. + Reduces computation time by checking if the exponent is close to an integer. + + Base number. + Exponent value. + The computed power of the base number raised to the given exponent. + + + + This function calculates the yield of a security that pays periodic interest. + + + A comma-separated string containing the input arguments in the format: "settlement, maturity, rate, price, redemption, frequency, [basis]". + + + + settlement: The settlement date of the security, specified in "yyyy-MM-dd" format or as a serial number. This is the date when the security is traded to the buyer. + + + + + maturity: The maturity date of the security, specified in "yyyy-MM-dd" format or as a serial number. This is the date when the security expires, and its face value is paid to the holder. + + + + + rate: The annual coupon rate of the security, expressed as a decimal (e.g., 0.05 for 5%). + + + + + price: The price of the security per $100 face value, typically a numeric value. + + + + + redemption: The redemption value of the security per $100 face value, typically a numeric value. + + + + + frequency: The number of coupon payments per year. Acceptable values are: + + 1 for annual payments. + 2 for semi-annual payments. + 4 for quarterly payments. + + + + + + basis (optional): The day count basis used for the calculation. Defaults to 0 (NASD 30/360). Acceptable values are: + + 0: NASD 30/360. + 1: Actual/Actual. + 2: Actual/360. + 3: Actual/365. + 4: European 30/360. + + + + + + + A string representing the calculated yield of the security as a percentage. If the input parameters are invalid, an error message is returned. + + + + + Calculates the yield for a bond with less than one coupon payment remaining. + + The calculated yield. + + + + Estimates the yield of a security using an iterative approach for cases with more than one coupon payment. + + + + + This function calculates the annual yield of a security that pays interest at maturity based on its settlement date, maturity date, issue date, coupon rate, price, and day count basis. + + + A comma-separated string containing the input arguments in the following format: "settlement, maturity, issue, rate, price, [basis]". + + + + settlement: The settlement date of the security, specified in "yyyy-MM-dd" format or as a serial number. This is the date when the security is traded to the buyer. + + + + + maturity: The maturity date of the security, specified in "yyyy-MM-dd" format or as a serial number. This is the date when the security expires, and its face value is paid to the holder. + + + + issue: The issue date of the security, specified in "yyyy-MM-dd" format or as a serial number. This is the date when the security is first issued. + + + rate: The annual coupon rate of the security, represented as a decimal value (e.g., 0.05 for 5%).This value must be greater than 0. + + + price: The price of the security per $100 face value. This value must be greater than 0. + + + + basis [optional]: The day count basis to use for the calculation. Defaults to 0 (US NASD 30/360) if omitted. Acceptable values are: + (0 = US (NASD) 30/360, + 1 = Actual/actual, + 2 = Actual/360, + 3 = Actual/365, + 4 = European 30/360). + + + + + + A string representing the calculated yield value at the maturity date. If the input arguments are invalid, an error message is returned. + + + + + This method parses the input arguments for YIELDMAT and PRICEMAT functions and extracts the required values. + + Returns an error string if validation fails, or an empty string if successful. + + + + Calculates the price of a security that pays interest at maturity, based on its settlement date, maturity date, issue date, coupon rate, yield, and day count basis. + + + A comma-separated string containing the input arguments in the following format: "settlement, maturity, issue, rate, yield, [basis]". + + + + settlement: The settlement date of the security. + This is the date when the security is traded to the buyer. + It should be provided as a date string in "yyyy-MM-dd" format or as a serial number. + + + + + maturity: The maturity date of the security. + This is the date when the security expires, and its face value is paid to the holder. + It should be provided as a date string in "yyyy-MM-dd" format or as a serial number. + + + + + issue: The issue date of the security. + This is the date when the security was first issued. + It should be provided as a date string in "yyyy-MM-dd" format or as a serial number. + + + + + rate: The annual coupon rate of the security, represented as a decimal value (e.g., 0.05 for 5%). + This value must be greater than 0. + + + + + yield: The annual yield of the security, represented as a decimal value (e.g., 0.06 for 6%). + This value must be greater than 0. + + + + + basis [optional]: The day count basis to use for the calculation. + Defaults to 0 (US NASD 30/360) if omitted. + Acceptable values are: + + 0 = US (NASD) 30/360 + 1 = Actual/actual + 2 = Actual/360 + 3 = Actual/365 + 4 = European 30/360 + + + + + + + A string representing the calculated price of the security. + If the input arguments are invalid, an error message is returned. + + + + + This function calculates the yield discount of a security based on its settlement date, maturity date, price, redemption value, and day count basis. + + + A comma-separated string containing the input arguments in the following format: "settlement, maturity, price, redemption, [basis]". + + + + settlement: The settlement date of the security. + This is the date when the security is traded to the buyer. + It should be provided as a date string in "yyyy-MM-dd" format or as a serial number. + + + + + maturity: The maturity date of the security. + This is the date when the security expires, and its face value is paid to the holder. + It should be provided as a date string in "yyyy-MM-dd" format or as a serial number. + + + + + price: The price of the security, represented as a decimal value per $100 face value. + This value must be greater than 0. + + + + + redemption: The redemption value of the security, represented as a decimal value per $100 face value. + This value must be greater than 0. + + + + + basis [optional]: The day count basis to use for the calculation. + Defaults to 0 (US NASD 30/360) if omitted. + Acceptable values are: + + 0 = US (NASD) 30/360 + 1 = Actual/actual + 2 = Actual/360 + 3 = Actual/365 + 4 = European 30/360 + + + + + + + A string representing the calculated annual yield discount. If the input arguments are invalid, an error message is returned. + + + + + This function calculates the Net Present Value (NPV) of a series of cash flows occurring at irregular intervals using a specified discount rate. + + + A comma-separated string of arguments in the format: rate, values, dates. + + + rate: The discount rate applied to the cash flows.It is used to discount future cash flows to their present value. + + + + values: A series of cash flow amounts corresponding to the payment dates. + The first payment is optional and typically represents a cost or initial investment, and should be negative if it is a payment. + All subsequent payments are discounted based on a 365-day year. + The series must include at least one positive value (income) and one negative value (expense). + + + + + dates: A series of dates corresponding to the cash flow payments. + The first date represents the starting point of the cash flow schedule.Subsequent dates must occur after the first date, although they can be in any order.. + + + + + + Returns the calculated Net Present Value (NPV) as a string based on the provided discount rate, cash flows, and payment dates. + If an error occurs, such as invalid input format or mismatched values and dates, an error message is returned. + + + + + This method compute and return the Values and Dates array.If error string finds retrun error string. + + + + + Computes and populates a values array based on the provided input string. + If an error is encountered during processing, an error string is returned. + + + The input string to be processed. + + + A reference to a list where valid numeric values will be added. + + + A reference to a string where the error message will be set if the input string is invalid. + + + + + Computes and populates a values array based on the provided input string. + If an error is encountered during processing, an error string is returned. + + + The input string to be processed. + + + A reference to a list where valid numeric values will be added. + + + A reference to a string where the error message will be set if the input string is invalid. + + + + + This function calculates the price per $100 face value of a security that has an odd (short or long) last coupon period. + + + A comma-separated string containing the input arguments in the format: + "settlement, maturity, issue, rate, yld, redemption, frequency, [basis]". + + + + settlement: The settlement date of the security, specified in "yyyy-MM-dd" format or as a serial number. + This is the date the buyer purchases the security. + + + + + maturity: The maturity date of the security, specified in "yyyy-MM-dd" format or as a serial number. + This is the date the security expires. + + + + + last_interest: The security's last coupon date, specified in "yyyy-MM-dd" format or as a serial number. + This is the date of the most recent coupon payment prior to the settlement date. + + + + + rate: The annual coupon rate of the security, expressed as a percentage (e.g., 5% is represented as 5.0). + + + + + yld: The annual yield of the security, expressed as a percentage (e.g., 5% is represented as 5.0). + + + + + redemption: The redemption value of the security per $100 face value. + Typically, this is 100 if the security is redeemed at par. + + + + + frequency: The number of coupon payments per year. Valid values are: + + 1: Annual payments. + 2: Semi-annual payments. + 4: Quarterly payments. + + + + + + basis (optional): The day count basis for the calculation. Defaults to 0 (NASD 30/360). Valid values are: + + 0: NASD 30/360. + 1: Actual/Actual. + 2: Actual/360. + 3: Actual/365. + 4: European 30/360. + + + + + + + A string representing the calculated price of the security with an odd last period. + Returns an error message if the input parameters are invalid or if validation fails. + + + + + Parses and validates input arguments for the ODDLPRICE and ODDLYIELD functions. + + A string containing the input arguments for ODDLPRICE or ODDLYIELD. + Returns an error message if validation fails, or an empty string if successful. + + + + Calculates the non-negative day difference between two dates using a day count basis, with additional logic for day count convention. + + The positive difference in days between start and end dates as a double. + + + + Calculates the non-negative difference in days between two dates based on the specified day count basis. + + The positive difference in days between start and end dates as a double. + + + + This function calculates the yield of a security with an odd (short or long) last coupon period. + + + A comma-separated string containing the input arguments in the format: + "settlement, maturity, issue, rate, yld, redemption, frequency, [basis]". + + + + settlement: The settlement date of the security, specified in "yyyy-MM-dd" format or as a serial number. + This is the date the buyer purchases the security. + + + + + maturity: The maturity date of the security, sepcified in "yyyy-MM-dd" format or as a serial number. + This is the date the security expires. + + + + + issue: The issue date of the security, sepcified in "yyyy-MM-dd" format or as a serial number. + This is the date the security was originally issued. + + + + + rate: The annual coupon rate of the security, expressed as a percentage (e.g., 5% is represented as 5.0). + + + + + pr: The price of the security per $100 face value, expressed as a percentage (e.g., a price of $95 is represented as 95.0). + + + + + redemption: The redemption value of the security per $100 face value. + Typically, this is 100 if the security is redeemed at par. + + + + + frequency: The number of coupon payments per year. Valid values are: + + 1: Annual payments. + 2: Semi-annual payments. + 4: Quarterly payments. + + + + + + basis (optional): The day count basis for the calculation. Defaults to 0 (NASD 30/360). Valid values are: + + 0: NASD 30/360. + 1: Actual/Actual. + 2: Actual/360. + 3: Actual/365. + 4: European 30/360. + + + + + + + A string representing the computed yield of the security with an odd last period. + Returns an error message if the input parameters are invalid or if validation fails. + + + + + This function calculates the depreciation for an asset using the AMORDEGRC method, an accelerated depreciation approach. + The method applies a declining balance approach where the depreciation rate increases based on the asset's lifespan. + + + A comma-separated string containing the input arguments in the format: "cost, purchaseDate, firstPeriodEndDate, salvageValue, period, rate, [basis], [lifetime]". + + + + cost: The initial cost of the asset. + + + + + purchaseDate: The date of purchase, sepcified in "yyyy-MM-dd" format or as a serial number. + + + + + firstPeriodEndDate: The end date of the first period, sepcified in "yyyy-MM-dd" format or as a serial number. + + + + + salvageValue: The salvage value of the asset at the end of its useful life. + + + + + period: The period for which depreciation is to be calculated (e.g., the number of years). + + + + + rate: The depreciation rate of the asset. + + + + + basis (optional): The day count basis to use for the calculation. Defaults to 0 (NASD 30/360). Acceptable values are: + + 0: NASD 30/360. + 1: Actual/Actual. + 2: Actual/360. + 3: Actual/365. + 4: European 30/360. + + + + + + lifetime (optional): The total lifetime of the asset in periods. If omitted, it defaults to the standard asset lifetime. + + + + + + A formatted string containing the calculated depreciation value for the specified period. If the input parameters are invalid, an error message is returned. + + + + + Performs the AMORDEGRC depreciation calculation for an asset based on cost, dates, salvage value, depreciation period, and rate. + + String representation of the calculated depreciation amount. + + + + Determines the depreciation coefficient based on the asset's lifetime. + + Depreciation coefficient as a multiplier (1.0, 1.5, 2.0, or 2.5). + + + + Adjusts the date to ensure proper handling of the first period depreciation based on the day count basis. + + The adjusted date. + + + + Calculates the AMORDEGRC depreciation for a given period. + + The depreciation value for the specified period. + + + + This function calculates the price per $100 face value of a security with an odd first period + + + A comma-separated string containing the input arguments in the format: + "settlement, maturity, issue, first_coupon, rate, yld, redemption, frequency, [basis]". + + + + settlement: The settlement date of the security, in "yyyy-MM-dd" format or as a serial number. + + + + + maturity: The maturity date of the security, in "yyyy-MM-dd" format or as a serial number. + + + + + issue: The issue date of the security, in "yyyy-MM-dd" format or as a serial number. + + + + + first_coupon: The date of the first coupon payment, in "yyyy-MM-dd" format or as a serial number. + + + + + rate: The annual coupon rate of the security. + + + + + yld: The annual yield of the security. + + + + + redemption: The redemption value of the security per $100 face value. + + + + + frequency: The number of coupon payments per year. Acceptable values are: + + 1 for annual payments. + 2 for semi-annual payments. + 4 for quarterly payments. + + + + + + basis (optional): The day count basis to use for the calculation. Defaults to 0 (NASD 30/360). Acceptable values are: + + 0: NASD 30/360. + 1: Actual/Actual. + 2: Actual/360. + 3: Actual/365. + 4: European 30/360. + + + + + + + A formatted string of the calculated price of the security with an odd first period. If the input parameters are invalid, an error message is returned. + + + + + Parses and validates input arguments for the ODDFPRICE and ODDFYIELD formulae. + + + + + Calculates the odd first coupon price for a bond based on the given parameters. + + + + + Calculates the adjustment factors for the odd first coupon period in a bond price calculation. + + A function that calculates cumulative adjustment values for principal and interest components. + + + + Aggregates values over a specified range, applying a collector function to accumulate results. + + An array containing the accumulated results. + + + + Calculates an aggregated result by applying a specified function to a range of integers, + accumulating the result as a double value. The function iterates from the specified start to end values, + using a seed value as the initial result and aggregating using the provided collector function. + + The final accumulated result as a double after applying the collector function across the specified range. + + + + Generates a sequence of integers between a specified start and end, inclusive. + + An IEnumerable containing integers from start to end. + + + + Calculates the number of coupon periods between two dates based on the specified interval in months. + + The number of coupon periods between startDate and endDate. + + + + This function calculates the yield of a security that has an odd (short or long) first period. + + + A comma-separated string containing the input arguments in the format: "settlement, maturity, issue, first_coupon, rate, yld, redemption, frequency, [basis]". + + + + settlement: The settlement date of the security, in the provided format "yyyy-MM-dd" or as a serial number. + + + + + maturity: The maturity date of the security, in the provided format "yyyy-MM-dd" or as a serial number. + + + + + issue: The issue date of the security, in the provided format "yyyy-MM-dd" or as a serial number. + + + + + first_coupon: The date of the first coupon payment, in the provided format "yyyy-MM-dd" or as a serial number. + + + + + rate: The annual coupon rate of the security. + + + + + pr: The annual price of the security. + + + + + redemption: The redemption value of the security per $100 face value. + + + + + frequency: The number of coupon payments per year. Acceptable values are: + + 1 for annual payments. + 2 for semi-annual payments. + 4 for quarterly payments. + + + + + + basis (optional): The day count basis to use for the calculation. Defaults to 0 (NASD 30/360). Acceptable values are: + + 0: NASD 30/360. + 1: Actual/Actual. + 2: Actual/360. + 3: Actual/365. + 4: European 30/360. + + + + + + + A formatted string of the calculated yield of the security with an odd first period. If the input parameters are invalid, an error message is returned. + + + + + Finds the root of a function using a combination of Newton's and Bisection methods. + + + + + Determines bounds that contain a root of the given function by expanding outward from an initial guess. + + + + + this function used to obtain the address of a cell in a worksheet, given specified row and column numbers + + The argList contain the row and column postion and type of reference + Address of the given row and column + + + + Return the information about cell + + content, reference + Cell information + + + + Returns the current operation environment information + + Type + environment information + + + + Returns the interger value for the datatype of given text + + text + integer value + + + + Return the value of ComputeIsFormula + + arguments + + + + + Returns a horizontal table look up value. + + Contains search value, table, return index and match properties. + Matching value found in the table. + For example, =HLOOKUP("Axles",A1:C4,2,TRUE) looks for the exact + match for Axles in A1:C1 and returns the corresponding value in A2:C2. + + + + + Finds the index a specified value in a lookup_range. + + look_value, lookup_range, match_type + The relative index of the lookup_value in the lookup_range. + + Lookup_range should be a either a single row range or a single column range. + If match_type is 0, the relative index of the first exact match (ignoring case) + in the specified range is returned. If match_type is 1, the values in the range + should be in ascending order, and the index of the largest value less than or + equal to the lookup_value is returned. If match_type is -1, the values in the range + should be in descending order, and the index of the smallest value greater than or + equal to the lookup_value is returned. + + + + + Below method is used to returns the cellrange while the lookup vector is cellrange and result vector is cell(eg:=LOOKUP(2,D7:I7,A1)). + + lookup vectors value. + result vectors value. + The default value is false.True when the resultant vector range from GetResultRange is modified. + Returns the cellrange of result vector. + + + + Calculate multiple range lookup with logical operators and retruns calculated lookup range. + + + Calculated lookup range + + + + Returns a value from result table either from a one-row or one-column range or from an array + + Lookup Value, lookup range, result range + Matching value found in the table + + + + To get the result value of lookup formula. + + ResultVector cell range. + lookup value + Set to true if the resultant vector range from is modified or not. + column index. + lookup arguments list. + lookup vector list + Returns the result value of lookup formula. + + + + Returns true Matching value found in the lookup otherwise false. + + >Contains search value + The value you want to look up. + + + + + Returns a vertical table look up value. + + Contains search value, table, return index and match properties. + Matching value found in the table. + For example, =VLOOKUP("Axles",A1:C4,2,TRUE) looks for the exact + match for Axles in A1:A4 and returns the corresponding value in B1:B4. + + + + + Returns the left so many characters in the given string. + + Contains the string and the number of characters. + A left sub string.. + + + + Returns the length of the given string. + + Contains the string. + An integer length. + + + + Returns a substring of the given string. + + Contains the original string, start position of the substring, + and the number of characters in the substring. + A substring. + + + + Returns the right so many characters in the given string. + + Contains the string and the number of characters. + A right substring. + + + + Returns True if the ParseArgumentSeparator character is included in a string. + + The string to be searched. + True or False. + + + + Returns an array of strings from an argument list. + + A delimited argument list. + Array of strings from an argument list. + + + + Returns a single character string. + + List of strings to be concatenated. + A single string. + + + + Returns the reference specified by a text string. References are immediately evaluated to display their contents. + Syntax: INDIRECT(CellRefString, [IsA1Style]) + + Cell reference string. + Cell reference. + + + + Replaces the old text with new in text based on matching. + + Text to be changed. + Text to replace. + Text to be replaced with old_text + The instance to replace + + + + + In a given string, this method substitutes an occurrence of one string with another string. + + A list of 3 or 4 arguments: the original string, the search string, the + replacement string, and optionally, an integer representing the occurrence to be replaced. + + The modified string. + + + + Returns a quoted string from a date or number. + + Value to be converted to a string. + Quoted string. + + + + The TEXTJOIN function combines the text from multiple ranges and/or strings, and includes a delimiter you specify between each text value that will be combined. If the delimiter is an empty text string, this function will effectively concatenate the ranges. + + A text string, or array of strings, such as a range of cells. + A single string. + + + + The CONCAT function combines the text from multiple ranges and/or strings, but it doesn't provide the delimiter or IgnoreEmpty arguments. + + Text item to be joined. A string, or array of strings, such as a range of cells. + A single string. + + + + Returns a number. + + A date or number string. + A number in the given string. + + + + Returns the remainder after dividing one number by another. + + Two numbers in a list. + The remainder. + + + + Truncates a number to an integer. + + Value and number of digits. + Truncated value. + + + + To Peroform arithmetic operations of range. + + + + + To Peroform SumProduct default arithmetic operations. + + values of Array + Sum of the products. + + + + Returns the sum of the products of corresponding values. + + Two cell ranges. + Sum of the products. + + + + Converts a number to text using currency format. + + Number and the number of digits. + Currency format string. + + + + Rounds a number to the specified number of decimals, formats the number + in decimal format using a period and commas, and return the result as text. + + + Number, number of digits, a flag that prevents from include + commas in the returned text. + + Formatted number as string. + + + + Returns the value at the specified index from a list of values. + + A string of the form "Index, Value1, Value2,..." in which the term 'Index' denotes the index of the value to be retrieved. + The selected value. + + + + Converts text to lowercase. + + Value to convert. + Converted string. + + + + Converts text to uppercase. + + Value to convert. + Converted string. + + + + Returns the string or text referred by the given value. + + value to find the referred text - Required + Returns the referred text + + + + Returns the column index of the passed in cell reference. + + Contains zero or one argument. If no argument is passed, returns the column index of the + location of this Column function call, otherwise returns the column index of the passed in cell reference. + The column index. + + + + Returns the row index of the passed in cell reference. + + Contains zero or one argument. If no argument is passed, returns the row index of the + location of this Row function cell, otherwise returns the row index of the passed in cell reference. + The row index. + + This method doesn't return an array of row numbers as the array formula entry is not supported in engine. It is another usecase of this library function. + + + + + Returns a number converted from the provided value. + + Value to be converted. + A number in string format or an error string. + + + + Returns the error value(#N/A). Used internally. + + empty string. + error value. + + + + Returns the error value (#N/A - value not available). + + error value. + + + + Returns a number corresponding to the predefined error values(#NULL!, #VALUE!, #REF!, #NAME?, #NUM!, #N/A, "#GETTING_DATA). Returns #N/A if not or any value enclosed within double quotes. + + + + + Removes all leading and trailing white-space characters. + + Value to trim. + + The string that remains after all leading and trailing white-space characters + were removed. + + + + + Determines whether the value is a logical value. + + Value to be tested. + True if the value is a logical value, False otherwise. + + + + Determines whether the value is the #NA error value. + + Value to be tested. + True if the value is the #NA error value, False otherwise. + + + + Returns True is the string denotes an error except #N/A. + + Value to be tested. + True if the value is an error except #N/A, false otherwise. + + + + Determines whether the value is empty string. + + Value to be tested. + True if the value is empty, False otherwise. + + + + Determines whether the value is string or not. + + Value to be tested. + True if the value is a string, false otherwise. + + + + Determines whether the value is not a string. + + Value to be tested. + True if the value is not a string, false otherwise. + + + + Returns True is the string denotes an error. + + String to be tested. + True if the value is an error. + + + + Checks whether the value is a reference or not. + + value or reference + TRUE or FALSE + + + + Returns the And of all values treated as logical values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. Each item in the list is considered True if it is nonzero + and False if it is zero. + A string holding the And of all values listed in the argument. + + + + The IFS function checks whether one or more conditions are met and returns a value that corresponds to the first TRUE condition. IFS can take the place of multiple nested IF statements, and is much easier to read with multiple conditions. + + A string holding [Something is True1, Value if True1, [Something is True2, Value if True2],…[Something is True127, Value if True127] + Returns a value that corresponds to the first TRUE condition + + + + The SWITCH function evaluates an expression against a list of values and returns the result corresponding to the first matching value. If there is no match, an optional default value may be returned. + + A string holding expression, value1, result1, [default or value2, result2],…[default or value3, result3] + Returns the result corresponding to the first matching value + + + + Returns the inclusive Or of all values treated as logical values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. Each item in the list is considered True if it is nonzero + and False if it is zero. + A string holding the Or of all values listed in the argument. + + + + Flips the logical value represented by the argument. + + + The argument is + treated as a logical expression with a non-zero value considered True and a zero value considered False. + + A string holding either a single argument consisting of a + cell reference, formula, or number. + + Returns 0 if the argument evaluates to a non-zero value. Otherwise, it returns 1. + + + + Returns a range that is the offset of the reference range by rows and cols. + + reference, rows, cols, [height], [width] + A range offset. + The returned range is the range passed in through the reference variable offset + by the number of rows in the rows variable and number of columns in the cols variable. If height and + width are present in the argument list, they determine the number of rows and columns + in the returned range. Otherwise, the dimensions of the returned range match the input range. + + + + + Returns the logical value True. + + Empty string. + Logical True value string. + + + + Returns the logical value False. + + Empty string. + Logical False value string. + + + + Returns the exclusive OR of all values treated as logical values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. Each item in the list is considered True if it is nonzero + and False if it is zero. + A string holding the exclusive OR of all values listed in the argument. + + + + Returns a value you specify if a formula evaluates to #N/A + otherwise, returns the result of the formula. + + String to be tested. + Returns the computed value. + + + + Computes angle whose cosine is the argument. + + A cell reference, formula, or number. + A string holding an angle whose cosine is the argument. + + + + Returns the Arabic value of Raman numeric + + + + + + + Returns the area of the passed in cell reference range + + Contains one argument - reference + area of the passed in cell reference. + + + + Computes angle whose sine is the argument. + + A cell reference, formula, or number. + A string holding an angle whose sine is the argument. + + + + The inverse of Sinh. + + The given value. + Result of ASinh(value). + + + + Computes angle whose tangent is the argument. + + A cell reference, formula, or number. + A string holding the tangent of the argument. + + + + The ArcTangent of the x and y values. + + x_value and y_value. + Angle whose tangent is y_value/x_value. + + + + The inverse of Tanh. + + |Value| < 1. + Result of ATanh(value). + + + + Computes the smallest whole number greater than or equal to the argument. + + A cell reference, formula, or number. + A string holding the smallest whole number greater than or equal to the argument. + + + + Returns the RoundUp of the given number to the given significance + + Number, significance, mode + RoundUp number + + + + Returns the number of columns of the passed in cell reference. + + Contains one argument - reference + number of columns. + + + + The number of combinations of a given number of items. + + Number, number_items. + The number of combinations. + + + + Returns the value of ComputeCombinA + + arguments + + + + + Computes the natural logarithm of the value in the argument. + + A cell reference, formula, or number. + A string holding the natural logarithm of the value in the argument. + + + + Computes the base 10 logarithm of the value in the argument. + + A cell reference, formula, or number. + A string holding the base 10 logarithm of the value in the argument. + + + + Computes e raised to the value of the argument. + + A cell reference, formula, or number. + A string holding the e raised to the value of the argument. + + + + Returns the square root of product of given number with PI. + + Number + Sqrtpi value of given number + + + + Computes the square root of the argument. + + A cell reference, formula, or number. + A string holding the square root of the argument. + + + + Computes the absolute value of the argument. + + A cell reference, formula, or number. + A string holding the absolute value of the argument. + + + + Computes the cosine of the argument. + + A cell reference, formula, or number. + A string holding the cosine of the argument. + + + + The inverse of Cosh. + + Value >= 1. + Result of ACosh(value). + + + + Returns an evenly distributed random number >= 0 and < 1. + + Ignored. Can be empty. + + A string holding the random number. + + + + + Computes the tangent the argument. + + A cell reference, formula, or number. + A string holding the tangent of the argument. + + + + Computes the hyperbolic tangent of the argument. + + A cell reference, formula, or number. + A string holding the hyperbolic tangent of the argument. + + + + Checks if value of S mets the Criteria or Not. + + Operator + Cell + The String value to be compared + True if Value of S equals Criteria Otherwise False + + + + Checks if value of S mets the Criteria or Not. + + Operator + Cell + The double value to be compare + True if Value of S mets Criteria Otherwise returns False + + + + Sums the cells specified by some criteria. + + The criteria range, the criteria, and the sum range. + A string holding the sum. + + + + Below method used to find the row,col index when the start row or start column is -1. + + Start row of the range. + End row of the range. + Start column of the range. + End column of the range. + + + + Used to compute the value + + arguments + + + + + Returns the arccotangent of a number. + + A cell reference or number + A string containing the arccotangent of a number + + + + Returns the hyperbolic arccotangent of a number. + + A cell reference or number + A string containing the hyperbolic arccotangent of a number + + + + Returns the archyperbolic secant of an angle. + + A cell reference or a number + A string containing the archyperbolic secant of an angle + + + + Retuns the number into text for the given radix base + + + + + + + Computes the hyperbolic cosine of the argument. + + A cell reference, formula, or number. + A string holding the hyperbolic cosine of the argument. + + + + Returns the hyperbolic cosine of a number. + + A cell reference or a number + A string containing the hyperbolic cosine of a number + + + + Returns the cotangent of an angle. + + A cell reference or a number + A string containing the cotangent of an angle + + + + Returns the cosecant of an angle + + a cell reference or number + A string containing the cosecant of an angle + + + + Returns the hyperbolic cosecant of an angle. + + + A string containing the hyperbolic cosecant of an angle + + + + Returns the decimal number of the given text to the given base. + + text,base + Decimal number. + + + + Converts radians into degrees. + + Value in radians. + Degrees for the given radians. + + + + Rounds up to larger in magnitude even number. + + Number to be rounded. + Rounded even value. + + + + Factorial of a given number. + + The given value, x. + Factorial of x. + + + + Returns the Double factorial value for given number. + + number to find FactDouble + FactDouble of given number. + + + + Computes the largest whole number less than or equal to the argument. + + A cell reference, formula, or number. + A string holding the largest whole number less than or equal to the argument. + + + + Returns the Calculated Floor value for the given Input. + + + + + + Return the value of ComputeFormulaText + + arguments + + + + + Returns the largest integer that divide the given numbers without any reminders. + + number1,number2,... + Returns the GCD value of given arguments + + + + Create a shortcut for the link / path + + link,name + shortcut name + + + + Returns the integer value. + + Number to be truncated. + An integer. + + + + Determines whether the value is even or not. + + Value to be tested. + True, if the value is even, false otherwise. + + + + Determines whether the string contains a number or not. + + String to be tested. + True if the string is a number. + + + + Determines whether the value is odd or not. + + Value to be tested. + True, if the value is odd, false otherwise. + + + + returns the smallest positive integer that is a multiple of all given values. + + Number1,Number2,... + The LCM value of given aruments + + + + Computes the natural logarithm of the value in the argument. + + A cell reference, formula, or number. + A string holding the natural logarithm of the value in the argument. + + + + Returns the number of columns of the passed in cell reference. + + Contains one argument - reference + number of columns. + + + + Returns the Inverse of Matrix. + + Matrix + Inverse matrix + + + + Returns the number of columns of the passed in cell reference. + + Contains one argument - reference + number of columns. + + + + Returns the number of columns of the passed in cell reference. + + Contains one argument - reference + number of columns. + + + + Determines the number rounded to the given multiple. + + Number, Multible both are required + Mround value of given number + + + + Determines the Multinominal value of given range of numbers. + + Given numbers + Multinominal value of given range of numbers. + + + + Returns the number of columns of the passed in cell reference. + + Contains one argument - reference + number of columns. + + + + Rounds up to larger in magnitude odd number. + + Number to be rounded. + Rounded odd value. + + + + Returns the number pi. + + Ignored. Can be empty. + A string holding the number pi. + + + + Returns a specified number raised to the specified power. + + String containing two parameters separated by commas: + the first being base number, + the second being the exponent. + A string holding the value of the base number raised to the exponent. + + + + Returns the product of the arguments in the list. + + List of arguments. + Product of the arguments. + + + + Returns the integer portion of division function. + + numerator, denominator to find the quotient + returns integer value. + + + + Converts degrees into radians. + + Value in degrees. + Radians for the given degrees. + + + + Returns the arabic numeral to roman in TEXT format + + Number, Form for style of roman text. + 0 or omitted Classic. + 1 More concise. + 2 More concise. + 3 More concise. + 4 Simplified. + TRUE Classic. + FALSE Simplified. + + Retuns the Roman string of given numeric value based on the style form + + + + Rounds a number to a specified number of digits. + + Number and number of digits. + Rounded number. + + + + Rounds a number to a specified number of digits. + + Number and number of digits. + Rounded number. + + + + Rounds a number to a specified number of digits. + + Number and number of digits. + Rounded number. + + + + Returns the number of rows of the passed in cell reference. + + Contains one argument. + number of rows. + + + + Returns the secant of an angle. + + A cell reference, or number. + A string conaining the secant of an angle + + + + Returns the hyperbolic secant of an angle. + + A cell reference, or number + A string containing the hyperbolic secant of an angle. + + + + return the sheet number of the given value + + SheetName or cell or named range + sheet number + + + + return the sheet number of the given values + + SheetName or cell or named range + sheet number + + + + Returns a number indicating the sign of the argument. + + A cell reference, formula, or number. + A string holding a number representing the sign of the argument. + + + + Computes the sine of the argument. + + A cell reference, formula, or number. + A string holding the sine of the argument. + + + + Computes the hyperbolic sine of the argument. + + A cell reference, formula, or number. + A string holding the hyperbolic sine of the argument. + + + + Returns the sum of all values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the sum of all values listed in the argument. + + + + Returns the sum of all the cells in a range which is statisfy the given multible criteria + + range of cells, criteria1, average_range1,... + returns the sum value of the cells. + + + + Returns the sum of the square of all values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the sum of the squares of all values listed in the argument. + + + + Returns the sum of the differences of squares of the two ranges. + + x_range and y_range. + A string holding sum of the differences of squares. + + + + Returns the sum of the sums of squares of the two ranges. + + x_range and y_range. + A string holding sum of the sums of squares. + + + + Returns the sum of the squares of the differences between two ranges. + + x_range and y_range. + A string holding sum of the squares of the differences. + + + + Returns the vertical range of cells as a horizontal range, or vice versa + + Cell refrences + value + + + + Returns the value of computeTruncate + + arguments + + + + + Returns a random integer number between the specified two numbers. + + StartNumber, EndNumber + Random numberbetween two value + + + + Return the value of ComputeSeriessum + + arguments + + + + + Searches a range or an array, and then returns the item corresponding to the first match it finds. + If no match exists, then XLOOKUP can return the closest (approximate) match. + + + A string containing the arguments separated by commas. + The format should be: "lookup_value, lookup_array, return_array, if_not_found, match_mode, search_mode". + + lookup_value: The value to search for. + lookup_array: The array or range of cells to search within. + return_array: The array or range of cells from which to return a value. + if_not_found: The value to return if no match is found. + + match_mode: [Optional] The match type (default is 0): + + 0 for exact match (default) + -1 for exact match or next smaller item + 1 for exact match or next larger item + 2 for wildcard match + + + + search_mode: [Optional] The search mode (default is 1): + + 1 for search from first to last (default) + -1 for search from last to first + 2 for binary search ascending + -2 for binary search descending + + + + + The item corresponding to the first match it finds. If no match exists, then XLOOKUP can return the closest (approximate) match. + + + + Calculate and retrun the matched value based on match mode and search mode + + The value to search + The range or array where to search. + The range or array from which to return values. + The value to return if no match is found. If omitted, an #N/A error is returned. + The match type to perform: + The direction of search + The matched value + + + + + Returns the range of cells as an array by scanning column wise + + cell range + array of cells + + + + Convert multi criteria lookup range to single range + + multicriteria lookup range + return calculated lookup range + + + + Match the lookup value and return the index based on match mode + + the matched index + + + + Calculate and get the matchMode value from the argument + + argument + the matchMode value + + + + Calculate and get the SearchMode value from the argument + + argument + the SearchMode value + + + + Validate argument type for the possible cases for error string + + argument + >The formula's argument typ + + + + + Returns the relative position of an item in an array or range of cells. + + + A string containing the arguments separated by commas. + The format should be: "lookup_value,lookup_array,match_mode,search_mode". + + lookup_value: The value to search for. + lookup_array: The array or range of cells to search within, provided as a comma-separated string of values. + + match_mode: [Optional] The match type (default is 0): + + 0 for exact match (default) + -1 for exact match or next smallest item + 1 for exact match or next largest item + 2 for wildcard match + + + + search_mode: [Optional] The search mode (default is 1): + + 1 for search from first to last (default) + -1 for search from last to first + 2 for binary search ascending + -2 for binary search descending + + + + + The relative position of an item in an array or range of cells. + + + + + Sort the lookup array in DescendingOrder + + the array in DescendingOrder + + + + Sort the lookup array in AscendingOrder + + the array in AscendingOrder + + + + Match the lookup value and return the index based on match mode + + the matched index + + + + check and match the lookup value when its contains "?" + + TTrue when match or false + + + + Rounds a number down to the nearest integer or to the nearest multiple of significance. + + + A string containing the arguments separated by commas. + The format should be: "number, significance, mode". + + + number: The number to be rounded down. + + + significance: [optional] The multiple to which you want to round. + + + mode: [optional] The direction (toward or away from 0) to round negative numbers. + + + + A number rounded down to the nearest integer or to the nearest multiple of significance. + + + + Validate and retrun the argument as double value. + + + + + Calculate array format argument value. + + + Return calculated array format argument value for interior and direct FloorMath formula + + + + convert string values(number,sign,mode) to double value + + + + + convert string values(number,sign) to double value + + + + + Calculated FloorMath value for the given Input. + + Return round a number down to the nearest integer or to the nearest multiple of significance. + + + + Computes and returns a number that is rounded down to the nearest integer or to the nearest multiple of significance. + + + A string containing the arguments separated by commas. + The format should be: "number, significance". + + + number: The value to be rounded. + + + significance: [optional] The multiple to which the number is to be rounded. + + + + A number that is rounded down to the nearest integer or to the nearest multiple of significance. Regardless of the sign of the number, the number is rounded down. However, if the number or the significance is zero, zero is returned. + + + + Returns the Calculated FloorPrecise value for the given Input. + + + + + Returns the Calculated CeilingPrecise value for the given Input. + + + + + Calculate array format argument value. + + + Return calculated array format argument value for interior and direct FloorPrecise formula. + + + + Calculate array format argument value. + + + calculated array format argument value for interior and direct IsoCeiling formula. + + + + Calculate array format argument value. + + + calculated array format argument value for interior and direct CeilingPrecise formula. + + + + Computes and returns a number that is rounded up to the nearest integer or to the nearest multiple of significance. + + + A string containing the arguments separated by commas. + The format should be: "number, significance". + + + number: The value to be rounded. + + + significance: [optional] The multiple to which the number is to be rounded. The default value is 1. + + + + A number that is rounded up to the nearest integer or to the nearest multiple of significance. Regardless of the sign of the number, the number is rounded up. However, if the number or the significance is zero, zero is returned. This follows the ISO 8601 standard. + + + + Computes and returns a number that is rounded up to the nearest integer or to the nearest multiple of significance. + + + A string containing the arguments separated by commas. + The format should be: "number, significance". + + + number: The value to be rounded. + + + significance: [optional] The multiple to which the number is to be rounded. The default value is 1. + + + + A number that is rounded up to the nearest integer or to the nearest multiple of significance. Regardless of the sign of the number, the number is rounded up. However, if the number or the significance is zero, zero is returned. + + + + This function appends arrays vertically and in sequence to return a larger array. + + + A string containing the arguments separated by commas. + The format should be: "array1,[array2],..." + + array1, array2, ...: The arrays to append. + + + A single array that has as many columns as all of the source arrays combined and as many rows as the tallest of the source arrays. + + + + This function appends arrays horizontally and in sequence to return a larger array. + + + A string containing the arguments separated by commas. + The format should be: "array1,[array2],..." + + array1, array2, ...: The arrays to append. + + + A single array that has as many columns as all of the source arrays combined and as many rows as the tallest of the source arrays. + + + + Validate the argument for VStack and HStack formula and return array list. + + + + + Compute and return appended array as string value for VStack and HStack formula. + + + + + Compute and append array vertically and return array as string value. + + + + + Compute and append array horizontally and return array as string value. + + + + + This function computes and returns the value of the density function for a standard normal distribution. + + A string representing the numeric input for which PHI is to be calculated. + + A formatted string representing the calculated PHI value. + If the input is invalid, an error message is returned indicating the type of error. + + + + + This function converts a specified monetary amount from one currency to another using predefined Euro conversion rates. + The Euro is used as an intermediary currency for conversions between non-Euro currencies. + + + A comma-separated string containing the input arguments in the format: + "amount, sourceCurrency, targetCurrency, [fullPrecision], [triangulationPrecision]". + + + + amount: The numeric value to be converted. + This value must be a valid floating-point number. + + + + + sourceCurrency: The three-character ISO currency code for the source currency. + This must represent a valid currency included in the predefined Euro conversion table. + + + + + targetCurrency: The three-character ISO currency code for the target currency. + This must represent a valid currency included in the predefined Euro conversion table. + + + + + fullPrecision (optional): A boolean value indicating whether the result should use full precision. + If omitted, the default value is false, meaning the result will be rounded. + + + + + triangulationPrecision (optional): An integer specifying the precision for intermediate Euro calculations. + If omitted, the default value is 3. Values less than 3 are invalid. + + + + + + A string representing the converted amount in the target currency. If the input parameters are invalid, an error message is returned. + + + + + Converts a given monetary amount from one currency to another using predefined Euro conversion rates. + + + The converted monetary amount as double value. + If the conversion is invalid (e.g., unsupported currency codes), the method returns double.NaN. + + + + + Returns the sample covariance between two arrays. + Arrays should be of equal length, and contain more than one element. + + + + + + + Returns the mean of an array. + + Array of data for which we are calculating the mean. + + + + Returns the mean of an array. + + Array of data for which we are calculating the mean. For time series, the last element (index = n-1), is the most recent. + In most applications, the decay factor is between 0 and 1. Weigth on the last element in array is 1.0, the 2nd to last element d, 3rd to last d^2, ... + + + + Returns the inverse of the sum of a geometric series of length n, who's first element is 1. + For decay factor d, S = 1 + d + d^2 + ... + d^(n-1). Return 1/S. + + Decay factor Typically between -1 adn +1. + Number of elements in the geometric series, must be positive. + + + + + Calculates the natural logarithm of gamma function. + + + + + + + Returns the average deviation of all values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the average deviation of all values listed in the argument. + + + + Returns the simple average of all values (including text) listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the simple average of all values listed in the argument. + + + + Returns the average of all the cells in a range which is statisfy the given multible criteria + + range of cells, criteria1, average_range1,... + returns the average value of the cells. + + + + Below method used to find the criteria value which is combined with tokens. + + Criteria value with tokens. + Tokens + The criteria value splited from tokens. + + + + Below method used to find whether the criteria is matched with the Tokens "=",">",">=" or not. + + CellRange + Tokens("=",">",">=") + The criteria used to determine which cells to add. + true criteria match or false. + + + + Returns the chi-squared distribution. + + x, degrees of freedom. + The chi-squared distribution. + + + + Returns the growth estimate using the exponential curve y = b * m^x that best fits the given points. Only the first two Excel parameters are used. + + Y_range, x_range. + returns estimated value. + + + + Returns the m and b value used in exponential curve y = b * m^x. + + The set of y-values required in y = b*m^x + The set of x-values in y = b*m^x + output of b + output of m + returns calculated b value. + + + + Returns the natural logarithm of the gamma function. + + The value to be evaluated. + The natural logarithm of the gamma function. + + + + Calculates the statistics for a straight line that explains the relationship between the independent variable and one or more dependent variables + + Parsed range. + an array describing the line. The function uses the least squares method to find the best fit for your data. + + + + Returns the inverse of the chi-squared distribution. + + x, degrees of freedom. + The inverse of the chi-squared distribution. + + + + Returns the Chi Test for independence. + + Actual_range, expected_range. + Result of Chi Test: y-intercept. + + + + Returns the normal distribution. + + x, mean, standarddev, cumulative. + The normal distribution. + + Cumulative should be either + True if you want to return the value of the distribution function or False + if you want to return the value of the density function. The distribution value + is computed interactively using Trapezoidal Rule to six to seven significant digits + or 20 iteration maximum. + + + + + Returns the standard normal cumulative distribution function. The distribution has a mean of 0 (zero) and a standard deviation of one. + Syntax: NORMSDIST(z) + + Z is the value for which you want the distribution. + Standard normal cumulative distribution. + + + + Returns the inverse of normal distribution. + + P, mean, standard deviation. + Returns x such that normal distribution at x is p. + + P should be between 0 and 1. + + + + + Enabled only when ExcelLikeComputations property is set to true. + + + Computes the inverse normal cumulative distribution for the given probability. + + probability + a double value. + + + + Returns the inverse of the standard normal cumulative distribution. The distribution has a mean of zero and a standard deviation of one. + Syntax: NORMSINV(p) + + p is a probability corresponding to the normal distribution. + Inverse of standard normal cumulative distribution. + + p should be between 0 and 1. + + + + + Returns a confidence interval radius. + + Alpha, standard deviation, size. + Returns x such that normal distribution at x is p. + + P should be between 0 and 1. + + + + + Returns the correlation coefficient of the two sets of points. + + range1, range2. + Correlation coefficient. + + + + Returns the count of all values (including text) listed in the argument to + evaluate to a number. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the count of all numerical values listed in the argument. + + + + Returns the count of all values (including text) listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the count of all values listed in the argument. + + + + Returns the count of blank cells listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the count of blank cells listed in the argument. + + + + Counts the cells specified by some criteria. + + The criteria range, the criteria. + Number of cells meeting the criteria. + + + + Calculates the CountIF and CountIFS formula + + The criteria range, the criteria + If true, calculate CountIF formula. Else calculate CountIFS formula. + Number of cells meeting the criteria. + + + + The COUNTIFS function applies criteria to cells across multiple ranges and counts the number of times all criteria are met. + + The criteria range, the criteria. + Number of cells meeting the criteria + + + + Returns the covariance between the two sets of points. + + range1, range2. + The covariance. + + + + Returns the smallest value for which the cumulative binomial distribution is greater than or equal to a criterion value. + + Number of trials, probability, alpha. + Returns the critical value. + + + + Returns the exponential distribution. + + x, lambda, cumulative. + The exponential distribution. + + Cumulative should be either + True if you want to return the value of the distribution function or False + if you want to return the value of the density function. + + + + + Returns the F (Fisher) probability distribution. + + x, degreesfreedom1, degreesfreedom2. + Returns the F probability distribution. + + + + Returns the inverse of F distribution. + + p, degreesfreedom1, degreesfreedom2. + Returns x such that F distribution at x is p. + + P should be between 0 and 1. + + + + + Returns the Fisher transformation of the input variable. + + Input variable x. + Fisher transformation of x. + + X should be between -1 and 1. + + + + + Returns the inverse of Fisher transformation. + + Input variable y. + The value x such that the Fisher transformation y is x. + + + + Returns a forecasted value based on two sets of points using least square fit regression. + + x, rangex, rangey. + Forecasted value. + + + + Returns the kurtosis of the passed in values. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + The kurtosis of the data. + + + + Returns the Kth largest value in the range. + + range, k. + Kth largest value. + + + + Returns the lognormal distribution. + + x, mean, standarddev. + The lognormal distribution. + + + + Returns the inverse of the lognormal distribution. + + p, mean, standarddev. + Returns the value x where the lognormal distribution of x is p. + + + + Returns the maximum value of all values listed in the argument including logical values. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the maximum value of all values listed in the argument. + True is treated as 1; False is treated as 0. + + + + + Returns the median value in the range. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + Median value. + + + + Returns the minimum value of all values listed in the argument including logical values. + + A string holding a list (separated by commas) of: + cell references, + formulas, or numbers. + A string holding the minimum value of all values listed in the argument. + True is treated as 1; False is treated as 0. + + + + + Returns the most frequent value in the range. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + The most frequent value. + + + + Returns the negative binomial distribution. + + Number of failures, success threshold, probability, cumulative. + The negative binomial distribution. + + + + Returns the Pearson product moment correlation coefficient. + + Range1, range2. + Pearson product. + + + + Returns the percentile position in the range. + + Range, k. + Percentile position. + K is a value between 0 and 1. + + + + Returns the percentile position in the ranges. + This method used only for contional formatting to calculate the percentile value. + When the argument contains more no of cell reference. + + Ranges, k. + Percentile position. + K is a value between 0 and 1. + + + + Returns the percentage rank in the range. + + Range, x, significant digits. + Percentile position. + Significant digits are optional, defaulting to 3. + + + + The number of permutations of n items taken k at the time. + + n, k + The number of combinations. + + + + Returns the Poisson distribution. + + x, mean, cumulative + Returns the exponential distribution. + + Cumulative should be either + True if you want to return the value of the distribution function or False + if you want to return the value of the density function. + + + + + Returns the probability that a value in the given range occurs. + + xrange1, prange2, lowerbound, upperbound. + The probability. + + + + Returns the quartile position in the range. + + Range, q. + Percentile position. + Q is 0, 1, 2, 3, 4. + + + + Returns the rank of x in the range. + + X, range, order. + Rank of x. + + + + Returns the square of the Pearson product moment correlation coefficient. + + Range1, range2. + Square of the Pearson product. + + + + Returns the skewness of a distribution. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + Skewness of a distribution. + + + + Returns the slope of the least square fit line through the given points. + + Y_range, x_range. + Y-intercept for the given points. + + + + Returns the kth smallest value in the range. + + Range, k. + Kth smallest value. + + + + Returns a normalized value. + + X, mean, stddev. + Normalized value. + + + + Returns the sample standard deviation. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + The sample standard deviation. + + + + Returns the sample standard deviation. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + The sample standard deviation. + Treats True as 1; False as 0. + + + + + Returns the sample standard deviation. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + The sample standard deviation. + Treats True as 1; False as 0. + + + + + Returns the population standard deviation. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + The population standard deviation. + + + + Returns the population standard deviation. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + The population standard deviation. + Treats True as 1; False as 0. + + + + + Returns the standard error of the least square fit line through the given points. + + Y_range, x_range. + Standard error. + + + + Returns the mean of the range after removing points on either extreme. + + Range, percent. + Kth smallest value. + + + + Returns sample variance of the listed values. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + The sample variance. + + + + Returns sample variance of the listed values. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + The sample variance. + True is treated as 1; False is treated as 0. + + + + + Returns population variance of the listed values. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + The population variance. + + + + Returns population variance of the listed values. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + The population variance. + True is treated as 1; False is treated as 0. + + + + + Returns the Weibull distribution. + + X, alpha, beta, cumulative. + The Weibull distribution. + + + + Returns the one-tailed probability value of a Z test. + + Range, mu, sigma. + Kth smallest value. + + + + Calculate muti range and return cell value + + contains multi cell range(eg:A1:A100) + + + + Returns the maximum value of all values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the maximum value of all values listed in the argument. + + + + The MINIFS function returns the minimum value among cells specified by a given set of conditions or criteria. + + range of cells, criteria1, average_range1,... + returns the Minimum value of the cells. + + + + The MAXIFS function returns the maximum value among cells specified by a given set of conditions or criteria. + + range of cells, criteria1, average_range1,... + returns the Maximum value of the cells. + + + + Returns the subtotal of input range(s). + + A list of cell references(seperated by commas) + Subtotal of range(s) + + + + Returns the minimum value of all values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the minimum value of all values listed in the argument. + + + + Returns the simple average of all values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + A string holding the simple average of all values listed in the argument. + + + + Returns the harmonic mean of all values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + The harmonic mean all values listed in the argument. + + + + Returns the hypergeometric distribution. + + Number of sample successes, number of sample, number of population successes, number of population. + Returns the gamma distribution. + + + + Returns the hypergeometric distribution. + + Number of sample successes, number of sample, number of population successes, number of population. + Returns the gamma distribution. + + + + Conditionally computes one of two alternatives depending upon a logical expression. + + + The first argument is + treated as a logical expression with a non-zero value considered True and a zero value considered False. + The value of only one of the alternatives is computed depending upon the logical expression. + + A string holding a list of three arguments. + + Returns a string holding the second argument if the first argument is True (non-zero). Otherwise, it returns a string holding the third argument. + + + + Returns a value you specify if a formula evaluates to an error + otherwise, returns the result of the formula. + + String to be tested. + Retuns the error string + + + + Returns the y-intercept of the least square fit line through the given points. + + y_range, x_range. + y-intercept for the given points. + + + + Returns the binomial distribution. + + Number of successes, number of trials, probability, cumulative. + The binomial distribution. + + + + Returns the skewness of a distribution based on a population a characterization of the degree of asymmetry of a distribution around its mean. + + numbers or names, arrays, or reference that contain numbers + Skewness of a distribution. + + + + Returns population covariance, the average of the products of deviations for each data point pair in two data sets. + + range1, range2. + The covarianceP + + + + Returns the sample covariance, the average of the products of deviations for each data point pair in two data sets. + + range1, range2. + The covariances + + + + Returns the percentile position in the range. + + Range, k. + Percentile position. + K is a value between 0 and 1. + + + + Returns the percentage rank Exc in the range. + + Range, x, significant digits. + Percentile position. + Significant digits are optional, defaulting to 3. + + + + Returns the percentile position in the range. + + Range, k. + Percentile position. + K is a value between 0 and 1. + + + + Returns the percentage rank Inc in the range. + + Range, x, significant digits. + Percentile position. + Significant digits are optional, defaulting to 3. + + + + Returns the sample standard deviation. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + The sample standard deviation. + Treats True as 1; False as 0. + + + + + Returns sample variance of the listed values. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + The sample variance. + + + + Calculates variance based on the entire population (ignores logical values and text in the population). + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + The sample variance. + + + + Returns the number of permutations for a given number of objects (with repetitions) that can be selected from the total objects. + + n, k + The number of combinations. + + + + Returns the normal distribution for the specified mean and standard deviation. + + x, mean, standarddev, cumulative. + The normal distribution. + + Cumulative should be either + True if you want to return the value of the distribution function or False + if you want to return the value of the density function. + + + + + Returns the inverse of the normal cumulative distribution for the specified mean and standard deviation. + + P, mean, standard deviation. + Returns x such that normal distribution at x is p. + + P should be between 0 and 1. + + + + + Returns the standard normal cumulative distribution function. The distribution has a mean of 0 (zero) and a standard deviation of one. + Syntax: NORMSDIST(z) + + Z is the value for which you want the distribution. + Standard normal cumulative distribution. + + + + Returns the PDF of the standard normal distribution. + + Value at which the distribution is evaluated. + + + + Returns the CDF of the standard normal distribution. + + Value at which the distribution is evaluated. + + + + Returns the PDF of the standard normal distribution. + + Value at which the distribution is evaluated. + + + + Returns the CDF of the standard normal distribution. + + Value at which the distribution is evaluated. + + + + Returns the inverse of the CDF of the standard normal distribution. + + Cumulative probability of the distribution. p is between 0 and 1. + + + + Returns the inverse of the standard normal cumulative distribution. The distribution has a mean of zero and a standard deviation of one. + Syntax: NORMSINV(p) + + p is a probability corresponding to the normal distribution. + Inverse of standard normal cumulative distribution. + + p should be between 0 and 1. + + + + + Calculates the Weibull Probability Density Function or the Weibull Cumulative Distribution Function for a supplied set of parameters. + + x, alpha, beta, cumulative. + Returns the calculated weibull distribution. + + cumulative = A logical argument which denotes the type of distribution to be used + TRUE = Weibull Cumulative Distribution Function + FALSE = Weibull Probability Density Function + + + + + Returns the exponential distribution. + + x, lambda, cumulative. + The exponential distribution. + + Cumulative should be either + True if you want to return the value of the distribution function or False + if you want to return the value of the density function. + + + + + Used to calculate the inverse of gamma cummulative distribution + + + + + + + + + Used to calculate the inverse gamma distribution at inital stage. + + + + + + + + + + + + + + Used to calculate the inverse gamma distribution at middle stage. + + + + + + + + + + + + + + Used to calculate the inverse gamma distribution at final stage. + + + + + + + + + + + + + + Used to calculate the upper incomplete integral of inverse gamma function. + + + + + + + + Used to calculate the lower incomplete integral of gamma function. + + + + + + + + Used to calculate the upper incomplete integral of gamma function. + + + + + + + + Used to calculate the CDF(Cummulative Distribution Function) of Gamma distribution. + + Alpha + Beta + + + + + + Used to calculate the PDF(Probability Distribution Function) of Gamma distribution. + + Alpha + Beta + + + + + + Returns the gamma distribution. + + X, alpha, beta, cumulative. + The gamma distribution. + + X, alpha, and beta should be positive real numbers. Cumulative should be either + True if you want to return the value of the distribution function or False + if you want to return the value of the density function. The distribution value + is computed interactively using Trapezoidal Rule to six to seven significant digits + or 20 iteration maximum. + + + + + Returns the inverse of gamma distribution. + + p, alpha, beta + Returns x such that gamma distribution at x is p. + + P, alpha, and beta should be positive real numbers, with p between 0 and 1. + + + + + Returns the geometric mean of all values listed in the argument. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + The geometric mean all values listed in the argument. + + + + Returns the gamma distribution. + + X, alpha, beta, cumulative. + The gamma distribution. + + X, alpha, and beta should be positive real numbers. Cumulative should be either + True if you want to return the value of the distribution function or False + if you want to return the value of the density function. The distribution value + is computed interactively using Trapezoidal Rule to six to seven significant digits + or 20 iteration maximum. + + + + + Returns the inverse of gamma distribution. + + p, alpha, beta + Returns x such that gamma distribution at x is p. + + P, alpha, and beta should be positive real numbers, with p between 0 and 1. + + + + + Returns the natural logarithm of the gamma function. + + The value to be evaluated. + The natural logarithm of the gamma function. + + + + Returns the Student's t-distribution. + + x, degreesfreedom1. + Returns the Student's t-distribution. + + + + Returns the inverse of the CDF of the Student's t distribution. + For k = 3, and 5+ the solution is an approximation. + + Cumulative probability of the distribution. p is between 0 and 1. + Degrees of freedom. + + + + Returns the PDF of Student's t distribution. + + Value at which the distribution is evaluated. + Degrees of freedom. + + + + Returns the CDF of Student's t distribution. + + Value at which the distribution is evaluated. + Degrees of freedom. + + + + Returns the inverse of F distribution. + + p, degreesfreedom1, degreesfreedom2. + Returns x such that F distribution at x is p. + + P should be between 0 and 1. + + + + + Returns the smallest value for which the cumulative binomial distribution is greater than or equal to a criterion value. + + Number of trials, probability, alpha. + Returns the critical value. + + + + Returns the inverse of the lognormal distribution. + + p, mean, standarddev. + Returns the value x where the lognormal distribution of x is p. + + + + Returns the lognormal distribution. + + x, mean, standarddev. + The lognormal distribution. + + + + Returns a confidence interval radius. + + Alpha, standard deviation, size. + Returns x such that normal distribution at x is p. + + P should be between 0 and 1. + + + + + Returns the chi-squared distribution. + + x, degrees of freedom. + The chi-squared distribution. + + + + Returns the F probability distribution. + + x, degreesfreedom1, degreesfreedom2. + Returns the F probability distribution. + + + + Returns the PDF of the F distribution. + + Value at which the distribution is evaluated. + Degrees of freedom for numerator chi-sqared distribution. k1 > 0. + Degrees of freedom for denominator chi-sqared distribution. k2 > 0. + + + + Returns the CDF of the F distribution. + + Value at which the distribution is evaluated. + Degrees of freedom for numerator chi-sqared distribution. + Degrees of freedom for denominator chi-sqared distribution. + + + + Euler integral. + + + + + Integral from 0 to infinity of e^(-t) * t^(z-1) dt + + If z > 143 the return value will exceed the double.MaxValue. The function will throw an exception. + + + + To get the CDF of the beta distribution. + + + + + + + + Euler integral. + + + + + Returns the F (Fisher) probability distribution. + + x, degreesfreedom1, degreesfreedom2. + Returns the F probability distribution. + + + + Returns the chi-squared distribution. + + x, degrees of freedom. + The chi-squared distribution. + + + + Returns the inverse of the chi-squared distribution. + + x, degrees of freedom. + The inverse of the chi-squared distribution. + + + + Returns the Chi Test for independence. + + Actual_range, expected_range. + Result of Chi Test: y-intercept. + + + + Returns the inverse of the chi-squared distribution. + + x, degrees of freedom. + The inverse of the chi-squared distribution. + + + + Returns the binomial distribution. + + Number of successes, number of trials, probability, cumulative. + The binomial distribution. + + + + Returns the one-tailed probability value of a Z test. + + Range, mu, sigma. + Kth smallest value. + + + + Returns the rank of x in the range. + + X, range, order. + Rank of x. + + + + Returns the rank of x in the range. + + X, range, order. + Rank of x. + + + + The Irwin-Hall distribution results from the sum on n independent standard uniform variables + + The value at which to evaluate the distribution. + + + + The Irwin-Hall distribution results from the sum on n independent standard uniform variables + + The value at which to evaluate the distribution. + The number of standard uniform variables. + + + + Returns the number of possible combinations of k objects from a set of n object. The order of the chosen objects does not matter. + + Number of objects + Number of objects chosen + + + + Returns n! + 0! = 1,otherwise n! = n * (n-1) * (n-2) * ... * 2 * 1, + + + + + Returns the PDF of the uniform distribution. + + Number of successes, number of trials, probability, cumulative. + The binomial distribution. + + + + Returns the PDF of the uniform distribution. + + Value at which the distribution is evaluated. + Minimum value of the distribution. + Maximum value of the distribution. + + + + Returns the quartile position in the range. + + Range, q. + Percentile position. + Q is 0, 1, 2, 3, 4. + + + + Returns the quartile position in the range. + + Range, q. + Percentile position. + Q is 0, 1, 2, 3, 4. + + + + Returns the negative binomial distribution. + + Number of failures, success threshold, probability, cumulative. + The negative binomial distribution. + + + + Returns the Poisson distribution. + + x, mean, cumulative + Returns the exponential distribution. + + Cumulative should be either + True if you want to return the value of the distribution function or False + if you want to return the value of the density function. + + + + + Compares the given two values + + Two Numbers to be compared. + Returns the result of the comparision in the form of 0 or 1 + + + + Compares the given two values + + Two Numbers to be compared. + Returns the result of the comparision in the form of 0 or 1 + + + + Returns the sum of the squares of the mean deviations. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + Sum of the squares of the mean deviation. + + + + Returns the average of all the cells in a range which is statisfy the given single criteria + + range of cells, criteria, average_range + returns the average value of the cells. + + + + Return the value of ComputeConfidenceT + + arguments + + + + + Returns the inverse of F distribution. + + p, degreesfreedom1, degreesfreedom2. + Returns x such that F distribution at x is p. + + P should be between 0 and 1. + This method is deprecated. Please use the instead. + + + + + Returns the inverse of the CDF of the F distribution. + For k = 3, and 5+ the solution is an approximation. + + Cumulative probability of the distribution. p is between 0 and 1. + Degrees of freedom for numerator chi-sqared distribution. + Degrees of freedom for denominator chi-sqared distribution. + + + + Returns the inverse of the CDF of the normal distribution. + + Cumulative probability of the distribution. 0 <= p >= 1. + Mean of the distribution. + Standard deviation of the distribution. + + + + Returns a vertical array of the most frequently occurring, or repetitive values in an array or range of data. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + The most frequent value. + + + + Returns the most frequent value in the range. + + A string holding a list (separated by commas) of + cell references, + formulas, or numbers. + + The most frequent value. + + + + Returns the Student's t-distribution. + + x, degreesfreedom1. + Returns the Student's t-distribution. + + + + Returns the beta distribution. + + x, degreesfreedom1, degreesfreedom2. + Returns the beta distribution. + + + + Returns the Beta cumulative density function. + + Value of the random variable for which the CDF is beign evaluated. x is between 0 and 1. + First shape parameter. + Second shape parameter. + + + + + Returns the Beta probability density function. + + Value of the random variable for which the PDF is beign evaluated. x is between 0 and 1. + Number of trials. + Number of times the event occurs in n trials. + + + + + Calculates the standard normal cumulative distribution function (Gauss) for a given z-value. + This function returns the probability that a value from a standard normal distribution (with a mean of 0 and a standard deviation of 1) is less than or equal to the given z-value. + + + A string containing the arguments separated by commas. The format should be: + "z" + + z: The z-value for which you want to compute the cumulative distribution. + + + + The probability that a value from a standard normal distribution is less than or equal to the given z-value. + + + The Gauss function is used in statistics to determine the likelihood of a value falling within a specific range of a normal distribution. + This can be particularly useful in hypothesis testing or probability estimation scenarios. + + + + + Computes the gamma function for the specified input. + + A string representing the input number for which the gamma function will be calculated. + A string representing the result of the gamma function calculation. + + The gamma function is an extension of the factorial function to real and complex numbers. + + + + + Calculate and return the gamma function value. + + + + + Computes the sample variance for a set of numbers. + + + A string containing a comma-separated list of numbers for which the sample variance will be calculated. + + + A string representing the sample variance of the provided numbers. + + + The sample variance is a measure of the dispersion of data points in a sample, and is calculated by taking the average of the squared deviations from the mean. + + + + + This function calculates how often values occur within a range of values, and then returns a vertical array of numbers. + + + A string containing two arguments separated by a comma. the format should be: data_array, bins_array. + + data_array: The range or array of data values you want to count. + bins_array: The range or array of intervals to group the data values into. + + + + A formatted string with the frequency counts separated by semicolons, or an error message if the input is invalid. + + + + + Calculates the frequency counts of numeric and date values from the provided source and bin arrays. + Text and blank values are ignored during processing. + + An array of strings representing the source and bin data ranges. + A string representing the frequency counts separated by semicolons. + + + + This function computes the probability of a specific outcome or a range of outcomes in a binomial distribution. + + + A comma-separated string containing the input arguments in the format: + "trials, probability_s, number_s, [number_s2]". + + + + trials: The number of independent trials. + This value must be a non-negative integer. (e.g., 0, 1, 2, ...). + + + + + probability_s: The probability of success for each trial, represented as a decimal value. + This value must be a number between 0 and 1 (inclusive). + + + + + number_s: The specific number of successes for which to calculate the probability. + This must be an integer between 0 and trials. + + + + + number_s2 (optional): The upper limit for a range of successes. + If provided, the function calculates the probability for successes between number_s and number_s2 (inclusive). + This value must be an integer greater than or equal to number_s and less than or equal to trials. + + + + + + A string representing the calculated probability for the specified number of successes or success range in the binomial distribution. + If the input parameters are invalid, an error message is returned. + + + + + This function calculates the cumulative Beta probability density function, which evaluates proportions or probabilities over a specified range. + + + A comma-separated string containing the input arguments in the format: "x, alpha, beta, [A], [B]". + + + x: The value at which to evaluate the Beta distribution. Must lie within the interval [A, B]. If A and B are omitted, the default range is [0, 1]. + + + alpha: A positive shape parameter of the Beta distribution, determining its skewness. + + + beta: A positive shape parameter of the Beta distribution, determining its skewness. + + + A: (Optional) The lower bound of the interval. Defaults to 0 if omitted. + + + B: (Optional) The upper bound of the interval. Defaults to 1 if omitted. + + + + + A string representing the calculated cumulative Beta probability density function at the specified value x. Returns an error message if the input arguments are invalid or if x is outside the interval [A, B]. + + + + + This function calculates and returns the t-value corresponding to the given two-tailed probability for the Student's t-distribution. It is commonly used to find critical t-values in hypothesis testing. + + + A comma-separated string containing the input arguments in the format: "Probability, Deg_freedom". + + Probability: The cumulative probability for both tails of the distribution. This value must be a decimal between 0 and 1 (exclusive). + Deg_freedom: The degrees of freedom, typically the sample size minus 1. + This must be a positive integer. + + + + A string representing the t-value corresponding to the specified two-tailed probability and degrees of freedom. + Returns an error message if the input arguments are invalid. + + + + + + Retrieves two arrays of string values parsed from the input argument string. + Validates the inputs and checks for errors before computation. + + The first array of strings parsed from the input arguments. + The second array of strings parsed from the input arguments. + The input argument string containing comma-separated values for two arrays. + A string indicating validation error if any, or an empty string if successful. + Thrown if the number of arguments is incorrect and exceptions are rethrown. + + + + Calculates the F-test p-value based on two arrays of double values representing two data sets. + Assumes that input validation has already been performed by GetValuesOfFTest. + + The first array of doubles representing the first data set. + The second array of doubles representing the second data set. + The p-value of the F-test for the two data sets. + + + + + This function computes and returns the critical t-value for a two-tailed Student's t-distribution based on a specified probability and degrees of freedom. + + + A comma-separated string containing the input arguments in the format: probability, deg_freedom. + + Probability: The cumulative probability for the two-tailed Student's t-distribution. This value must be between 0 and 1 (exclusive of 0 and 1). + Deg_freedom: The number of degrees of freedom that defines the distribution.It must be a positive integer. + + + A string representing the t-value corresponding to the given two-tailed probability and degrees of freedom. + If the input is invalid, an error message or exception may be returned. + + + + + This function computes the critical value (inverse) of the F-distribution for a specified cumulative probability and degrees of freedom. + It is typically used in hypothesis testing or analysis of variance (ANOVA). + + + A comma-separated string containing the input arguments in the format: "p, degreesFreedom1, degreesFreedom2". + + + + p: The cumulative probability for which the F value is to be calculated. This value must be a number between 0 and 1 (exclusive of 0 and 1). + + + + + degreesFreedom1: The degrees of freedom for the numerator. This must be a positive integer. + + + + + degreesFreedom2: The degrees of freedom for the denominator.This must be a positive integer. + + + + + + A string representing the critical F value such that the cumulative probability of the F-distribution equals p. + If the input parameters are invalid, an error message is returned. + + + + + Calculates the inverse of the F-distribution for the given probability and degrees of freedom. + Uses a binary search approach to find the value corresponding to the specified cumulative probability. + + The cumulative probability for which the F value is to be calculated. Must be between 0 and 1. + The degrees of freedom for the numerator. + The degrees of freedom for the denominator. + The F value corresponding to the given cumulative probability. + + + + Calculates the cumulative distribution function (CDF) of the F-distribution. + This computes the probability that a random variable from the F-distribution is less than or equal to a given value. + + The F value for which the cumulative probability is calculated. + The degrees of freedom for the numerator. + The degrees of freedom for the denominator. + The cumulative probability corresponding to the given F value. + + + + This function computes a linear trend line based on a given set of dependent y-values and, optionally, independent x-values, and returns predicted values along the trend line. + This function can also calculate predictions for new X values if provided. + + + A comma-separated string containing the input arguments in the format: "knownY, [knownX], [newX], [const]". + + + knownY: A set of dependent y-values for which a trend line will be calculated.These values must be provided as a comma-separated string.. + + + knownX [optional]: A set of independent x-values corresponding to knownY. These values must be provided as a comma-separated string.If omitted, x-values are assumed to be a sequence starting from 1. + + + newX [optional]: A set of new x-values for which corresponding y-values are to be predicted. These values must be provided as a comma-separated string. If omitted, predictions are made for the given knownX. + + + const [optional]: A boolean value indicating whether the regression line should include a y-intercept.If true (default), the intercept is included. If false, the intercept is forced to be 0. + + + + A comma-separated string of predicted y-values along the trend line. If an error occurs, such as invalid input or mismatched data sets, an error message is returned.. + + + + Calculate and retrun the y-values along that line for the array of new_x's. + + + + + Get the argument values for Trend function and return error string for invalid arguments. + + + + + Adds an intercept column to a matrix, where the intercept column is filled with ones. + + + The input matrix to which the intercept column will be added. A 2D array with dimensions [rows, columns]. + + + A new 2D array with the same number of rows as the input matrix and one additional column. + The first column of the result is filled with ones (intercept column), followed by the original matrix columns. + + + + + Computes the transpose of a given matrix. + + + The input matrix to be transposed. A 2D array where elements are rearranged + such that rows become columns and columns become rows. + + + A 2D array representing the transposed matrix. The resulting matrix will have + dimensions [columns of the input matrix, rows of the input matrix]. + + + + + + Computes the inverse of a square matrix using the Gaussian elimination method. + + + The input matrix to be inverted. It must be a square matrix (same number of rows and columns). + + + a 2D array representing the inverse of the input matrix. If the matrix is singular or non-invertible, + an exception may be thrown due to division by zero or numerical instability. + + + + + Converts a single-column matrix into a one-dimensional vector (array). + + + The input matrix, which must have exactly one column. + + + a one-dimensional array containing the elements of the input matrix's single column. + + + + + Generates an identity matrix of the specified size. + + The size of the identity matrix (number of rows and columns). + + a square 2D array representing the identity matrix, where all diagonal elements are 1, + and all off-diagonal elements are 0. + + + + + Converts a one-dimensional vector (array) into a column matrix. + + The input vector to be converted. + + a 2D array representing the column matrix where each element of the + input vector becomes a row in the single-column matrix. + + + + + Calculate and return double values for xValues,yValues and newXValues. + + + + + + Calculate and return the Student's t-Test probability value. + + + + + Calculates the variance of a dataset. + + A list of double values representing the dataset. + The mean of the dataset. + The variance of the dataset. + + + + Computes the cumulative distribution function (CDF) for Student's t-distribution. + + The t-statistic for which to compute the CDF. + The degrees of freedom associated with the t-distribution. + + A double value representing the cumulative probability associated with the given t-statistic + and degrees of freedom. + s + + + + This function calculates and returns the probability (percentage points) for the Student's t-distribution, given a numeric t-value (x), degrees of freedom, and number of tails. + This function is typically used in hypothesis testing to determine the significance of results. + + + A string containing three arguments separated by commas, in the format: x, deg_freedom, tails. + + X: A numeric value representing the t-statistic (calculated from a statistical test). + Deg_freedom: An integer representing the degrees of freedom, typically calculated as the sample size minus 1. + Tails: Specifies whether to calculate the one-tailed or two-tailed distribution. + Use Tails = 1 for a one-tailed test and Tails = 2 for a two-tailed test. + + + + A string representing the probability (as percentage points) associated with the given inputs:x (t-value), deg_freedom, and the specified number of tails. + This value helps in determining the significance level during hypothesis testing. + + + + + This function computes and returns the two-tailed probability for the Student's t-distribution. + This function calculates the probability of observing a t-value as extreme as the given t-value (in either tail),for a specified degrees of freedom. + + + A string containing two arguments separated by commas, in the format: X, deg_freedom. + + X: The numeric t-value at which to evaluate the distribution. This represents the test statistic. + Deg_freedom: An integer representing the degrees of freedom, usually calculated as the sample size minus 1. + + + + A string representing the two-tailed probability associated with the specified t-value and degrees of freedom. + The result indicates the likelihood of observing a t-value as extreme as X, in both tails of the distribution. + The two-tailed t-distribution is commonly used in hypothesis testing where the alternative hypothesis tests for a difference in either direction (e.g., not equal to a specified value). + Input values should be in the correct format and range to avoid calculation errors. + + + Input: "2.5, 10" + Output: "0.0254" (depending on implementation and precision, result represents a probability). + + + + + This function computes and returns the right-tailed probability for the Student's t-distribution. + This function calculates the probability of observing a t-statistic greater than the given t-value (X), for a specified degrees of freedom. + + + A string containing two arguments separated by commas, in the format: X, deg_freedom. + + X: The numeric t-value at which to evaluate the distribution.This represents the test statistic. + Deg_freedom: An integer representing the degrees of freedom, usually calculated as the sample size minus 1. + + + + A string representing the right-tailed probability (as a percentage) associated with the specified t-value and degrees of freedom. + This value indicates the likelihood of observing a t-value greater than X.The right-tailed t-distribution is commonly used in hypothesis testing for one-sided tests where the alternative hypothesis specifies a direction (e.g., greater than a given value). + Input values should adhere to the expected format and range for accurate results. + Input: "2.5, 10" + Output: "0.0127" (depending on the implementation and precision; result represents a probability). + + + + + This method compute the actual T-distribution probability value by using numeric value and the number of degrees of freedom. + + + + + This method computes the incomplete beta function, which is part of the distribution's calculation, using series and logarithmic expressions. + + + + + This method computes a series used to approximate the incomplete beta function for values of a and b. + + + + + This function computes and returns the fraction expansion of the incomplete beta function + + + + + This function predicts a future value along a linear trend based on existing data using linear regression. + Calculates the forecasted value for a specified independent variable, x,based on the relationship between the provided dependent (known_y's) and independent (known_x's) data sets. + + + A comma-separated string containing three arguments in the format: x, known_y's, known_x's. + + x: The independent variable (data point) for which the prediction is to be made. + known_y's: A space-separated string representing an array or range of dependent values (the values to predict). + known_x's: A space-separated string representing an array or range of independent values corresponding to known_y's. + + + + A string representing the predicted value for the specified x, or an error message if the input is invalid or the calculation cannot be performed. + + + + + Return the value of TranslateText + + value + language + + + This method is deprecated. + + + + + Return the numeric code for first char of text + + text + numeric code + + + + Finds the first occurrence of one string in another string. + + Conatins two or three arguments. The first argument is the string + to find. The second string is the string that is being searched. The third argument + is the start location in the second string for the search. + The location of the found string. + + + + Returns the left so many characters in the given string. + + Contains the string and the number of characters. + A left sub string.. + + + + Used to compute the JIS function + + arguments + + + + + Returns the length of the given string. + + Contains the string. + An integer length. + + + + Returns a substring of the given string. + + Contains the original string, start position of the substring, + and the number of characters in the substring. + A substring. + + + + Returns the right so many characters in the given string. + + Contains the string and the number of characters. + A right substring. + + + + Convert the text to number + + text, + decimal separator,group separator + + + + Returns the text like first letter with upper letter in each word + + Text + proper text + + + + Replace the part of the text with a new text from orginal text + + Text,Start index, Number of char to replace, new text + replaced string + + + + Returns the number of repeated text + + text, repeated count + text + + + + Returns the number of the starting position of the first string from the second string. + + first strring, second string and starting position + index of the string + + + + Returns the Unicode char for the respective numeric value + + Number + unicode char + + + + Returns the corresponding number code for the first char of string. + + text + numeric code + + + + Returns the character whose number code is specified in the argument. + + The number used to retrieve the character. + The character string. + + + + Retuns the text removing the first 32 nonprintable characters(ranging from 0 to 31) in 7-bit ASCII code. + + Text or range holding text including nonprintable characters + Text without nonprintable characters(first 32) + + + + Returns whether or not the two arguments passed in are exactly the same. + + A string holding two arguments (separated by commas) of + cell references, strings, + formulas, or numbers. + True if the arguments are exactly the same ignoring formats, false other wise. + + + + Finds the first occurrence of one string in another string. + + Conatins two or three arguments. The first argument is the string + to find. The second string is the string that is being searched. The third argument + is the start location in the second string for the search. + The location of the found string. + The location count starts at 1. If the third argument is missing, it defaults to 1. + If the first string does not appear in the second string, #VALUE! is returned. The searches are done + in a case sensitive manner. + + + + + Returns the value at a specified row and column from within a given range. + + look_range, row, col + The value. + + Only the array form of this function is supported. + + + + + Returns the number of the starting position of the first string from the second string. + + first strring, second string and starting position + index of the string + + + + Find and return list of unique elements for two dimentional array elements. + + return list of unique elements. + + + + + Validate and return the error string for TextBefore/TextAfter formula. + + validated argument + + + + This function returns text that occurs after given character or string. + + + A string containing the arguments separated by commas. + The format should be: "text,delimiter,instance_num, match_mode, match_end, if_not_found". + + textThe text you are searching within. Wildcard characters not allowed. + delimiterThe text that marks the point after which you want to extract. + instance_num[Optional] The instance of the delimiter after which you want to extract the text.(default is 1). + match_mode[Optional] Determines whether the text search is case-sensitive. The default is case-sensitive. + + 0 - Case sensitive. + 1 - Case insensitive. + + + match_end[Optional] Treats the end of text as a delimiter. By default, the text is an exact match. + + 0 - Don't match the delimiter against the end of the text. + 1 - Match the delimiter against the end of the text. + + + if_not_found[Optional] Value returned if no match is found. By default, #N/A is returned. + + + The text that occurs after given character or string. + + + + Validate and get the argument for TextAfter/TextBefore formula. + + + + + This function returns text that occurs text that occurs before a given character or string + + + A string containing the arguments separated by commas. + The format should be: "text,delimiter,instance_num, match_mode, match_end, if_not_found" + + textThe text you are searching within. Wildcard characters not allowed. + delimiterThe text that marks the point after which you want to extract. + instance_num[Optional] The instance of the delimiter after which you want to extract the text.(default is 1). + match_mode[Optional] Determines whether the text search is case-sensitive. The default is case-sensitive. + + 0 - Case sensitive. + 1 - Case insensitive. + + + match_end[Optional] Treats the end of text as a delimiter. By default, the text is an exact match. + + 0 - Don't match the delimiter against the end of the text. + 1 - Match the delimiter against the end of the text. + + + if_not_found[Optional] Value returned if no match is found. By default, #N/A is returned. + + + The text that occurs before a given character or string. + + + + Find index to returns text when delimiter is character and instance_num is negative that appears after a given character. + + The text you are searching within + The text that marks the point after which you want to extract. + The instance of the delimiter after which you want to extract the text.By default, instance_num = 1 + The index to returns text that appears after a given character. + + + + Find index to returns text when delimiter is word and instance_num is negative that appears after a given character. + + The text you are searching within + The text that marks the point after which you want to extract. + The instance of the delimiter after which you want to extract the text.By default, instance_num = 1. + The index to returns text that appears after a given word. + + + + Find index to returns text when delimiter is word and instance_num is positive that appears after a given character. + + The text you are searching within. + The text that marks the point after which you want to extract. + The instance of the delimiter after which you want to extract the text.By default, instance_num = 1. + The index to returns text that appears after a given word. + + + + Find index to returns text when delimiter is character and instance_num is positive that appears after a given character. + + The text you are searching within + The text that marks the point after which you want to extract. + The instance of the delimiter after which you want to extract the text.By default, instance_num = 1. + The index to returns text that appears after a given character. + + + + This function returns text from any specified value. It passes text values unchanged, and converts non-text values to text. + + + A string containing the arguments separated by commas. + The format should be: "value, format" + + valueThe value to return as text. + formatThe format of the returned data.[optional] + + 0 - Concise format that is easy to read. The text returned will be the same as the text rendered in a cell that has general formatting applied. + 1 - Strict format that includes escape characters and row delimiters. Generates a string that can be parsed when entered into the formula bar. Encapsulates returned strings in quotes except for Booleans, Numbers and Errors. + + + + + Text from any specified value + + + + Returns the text from any specified value. + + The value to return as text. + The format of the returned data. + + + + Calculate array format argument value. + + Return calculated array format argument value for interior and direct VALUETOTEXT formula. + + + + This function returns text from any specified array/range. It passes text values of array unchanged, and converts non-text values to text. + + + A string containing the arguments separated by commas. + The format should be: "array, format" + + arrayThe array to return as text. + formatThe format of the returned data.[optional] + + 0 - Concise format that is easy to read. + The text returned will be the same as the text rendered in a cell that has general formatting applied. + + 1 - Strict format that includes escape characters and row delimiters. + Generates a string that can be parsed when entered into the formula bar. + Encapsulates returned strings in quotes except for Booleans, Numbers and Errors. + + + + + + Text from the specified array/range. + + + + Calculates the final string of the specified condition in the formula from the sepcified range of cells. + + an array of text values from any specified range. + + + + Converts a flat list of cell data into a structured list of rows and columns. + + List of cell data. + Number of columns in the data. + Structured data as a list of lists. + + + + Returns the text from any specified value. + + The value to return as text. + The format of the returned data. + string value after checking with the conditions. + + + + + Validates the argument list and extracts the range, ignore, and scanByColumn values. + + Output parameter that holds the value to be ignored. + Output parameter that indicates whether to scan by column. + Output parameter that holds the range value. + The argument list string to be parsed and validated. + + Returns an error string if there is any validation error, otherwise returns an empty string. + + Thrown when there is an invalid number of arguments or invalid argument value. + + + + Converts the values of a given array range to a single column/row format. + + The range of the array to be converted. + A value indicating whether to ignore certain cells (e.g., blanks or errors). + A boolean indicating whether to scan the range by columns (true) or by rows (false). + A string representing the values of the array converted to a single column/row, separated by the defined separator. + + + + Checks the conditions of the given cell value in the array based on specified criteria. + + The value of the cell to be checked. + A value indicating whether to ignore certain cells (e.g., blanks or errors). + A list to which the cell value will be added if it meets the conditions. + A boolean indicating whether the cell value was added to the list. + + + + Retrieves the totalnumber of columns, totalnumber of rows, and array values from the given array/range. + + Output parameter for the total number of columns. + Output parameter for the total number of rows. + Output parameter for the list of array values. + Input arguments, including range or array values. + + + + + Returns specified columns from an array or range. + + + A string containing the array or range and the column indexes separated by commas. + The format should be: array, col_num1, [col_num2], ... + + + array: The source array or range. + + + col_num1: An integer specifying the first column to return. + + + [col_num2]: [optional] Index numbers of additional columns to return. + + + + A formatted string representing the specified columns from the array or range. + + + + Returns the row/column indexes as a string array from the argument. + + The arguments specifying the range and indexes to choose. + The total number of columns in the range. + The total number of rows in the range. + A boolean indicating whether the indexes are for columns (true) or rows (false). + An output parameter that will contain the computed indexes as an integer array. + A string indicating any error that occurred during the computation; otherwise, an empty string. + + + + Computes and returns a formatted string of column or row values from a range based on specified indexes. + + The range of the array to be processed. + An array of indexes specifying the columns or rows to be chosen. + The total number of columns in the range. + The total number of rows in the range. + A list of the values in the array. + A boolean indicating whether the indexes are for columns (true) or rows (false). + A formatted string representing the chosen column or row values, separated by the defined separator. + + + + Returns specified rows from an array or range. + + + A string containing the array or range and the row indexes separated by commas. + The format should be: array, row_num1, [row_num2], ... + + + array: The source array or range. + + + row_num1: An integer specifying the first row to return. + + + [row_num2]: [optional] Index numbers of additional rows to return. + + + + A formatted string representing the specified rows from the array or range. + + + + Converts a flat list of cell data into a structured list of columns. + + List of cell data + Number of columns in the data + Structured data as a list of lists by columns + + + + This function generates a list of sequential numbers in an array. + + + A string containing the arguments separated by commas. + The format should be: "rows, columns, start, step". + + rows: The number of rows to fill. + columns: The number of columns to fill. If omitted, defaults to 1 column. + start: The starting number in the sequence. If omitted, defaults to 1. + + step: The increment for each subsequent value in the sequence. It can be positive or negative. + + If positive, subsequent values increase, creating an ascending sequence. + If negative, subsequent values decrease, producing a descending sequence. + If omitted, the step defaults to 1. + + + + + Generates and returns an array of sequential numbers. + + + + Generate an array of sequential number + + Generate and return an array of sequential number + + + + This function splits text strings by using column and row delimiters. + + + A string containing the arguments separated by commas. + The format should be: "text, col_delimiter, row_delimiter, ignore_empty, match_mode, pad_with". + + text: The text you want to split. + col_delimiter: The text that marks the point where to spill the text across columns. + row_delimiter [optional]: The text that marks the point where to spill the text down rows. + + ignore_empty [optional]: Specifies whether to ignore empty values or not. Defaults to FALSE. + + FALSE (default) - create empty cells for consecutive delimiters without a value in-between. + TRUE - ignore empty values, i.e., don't create empty cells for two or more consecutive delimiters. + + + + match_mode [optional]: Determines case-sensitivity for the delimiter. Enabled by default. + + 0 (default) - case-sensitive. + 1 - case-insensitive. + + + pad_with [optional]: A value to use in place of missing values in two-dimensional arrays. The default is a #N/A error. + + + Splitted text strings by using column and row delimiters. + + + + Compute and return delimters when delimter contains multiple character{",",";"}. + + delimters when contains multiple character. + + + + splits text strings by a given row and column delimiter across columns or/and rows. + + the text to split + a character(s) that indicates where to split the text across rows. + a character(s) that indicates where to split the text across columns. + specifies whether to ignore empty values or not. + determines case-sensitivity for the delimiter. + a value to use in place of missing values in two-dimensional arrays. + maxColumn count. + list of splitted text. + + + + splits text strings by a column delimiter across columns. + + + + + This function retrieves a specified subset of values from a given array or range based on the number of rows and/or columns provided. + + + A string containing the arguments separated by commas in the following format: + + + array: The array or range from which to retrieve values. + + + + rows: [Optional] The number of rows to return. + A positive value returns rows from the start of the array, while a negative value returns rows from the end. + If omitted, columns must be provided. + + + columns: [Optional] The number of columns to return. + A positive integer returns columns from the start of the array, while a negative integer returns columns from the end. + If omitted, rows must be provided. + + + + A formatted string containing the subset of values from the specified array or range. If the input is invalid, an appropriate error message is returned. + + + + Retrieves values from the given range based on the specified rows and columns. + + The range of cells. + The number of rows to retrieve. + The number of columns to retrieve. + A string containing the retrieved values, separated by a specified separator. + + + + This function removes the specified number of rows and/or columns from the start or end of an array or range. + + + A string containing the arguments separated by commas. The format should be: array, rows, [columns]. + + + + array: The array or range from which values are to be removed. + + + + + rows: [Optional] The number of rows to remove. A positive value removes rows from the start of the array, + and a negative value removes rows from the end of the array. If omitted, columns must be provided. + + + + + columns: [Optional] The number of columns to remove. A positive integer removes columns from the start of the array, + and a negative integer removes columns from the end of the array. If omitted, rows must be provided. + + + + + + A formatted string representing the array after removing the specified rows and/or columns. + If the inputs are invalid, an error message is returned. + + + + + Drops specified rows and/or columns from the array. + + Input range or array. + Number of rows to drop. + Number of columns to drop. + Total number of rows in the array. + Total number of columns in the array. + List of array values. + Resultant string after dropping specified rows and/or columns. + + + + This function expands or pads an array to specified row and column dimensions. + + + A string containing the arguments separated by commas. + The format should be: "array, rows, columns, pad_with". + + array: The array to expand. + rows: The number of rows in the expanded array. If missing, rows will not be expanded. + columns: The number of columns in the expanded array. If missing, columns will not be expanded. + pad_with: The value with which to pad. The default is #N/A. + + + An expanded or padded array with the specified row and column dimensions. + + + + Compute and return the expanded arraay based on pad_with and rows and cols argument. + + + + + This function computes the vector (one-dimensional array) and returns the wrapped values. + + + The input arguments as a single string separated by commas. + The format is: vector, wrap_count, [pad_with] + + + vector: The source one-dimensional array or range. + + + wrap_count: The maximum number of values per row. + + + pad_with [optional]: The value to pad the last row with if there are insufficient items to fill it. + If omitted, the missing values will be padded with #N/A (default). + + + + A string representing the wrapped rows or an error message. + + + + Wraps the rows or columns of an array based on the specified wrap count and padWith. + + The vector of values to be wrapped. + The count at which to wrap the rows or columns. + The value to pad with if necessary. + A boolean indicating whether to wrap rows (true) or columns (false). + A string representing the wrapped rows or columns. + + + + This function computes the vector (one-dimensional array) and returns the wrapped values. + + + The input arguments as a single string separated by commas. + The format is: vector, wrap_count, [pad_with] + + vector: The source one-dimensional array or range. + wrap_count: The maximum number of values per column. + pad_with [optional]: The value to pad the last column with if there are insufficient items to fill it. + If omitted, the missing values will be padded with #N/A (default). + + + A string representing the wrapped columns or an error message. + + + + Checks for error strings in the given arguments and extracts the range, wrap count, and pad width. + + The input arguments as a single string. + The extracted range of values. + The extracted wrap count. + The extracted pad width. + A string representing any error found, or an empty string if no errors are found. + + + + This function sorts the contents of an array or range by columns or rows in ascending or descending order. + + + A string containing the arguments separated by commas. The format should be: "array, sort_index, sort_order, by_col". + + + + array: The array or range to be sorted. + + + + + sort_index [Optional]: The column or row index on which to base the sorting. If omitted, the first column or row is used. + + + + + sort_order [Optional]: Defines the sort order. If omitted, the default is ascending order. + + 1 or omitted - Ascending order (default). + -1 - Descending order. + + + + + + by_col [Optional]: A logical value indicating the direction of sorting. If omitted, the default is to sort by rows. + + FALSE or omitted - Sort by row (default). + TRUE - Sort by column. + + + + + + A string representing the sorted array. + + + + Compute and sort the values from array or range + + Array values specified as a range + Sort index is a column index from the range or array values + Sorting order (1 for ascending, -1 for descending) + Scan by column (true/false) + String of the sorted values + + + + Sorts the structured data by the specified row index and order. + + Structured data as a list of lists + Index of the row to sort by + Order to sort by (1 for ascending, -1 for descending) + Sorted structured data + + + + Sorts the structured data by the specified column and order. + + Structured data as a list of lists + Index of the column to sort by + Order to sort by (1 for ascending, -1 for descending) + Sorted structured data + + + + Compares two values for sorting based on the specified sort order. + + The first value to compare. + The second value to compare. + The sort order (1 for ascending, -1 for descending). + An integer indicating the relative order of the values. + + + + This function sorts the contents of a range or array based on the values in corresponding ranges or arrays. + + + A string containing the arguments separated by commas. + The format should be: "array, by_array1, sort_order1, by_array2, sort_order2,…". + + + array: The array or range to sort. + + + by_array1: The array or range to sort by. + + + sort_order1: The order to use for sorting. Default is ascending. + + 1 for ascending. + -1 for descending. + + + + + A sorted range or array. + + + + Retrieves the values of the specified arrays and performs sorting based on the provided criteria. + + An array of strings representing the arguments for the SORTBY function. + A list of strings representing the sort orders for each byArray. + A list of strings representing the byArrays used for sorting. + A string representing the sorted values. + + + + Performs the sorting for the SORTBY function. + + A list of strings representing the values of the initial array or range. + A list of strings representing the byArrays used for sorting. + A list of strings representing the sort orders for each byArray. + The number of columns in the initial array or range. + A string representing the sorted values. + + + + This function is used to filter a range of data based on the criteria that you specify. + + + The input arguments as a single string, separated by commas. + The format is: array, include, [if_empty] + + + array: The source range or array of values to filter. + + + include: The criteria for filtering, provided as a Boolean array or a condition that results in a Boolean array (e.g., B2:B13=B2"). + + + if_empty [optional]: The value to return if no entries meet the criteria. If omitted, a default error message is returned. + + + + A string representing the filtered values based on the criteria, or an error message if the arguments are invalid or if an error occurs. + + + + This method used to calculate the criteria for Filter formula using include argument and retrun the calculated string. + + + + + This method filters the given array based on specified criteria and returns the results as a formatted string. + + The array to filter. + The criteria for filtering the array. + Additional conditions or logical operators for filtering. + Value to return if no items match the criteria. + Number of columns in the array for filtering. + True if includeArray is horizontal, false if vertical. + A formatted string with the filtered results. + + + + This method converts a numeric value to its equivalent Thai text and adds the currency unit "Baht" for the integer part, and "Satang" for the fractional part if applicable. + + + A string representing a number, a reference to a cell containing a number, or a formula that evaluates to a number. This number will be converted to Thai text with a "Baht" suffix. + + + A string representing the given number in Thai text, followed by "Baht" for the whole number part and "Satang" for the fractional part. + If the input number is zero, it returns "ศูนย์บาทถ้วน". If the input is invalid, it returns an error message. + + + + + Converts the integer part of a number into its equivalent Thai text representation. + + The integer part of the number to convert. + Array of Thai words for ones (1-9). + Array of Thai words for tens (10, 20, etc.). + Array of Thai words for higher units (hundred, thousand, etc.). + A string representing the integer in Thai text. + + + + Return the XML content of the given document + + web link + XML data + + + + Returns the encode url of the given text + + text + returns the EncodeURL + + + + Filter the value from XML document + + XML content + value + + + + Field that turns on/off processing of the ICalcData.ValueChanged event. + + + + + Used to store the number + + + + + Used to store the big number as double + + + + + Used to store the value as double + + + + + This field will be set as true, if the 1904 date system is enabled in Excel. + + + + + Set the boolean as true + + + + + The constructor. + + + + + The constructor. + + The ICalcData from the underlying grid. + + + + Gets or sets whether the formula is array formula or not. + + + + + Gets or sets the instance of . + + + + + Gets or sets the instance of + + + + + Used to store the registed values + + + + + The list of error strings which are used within the Essential Calculate internally. Users can make changes to this internal error strings. + Default settings by assigning the new strings to the corresponding position.ReloadErrorStrings should be invoked to reset or modify the internal error strings. + + + + + A method that checks the possible cases for error string(invalid arguments for formula). + + The arguments of formula. + The formula's argument type. + Returns the Error string if formula has invalid arguments + + + + Below method has been used to find the negative values(ex formula:=LARGE({6,23,-5,2.3}, 2)). + + string contains negative values(eg:-2,-2,-2) or possitve value. + True if the values are number.else false. + + + + Returns true when Namedarange is in the scope and returns cellRange based on scope. + + NamedRange + CellRange + True when Namedarange is in the scope.else false. + + + + This method check "\"in the string and removes if the string contains "\"\. + + input string. + returns The parsed string value without the "\"\ + + + + A method that parses the text in a formula passed in. + + The text formula to be parsed. + A string holding a parsed representation of the formula. + + + + A method that parses and computes the string formula passed in. + + The text formula to be parsed and computed. + A string holding the computed value. + + + + Below method used to find the parsed formula contains external workbook reference or not. + + Parsed string + true, when its contains external referenceworkbook.Else returns false. + + + + Below method has been used to find the external workbook Token. + + Parsed string. + true, if the string contain external workbook sheet Token.Else returns false. + + + + Accepts an unparsed formula string and replaces any sheet references with corresponding tokens. + + The unparsed formula string. + + This is an advanced method that lets you replace sheet names with corresponding tokens. You may have need of + this method if you are adding your own functions to the function library. + + + + + Tokenizes all library references. + + + Accepts a string such as Sin(A1+A2) and tokenizes it into + bqSIN[A1A2a]b which serves as input to ComputedValue. + + Formula to be tokenized. + + + + A method that adds a function to the function library. + + The name of the function to be added. + The function to be added. + True if successfully added, otherwise False. + + LibraryFunction is a delegate that defines the signature of functions that + you can add to the function library. + + public delegate string LibraryFunction(string args); + + + + + + A method that removes a function from the function library. + + The name of the function to be removed. + True if successfully removed, otherwise False. + + + + Creates and initially loads the function library with the supported functions. + + + + + CreateSheetFamilyID is a method to create familyID for a sheet. + + Sheet family ID. + + Essential Calculate supports multisheet references within a family of ICalcData objects. To use + this functionality, you use this method to get a unique identifier for + the family. Then in the RegisterGridAsSheet method that you call to add ICalcData objects + to this family, you pass this unique identifier to mark the ICalcData objects as belonging + to this family. You can only cross reference ICalcData objects within the same family. + + + + + RegisterGridAsSheet is a method that registers an ICalcData object so it can be referenced in a formula from another ICalcData object. + + The reference name used to refer to this ICalcData object from formulas in other ICalcData objects. + + The ICalcData from the ICalcData object being registered. + + /// An integer previously created with a call + to CalcEngine.CreateSheetFamilyID. This number is used to identify + the ICalcData objects as belonging to a particular family of ICalcData objects. You can only reference + ICalcData objects from within the same family. + + + Essential Calculate supports multisheet references with its formulas. For example, if you + have two ICalcData objects, then you can reference cells from the first ICalcData object + in the second ICalcData object. For this to work, both ICalcData objects need to be registered using this method. + The syntax for using a sheet reference as part of a formula is to prefix a cell reference + with the sheet reference name followed by an exclamation point. + The formula "= sheet1!A1 + sheet2!C3" would add the value is cell A1 for + the ICalcData object whose reference name is sheet1 to the value from cell C3 in the ICalcData object + whose reference name is sheet2. + + Use this code to use cross sheet references: + + //Register three ICalcData objects so cell can be referenced across ICalcData objects: + int sheetfamilyID = CalcEngine.CreateSheetFamilyID(); + myCalcEngine.RegisterGridAsSheet("summary", calcData1, sheetfamilyID); + myCalcEngine.RegisterGridAsSheet("income", calcData2, sheetfamilyID); + myCalcEngine.RegisterGridAsSheet("expenses", calcData3, sheetfamilyID); + .... + //Sample formula usage for cells in calcData1, the 'summary' data source. + //This code sums ups some cells from calcData3, the 'expenses' data source + //and calcData2, the 'income' data source. + //Sum the range B2:B8 from expenses: + string sumExpenses = "= Sum(expenses!B2:expenses!B8)"; + //Sum the range B2:B4 from income: + string sumIncome = "= Sum(income!B2:income!B4)"; + + + 'Register three ICalcData objects so cell can be referenced across ICalcData objects: + Dim sheetfamilyID As Integer = CalcEngine.CreateSheetFamilyID(); + myCalcEngine.RegisterGridAsSheet("summary", calcData1, sheetfamilyID) + myCalcEngine.RegisterGridAsSheet("income", calcData2, sheetfamilyID) + myCalcEngine.RegisterGridAsSheet("expenses", calcData3, sheetfamilyID) + .... + 'Sample formula usage for cells in calcData1, the 'summary' data source. + 'This code sums ups some cells from calcData3, the 'expenses' data source + 'and calcData2, the 'income' data source. + 'Sum the range B2:B8 from expenses: + Dim sumExpenses As String = "= Sum(expenses!B2:expenses!B8)" + 'Sum the range B2:B4 from income: + Dim sumIncome As String = "= Sum(income!B2:income!B4)" + + + + + + Unregisters a grid so it can no longer be referenced in a formula from another grid. + + The reference name used to refer to this grid from formulas in other grids. + + The grid model. + + + + Change the sheet name of with the given name. + + Name of the sheet. + The ICalcData object. + + + + Triggers a calculation for any value depending upon the given cell. + + The cell. + + + + Returns the GridSheetFamilyItem for the specified model. If there was no item registered for + the model, a new item is created and cached. + + The grid model. + The GridSheetFamilyItem for the specified model. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Return the value of arraybounds as boolean + + current cell + height + width + firstrowindex + firstcolumnindex + lastrowindex + lastcolumnindex + + + + + A method to retrieve the row index from a cell reference. + + String holding a cell reference such as C21 or AB11. + An integer with the corresponding row number. + + + + A method that gets the column index from a cell reference passed in. + + String holding a cell reference such as C21 or AB11. + An integer with the corresponding column number. + + + + Determines whether the arg is a valid cell name. + + Cell name. + True is the arg is a valid cell name, false otherwise. + + + + To check whether the row index can be obtained from the arguments + + + + + A method to split the arguments using argument seperator. + + arguments to split. + argument seperator used to split. + A string array. + + + + Removes outer quote marks from a string with no inner quote marks. + + The string with possible outer quote marks. + The string with any outer quote marks removed. + This is a utility method that removes outer quotes on a string. + + + + Returns an array of argument strings from a single string where the arguments are delimited by . + + Contains the argument list. + A string array of arguments. + This method properly preserves any quoted strings that contain the character. + + + + Tests whether a string is NULL or empty. + + String to be tested. + True is passed in string is null or empty, otherwise False. + + + + Given a string, it returns a string that is passed through the FormulaParsing event + to allow any listener to modify it. + + A string that is to be potentially parsed. + + + + Accepts a possible parsed formula and returns the calculated value + without quotes. + + The argument to be adjusted. + + This method is useful in custom functions if you want to allow + your custom functions to handle parsed formulas as arguments. In + this case, calling this method at the beginning of your custom function + will allow you custom function to work only with computed values, and not + have to handle parsed formulas directly. + + + + + Call this method to clear whether an exception was raised during the computation of a library function. + + + + + Returns the value of specified cell in a Grid. + + Cell address + If true, compute the formula and returns calculated result. + Else, simply returns the value of the cell. + value of the cell + + + + Conditionally gets either the formula value or the cell + value depending upon whether the requested cell is a FormulaCell. + + Row index of the requested cell. + Column index of the requested cell. + String holding either the cell value or the computed formula value. + + + + Computes the exact date value when the input string is based on time span. + + value to be converted into date. + computed date for the time. + returns true if the value can be converted to date time. + + + + Conditionally gets either the formula value or the cell + value depending upon whether the requested cell is a FormulaCell. + + The ICalcData object holding the requested cell. + Row index of the requested cell. + Column index of the requested cell. + String holding either the cell value or the computed formula value. + + + + Returns the value of specified cell in a Grid. + + The ICalcData object holding the requested cell. + Row index of the requested cell. + Column index of the requested cell. + If true, compute the formula and returns calculated result. + Else, simply returns the value of the cell + the value of the cell. + + + + A Virtual method to compute the value based on the argument passed in. + + + This method takes the argument and checks whether it is a + parsed formula, a raw number, or a cell reference like A21. + The return value is a string that holds the computed value of + the passed in argument. + + A parsed formula, raw number, or cell reference. + A string with the computed number in it. + + + + A method that retrieves a string array of cells from the range passed in. + + + Converts arguments in these forms to a string array of individual cells: + A1,A2,B4,C1,...,D8 + A1:A5 + A1:C5 + + String containing a cell range. + String array of cells. + + + + A method that retrieves a string array of cells from the range passed in. + + + Converts arguments in these forms to a string array of individual cells: + A1,A2,B4,C1,...,D8 + A1:A5 + A1:C5 + + String containing a cell range. + default value is true. + String array of cells if findCellsFromRange is true.otherwise return cell reference. + + + + This method recalculates any formula cells in the specified range. + + The calculations for non-visible formula cells are performed the next time + cell are actually displayed. If you want the calculation performed immediately + on cells (visible or not), call the two argument overload of RecalculateRange, + passing the forceCalculations argument as True. + GridRangInfo object that specifies the cells to be recalculated. + ICalcData object that holds the data to be recalculated. + + + + An overridden method to display information on the cell currently being calculated. + + String with information on the cell currently being calculated. + + + + Conditionally gets either the formula value or the cell + value depending upon whether the requested cell is a FormulaCell. + + The alphanumeric cell label, like A1, or EE14. + String holding either the cell value or the computed formula value. + + + + Conditionally gets either the formula value or the cell + value depending upon whether the requested cell is a FormulaCell. + + Row index of the requested cell. + Column index of the requested cell. + String holding either the cell value or the computed formula value. + + + + Evaluates a parsed formula. + + A string holding a valid parsed formula. + The computed value of the formula. + The string passed into this function must be previously parsed + using ParseFormula. + + + + Compute the NestedIF formulas using the old code structure of CalcEngine. + + formula to execute / compute + + + + Compute the NestedIF formulas using new parse and compute technique. + + formula to execute / compute + + + + This method is used to retrieve the exact results from a cell reference based on the cell formula. + + This parameter represents the Parameter of IF formulas it can be either logical true or logical false. + This parameter represents the result of the IF formulas parameter. + Returns zero if the cell reference does not have any formula; otherwise, it returns the value of the formula in the cell reference. + + + + A method that computes a parsed formula. + + The parsed formula to be computed. + A string holding the computed value. + + + + This method retrieves the value in the requested cell reference using fresh computations + for any cells that affect the value of the requested cell. + + A cell reference like: Sheet5!B14 + A freshly computed value for the cell. + + + + PullUpdatedValue is a method used to recompute the cells that are referred to compute the requested value. + + Integer identifying the ICalcData object. + The row in the ICalcData object. + The column in the ICalcData object. + + + + A method that increases the calculation level of the CalcEngine. + + Every formula has a calculation ID level associated with it. Every time + a formula is retrieved, its calculation ID level is compared with the CalcEngine + ID level. If they do not agree, the formula is recomputed. Calling UpdateCalcID + will force any formula to be recomputed the next time it is retrieved. + + + + + Refresh is a method that recalculates any cell that depends upon the passed in cell. + + A cell such as A21 or EE31. + + + + Returns the amount received at maturity for a fully invested security. + + Number and the number of digits + Received amount + + + + Counts the nonblank cells in a field (column) of records in a list or database that match conditions that you specify. + + Number and the number of digits + Received amount + + + + Averages the values in a field (column) of records in a list or database that match conditions you specify. + + Number and the number of digits + Received amount + + + + Extracts a single value from a column of a list or database that matches conditions that you specify. + + Number and the number of digits + Received amount + + + + Returns the largest number in a field (column) of records in a list or database that matches conditions you that specify. + + Number and the number of digits + Received amount + + + + Returns the smallest number in a field (column) of records in a list or database that matches conditions that you specify. + + Number and the number of digits + Received amount + + + + Returns the smallest number in a field (column) of records in a list or database that matches conditions that you specify. + + Number and the number of digits + Received amount + + + + Estimates the variance of a population based on a sample by using the numbers in a field (column) of records in a list or database that match conditions that you specify. + + Number and the number of digits + Received amount + + + + Calculates the variance of a population based on the entire population by using the numbers in a field (column) of records in a list or database that match conditions that you specify. + + Number and the number of digits + Received amount + + + + Estimates the standard deviation of a population based on a sample by using the numbers in a field (column) of records in a list or database that match conditions that you specify. + + Number and the number of digits + Received amount + + + + Calculates the standard deviation of a population based on the entire population by using the numbers in a field (column) of records in a list or database that match conditions that you specify. + + Number and the number of digits + Received amount + + + + Adds the numbers in a field (column) of records in a list or database that match conditions that you specify + + Number and the number of digits + Received amount + + + + Used to get the data from arguments + + Arguments + + + + + This field is enable when the criteria is double. + + + + + Returns the archyperbolic cosecant of an angle. + + A cell reference or a cell or a number + A string containing the archyperbolic cosecant of an angle + + + + Returns the full product of two 32-bit numbers. + + The two 32 bit numbers. + A string containing the product of two 32 bit numbers. + + + + Calculates the quotient of two 64-bit signed integers and also returns the remainder in an output parameter. + + + returns the quotient of two 64-bit signed integers. + + + + Returns the remainder resulting from the division of a specified number by another specified number. + + contains a divisor and dividend + Returns the remainder. + + + + replaces part of a text string, based on the number of characters, with a different text string + + Text in which is want to replace, The position of the character in old_text., The number of characters in old_text + returns replaced text + + + + Returns the row index of the passed in cell reference. + + Contains zero or one argument. If no argument is passed, returns the row index of the + location of this Row function cell, otherwise returns the row index of the passed in cell reference. + The row index. + + This method doesn't return an array of row numbers as the array formula entry is not supported in engine. It is another usecase of this library function. + This method is deprecated. Please use the instead. + + + + + Returns the m parameter of the exponential curve y = b * m^x that best fits the given points. Only the first two Excel parameters are used. + + Y_range, x_range. + returns m parameter. + + + + Returns the b value from the exponential curve y = b * m^x. + + Y_range, x_range. + returns calculated b value. + + + + Returns the most recent points from an array (the points with the highest index values). + For functions with a decay factor, the weight on the last element in the array is the highest. + In many applications this corresponds with the assumption that the last element in the array represents the most recent data point. + + Array from which the data points will be selected. + The number of data points to be returned. + + + + + Returns the mean of an array. + + Array of data for which we are calculating the mean. For time series, the last element (index = n-1), is the most recent. + In most applications, the decay factor is between 0 and 1. Weigth on the last element in array is 1.0, the 2nd to last element d, 3rd to last d^2, ... + Window length. Method uses the most recent n points, n = length. + + + + Returns the weighted averages of the values in valueArray using the corresponding weights in weightArray. + + array of values for which we are computing the weighted average + array of weights used in computing the weighted average + + + + Returns the CDF of the uniform distribution. + + Value at which the distribution is evaluated. + Minimum value of the distribution. + Maximum value of the distribution. + + + + Returns the half-life of a geometric series of length n, who's first element is 1. + For decay factor d, 1 + d + d^2 + ... + d^(h-1) = 0.5 * [1 + d + d^2 + ... + d^(n-1)] + + Decay factor Typically between -1 adn +1. + Number of elements in the geometric series, must be positive. + + + + + Returns the sum of a geometric series of length n, who's first element is 1. + For decay factor d, S = 1 + d + d^2 + ... + d^(n-1) + + Decay factor Typically between -1 adn +1. + Number of elements in the geometric series, must be positive. + + + + + Returns the sum of an infinite geometric series who's first element is 1. + For decay factor d, S = 1 + d + d^2 + ... + + Decay factor. Typically between -1 adn +1. + + + + + Returns the sample covariance between two arrays. + Arrays should be of equal length, and contain more than one element. + + + + In most applications, the decay factor is between 0 and 1. Weigth on the last element in arrays is 1.0, the 2nd to last element d, 3rd to last d^2, ... + + + + Recalculates every cell that depends upon any cell in the passed-in range. + + For example, if range is RangeInfo(1,1,2,2), and cells (5,6) and + (12,17) hold formulas that reference the cells in the range, then cells (5,6) + and (12,17) will be re-computed as the result of this call. + RangeInfo object to be refreshed. + + + + Clears any variable names registered with the CalcEngine. + + + + + Registers a list of variable names so you can use it within formulas. + + List of names. + + + + Swaps variable names for tokens. + + The formula holding variable names. + The formula with tokens. + + + + Return the value of besseli1 + + value + + + + + Return the value of the besselk1 + + value + + + + + Return the value of besselk0 + + value + + + + + A method to get submatrix for matrix function used internally. + + double Array - Matrix + Matix rows + Columns + Matrix + + + + Return the value of between strings + + source string + start + end + + + + + Gets the text of any formula at the given row and column of the ICalcData object. + + The ICalcData object. + The one-based row in the grd object. + The one-based col in the grd object. + String containing the text of the formula. + If the data item at row and column is not a formula, the + return value is an empty string. + + + + Retrieves the current CalcEngine calculation level ID. + + Current calculation level ID. + + + + A method to reset the cached ICalcData object IDs. + + + + + Resets the internal sheet token marker to 0. + + + When RegisterGridAsSheet is called to add a ICalcData object to a CalcEngine, + this newly added sheet is associated with an integer used in tokenizing formulas. + This sheetID integer is required in the PullUpdatedValue method to specify the ICalcData + object being accessed. The GetSheetID method allows you to retrieve a sheetID given + an ICalcData object. This internal sheet token marker is a static member of CalcEngine, + and is incremented each time a new ICalcData object is registered with the CalcEngine + using RegisterGridAsSheet. + + + + + Return the value of HandleIteration + + value + formula + + + + + Adds a named range to the NamedRanges collection. + + The name of the range to be added. + The range to be added. + True if successfully added, otherwise False. + + The range should be a string such as A4:C8. + + + + + Removes a range from the NamedRanges collection. + + The name of the range to be removed. + True if successfully removed, otherwise False. + + + + Replaces NamedRanges with their values. + + + Accepts a string such as Sin(SumRange) and tokenizes it into + bqSIN[A1A4a]b which serves as input to ComputedValue. + + argList containing named ranges. + + + + Get the cell Range for table NameRange + + Formula or NamedRange + cell range string + + + + Get the first row Index of Cell Range + + Cell Range to find index + get the top row index + + + + This method is used to check the given text is Namedrange or not. + + Parsed string. + returns the CellRange value if the parsed text is NamedRange + + + + Below method used to intersect the NamedRanges when the parsed formula contains space. + + A string holding a valid parsed formula. + The intersected NamedRanges value. + If the namerange intersects, returns true, else false. + + + + Find the next table formula or table Range end index i.e last index of '[' + + formula to find index + location of start index to search the char '[' + locatio of end index + + + + Gets the weekend type + + + + + Gets or sets whether dates can be used as operands in calculations. The default value is false. + + + + + Gets / sets whether the engine throws an exception when + parsing fails with an unknown function error. + + + + + The List holds the formats of a Chinese Language. + + + + + Gets or sets whether lookup tables used in the VLookUp and HLookUp functions are cached. + + + Depending upon your use case, caching look up tables can greatly speed up calculations involving HLookUp + and VLookUp. If you make multiple calls to these functions passing in the same look up tables, and if these + look up tables are relatively static (don't dynamically change as the look ups are taking place), then caching + these tables will likely improve performance. + + + + + Occurs whenever a string needs to be tested to determine whether it should be treated as a formula string and parsed, + or be treated as a non-formula string. This event allows for preprocessing the unparsed formula. + + This event may be raised more than once in the processing of a string into a formula. + + + + + Occurs whenever an unknown function is encountered during the parsing of a formula. + + This event may be raised more than once in the parsing of a formula. + + + + + Occurs whenever an UpdateNamedRange function is encountered during the parsing of a formula. + + This event may be raised more than once in the parsing of a formula. + + + + + Occurs when the formula computes the values. + + This event may be raised more than once in the computation of a formula. + + + + + Occurs whenever an ExternalFormula function is encountered during the parsing of a formula. + + This event may be raised more than once in the parsing of a formula. + + + + + Occurs whenever an ExternalFormula function is encountered during the parsing of a formula. + + This event may be raised more than once in the parsing of a formula. + + + + + Occurs whenever an ExternalFormula function is encountered during the parsing of a formula. + + This event may be raised more than once in the parsing of a formula. + + + + + Gets of sets whether the CalcEngine treats nonempty strings as zeros when they are + encountered during calculations. + + + The default value is true meaning that if a nonempty string is encountered during an arithmetic operation, it will be treated as zero. + + + + + This property is used to return the cell ranges for print area calculation. + + + + + Specifies the maximum number of recursive calls that can be used to compute a cellvalue. + + This property comes into play when you have a calculated formula cell that depends on + another calculated formula that depends on another calculated formula and so on. If the number of + 'depends on another formula' exceeds MaximumRecursiveCalls, you will see a Too Complex message + displayed in the cell. The default value is 100, but you can set it higher or lower depending upon + your expected needs. The purpose of the limit is to avoid a circular reference locking up your + application. + + + + + Indicates whether formulas are immediately calculated as dependent cells are changed. + + Use this property to suspend calculations while a series of changes + are made to dependent cells either by the user or programmatically. When the changes are + complete, set this property to False, and then call Engine.RecalculateRange to recalculate + the affected range. See the sample in GridCellFormulaModel.CalculatingSuspended. + + + + + A read-only property that gets a collection holding the current library functions. + + + This property gives you direct access to all library functions. + The function name serves as the hash key and the function delegate + serves as the hash value. + The function name should contain only letters, digits or an underscore. + You should use the method to add functions + to this collection. Do not use the Add method inherited from Hashtable. + The reason is that the hash key needs to be strictly upper case even though + formula syntax is case insensitive with respect to functions names. + Using the AddFunction method makes sure the hash key is properly set. + + + + + A property that gets/sets whether strings concatenated using the '&' operator should be + returned inside double quote marks. + + + + + A property that is used to identify whether the exception thrown or not while calculating the value. + + + + + Gets any Exception raised during the computation of a library function + provided RethrowLibraryComputationExceptions is set true. + + + Use the method to set this property + to null to indicate that there is no pending library exception within the engine. + + + + + Gets / sets whether the engine Rethrows any exception + raised during the computation of a library function. + + The default value is false. + + + + A property that gets or sets the calculations of the computations to mimic the computations of Excel. + + + + + Gets or sets the maximum calculation stack depth. + + + The default is 50. This is the number of recursive calls that can be made during calculations. + + + + Gets or sets a string array that hold the reserved strings + that will be used for the OR, AND, XOR, IF, THEN, ELSE and NOT logical operators. + + Here is the code that you can use to define this string array. This code + shows the default strings that are used. Note that the string must include a leading + and trailing blank, and must be lower case. In formulas that use these operators, + the formulas themselves are case agnostic. + + engine.ReservedWordOperators = new string[] + { + " or ", //0 + " and ", //1 + " xor ", //2 + " if ", //3 + " then ", //4 + " else ", //5 + " not " //6 + }; + + + + + + A static property that gets/sets character by which string starts with, can be treated as formula. + + + + + Enables / disables using row = 0 in formulas to represent the current row. + + + When this property is set True, entering zero as a row in a formula is + interpreted to be the current row. Using the current row notation allows + you to sort a column in the grid and maintain the relative formula. + After sorting, you do have to call engine.RecalculateRange to allow the + relative formulas to reset themselves. + + + + + Below property is used to find the active function name. + + + + + Gets the cell that is being calculated by the Engine. + + You can use this properly within your custom functions to + identify the item in the ICalcData object being computed. + + + + + Gets or sets whether IF function calculations should specifically avoid + computing the non-used alternative. + + + The default value is false for code legacy consistency. When AllowShortCircuitIFs + is set true, only the necessary alternative of an IF function is computed. To support + this behavior, a change in how nested IF function calculations are done is necessary. + The default way of calculating nested functions is inside-out, with the inner most + functions being computed to a value before the next outer function is evaluated. To + support short circuiting IF functions, nested IF functions need to be computed from + the outside-in to know what alternative needs to be evaluated. This outside-in calculation + pattern only applies to IF functions, and only when AllowShortCircuitIFs is true. + + + + + Gets or sets whether FormulaInfo.calcID is tested before + computing a formula during a call to + + When a value changes, then the Refresh method is called on any other + formula that had a dependency on the changed value. During the Refresh call, + the default behavior is to recompute all formulas (AlwaysComputeDuringRefresh = true). + If you are using to strictly control when new values + should be used, then you should set this property to false. For example, if you are + only using exclusively to retrieve computed values, + then setting AlwaysComputeDuringRefresh = false + may be more efficient as it will only recompute the value once during the calculations. + + + + A property that gets/sets whether Formula returns its FormulaValue instead of repeated calculation + + Use this property to return the FormulaValue when a cell contain more depency cells. + + + + + Gets or sets whether Invalid Formula is returned when the calculation stack is not fully exhausted during a calculation. + + + If you enter a formula like "=(1+2)(9+8)", Essential Calculate will compute this formula as 17, ignoring the dangling + 3 value on its calculation stack. If you want this situation flagged as a Invalid Formula, set this CheckDanglingStack property + to true. The default value is false for backward compatibility purposes. + + + + + Used with row ranges to possibly provide the upperlimit on the number of columns in the ICalcData object. + + + Essential Calculate supports column ranges of the form 2:4 as in =SUM(2:4) to represent all cells in rows + 2, 3 and 4 from a ICalcData object. To get a value for the number of columns, the CalcEngine first checks to + see if the ICalcData object supports the ISheetData interface. If this interface is supported, the column + count used to determine the range is obtained through this interface. If the ICalcData object does not support + ISupportColumnCount, then the value of ColumnMaxCount is used provided ColumnMaxCount > 0. If not, the fixed value 50 + is used. + + + + + Gets or sets whether the IF function implementation is called when is true. + The default behavior is to not call the IF Function code in the library, but instead, work directly with the + IF clauses. + + + + + Gets or sets whether must be called on every cells whenever + the is triggered. + The default value is false. + + + When a value changes, then the Refresh method is called recursively every time + the grid_ValuChanged is called. Setting this ForceRefreshCall to false will call + Refresh for only those cells where the calculated value is actually modified. + + + + + A read-only property that gets the collection of FormulaInfo objects being used by the CalcEngine. + + + + + Gets or sets whether leading zeros are preserved in a call to . + + + If the value of arg is "0123" or a cell reference like A1 where A1 holds 0123, then the default behavior + is for GetValueFromArg(arg) to return 123, stripping away any leading zeros. If you want calls to + GetValueFromArg to preserve the leading zeros, then set GetValueFromArgPreserveLeadingZeros to true. + + + + + Gets or sets the maximum number of iterative calls that can be made on a cell. + will be set to true when you set IterationMaxCount to any value other than zero. + + + Essential Calculate supports an iterative process to solve equations of the + form x=f(x). Here you should think of x as being a cell reference like B2 for example. Setting + IterationMaxCount to some value other than zero allows the engine to iteratively compute + f(x) using the previous iteration's calculated value for x. The initial value is either 0 + or the last saved value for a formula in that cell (if the calculation has been performed previously). + The iterations continue until either the iteration count exceeds IterationMaxCount, or two + successive iteration return values have a relative difference less than IterationMaxTolerance. + For example, to have an initial value of 1, you can enter a formula =1 into the cell, and then + enter the self referencing formula into the same cell. This will make the iterative calculations start + at 1 instead of 0. + must be set to true in order for the Iterative Calculation + support to function For this reason, ThrowCircularException will be automatically set to true + when you set a non-zero value to IterationMaxCount. + The default value is 0 indicating that iterative calculation support is turned off. + + + + + Gets or sets the success tolerance used by the CalcEngine's iterative calculation support. + + + Essential Calculate supports an iterative process to solve equations of the + form x=f(x). Here you should think of x as being a cell reference like B2 for example. Setting + IterationMaxCount to some value other than zero allows the engine to iteratively compute + f(x) using the previous iteration's calculated value for x. The initial value is either 0 + or the last saved value for a formula in that cell (if the calculation has been performed previously). + The iterations continue until either the iteration count exceeds IterationMaxCount, or two + successive iteration return values have a relative difference less than IterationMaxTolerance. + The default value is 0.001. + + + + + Gets or sets a value indicating whether editing a cell’s value will update dependent cells.  + + The default value is False. + + If enabled, editing a cell's value will not update dependent cells based on the edited value. + + + + + Used with column ranges to possibly provide the upperlimit on the number of rows in the ICalcData object. + + + Essential Calculate supports column ranges of the form A:D as in =SUM(A:D) to represent all cells in columns + A, B, C and D from a ICalcData object. To get a value for the number of rows, the CalcEngine first checks to + see if the ICalcData object supports the ISheetData interface. If this interface is supported, the row + count used to determine the range is obtained through this interface. If the ICalcData object does not support + ISupportRowCount, then the value of RowMaxCount is used provided RowMaxCount > 0. If not, the fixed value 50 + is used. + + + + + Gets or sets whether OR, AND, XOR and IF THEN ELSE logical + operators are supported. + + + The default value is false for backward compatibility. + + + + + Gets or sets whether ranges can be used as binary operands. + + + If this property is true, Essential Calculate recognizes ranges such + as B1:B5 and A4:E4 as operands of binary operators. So, if you + set the formula = A1:A5 + B1:B5 into cell C4, the calculation + will retrieve the values in A4 and B4 to be used in place of the + corresponding ranges A1:A5 and B1:B5. Note that such ranges must + either have one column wide or one row tall. This fact is used to + make the corresponding lookup determined by where the host cell that holds + the formula is located. This host cell + must either be in the same row or column as some cell in range. + + The default value is false. + + + + + Gets or sets whether sheet range notation is supported. + + + Excel supports sheet range notation such as + = SUM( sheet1:sheet3!A1 ) + Sum( sheet1:sheet3!B1:B4 ). + For backward compatibility with earlier versions that did + not support this sheet range notation, you can set + this SupportsSheetRanges false. + + This implementation replaces a sheet range (sheet1:sheet3!B1:B4) with + list of ranges (sheet1!B1:B4,sheet2!B1:B4,sheet3!B1:B4). + + + + + Gets / sets whether the CalcQuick should throw an exception when a circular calculation is encountered. + + If this property is True, the CalcQuick will throw an exception + when it detects a circular calculation. If ThrowCircularException is False, then + no exception is thrown and the calculation will loop recursively until Engine.MaximumRecursiveCalls + is exceeded. + + + + + A property that gets / sets whether the CalcEngine should track dependencies. + + If you are using the CalEngine in a manner where you always + call PullUpdatedValue to access the computations, then setting UseDependencies + to False will make things more efficient as any requested computed value will + be fully computed every time it is retrieved. In this situation, the CalcEngine + does not need to track dependencies. + + + + + For internal use. + + + + + Gets or sets a value indicating whether [preserve formula]. + + true if [preserve formula]; otherwise, false. + + + + A static property that gets/sets character to be recognized by the parsing code as the delimiter for arguments in a named formula's argument list + + + + + A static property that gets/sets the character to be recognized by the parsing engine as decimal separator for numbers. + + + + + A static property that gets/sets the character to be recognized by the parsing engine as decimal separator for date. + + + + + A property that gets/sets list of # error strings recognized by Excel. + + + + + A read-only property that gets a mapping between a cell and a list of formula cells that depend on it. + + + The key is the given cell, and the value is a ArrayList of cells containing + formulas that reference this cell. + + Here is code that will list formula cells affected by changing the given cell. + + public void DisplayAllAffectedCells() + { + CalcEngine engine = ((GridFormulaCellModel)this.gridControl1.CellModels["FormulaCell"]).Engine; + foreach(object o in engine.DependentCells.Keys) + { + string s1 = o as string; + Console.Write(s1 + " affects "); + ArrayList ht = (ArrayList) engine.DependentCells[s1]; + foreach(object o1 in ht) + { + string s2 = o1 as string; + Console.Write(s2 + " "); + } + Console.WriteLine(""); + } + } + + + Public Sub DisplayAllAffectedCells() + Dim engine As GridCalcEngine = CType(Me.gridControl1.CellModels("FormulaCell"), GridFormulaCellModel).Engine + Dim o As Object + For Each o In engine.DependentCells.Keys + Dim s1 As String = CStr(o) + Console.Write((s1 + " affects ")) + Dim ht As ArrayList = CType(engine.DependentCells(s1), ArrayList) + Dim o1 As Object + For Each o1 In ht + Dim s2 As String = CStr(o1) + Console.Write((s2 + " ")) + Next o1 + Console.WriteLine("") + Next o + End Sub 'DisplayAllAffectedCells + + + + + + A read-only property that gets a mapping between a formula cell and a list of cells upon which it depends. + + + The key is the given formula cell and the value is a Hashtable of cells that this + formula cell references. + + Here is code that will lists formula cells affected by changing a given cell: + + public void DisplayAllFormulaDependencies() + { + GridCalcEngine engine = ((GridFormulaCellModel)this.gridControl1.CellModels["FormulaCell"]).Engine; + foreach(object o in engine.DependentFormulaCells.Keys) + { + string s1 = o as string; + Console.Write(s1 + " depends upon "); + Hashtable ht = (Hashtable) engine.DependentFormulaCells[s1]; + foreach(object o1 in ht.Keys) + { + string s2 = o1 as string; + Console.Write(s2 + " "); + } + Console.WriteLine(""); + } + } + + + Public Sub DisplayAllFormulaDependencies() + Dim engine As GridCalcEngine = CType(Me.gridControl1.CellModels("FormulaCell"), GridFormulaCellModel).Engine + + Dim o As Object + For Each o In engine.DependentFormulaCells.Keys + Dim s1 As String = CStr(o) + Console.Write((s1 + " depends upon ")) + Dim ht As Hashtable = CType(engine.DependentFormulaCells(s1), Hashtable) + Dim o1 As Object + For Each o1 In ht.Keys + Dim s2 As String = CStr(o1) + Console.Write((s2 + " ")) + Next o1 + Console.WriteLine("") + Next o + End Sub 'DisplayAllFormulaDependencies + + + + + + A property that gets/sets the current named ranges. + + + + + Delegate used to define functions that you add to the function library. + + Resultant value. + + + + Specifies the options for checking the formula error strings. + + + + + Formula contains null arguments. For Example:PI,RANDOM...etc + + + + + Formula contains range argument. For example:MEDIAN,...etc + + + + + Formula contains two text arguments with Number argument. For example:FIND,SEARCH...etc + + + + + Formula contains number and text arguments. For example:LEFT,RIGHT...etc + + + + + Formula contains number arguments only. For example:ABS,ROUND,ROUNDDOWN,LOG...etc + + + + + Formula contains text arguments only. For example:ARABIC,CLEAN...etc + + + + + Formula contains Date argument. For example:DISC,...etc + + + + + Compares 2 strings based on their length. + + 0, if both strings are equal; positive value if second string is greater; neagative value if first string is greater. + + + + An event handler that represents the method to handle the + event. + + The source of the event. + A that contains the event data. + + + + A class containing data for the ICalcData.ValueChanged event. + + + + + The constructor. + + One-based row index for the value. + One-based col index for the value. + the value at the specified row,col. + + + + A property that gets/sets One-base column index. + + + + + A property that gets/sets One-based row index. + + + + + A property that gets/sets the value. + + + + + Used for CalcEngineHelper + + + + + Returns a DateTime equivalent to the specified OLE Automation Date. + + An OLE Automation Date value. + An object that represents the same date and time as d. + + + + Converts the value of this instance to the equivalent OLE Automation date. + + + A double-precision floating-point number that contains an OLE Automation date equivalent to the value of this instance. + + + + Specifies options for caching look up tables in HLookUp and VLookUp functions. + + + + + No caching is done. + + + + + Tables will be cached only for VLookUp. + + + + + Tables will be cached only for HLookUp. + + + + + Tables will be cached for both VLookUp and HLookUp. + + + + + Tables will be optimized for searching for exact matches. Set this flag if you expect your searches to find exact matches. + + + + + RangeInfo represents a rectangle array of cells that may contain formulas, strings, or numbers + that may be referenced by other formulas. + + + + + Constructs a RangeInfo instance with the given top, left, bottom and right values. + + Top row index of this range. + Left column index of this range. + Bottom row index of this range. + Right column index of this range. + The range values must be one-based indexes. + + + + A method to retrieve a range based on the numeric arguments passed in. + + Top row index of this range. + Left column index of this range. + Bottom row index of this range. + Right column index of this range. + A RangeInfo object. + The range values must be one-based indexes. + + + + GetAlphaLabel is a method that retrieves a string value for the column whose numerical index is passed in. + + Number index such as 1, 5, 27. + Corresponding alphabets label like A, E, AA. + + + + A property that gets/sets the bottom row index of this range. + + + + + A property that gets/sets the left column index of this range. + + + + + A property that gets/sets the right row index of this range. + + + + + A property that gets/sets the top row index of this range. + + + + + ICalcData defines the minimal interface that a data object must support in order to use + this formula engine. + + + + + A method that gets the data value from the specified row and column. + + 1-based index specifying the row index of the requested value. + + 1-based index specifying the column index of the requested data. + The data value at the given row and column index. + + + + A method that sets the data value to the specified row and column. + + The value. + One-based index specifying the row index of the value. + One-based index specifying the column index of the value. + + + + A method that wires the ParentObject after the CalcEngine object is created or when a + RegisterGridAsSheet call is made. + + This method is a callback to the ParentObject so it can have a chance + to subscribe to any change events it may need to implement ValueChanged properly. + + + + + Event for value changed + + + + + Used in conjunction with . + + + Essential Calculate supports column ranges of the form A:D as in =SUM(A:D) to represent all cells in columns + A, B, C and D from a ICalcData object. To get a value for the number of rows, the CalcEngine first checks to + see if the ICalcData object supports the ISheetData interface. If this interface is supported, the row + count used to determine the range is obtained through this interface. If the ICalcData object does not support + ISheetData, then the value of is used provided RowMaxCount > 0. + and the index of first and last rows and columns + is used. + + + + + Get the idex of the first row in UsedRange + + index of first row + + + + get the index of the last row in UsedRange + + index of last row + + + + Gets the row count. + + Number of rows + + + + Gets the first column index. + + Index of first column + + + + Gets the last column index / column count. + + Index of last column + + + + Gets the column count. + + Number of columns + + + + Performs the calculation of LINEST formula. + + + + + Gets or sets the instance of . + + + + + Initialize the object for parsing operations. + + An instance of . + + + + + This method is used to split the range and logical value when the range contains logical value. + + Range with logical value(ex:\u0092C1:C3\"1,2\"m\u0092) + Spilt the range ex("C1:C3") + Split the logical value ex("\"1,2\"m") + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Denotes the different error types. + + + + + Denotes no error + + + + + Denotes missing right quote + + + + + Denotes mismatched parentheses + + + + + Denotes that it cannot compare different types + + + + + Denotes that it's a unknown operator + + + + + Denotes that it's not a valid formula + + + + + Denotes that exception has raised + + + + + This class encapsulates the support for computing filter values and expressions. + + + + + Initializes a new instance of the FilterHelper class. + + + + + Adds a filter expression. + + The name of filter expression. + A string holding a well-formed logical expression. + + + + Removes a filter expression. + + The name of the filter expression to be removed. + Returns true if the expression was successfully removed; otherwise, false. + + + + Clears all filter expressions. + + + + + Gets or sets value to indicate whether the expression should be treated in a case-sensitive manner. The default value is true. + + + + + Gets the number of filter expressions contained in this helper class. + + + + + Gets the particular filter expression in the order it was added. + + The index of desired filter expression. + The filter expression. + + + + This class encapsulates the information needed to define a filter. + + + + + Initializes a new instance of the FilterExpression class. + + + + + Initializes a new instance of the FilterExpression class with the field name of a PivotItem. + + Field name of the PivotItem. + + + + Initializes a new instance of the FilterExpression class with the field name, field header and expression of a PivotItem. + + Field name of the PivotItem. + Field header of the PivotItem. + Logical expression defining the filter. + + + + Initializes a new instance of the FilterExpression class with the field name, field header, expression and format of a PivotItem. + + Field name of the PivotItem. + Field header of the PivotItem. + Logical expression defining the filter. + Format of the filter expression. + + + + Initializes a new instance of the FilterExpression class with the field name and expression of a PivotItem. + + Field name of the PivotItem. + Logical expression defining the filter. + + + + Use this method to retrieve the computed value of this expression on an object. + + The object to be evaluated. + Used to provide the support for calculation. + Represents the boolean value. + The computed value. + + The first time this method is called, a delegate for the FilterExpression is created, and then this delegate + call is passed into the component. Subsequent calls to this method just result into the existing delegate call. + + + + + Used to calculate the value. + + + + + Gets or sets the field name of the PivotItem. + + + + + Gets or sets the format of the filter expression. + + + + + Gets or sets the field header. + + + + + Gets or sets the field caption. + + + + + Evaluates the given value. + + + + + Gets the last error that was logged during the compilation and calculation phase. + + + + + Gets a descriptive string for the last occurred error. + + + + + Gets or sets the name of this filter expression. + + + + + Gets or sets the well-formed logical expression that defines this filter expression. + + + + + Gets or sets other information related to filter expression. + + Filter expression information + + + + Gets or sets whether the expression should be treated in a case-sensitive manner. + + + + + Gets the compiled expression. + NOTE: + 1) The logical operators AND, OR, NOT must be sandwiched between blanks, and either all caps, no caps, or first cap only. + 2) To use column names as AND, OR, NOT, they must be included in [] bracket. + 3) For any other column name, the brackets are optional. + + The ItemSource. + if set to true [case sensitive]. + The formula. + The error. + Delegate. + + + + Gets the dynamic value. + + ItemSource object. + Property name of the object. + An object + + + + Gets the double value of the PivotItem. + + ItemSource object. + Property name of the object. + A double value. + + + + To check in the list of objects using binary search. + + Object to check. + Binary search list. + List of binary objects. + + + + Pass in a string containing a left or right part, and get an expression back. + + + + + Replaces strings in formulas with tokens so that the string remains immutable during parsing. + + The formula with quoted strings. + Error code if any. + A string that represents the formula with quoted strings replaced by tokens. + + + + Gets or sets a collection of property types associated with an expando object/dynamic object available in .NET Framework 4.0. + + + + + Gets or sets the list of separated items using list separator ','. + + + + + Gets the compiled expression. + NOTE: + 1) The logical operators AND, OR, NOT must be sandwiched between blanks, and either all caps, no caps, or first cap only. + 2) To use column names as AND, OR, NOT, they must be included in [] bracket. + 3) For any other column name, the brackets are optional. + + The ItemSource. + if set to true [case sensitive]. + The formula. + The error. + Delegate. + + + + Gets the dynamic value. + + ItemSource object. + Property name of the object. + An object + + + + Gets the double value. + + ItemSource object. + Property name of the object. + A double value. + + + + This method is used to check the list of objects greater than -1 using binary search. + + This parameter is used pass the objects to check. + Using this parameter we can add list of string. + List of binary objects greater than -1. + + + + Pass in a string containing left or right part, and get an expression back. + + + + + Replaces strings in formulas with tokens so that the string remains immutable during parsing. + + The formula with quoted strings. + Error code if any. + A string that represents the formula with quoted strings replaced by tokens. + + + + Gets or sets a collection of property types associated with an expando object/dynamic object available in .NET Framework 4.0. + + + + + This property is used to split the list of items using this special character ','. + + + + + Controls whether a summary calculation is to be displayed for all levels or only for the inner-most level. + + + + + Indicates to display the summary at all Pivot levels. + + + + + Indicates to display the summary at only the inner most Pivot level. + + + + + Enumerates the summary types available for calculations in the Pivot control. If you use the value "Custom" in a ComputationInfo object, then you are required to explicitly set the ComputationInfo.Summary value. + + + + + Computes the sum of double or integer values. + + + + + Computes the simple average of double or integer values. + + + + + Computes the maximum of double or integer values. + + + + + Computes the minimum of double or integer values. + + + + + Computes the standard deviation of double or integer values. + + + + + Computes the variance of double or integer values. + + + + + Computes the count of double or integer values. + + + + + Computes the sum of decimal values. + + + + + Computes the sum of integer values. + + + + + Specifies that you are using a custom SummaryBase object to define the calculation. + + + + + Displays the common value if all the values to be aggregated are the same, and displays a + if the values to be aggregated are not all the same. + + + + + Computes the sum of values. + + + + + Computes the average of values. + + + + + Computes the maximum of values. + + + + + Computes the minimum of values. + + + + + Computes the count of integer values. + + + + + Computes the standard deviation of values if data set contains a sample of the population. + + + + + Computes the standard deviation of values if data set contains a complete population. + + + + + Computes the variance of values if data set contains a sample of the population. + + + + + Computes the variance of values if data set contains a complete population. + + + + + Calculation type defines the view for a particular computational object (or value field). + + + + + Remove the custom calculations and restore to original values. + + + + + Displays a value cell as a percentage of grand total of all value cells of PivotEngine. + + + + + Displays all value cells in each column as a percentage of its corresponding column total. + + + + + Displays all value cells in each row as a percentage of its corresponding row total. + + + + + Displays a value cell as a percentage of parent column item values. + + + + + Displays a value cell as a percentage of parent row item values. + + + + + Displays a value cell as a percentage of BaseField (Parent Row/Column Total). + + + + + Displays a value cell as an index value based on PivotEngine generation. + + + + + Displays a calculation based on a well formed algebraic expression involving other calculations. + + + + + Displays values as a percentage of the value of the BaseItem in the BaseField. + + + + + Displays values as the difference from the value of the BaseItem in the BaseField. + + + + + Displays values as the percentage difference from the value of the BaseItem in the BaseField. + + + + + Displays the value of successive items in the BaseField as a running total. + + + + + Calculates the value of successive items in the BaseField that are displayed as a running total as a percentage. + + + + + Displays the rank of selected values in a specific field, listing the smallest item in the field as 1 and each larger value will have a higher rank value. + + + + + Displays the rank of selected values in a specific field, listing the largest item in the field as 1 and each smaller value will have a higher rank value. + + + + + Displays the subtotals based on the distinct values of BaseItem defined for calculation item. + + + + + Used to provide a list of display option. + + + + + Fully present in the PivotEngine but not seen in the display. + + + + + Fully present in the PivotEngine but visible only in the calculation region. + + + + + Fully present in the PivotEngine but visible only in the interior summary region. + + + + + Fully present in the PivotEngine but visible only in the GrandTotal region. + + + + + Fully present in the PivotEngine and completely available for display. + + + + + Use this interface to enable shortcut calculations to adjust a summary when an underlying + value changes. The idea is to avoid re-computing the summary from scratch. For example, if + your summary computes the total of a set of values, you can quickly adjust this computed + total when a value changes by subtracting the old value and adding the new value without + having to re-compute the total from scratch. Not all types of calculations lend themselves + to this shortcut behavior. + + + + + Adjusts the summary for a change in one of its underlying values. + + The new value of the changed field. + + + + Adjusts the summary for a change in one of its underlying values. + + The old value of the changed field. + + + + This class holds the information needed for the calculations that appear in a Pivot control. For each calculation seen, there is an associated + PivotComputationInfo object that is added to the PivotComputationInfo collection. + + + + + Performs certain manipulations with data using summary type. + + + + + Returns a object of the specified . + + The SummaryType. + A SummaryBase object. + + + + Converts to string + + Calculation name displayed in the PivotTable. + + + + Returns a sorted list of computation names based on the enumerations. + + A list of computation names. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Event denoting whether the property is changed. + + + + + Gets or sets whether this calculation column can be sorted when + RowPivotsOnly is true in the PivotEngine. + + + + + Gets or sets whether this calculation column can be filtered when + RowPivotsOnly is true in the PivotEngine. + + + + + Gets or sets whether this calculation column only displays the subtotals for top column + + + + + Gets or sets whether this calculation column should be hyperlinked when RowPivotsOnly is true in the PivotEngine. + + + + + Gets or sets the name of the property to be used in this calculation. + + + + + Gets or sets the title you want to see in the header for this item. + + + + + Gets or sets the title you want to see in the header for this item. + + + + + Gets or sets a description for this calculation. + + + + + Gets or sets whether the aggregation result should appear only for the innermost level. + + + + + This is used to specify a custom string in the PivotComputation column instead of the original cell value. + To use this, we must set SummaryType as DisplayIfDiscreteValuesEqual. + + + + + Gets or sets what needs displayed in the PivotTable if more than one calculation is included in the Pivot control. + + + + + Gets or sets value to enable/disable grouping for this PivotItem. Default value is true. + + + + + Gets or sets the object that is used to define this calculation. This value is automatically set + when you specify any non-custom value of . If you specify SummaryType.Custom, then you are required + to set Summary to be an instance of your custom SummaryBase derived object. + + + + + Gets or sets the SummaryType enumeration for this calculation. Setting it to any value other than "Custom" + will properly set the summary. + + + + + This is used to display or hide the computation values in PivotEngine based on the option provided. + + + + + Gets or sets the calculation type for this computation object. + + + + + Gets or sets the value of base field for calculations. + + + + + Gets or sets the value of base item for calculations. + + + + + Gets or sets a formula that defines the value as an algebraic expression of other computations where these + computations are referenced by their enclosed within square brackets. + + + For example, if the value of formula is "[AvgPrice]-[AvgCost]", then there should be two other computations whose names are + AvgPrice and AvgCost, and the value displayed for this computation should be the difference between those two values. + + + + + Used internally for formula calculation types. + + + + + Gets or sets the value of field type. + + + + + Gets or sets the format string used to format this calculation results in the Pivot control. Default format string is #.##. + + + + + Gets or sets the default value to be used when this summary calculation gets null value. + + + + + This is an abstract class that defines the necessary functionality to do PivotCalculations. + + + + + Use this method to combine a value from an object in the Pivot control data source with the accumulation values held in this instance. + + The value to be included in the computation. + + + + Resets all internal values so the calculations begins as new. + + + + + Returns the calculation value. + + The calculation value. + + + + Provides a new instance of this SummaryBase object. + + New instance of this SummaryBase. + + + + Use this method to combine another SummaryBase object with the accumulation values held in this instance. + + The other SummaryBase object. + + + + Gets or sets whether the Pivot control should display null value as blank instead of 0 (which is the default behavior). + + + + + Computes the count of double or integer values. + + + + + Converts data to string. + + string + + + + Combines different values into one. + + + + + Combines the summaries into one. + + SummaryBase + + + + Resets the value of the variables. + + + + + Obtains the count value. + + Count + + + + Gets the instance of the class. + + Total summary value + + + + Gets to adjust for the new value. + + Object + + + + Gets to adjust for the old value. + + Object + + + + This class is used to compute the minimum of double or integer values. + + + + + Converts the value to string. + + + + + Combines different values together. + + Object + + + + Combines the different summaries into one. + + SummaryBase + + + + Resets the value of the variables. + + + + + Obtains the minimum value. + + + + + Gets the instance of type DoubleMinSummary. + + DoubleMinSummary + + + + This class is used to compute the maximum of double or integer values. + + + + + Converts the value to string + + string + + + + Combines the different values together for maximum summary. + + + + + Combines the different summaries together. + + + + + Resets the value of the variables. + + + + + Obtains the maximum value. + + + + + Returns the instance of type DoubleMaxSummary. + + + + + This class is used to compute the standard deviation of double or integer values. + + + + + Converts data to string. + + + + + Combines the different values together. + + + + + Combines the different summaries together. + + + + + Resets the value of the variables. + + + + + Obtains the standard deviation value. + + + + + Returns the instance of type DoubleStDevSummary. + + + + + This class is used to compute the variance of double or integer values. + + + + + Converts data to string. + + + + + Combines different values together. + + + + + Combines the different summaries together. + + + + + Resets the value of the variables. + + + + + Obtains the variance value. + + + + + Returns the instance of type DoubleVarianceSummary. + + + + + This class is used to compute the average of double or integer values. + + + + + Converts data to string. + + + + + + Combines different values together. + + + + + + Combines different summaries into one. + + SummaryBase + + + + Resets the value of the variables. + + + + + Obtains the average value. + + Average value. + + + + Returns the instance of type DoubleAverageSummary. + + DoubleAverageSummary + + + + Gets to adjust for the new value. + + Object + + + + Gets to adjust for the old value. + + Object + + + + This class is used to compute the sum of double or integer values. + + + + + Returns the string for the concerned data. + + string + + + + Combines different values together. + + + + + + Combines different summaries into one. + + SummaryBase + + + + Resets the value of the variables. + + + + + Obtains the sum/total value. + + Sum/total value. + + + + Returns the instance of type DoubleTotalSummary. + + DoubleTotalSummary + + + + Gets to adjust for the new value. + + Object + + + + Gets to adjust for the old value. + + Object + + + + This class is used to compute the sum of integer values. + + + + + Converts to the string type. + + + + + + Combines different values together. + + Object + + + + Combines different Summary into one. + + SummaryBase + + + + Resets the value of the variables. + + + + + Obtains the sum/total value. + + Sum/total value. + + + + Returns the instance of type IntTotalSummary. + + + + + + Gets to adjust for the new value. + + Object + + + + Gets to adjust for the old value. + + Object + + + + This class is used to computes the sum of decimal values. + + + + + Converts the data to string. + + + + + + Combines the different values together. + + Object. + + + + Combines the summaries together. + + SummaryBase + + + + Resets the value of the variables. + + + + + Obtains the sum/total value. + + Sum/total value. + + + + Returns the instance of type DecimalTotalSummary. + + DecimalTotalSummary + + + + Gets to adjust for the new value. + + Object + + + + Gets to adjust for the old value. + + Object + + + + Displays the aggregated value in the PivotComputation column, if all the values are aggregated to be same + else the value in PadString property is displayed. + + + + + Displays if the discrete values are equal. + + + + + Combines the different values together. + + Object + + + + Resets the value for the variables. + + + + + Obtains the resultant value. + + + + + + Returns the instance of type DisplayIfDiscreteValuesEqual. + + + + + + Combines the different summaries into one. + + + + + + Returns the padded string + + + + + Displays the sum of values + + + + + Converts to the string type + + + + + + Combines different values together + + object + + + + Combines different Summary + + SummaryBase + + + + Resets the variable + + + + + Obtains the result + + + + + + Obtains the instance of Sum. + + Sum + + + + Displays the Average of values + + + + + Converts the data to string type + + + + + + Merges the values. + + + + + + Combines the different summaries into one. + + SummaryBase + + + + Resets the total and count. + + + + + Gets the result. + + result + + + + Gets the instance of the object. + + Average + + + + Displays the maximum value of given values + + + + + Converts the value to string type + + string + + + + Combines the different values together for maximum summary. + + + + + Combines the different summaries together. + + + + + Resets the value of the variables. + + + + + Obtains the maximum value. + + + + + Returns the instance of type Max. + + + + + Displays the minimum value of given values + + + + + Converts the value to string type + + string + + + + Combines the different values together for minimum summary. + + + + + Combines the different summaries together. + + + + + Resets the value of the variables. + + + + + Obtains the minimum value. + + + + + Returns the instance of type Min. + + + + + Displays the Variance of given values + + + + + Converts data to string. + + + + + Combines the different values together. + + + + + Combines the different summaries together. + + + + + Resets the value of the variables. + + + + + Obtains the variance of given value. + + + + + Returns the instance of type Variance. + + + + + Displays the VarianceP of given values + + + + + Converts data to string. + + + + + Combines the different values together. + + + + + Combines the different summaries together. + + + + + Resets the value of the variables. + + + + + Obtains the variance population of given value. + + + + + Returns the instance of type VarianceP. + + + + + Displays the standard deviation of given values + + + + + Converts data to string. + + + + + Combines the different values together. + + + + + Combines the different summaries together. + + + + + Resets the value of the variables. + + + + + Obtains the standard deviation value. + + + + + Returns the instance of type StDev. + + + + + Displays the standard deviation population of given values + + + + + Converts data to string. + + + + + Combines the different values together. + + + + + Combines the different summaries together. + + + + + Resets the value of the variables. + + + + + Obtains the standard deviation population value. + + + + + Returns the instance of type StDevP. + + + + + Event handler for the event. + + The PivotEngine raising the event. + The event arguments. + + + + Enumerates the possible Pivot cell types. + + + + + Cell holds a summary value. + + + + + Cell is a row/column header that holds an expander. + + + + + Cell is a row/column header that does not holds an expander. + + + + + Cell is the top left portion of the PivotTable. + + + + + Cell is a row/column header that marks a total row or column. + + + + + Cell is a header cell holding a calculation name. + + + + + Row header cell. + + + + + Column header cell. + + + + + Grand total cell. + + + + + Specifies the layout for the Pivot control. + + + + + Sub-totals will be shown after the details. + + + + + Sub-totals will be shown before the details. + + + + + Grid Layout will be like excel. + + + + + Information on what changes have occurred in the Pivot Schema. + + + + + No specific information available about the change. The entire engine should be populated to ensure the change is properly reflected. + + + + + Indicate the engine's property has changed. + + + + + Indicate that the engine should refresh because of a new row being added. + + + + + Indicate that the engine should re-populate based on selected calculation type. + + + + + Indicate that the engine should re-populate the headers based on field headers. + + + + + Enum holding the field types. + + + + + Gets whether the field is Property. + + + + + Gets whether the field is Expression. + + + + + Gets whether the field is Unbound. + + + + + This class encapsulates pivoting calculation support. To use it, first populate the and + collections to define the properties being pivoted. Then you populate the + collection to define the values you would like to see populated. + + + + + List that holds the sorted column indexes. + + + + + List that holds column indexes. + + + + + Value that indicates the maximum number of rows should be displayed. + + + + + Used to fill/re-fill the ItemProperties with newly added/updated fields. + + + + + Adds a to the Pivot Schema of this Engine. + + The filter expression. + + + + Inserts a to the Pivot Schema for this Engine at a specified index. + + The index position. + The filter expression. + + + + Removes a from the Pivot Schema for the engine. + + The filter expression. + + + + Clears all filter expressions from the Pivot Schema for the engine. + + + + + Finds a in by its name. + + The name of the desired filter expression. + The filter expression. + + + + Gets the object associated with a particular cell + in the PivotTable. The PivotCellInfo object contains value and formatted text properties information. + + Row index of the cell. + Column index of the cell. + if set to true [should calculate total]. + A PivotCellInfo object that contains information about the cell contents. + + + + When "EnableOnDemandCalculations" is true, calling this method will ensure that all the summary calculations are fully computed. + This is used internally. + + + + + When is true, this method will compute all summary calculation for the first row that has not been calculated yet. + + Returns true if all the rows have their summary calculation completed; otherwise, false. + + + + Adds the field to "AllowedFields" property. + + FieldInfo + + + + Returns the collection of objects which are currently used in the Grid. + + List of filter items collection. + Collection of objects currently used. + + + + Returns the row and column PivotValues at the specified cell index. + + The row index of Pivot values. + The column index of Pivot values. + Name of the PivotField at the specified row and column index. + List of values at the specified row and column index. + + + + Returns the collection of raw items for specified rows and columns in the Grid. + + The row index. + The column index. + Collection of raw items. + + + + Removes the allowed field from Grid. + + The field to remove. + + + + Contains the default properties for the items in the DataSource. + + + + + Clears the allowed fields in the Pivot control. + + + + + Suspends calculations as PivotItems are added or removed from either RowPivots or ColumnPivots + collections or when PivotCalculations are added or removed from the PivotCalculations collection. + + + By default, calculations are always suspended. Once you have populated all the appropriate collections + to define your PivotTable, you can call method to tell the engine to generate the PivotTable + contents that you can access by indexing the engine. + + + + + Resumes calculations after a call to suspend computations without re-setting the PivotTable. + + + + + Resumes calculations after a call to suspend computations with the option of re-setting the PivotTable. + + Returns true if the PivotTable should be recomputed; otherwise, false. + + + + Resumes calculations after a call to "SuspendComputations" method with an option of re-setting the PivotTable. + + Returns true if the PivotTable should be recomputed; otherwise, false. + Returns true if the Pivot control should be refreshed; otherwise, false. + + + + Using this method we can populate the values of the current PivotTable. + + + Once you have populated the PivotColumns, PivotRows and PivotCalculations collections, you + call this method to actually populate this engine with the PivotCalculations. After this call, + you can then access information on the contents of any cell by indexing the engine object. The + indexers are zero based. + + + + + Resets the PivotTable and its collections. + + + + + Method to dispose the PivotEngine resources in order to release the unmanaged memory. + + + + + Adds calculation to the PivotCalculations collection. + + The calculation field. + + + + Inserts calculation at a specified index. + + Index to insert the calculation field. + The calculation field. + + + + Removes calculation from the PivotCalculations collection. + + The calculation field. + + + + Adds PivotItem to the PivotRows collection. + + The item to be added. + + + + Inserts a PivotItem to the PivotRows collection at a specified index. + + The index to insert PivotItem into PivotRows. + The PivotItem. + + + + Removes a PivotItem from the PivotRows collection. + + The item to be removed. + + + + Adds a PivotItem to the PivotColumns collection. + + The item to be added. + + + + Inserts a PivotItem to the PivotColumns collection at a specified index. + + The index to insert PivotItem into PivotColumns. + The item to be added. + + + + Removes a PivotItem from the PivotColumns collection. + + The item to be removed. + + + + Returns the list of raw values. + + The row index. + the column index. + The raw items. + + + + Populates the value cells. + + + + + Updates the calculated value based on the "CalculationType" of the computation object. + + The row index. + The column index. + The new value. + Name of the field. + The formatted text. + + + + Calculated the cell value based on the formula given to the computation. + + The row index. + The column index. + The column index from pivot engine. + The pivot computation information. + + + + Generates the covered ranges of each column header cell. + + + + + Generates the covered ranges of grand total cell. + + + + + Generates the covered ranges of each row header cell. + + + + + Re-arrange the PivotValues for column when grid layout is TopSummary. + + + + + Re-arrange the PivotValues for row when GridLayout is TopSummary. + + + + + Checks whether the column is summary column or not. + + Index of the column. + Returns true if it's summary column; otherwise, false. + + + + Checks whether the column is summary column or not. + + Index of the column. + The argument to be passed by reference. + Returns true if it's summary column; otherwise, false. + + + + Checks whether the column is summary column or not, when on-demand operation is performed. + + Index of the column. + The argument to be passed by reference. + Returns true if it's summary column; otherwise, false. + + + + Checks whether the column is summary column or not, when GridLayout is TopSummary. + + Index of the column. + Returns true if it's summary column; otherwise, false. + + + + Checks whether the row is summary row or not, when GridLayout is TopSummary. + + Index of the row. + Returns true if it's summary row; otherwise, false. + + + + Checks whether the row is summary row or not. + + Index of the row. + The argument to be passed by reference. + Returns true if it's summary row; otherwise, false. + + + + Checks whether the row is summary row or not, when on-demand operation is performed. + + Index of the row. + The argument to be passed by reference. + Returns true if it's summary row; otherwise, false. + + + + Checks whether the row at the specified index is summary row or not. + + Index of the row. + Returns true if it's summary row; otherwise, false. + + + + Adds a comparer for the specific PivotItem. + + Property type of the PivotItem. + + + + Gets the sort direction of a particular column, even if the column has been moved from its initial position. This is used only when "RowPivotsOnly" is set to true. + + + + + Clears all the sorted order in Grid. + + + + + Clears the sort at the specified index. + + The specified index. + + + + Returns the sorted columns count. + + Column count. + + + + Returns the original position of the column in the PivotCalculations collection. + This is only used when "RowPivotsOnly" is set to true. + + The current position of the column in the display. + Returns the original position of the column as determined + by its position in the PivotCalculations collection. + + + + Checks whether a column at the given index, in the display, is sorted or not. + + The index of the column in the display. + Returns true if sorted; otherwise, false. + + + + Checks whether a column at the given index is filterable. This is used only when "RowPivotsOnly" is set to true. + + The index of the column in the display. + Returns true if the column can be filtered; otherwise, false. + + + + Checks whether a column at the given index is sortable. This is used only when "RowPivotsOnly" is set to true. + + The index of the column in the display. + Returns true if the column can be sorted, otherwise, false. + + + + Returns the field name at a given column even if the column has been moved from its original + position. This is used only when "RowPivotsOnly" is set to true. + + The index of the column. + The field name at the specified index. + + + + This method is used internally within the Syncfusion library code to adjust column indexes. + + Old index position. + New index position. + + + + Sort different values by calculation based on column index. + + The column index. + + + + Sort different values by calculation based on column index and multi-column sorting. + + The column index. + Returns true if multi-column sorting operation is done; otherwise, false. + + + + Sort different values by calculation based on column index, multi-column sorting and sort direction. + + The column index. + Returns true if multi-column sorting operation is done; otherwise, false. + Specifies the sort direction. + + + + Performs sorting operation in column header. + + The index of column header. + + + + This method will re-compute all the summaries ignoring certain summary row whose index is + in "HiddenRowIndexes". + + + + + Gets the hidden rows key values. + + Count of the hidden PivotRows. + + + + Gets the un-indexed "PivotCellInfo". + + Row index. + Column index. + PivotCellInfo + + + + Raises the event. + + The event argument. + + + + Raises the event. + + The event argument. + + + + To be maintain the row summary's index and returns the bool value. + + Denotes the row index. + + + + To be maintain the column summary's index and returns the bool value. + + Denotes the column index. + + + + Initialize the summary if the keys are not available in . + + Specify the index of the row. + Specify the index of the column. + + + + Generates the covered ranges of each row header cell. + + + + + Event raised whenever the Pivot Schema of the Engine is changed. + + + + + Event triggered when the property of the cell is changed. + + + + + Gets or sets the item property info. + + + + + Gets or sets the IndexEngine. IndexEngine provides a way to access the object from the PivotEngine class in-order to perform the on-demand process. + + + + + Gets or sets a delegate that returns a property value for a given object. + + + If this member is null, the IndexEngine will use reflection to obtain property values from objects in + the . NOTE: Usually a well written delegate can provide values more efficiently + than using reflection. For performance improvements, you will want to provide a well written delegate for + this property. + + + + + Gets or sets a value to indicate whether the data should be loaded in an optimized way to render huge data with less time consumption. + + + Setting this property indicates that the PivotEngine should populate the data based on combining the population logics used in both PivotEngine and IndexEngine. + There is no need to set the properties "UseIndexedEngine" and "EnableOnDemandCalculations" is true when using the property "EnableDataOptimization". + This feature will work significantly with less time consumption to populate and the render the values even using large pivots. + + + + + Gets or sets whether an optimized algorithm that relies on indexing the raw + data used to compute the Pivot information. + + Setting this property indicates that the PivotEngine should use a newer way of computing + the Pivot information. This technique requires more memory but will work significantly quicker + for Pivots that have a large number of cells. For smaller Pivots, there is no gain in performance + with this newer technique. + + + + + + Gets or sets the formatted total value for the sub-total/grand total cells. + + + + + Gets or sets the edited cells information. + + + + + Gets or sets whether the DataSource is a collection of dynamic objects supported in the .NET Framework 4.0. + + + + + Gets or sets value to show/hide grand totals. + + + Default value is true. + + + + + Gets or sets value to indicate whether sub-totals should be shown at the top or bottom. + + + Default value is Normal. + + + + + Gets or sets a value to indicate whether calculation header should be shown/hidden when there is a single calculation. + The default value is false. This property does not affect the settings when "UseIndexedEngine" is set to true. + + + + + When setting the EnableOnDemandCalculations property to true, it allows the UI to trigger the summary calculations + during the application idle cycles. + + + This means that the summaries in the Pivot control may be fully populated when the user does something like sort/filter a PivotItem + which avoids a delay. If EnableOnDemandCalculations is false, setting this property has no effect. + + + + + Gets or sets whether the calculations are postponed until the value is requested through the Indexer on PivotEngine. The default value is false. + + + The default calculation behavior is for all the value cells to be populated during the call to PivotEngine.Calculate. When EnableOnDemandCalculations + is set true, then the calculations are postponed until there is an initial request for a calculated value. At that time, the calculation is completed + and stored. Subsequent requests for a value return the stored value instead of redoing the calculations. + + Setting the EnableOnDemandCalculations allows the initial display of a large pivot table as only the visible cells will need to be calculated. This + speed up in initial display, does come at the cost of a slight degradation in first-time scrolling performance as the cells that are newly made visible + through the scrolling require a calculation to be completed. This setting is not available when RowPivotsOnly is false. + + + + + Gets or sets whether PivotGrid control should hide the sub-totals in engine level when setting the property ShowSubTotals to false. + + + The default value is false. + + + + + Gets or sets whether PivotGrid control should show the summaries of child nodes when setting property ShowSubTotalsForChildren to true. + + + The default value is false. + + + + + Gets or sets whether the Pivot control should display null value as blank instead of 0. + + + The default value is false. + + + + + Gets the number of rows in the PivotTable. + + + + + Gets the number of columns in the PivotTable. + + + + + Gets a list of objects that specify + the cells that need to be covered. + + + + + Gets a list holding values that + specify any filters that need to be applied to this PivotTable. + + + + + Gets a dictionary of SummaryBase computations available in the PivotEngine. + + + + + Gets the underlying object collection represented in the PivotEngine. + + + + + Gets or sets the values of the hidden rows. + + + + + Gets or sets the different hidden row groups. + + + + + Gets or sets the different hidden column groups. + + + + + Gets or sets value indicating whether to Pivot only rows and calculations. + + Turning this property "ON", enables the PivotGrid control to appear like a flat Grid in which rows and calculations will be displayed as value columns. + + + + Gets or sets a collection of row based PivotItems. + + + + + Gets or sets a collection of column based PivotItems. + + + + + Gets or sets a collection of PivotComputations. + + + + + Gets or sets a value to indicate whether the description is to be displayed in the header cell + when more than one calculation is being used. The default behavior is to use + the "FieldName". + + + + + If you apply a filter which filters out all items in the underlying data source, then this + "EmptyPivot" property will be set true. The RowCount and ColumnCount will + be set to one, and the Engine[0, 0] will hold the value. + + + + + Gets or sets the string that appears when no items are present in a Pivot result. + + + + + Gets or sets the prefix string in the collection-wide totals that appear below and to the right of the PivotTable. + + + + + Gets or sets whether the formatted text of the columns, which has percentage calculation type, must apply with given format or default percentage format #,##% + + + + + Gets or sets a value indicating whether to ignore insignificant white space from the formatted text in rows and columns. + + + + + This property enables the Pivot control to perform loading operations asynchronously on a background thread. + + + + + Gets or sets whether underlying raw values are cached as the Pivot is being built. If these values are cached, + then GetRawItemsFor method calls do not require traversing the underlying data to complete. + + + + + Gets or sets whether the calculations should appear as rows/columns in the PivotGrid. By default the calculations is displayed as columns. + + + + + Gets or sets a value indicating whether to show an empty cell or not, when the value is null. + By default, the value is true. + + + + + Gets or sets data source for this PivotTable. This object should be either + an IEnumerable List or a DataTable. + + + + + Used internally. Gets or sets an IEnumerable List that is used as the data source for the + PivotTable. The default behavior is to initialize this list from DataSource. + + + + + Gets or sets the type of the objects in the DataSource. This property is initialized directly from the DataSource. + + + + + Gets or sets a collection of property descriptors for the items in the DataSource. This property is initialized directly from the DataSource. + + + + + Gets a collection of FieldInfo objects that hold the field names that you want to make visible in the engine. + The names can be either public property names of the underlying data objects or they can be expression field. + + + If your data contains fields that you do not want exposed to the pivoting process, + then add the names of the properties you want to include to this list. All other + fields will be excluded. + + If you leave this collection empty, the default behavior will be to make all public + properties available for use in the pivot table. + + To add an expression field, set the FieldInfo.FieldType to FieldsType.Expression and set FieldInfo.Expression + to be a string holding a well formed expression defining the value that should appear in this field. + + + + Gets or sets value to check whether the values of the PivotTable are populated or not. + + + + + Gets or sets value to check whether the PivotEngine is loading in the background. + + + + + Gets or sets the collection of filter items. + + + + + Gets or sets the collection of objects which are currently used in the Grid. + + + + + Gets or sets the boolean value indicating whether the computation need to happen. + It is handled in suspend and resume computation method. + + + + + Gets or sets the sort direction of Pivot values. The sort direction could be either ascending/descending. + + + + + Gets the object associated with a particular cell + in the PivotTable. The PivotCellInfo object contains value and formatted text properties information. + + Row index of the cell. + Column index of the cell. + A PivotCellInfo object that contains information about the cell contents. + + + + This class used for sorting the Pivoted row/column. + + + + + Initializes a new instance of the class. + + The sort direction. + + + + Compares the sort direction of the PivotFields using key. + + The key to compare sort directions. + The key to compare sort directions. + + + + Class that holds the properties which is used to handle single sort and multi sort in Grid. + + + + + Gets or sets the row index + + + + + Gets or sets the collection of row indexes. + + + + + Gets or sets the size of the Grid cell range. + + + + + This method is used to compare the sort directions. + + The first object to compare. + The second object to compare. + + A signed integer that indicates the relative values of and , as shown in the following table.Value meaning less than zero is less than . zero equals . Greater than zero is greater than . + + + + + Initializes the default sort direction as ascending. + + + + + This is used to assign the default comparer if the PivotFields comparer is null. + + The comparer. + The sort direction of the comparer. + + + + This is used to compare the PivotFields and populate the values. + + + + + Class that holds different Grid constants. + + + + + Variable that holds all the values in filter. + + + + + Holds the holds "Total" string. + + + + + Class that holds different filter items. + + + + + Initializes a new instance of the class. + + + + + To accept the changes in Engine. + + + + + To reject the changes in Engine. + + + + + To compare the filter items using key. + + + + + Converts the data to string datatype. + + + + + Event that is triggered when the property of the cell is changed. + + + + + Gets or sets the key for the filter item. + + + + + Gets or sets the bool value for the selected option. + + + + + Gets or sets a value indicating whether the filter item is "(All)" in the FilterPopUp window. + + + Returns true if the filter item is "(All)"; otherwise, false. + + + + + Gets or sets the bool value for the selected state. + + + + + Gets or sets the bool value for the changed state. + + + + + Class that holds the collection of objects that are filtered. + + + + + Initializes a new instance of the class. + + + + + Returns the respective location to add the filter item. + + Filter item. + Location to add the filter item. + + + + Accept the changes in the filter items collection. + + + + + Rejects the changes in filter items collection. + + + + + Method used to set the name of the filter item. + + Name of the filter item. + + + + Add filter item in the collection. + + Filter item. + + + + To get the filter expression for DataView source. + + Filter expression. + + + + To get the filter expression from IEnumerable source. + + + + + Returns key of the filter item, if the filter items are selected else returns empty string. + + + + + Returns the filter expression for the filter items collection from IEnumerable source. + + + + + Gets or sets the filter property. + + + + + Gets or sets the property with all the filter items. + + + + + Gets or sets the comparer of all PivotFields in the Pivot control. + + + + + Gets or sets the content for the name property. + + + + + Gets or sets the header value for the PivotItem. + + + + + Gets or sets the caption value for the PivotItem. + + + + + Gets or sets the format for the PivotItem. + + + + + Gets or sets the value to show/hide sub-totals for the PivotItem. Default value is true. + + + + + Gets or sets the value to enable/disable grouping for the filter item. Default value is true. + + + + + Gets or sets the filtered values. + + + + + Used to store the row header and column header values as BinaryList. + + + + + Method that returns an integer value after performing insertion. + + IComparable object + Object + + + + Enacapulates the information needed to define a PivotItem, for either a row/column Pivot. + + + A PivotItem is a property in the underlying data objects + that is used to group the data in a PivotTable. You can add PivotItems to both the + PivotColumns and PivotRows collection in a mutually exclusive manner. + + + + Event triggered when the property of the PivotItem is changed. + + + + + Gets or sets the summary type for calculations use. + + + + + Gets or sets the summary for calculations use. + + + + + Gets or sets whether the sub-total of PivotItems can be shown or hidden. + + + + + Gets or sets whether this calculation column can be sorted when + "RowPivotsOnly" is set to true in the PivotEngine. + + + + + Gets or sets the width of PivotItems to set the column width of RowHeaders + Its's only applicable for PivotItems which are added in PivotRows + + + + + Gets or sets whether this calculation column can be filtered when + "RowPivotsOnly" is set to true in the PivotEngine. + + + + + Gets or sets whether the PivotItem should be hyperlinked when "RowPivotsOnly" is set to true in the PivotEngine. + + + + + Gets or sets the property's mapping name. + + + + + Gets or sets the title you want to see in the header of this PivotItem. + + + + + Gets or sets the title you want to see in the header of this PivotItem. + + + + + Gets or sets the string that you want to append to the PivotItem's summary cells. + + + + + Gets or sets the format for the PivotItem. + + + + + Gets or sets the IComparer object used for sorting. If this value is null, then sorting is done assuming that this field is IComparable. + + + + + Gets or sets the value to enable/disable grouping for this PivotItem. Default value is true. + + + + + Class used to hold the properties of each hidden group. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class and it contains the properties needed for the hidden group. + + + + + Constructor that holds the information needed for hidden group. + + Hidden group starts with. + Hidden group ends with. + The level of hidden group. + Name of the hidden group. + The total header of hidden group. + + + + Converts the hidden group start and end values into string format. + + + + + Clones the specified hidden group. + + + + + Gets or sets where the HiddenGroup starts with. + + + + + Gets or sets where the HiddenGroup ends with. + + + + + Gets or sets the level of HiddenGroup. + + + + + Gets or sets the name of HiddenGroup. + + + + + Gets or sets the total header of HiddenGroup. + + + + + Class which has a method to determine whether the specified item is in the hidden group collection. + + + + + Determines whether the specified item is in the collection. + + The hidden group collection. + Specific hidden group item. + + + + This class is primarily for internal use. It is used to generate the rows and columns that hold summaries of PivotCalculations. + + + + + Compare the summary fields using the keys. + + + + + Gets or sets the row index of this item. + + + + + Gets or sets the column index of this item. + + + + + Gets or sets the list of calculations in the PivotItem. + + + + + Gets or sets row/column key values for an indexed look-up of this item. + + + + + This class defines a set of four integers that define a covered range in the zero-based coordinate system of a PivotTable. + + + + + Initializes a new instance of the class. + + + + + Constructor to define the range of covered cells. + + Top index of the cell. + Left index of the cell. + Bottom index of the cell. + Right index of the cell. + + + + Converts the covered cell ranges into string format. + + + + + Gets or sets the top index. + + + + + Gets or sets the left index. + + + + + Gets or sets the bottom index. + + + + + Gets or sets the right index. + + + + + This class provides an information about a specific cell in a PivotTable. + + + + + Value indicates the row index of the particular cell value. + + + + + Value indicates the column index of the particular cell value. + + + + + Initializes a new instance of the class. + + + + + Returns the formatted text. + + + + + Method to dispose the pivot cell information + + + + + Gets the double value of the cell. + + + + + Gets or sets the value in the cell. + + + + + Gets or sets any covered range associated with this cell. + + + + + Gets or sets the cell type of this cell. + + + + + Gets or sets the key associated with this cell. + + + + + Gets or sets the formatted text displayed in this cell. + + + + + Gets or sets the format for the cells. + + + + + Gets or sets the name of the cell. + + + + + Gets or sets the summary for the cell. + + + + + Gets or sets the parent cell. + + + + + Gets or sets the unique text. + + + + + Gets the RawValues of the particular PivotCellInfo. + + + + + Gets the information from the Pivot control. + + + + + Initializes a new instance of the PivotCellInfos class. + + + + + Constructor accepting the row and column count. + + Total number of rows in the Pivot control. + Total number of columns in the Pivot control. + + + + Gets the length of the value at specified index. + + + + + Gets or sets the rowIndex and colIndex of the pivot cell. + + + + + Event argument for the event. + + + + + Gets or sets regarding the schema information changed. + + + + + Gets or sets whether to override the defer layout update settings. + + + + + Gets the information about the PiovtFields. + + + + + Returns the name of each field in the property descriptor collection based on the object type. + + + + + Returns the hash code for the given value. + + + + + Compares the value with other values using the name of the field. + + + + + Gets and sets the field type. + + + + + Gets and sets the name of the field. + + + + + Gets and sets the expression associated with the field. + + + + + Gets and sets the format of the field. + + + + + Class that illustrates the expression field support along with filtering in PivotEngine. + + + + + A constructor that initializes the attributes of "ExpressionPropertyDescriptor" object. + + Name of the expression field. + Attributes. + Expression. + Format. + An object that holds attributes to compute filter values and expressions. + + + + When overridden in a derived class, returns whether re-setting an object changes its value. + + The component to test re-setting capability. + + Retuens true if re-setting the component changes its value; otherwise, false. + + + + + Gets the value of the concerned data and returns the values based on the format associated with it. + + + + + Resets the value based on expression. + + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + The component with the property to be examined for persistence. + + Returns true if the property should be persisted; otherwise, false. + + + + + Gets or sets the expression. + + + + + Gets or sets the logical expression for filtering. + + + + + Gets or sets a format associated with the value of this expression. + + + + + Checks whether the data is read-only. + + + + + Returns the object datatype. + + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + + + Class that holds the methods for setting the value for the variable. + + + + + Initializes a new instance of the class. + + Name of the member. + An array of type that contains the member attributes. + + + + When overridden in a derived class, returns whether re-setting an object changes its value. + + The component to test for reset capability. + + Returns true if re-setting the component changes its value; otherwise, false. + + + + + When overridden in a derived class, gets the current value of the property on a component. + + The component with the property, for which, to retrieve the value. + + The value of a property for a given component. + + + + + When overridden in a derived class, resets the value for this property of the component to the default value. + + The component with the property value that is to be reset to the default value. + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + The component with the property to be examined for persistence. + + Returns true if the property should be persisted; otherwise, false. + + + + + When overridden in a derived class, gets a value indicating whether this property is read-only. + + + + + When overridden in a derived class, gets the type of the property. + + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + + + Compare for DateTime objects. + + object. + object. + integer + + + + Use to get the property value without using reflection. + + + + + Enumeration provides option to select row type. + + + + + When no type is set for the Row. + + + + + When type is set for Row as Summary. + + + + + Index Engine is used to load the collection of data faster than the PivotEngine. + It makes use of the "EnableOnDemandCalculations" property. + Unlike the PivotEngine, it loads the entire collection of data by including all the values in the list irrespective of Row and Column headers. + + + + + + + + + + + Initializes a new instance of the class IndexEngine. + + The PivotEngine. + + + + Initializes the new instance of the class IndexEngine. + + The PivotEngine. + Returns delegate value. + + + + Initializes a new instance of the IndexEngine class. + + + + + Call this method to have the IndexEngine create the index information for the current + content reflected in , , + and . + + Returns true if indexing was completed; otherwise, false. + + After successfully executing this method, you can access the Pivot contents using an zero-based + row, column indexer on this IndexEngine. + + + + + Call this method to have the IndexEngine create index information for the current + content reflected in , , + and . + + If you want this method to return before all the rows are populated, parameter should be set to true. + Returns true if indexing was completed; otherwise, false. + + If onDemand is true, the IndexEngine will return when the number of rows given in + has been loaded. After this method returns, the rest of the rows will be loaded on demand + as you index this IndexEngine using row and column indexes. Anytime you index this IndexEngine, + if your row request exceeds , additional rows are populated until it is + possible to return your requested value. + + + + + + + Sorts the value by the calculated value. + + The index of the column. + + + + Gets the total number of unique slices under this given ListIndexInfo object. + + The parent ListIndexInfo object. + The number of rows or columns that are contained by this ListIndexInfo item. + + Given an outer row node, the GetCount value for this node is the number of child nodes that are contained + under this outer node. This method uses recursions to iterate through all children contained + at any level under this outer node. Summing up all the GetCounts for all the outer nodes will give + you the total number of all nodes. + + + + + This is used if the GetValue delegate is not set as part of the caller. + + + + + Gets the index of the last row that has been loaded when you are using on-demand loading. + + + You do on-demand loading by passing a true value when you use the IndexEngine method to populate + the IndexEngine. When this is done, IndexEngine will return after loading the number of rows + indicated . The rest of the rows will be populated on-demand + as your code requests a row higher than this property. + + + + + Gets or sets the number of rows that are initially loaded when you are using on-demand loading. + + + You do on-demand loading by passing a true value when you use the IndexEngine method to populate + the IndexEngine. When this is done, IndexEngine will return after loading the number of rows + indicated by this property. The rest of the rows will be populated on-demand as your code requests + a row higher than . + + + + + Gets or sets a delegate that returns a property value for a given object. + + + If this member is null, the IndexEngine will use reflection to obtain property values from objects in + the . Note usually, a well written delegate can provide values more efficiently + than using reflection. For performance improvements, you will want to provide a well written delegate for + this property. + + + + + Gets the PivotRows used in this Pivot. + + + + + Gets the PivotColumns used in this Pivot. + + + + + Gets the PivotCalculations used in this Pivot. + + + If the IndexEngine is created using a PivotEngine, then this PivotCalculations is + the PivotEngine. PivotCalculations collection from the associated PivotEngine. + + + + + Gets a list holding values that + specify any filter that need to be applied to this PivotTable. + + + + + Gets or sets data source for this PivotTable. This object should be either + an IEnumerable List, or a DataTable. + + + + + Gets a list of objects that specify + the cells that need to be covered. + + + + + Gets or sets whether the formatted text of the columns which has percentage calculation type, must be applied with given format or default percentage format #,##% + + + + + Gets the number of rows in the Pivot. + + + + + Gets the number of columns in the Pivot. + + + + + Gets the number of columns that holds the row header information to the left of the numerical + values in the Pivot. + + + + + Gets the number of rows that holds the column header information above the numerical + values in the Pivot. + + + + + Gets or sets the sorting direction of the items in the Pivot control. + + + + + Gets the PivotCell information that holds the details being displayed + by the Pivot at the given row and column. + + The row index (zero-based). + The column index (zero-based). + The PivotCellInfo associated with the cell pointed to by the row and column. + + Note that this indexer will return a null value if the row and column values pick out a cell + that is not visible due to being part of a covered cell. + + + + + + + + + + + + + + + + + Sort the Pivot Row/Column headers using index. + + The comparer assigned to the PivotFields. + + + + Compares the Pivot Row/Column and populate the Pivot values based on the comparer assigned. + + + + + Class used to compare and sort the given collection. + + + + + Constructor that holds the information needed to perform comparison operation while sorting the PivotFields. + + + + + Compares the different objects and populate the Pivot values based on the comparer assigned. + + + + + Class that holds primarily the information on one row in a PivotTable. Additionally, these + calls can be used to hold information on the row/column header structures. + + + + + Gets the type of the variable. + + + + + Converts the data to string type. + + Combined String + + + + Compares the different values based on display. + + Holds information on row/column headers. + Return 0 if display is null else return -1. + + + + Gets and sets the RowType. + + + + + Get the information about the parent row/column headers in the PivotTable. + + + + + Default size of autofilter arrow width. + + + + + Default size of autofilter font size. + + + + + This text should be added to value of the header of the table to equal the width of the dropdown symbol. + + + + + Indicates the application object of this class. + + + + + Intializes the AutoFit Manager + + + + + + + + + + Intializes the AutoFit Manager + + worksheet parent object + + + + Measures to fit column. + + The graphics. + The first row. + The last row. + The first column. + The last column. + + + + Measure the number of spaces need to be added. + + Number of Spaces + + + + Measures the character ranges. + + The graphics. + The style with text. + The param num. + The rect F. + + + + + Get Indent level + + Indent value + + + + Measures the character ranges. + + The graphics. + The style. + The STR text. + The num. + The rect F. + + + + + Sorts the text to fit. + + The list. + The font impl. + The STR text. + + + + Collection of DisplayText with matching fonts. + This class used to improve the AutoFitToColumn method + Performance. + + + + + Class used for setting chart elements layout + + + + + This is the base class for all Implementation's classes. + + + + + Represents parent application. + + + + + Gets the application object. + + + + + Gets the parent object. + + + + + Reference to Application object. + + + + + Reference to parent Object. + + + + + Counter which can be used for calculating references. + + + + + Flag which indicates if the object was disposed or not. + + + + + Default constructor. Object cannot be constructed without setting Application + and parent references. + + + + + Main class constructor. Application and Parent properties are set. + + Reference to Application instance. + + Reference to the Parent object which will host this object + + + If specified application or parent is null. + + + + + Destructor. Call dispose method of current object. + + + + + This method is used to find parent with specific type. + + Parent type to locate. + The found parent or NULL if parent was not found. + + When there is cycle in object tree. + + + + + This method is used to find parent with specific type. + + Parent type to locate. + Indicates whether to search subtypes. + The found parent or NULL if parent was not found. + + When there is cycle in object tree. + + + + + This method is used to find parent with specific type. + + Start object for search operation. + Parent type to locate. + The found parent or NULL if parent was not found. + + + + This method is used to find parent with specific type. + + Start object for search operation. + Parent type to locate. + Indicates whether to search subtypes. + The found parent or NULL if parent was not found. + + + + Finds parent objects. + + Array of parents type. + Returns array of found parent objects. + + + + Find parent of object. + + Array of parents type. + Returns found parent object. + + + + Sets parent of the object. + + New parent for this object. + + + + Sets parent of the object. + + New parent for this object. + + + + Checks whether object was disposed and throws exception if it was. + + + + + Increase the quantity of reference. User must use this method when + new wrapper on object is created or reference on object stored. + + New state of Reference count value. + + + + Decrease quantity of Reference. User must call this method + when freeing resources. + + New state of Reference count value. + + + + Dispose object and free resources. + + + + + Method which can be overridden by users to take any specific actions when + object is disposed. + + + + + Reference to Application which hosts all objects. Read-only. + + + + + Reference to Parent object. Read-only. + + + + + Reference to Application which hosts all objects. Read-only. + + + + + Get quantity of instance references. + + + + + Provides layout options for plot area, legend and text area elements of the chart. + + + + + Gets or sets manual layout options for the chart element. The Layout and ManualLayout options both are same. + + + To know more about charts refer this link. + + The following code illustrates the use of ManualLayout property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.ManualLayout.Height = 300; + chart.PlotArea.Layout.ManualLayout.Width = 430; + chart.PlotArea.Layout.ManualLayout.Top = 40; + chart.PlotArea.Layout.ManualLayout.Left = 10; + chart.PlotArea.Layout.ManualLayout.LayoutTarget = LayoutTargets.inner; + chart.PlotArea.Layout.ManualLayout.LeftMode = LayoutModes.edge; + chart.PlotArea.Layout.ManualLayout.TopMode = LayoutModes.factor; + + //Manually positioning legent area + chart.Legend.Layout.ManualLayout.Height = 160; + chart.Legend.Layout.ManualLayout.Width = 120; + chart.Legend.Layout.ManualLayout.Top = 30; + chart.Legend.Layout.ManualLayout.Left = 220; + chart.Legend.Layout.ManualLayout.LeftMode = LayoutModes.edge; + chart.Legend.Layout.ManualLayout.TopMode = LayoutModes.factor; + + //Manually positioning text Area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.ManualLayout.Height = 20; + chart.ChartTitleArea.Layout.ManualLayout.Width = 30; + chart.ChartTitleArea.Layout.ManualLayout.Top = 0; + chart.ChartTitleArea.Layout.ManualLayout.Left = 150; + chart.ChartTitleArea.Layout.ManualLayout.LeftMode = LayoutModes.edge; + chart.ChartTitleArea.Layout.ManualLayout.TopMode = LayoutModes.factor; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the layout target for the plot area. The LayoutTarget property values are from . + + + The layout option is supported only for plot area. To know more about charts refer this link. + + The following code illustrates the use of LayoutTarget property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.Height = 300; + chart.PlotArea.Layout.Width = 430; + chart.PlotArea.Layout.Top = 40; + chart.PlotArea.Layout.Left = 10; + + //sets the layout target for the plot area + chart.PlotArea.Layout.LayoutTarget = LayoutTargets.inner; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating how to interpret the of this manual layout. The LeftMode property values are from . + + + To know more about charts refer this link. + + The following code illustrates the use of LeftMode property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.LeftMode = LayoutModes.edge; //sets a value of Leftmode for plot area + chart.PlotArea.Layout.Height = 300; + chart.PlotArea.Layout.Width = 430; + chart.PlotArea.Layout.Top = 40; + chart.PlotArea.Layout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.LeftMode = LayoutModes.edge; //sets a value of Leftmode for legent area + chart.Legend.Layout.Height = 160; + chart.Legend.Layout.Width = 120; + chart.Legend.Layout.Top = 30; + chart.Legend.Layout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.LeftMode = LayoutModes.edge; //sets a value of Leftmode for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.Height = 20; + chart.ChartTitleArea.Layout.Width = 30; + chart.ChartTitleArea.Layout.Top = 0; + chart.ChartTitleArea.Layout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating how to interpret the of this manual layout. The TopMode property values are from . + + + To know more about charts refer this link. + + The following code illustrates the use of TopMode property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.TopMode = LayoutModes.factor; //sets a value of topmode for plot area + chart.PlotArea.Layout.Height = 300; + chart.PlotArea.Layout.Width = 430; + chart.PlotArea.Layout.Top = 40; + chart.PlotArea.Layout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.TopMode = LayoutModes.factor; //sets a value of topmode for legent area + chart.Legend.Layout.Height = 160; + chart.Legend.Layout.Width = 120; + chart.Legend.Layout.Top = 30; + chart.Legend.Layout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.TopMode = LayoutModes.factor; //sets a value of topmode for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.Height = 20; + chart.ChartTitleArea.Layout.Width = 30; + chart.ChartTitleArea.Layout.Top = 0; + chart.ChartTitleArea.Layout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the left (x location) of the chart element as a fraction of width of the chart. + + If is factor, then the position is relative to the + default position for the chart element. To know more about charts refer this link. + + The following code illustrates the use of Left property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.Left = 10; //sets a value of left position for plot area + chart.PlotArea.Layout.Height = 300; + chart.PlotArea.Layout.Width = 430; + chart.PlotArea.Layout.Top = 40; + + //Manually positioning legent area + chart.Legend.Layout.Left = 220; //sets a value of left position for legent area + chart.Legend.Layout.Height = 160; + chart.Legend.Layout.Width = 120; + chart.Legend.Layout.Top = 30; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.Left = 150; //sets a value of left position for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.Height = 20; + chart.ChartTitleArea.Layout.Width = 30; + chart.ChartTitleArea.Layout.Top = 0; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the top of the chart element as a fraction of height of the chart. + + + If is factor, then the position is relative to the + default position for the chart element. To know more about charts refer this link. + + The following code illustrates the use of Top property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.Top = 40; //sets a value of Top position for plot area + chart.PlotArea.Layout.Height = 300; + chart.PlotArea.Layout.Width = 430; + chart.PlotArea.Layout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.Top = 30; //sets a value of Top position for legent area + chart.Legend.Layout.Height = 160; + chart.Legend.Layout.Width = 120; + chart.Legend.Layout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.Top = 0; //sets a value of Top position for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.Height = 20; + chart.ChartTitleArea.Layout.Width = 30; + chart.ChartTitleArea.Layout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating how to interpret the + of this manual layout. The WidthMode property values are from . + + + To know more about charts refer this link. + + The following code illustrates the use of WidthMode property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.WidthMode = LayoutModes.factor; //sets a value of Width mode for plot area + chart.PlotArea.Layout.Height = 300; + chart.PlotArea.Layout.Width = 430; + chart.PlotArea.Layout.Top = 40; + chart.PlotArea.Layout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.WidthMode = LayoutModes.factor; //sets a value of Width mode for legent area + chart.Legend.Layout.Height = 160; + chart.Legend.Layout.Width = 120; + chart.Legend.Layout.Top = 30; + chart.Legend.Layout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.WidthMode = LayoutModes.factor; //sets a value of Width mode for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.Height = 20; + chart.ChartTitleArea.Layout.Width = 30; + chart.ChartTitleArea.Layout.Top = 0; + chart.ChartTitleArea.Layout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating how to interpret the of this manual layout. The HeightMode property values are from . + + + To know more about charts refer this link. + + The following code illustrates the use of HeightMode property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.HeightMode = LayoutModes.edge; //sets a value of Height mode for plot area + chart.PlotArea.Layout.Height = 300; + chart.PlotArea.Layout.Width = 430; + chart.PlotArea.Layout.Top = 40; + chart.PlotArea.Layout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.HeightMode = LayoutModes.edge; //sets a value of Height mode for legent area + chart.Legend.Layout.Height = 160; + chart.Legend.Layout.Width = 120; + chart.Legend.Layout.Top = 30; + chart.Legend.Layout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.HeightMode = LayoutModes.edge; //sets a value of Height mode for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.Height = 20; + chart.ChartTitleArea.Layout.Width = 30; + chart.ChartTitleArea.Layout.Top = 0; + chart.ChartTitleArea.Layout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the width/right of the chart element as a fraction of width of the chart, + based on . + + + To know more about charts refer this link. + + The following code illustrates the use of Width property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.Width = 430; //sets a value of Width for plot area + chart.PlotArea.Layout.Height = 300; + chart.PlotArea.Layout.Top = 40; + chart.PlotArea.Layout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.Width = 120; //sets a value of width for legent area + chart.Legend.Layout.Height = 160; + chart.Legend.Layout.Top = 30; + chart.Legend.Layout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.Width = 30; //sets a value of Width mode for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.Height = 20; + chart.ChartTitleArea.Layout.Top = 0; + chart.ChartTitleArea.Layout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the height/bottom of the chart element as a fraction of height of the chart, + based on . + + + To know more about charts refer this link. + + The following code illustrates the use of Height property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.Height = 300; //sets a value of Height for plot area + chart.PlotArea.Layout.Width = 430; + chart.PlotArea.Layout.Top = 40; + chart.PlotArea.Layout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.Height = 160; //sets a value of Height for legent area + chart.Legend.Layout.Width = 120; + chart.Legend.Layout.Top = 30; + chart.Legend.Layout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.Height = 20; //sets a value of Height for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.Width = 30; + chart.ChartTitleArea.Layout.Top = 0; + chart.ChartTitleArea.Layout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Parent chart. + + + + + Parent object + + + + + Chart interface + + + + + ChartShape interface + + + + + Manual layout + + + + + Creates chart and sets its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + + + + Creates chart and sets its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + Indicates whether we should set defaults for fill and border properties. + + + + Creates chart and sets its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + Indicates is auto size. + Indicates is interior is gray. + Indicates whether we should set defaults for fill and border properties. + + + + Creates and parses current object. + + Application object for the chart. + Parent object for the chart. + Records storage. + Position in storage. + + + + Searches for all necessary parent objects. + + + + + Parses frame. + + Array with frame records. + Position of the frame records. + + + + Checks whether specified record is begin. + + Record to check. + True if this is begin; false otherwise. + + + + Parses single record. + + Record to parse. + Number of not closed begin record. + + + + Saves chart frame as biff records. + + OffsetArrayList that will get biff records. + + + + Serializes single record. + + OffsetArrayList that will get biff records. + Record to serialize. + + + + Unwraps record. + + Record to unwrap. + Unwrapped record. + + + + Set variable to the default state. + + Indicates whether MS Excel should calculate size of the frame. + Indicates is default interior is gray. + + + + Returns parent workbook. Read-only. + + + + + Return the parent object. Read-only. + + + + + Gets or sets manual layout options for the chart element. + + + + + Gets or sets the layout target for the plot area. + + + + + Gets or sets a value indicating how to interpret the + of this manual layout. + + + + + Gets or sets a value indicating how to interpret the + of this manual layout. + + + + + Gets or sets the left (x location) of the chart element as a fraction of width of the chart. + + If is factor, then the position is relative to the + default position for the chart element. + + + + Gets or sets the top of the chart element as a fraction of height of the chart. + + + If is factor, then the position is relative to the + default position for the chart element. + + + + + Gets or sets a value indicating how to interpret the + of this manual layout. + + + + + Gets or sets a value indicating how to interpret the + of this manual layout. + + + + + Gets or sets the width/right of the chart element as a fraction of width of the chart, + based on . + + + + + Gets or sets the height/bottom of the chart element as a fraction of height of the chart, + based on . + + + + + Indicates whether the manual layout is initialized or not + + + + + Class used for setting chart elements layout manually + + + + + Represent the chart manual layout + + + + + Gets or sets the layout target for the plot area. The LayoutTarget property values are from . + + + The layout option is supported only for plot area. To know more about charts refer this link. + + The following code illustrates the use of LayoutTarget property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the layout target for the plot area + chart.PlotArea.Layout.ManualLayout.LayoutTarget = LayoutTargets.inner; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating how to interpret the + of this manual layout. The LeftMode property values are from . + + + To know more about charts refer this link. + + The following code illustrates the use of LeftMode property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.ManualLayout.LeftMode = LayoutModes.edge; //sets a value of Leftmode for plot area + chart.PlotArea.Layout.ManualLayout.Height = 300; + chart.PlotArea.Layout.ManualLayout.Width = 430; + chart.PlotArea.Layout.ManualLayout.Top = 40; + chart.PlotArea.Layout.ManualLayout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.ManualLayout.LeftMode = LayoutModes.edge; //sets a value of Leftmode for legent area + chart.Legend.Layout.ManualLayout.Height = 160; + chart.Legend.Layout.ManualLayout.Width = 120; + chart.Legend.Layout.ManualLayout.Top = 30; + chart.Legend.Layout.ManualLayout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.ManualLayout.LeftMode = LayoutModes.edge; //sets a value of Leftmode for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.ManualLayout.Height = 20; + chart.ChartTitleArea.Layout.ManualLayout.Width = 30; + chart.ChartTitleArea.Layout.ManualLayout.Top = 0; + chart.ChartTitleArea.Layout.ManualLayout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating how to interpret the + of this manual layout. The TopMode property values are from . + + + To know more about charts refer this link. + + The following code illustrates the use of TopMode property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.ManualLayout.TopMode = LayoutModes.factor; //sets a value of topmode for plot area + chart.PlotArea.Layout.ManualLayout.Height = 300; + chart.PlotArea.Layout.ManualLayout.Width = 430; + chart.PlotArea.Layout.ManualLayout.Top = 40; + chart.PlotArea.Layout.ManualLayout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.ManualLayout.TopMode = LayoutModes.factor; //sets a value of topmode for legent area + chart.Legend.Layout.ManualLayout.Height = 160; + chart.Legend.Layout.ManualLayout.Width = 120; + chart.Legend.Layout.ManualLayout.Top = 30; + chart.Legend.Layout.ManualLayout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.ManualLayout.TopMode = LayoutModes.factor; //sets a value of topmode for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.ManualLayout.Height = 20; + chart.ChartTitleArea.Layout.ManualLayout.Width = 30; + chart.ChartTitleArea.Layout.ManualLayout.Top = 0; + chart.ChartTitleArea.Layout.ManualLayout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the left (x location) of the chart element as a fraction of width of the chart. + + If is factor, then the position is relative to the + default position for the chart element. To know more about charts refer this link. + + The following code illustrates the use of Left property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.ManualLayout.Left = 10; //sets a value of left position for plot area + chart.PlotArea.Layout.ManualLayout.Height = 300; + chart.PlotArea.Layout.ManualLayout.Width = 430; + chart.PlotArea.Layout.ManualLayout.Top = 40; + + //Manually positioning legent area + chart.Legend.Layout.ManualLayout.Left = 220; //sets a value of left position for legent area + chart.Legend.Layout.ManualLayout.Height = 160; + chart.Legend.Layout.ManualLayout.Width = 120; + chart.Legend.Layout.ManualLayout.Top = 30; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.ManualLayout.Left = 150; //sets a value of left position for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.ManualLayout.Height = 20; + chart.ChartTitleArea.Layout.ManualLayout.Width = 30; + chart.ChartTitleArea.Layout.ManualLayout.Top = 0; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the top of the chart element as a fraction of height of the chart. + + + If is factor, then the position is relative to the + default position for the chart element. To know more about charts refer this link. + + The following code illustrates the use of Top property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.ManualLayout.Top = 40; //sets a value of Top position for plot area + chart.PlotArea.Layout.ManualLayout.Height = 300; + chart.PlotArea.Layout.ManualLayout.Width = 430; + chart.PlotArea.Layout.ManualLayout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.ManualLayout.Top = 30; //sets a value of Top position for legent area + chart.Legend.Layout.ManualLayout.Height = 160; + chart.Legend.Layout.ManualLayout.Width = 120; + chart.Legend.Layout.ManualLayout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.ManualLayout.Top = 0; //sets a value of Top position for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.ManualLayout.Height = 20; + chart.ChartTitleArea.Layout.ManualLayout.Width = 30; + chart.ChartTitleArea.Layout.ManualLayout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating how to interpret the + of this manual layout. The WidthMode property values are from . + + + To know more about charts refer this link. + + The following code illustrates the use of WidthMode property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.ManualLayout.WidthMode = LayoutModes.factor; //sets a value of Width mode for plot area + chart.PlotArea.Layout.ManualLayout.Height = 300; + chart.PlotArea.Layout.ManualLayout.Width = 430; + chart.PlotArea.Layout.ManualLayout.Top = 40; + chart.PlotArea.Layout.ManualLayout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.ManualLayout.WidthMode = LayoutModes.factor; //sets a value of Width mode for legent area + chart.Legend.Layout.ManualLayout.Height = 160; + chart.Legend.Layout.ManualLayout.Width = 120; + chart.Legend.Layout.ManualLayout.Top = 30; + chart.Legend.Layout.ManualLayout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.ManualLayout.WidthMode = LayoutModes.factor; //sets a value of Width mode for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.ManualLayout.Height = 20; + chart.ChartTitleArea.Layout.ManualLayout.Width = 30; + chart.ChartTitleArea.Layout.ManualLayout.Top = 0; + chart.ChartTitleArea.Layout.ManualLayout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating how to interpret the of this manual layout. The HeightMode property values are from . + + + To know more about charts refer this link. + + The following code illustrates the use of HeightMode property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.ManualLayout.HeightMode = LayoutModes.edge; //sets a value of Height mode for plot area + chart.PlotArea.Layout.ManualLayout.Height = 300; + chart.PlotArea.Layout.ManualLayout.Width = 430; + chart.PlotArea.Layout.ManualLayout.Top = 40; + chart.PlotArea.Layout.ManualLayout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.ManualLayout.HeightMode = LayoutModes.edge; //sets a value of Height mode for legent area + chart.Legend.Layout.ManualLayout.Height = 160; + chart.Legend.Layout.ManualLayout.Width = 120; + chart.Legend.Layout.ManualLayout.Top = 30; + chart.Legend.Layout.ManualLayout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.ManualLayout.HeightMode = LayoutModes.edge; //sets a value of Height mode for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.ManualLayout.Height = 20; + chart.ChartTitleArea.Layout.ManualLayout.Width = 30; + chart.ChartTitleArea.Layout.ManualLayout.Top = 0; + chart.ChartTitleArea.Layout.ManualLayout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the width/right of the chart element as a fraction of width of the chart, + based on . + + + To know more about charts refer this link. + + The following code illustrates the use of Width property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.ManualLayout.Width = 430; //sets a value of Width for plot area + chart.PlotArea.Layout.ManualLayout.Height = 300; + chart.PlotArea.Layout.ManualLayout.Top = 40; + chart.PlotArea.Layout.ManualLayout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.ManualLayout.Width = 120; //sets a value of width for legent area + chart.Legend.Layout.ManualLayout.Height = 160; + chart.Legend.Layout.ManualLayout.Top = 30; + chart.Legend.Layout.ManualLayout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Layout.ManualLayout.Width = 30; //sets a value of Width mode for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.ManualLayout.Height = 20; + chart.ChartTitleArea.Layout.ManualLayout.Top = 0; + chart.ChartTitleArea.Layout.ManualLayout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the height/bottom of the chart element as a fraction of height of the chart, + based on . + + + To know more about charts refer this link. + + The following code illustrates the use of Height property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Manually positioning plot area + chart.PlotArea.Layout.ManualLayout.Height = 300; //sets a value of Height for plot area + chart.PlotArea.Layout.ManualLayout.Width = 430; + chart.PlotArea.Layout.ManualLayout.Top = 40; + chart.PlotArea.Layout.ManualLayout.Left = 10; + + //Manually positioning legent area + chart.Legend.Layout.ManualLayout.Height = 160; //sets a value of Height for legent area + chart.Legend.Layout.ManualLayout.Width = 120; + chart.Legend.Layout.ManualLayout.Top = 30; + chart.Legend.Layout.ManualLayout.Left = 220; + + //Manually positioning text Area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.Layout.ManualLayout.Height = 20; //sets a value of Height for text area + chart.ChartTitleArea.Layout.ManualLayout.Width = 30; + chart.ChartTitleArea.Layout.ManualLayout.Top = 0; + chart.ChartTitleArea.Layout.ManualLayout.Left = 150; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Parent chart. + + + + /// + Parent object + + + + + Layout target for the plot area. + + + + + Left mode of manual layout. + + + + + Top mode of manual layout. + + + + + Left (x location) of the chart element. + + + + + Top of the chart element. + + + + + dX value. + + + + + dY value. + + + + + Width mode of manual layout. + + + + + Height mode of manual layout. + + + + + Width of chart element. + + + + + Height of chart element. + + + + + xTL value. + + + + + yTL value. + + + + + xBR value. + + + + + yBR value. + + + + + byte value used as flag and boolean property for the values + + + + + Creates chart and sets its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + + + + Creates chart and sets its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + Indicates whether we should set defaults for fill and border properties. + + + + Creates chart and sets its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + Indicates is auto size. + Indicates is interior is gray. + Indicates whether we should set defaults for fill and border properties. + + + + Creates and parses current object. + + Application object for the chart. + Parent object for the chart. + Records storage. + Position in storage. + + + + Searches for all necessary parent objects. + + + + + Set variable to the default state. + + Indicates whether MS Excel should calculate size of the frame. + Indicates is default interior is gray. + + + + Return the parent object. Read-only. + + + + + Gets or sets the chart attached label layout record. + + + + + Gets or sets the chart plot area layout record. + + + + + Gets or sets the layout target for the plot area. + + + + + + Gets or sets a value indicating how to interpret the + of this manual layout. + + + + + Gets or sets the left (x location) of the chart element as a fraction of width of the chart. + + If is factor, then the position is relative to the + default position for the chart element. + + + + Gets or sets the top of the chart element as a fraction of height of the chart. + + + If is factor, then the position is relative to the + default position for the chart element. + + + + + Gets or sets the dx value + + + + + Gets or sets the dy value + + + + + Gets or sets a value indicating how to interpret the + of this manual layout. + + + + + + Gets or sets the width/right of the chart element as a fraction of width of the chart, + based on . + + + + + Gets or sets the height/bottom of the chart element as a fraction of height of the chart, + based on . + + + + + Gets or sets the xTL value + + + + + Gets or sets the yTL value + + + + + Gets or sets the xBR value + + + + + Gets or sets the yBR value + + + + + Returns the flag options for this class. + + + + + Represents rich text string in the workbook. + + + + + Common wrapper code. Implements BeginUpdate and EndUpdate methods. + + + + + This interface describes methods for optimized object update. + + + + + This should be called before several updates. + + + Invoking this method improves the performance. + + + + + This method should be called after several updates. + + + Invoking this method improves the performance. + + + + + Supports cloning, which creates a new instance of a class + with the same value as an existing instance. + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Number of begin update calls that have no corresponding end update. + + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object. + + + + + Creates a copy of the current object. + + Parent object for the new object. + A copy of the current object. + + + + Returns number of begin update calls that have no corresponding end update. Read-only. + + + + + Represents rich text of the chart title. + + + + + Sets the specified font formatting for the specified range of characters in chart title. + + First character of the range. + Last character of the range. + Font to set. + + To know more about charts refer this link. + + The following code illustrates how to use the SetFont method. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a font style for RichText + IFont font = chart.ChartTitleArea; + font.Color = ExcelKnownColors.Orange; + font.FontName = "Broadway"; + + //Create a RichTextString object + chart.ChartTitleArea.Text = "Sample Chart"; + IChartRichTextString richText = chart.ChartTitleArea.RichText; + + //Sets the specified font formatting for the specified range of characters in chart title + richText.SetFont(0, 5, font); + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets object for the specified formatting run. + + Formatting run to return its font + Returns a font of RichText + + To know more about charts refer this link. + + The following code illustrates how to use the GetFont method. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + Syncfusion.XlsIO.Parser.Biff_Records.Charts.ChartAlrunsRecord.TRuns[] runs = sheet.Charts[0].ChartTitleArea.RichText.FormattingRuns; + + //Gets IFont object for the specified formatting run + IFont font = sheet.Charts[0].ChartTitleArea.RichText.GetFont(runs[1]); + if (font != null) + { + //Your code here + } + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets the chart title text. Read-only. + + + To know more about charts refer this link. + + The following code illustrates use of Text property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a font style for RichText + IFont font = chart.ChartTitleArea; + font.Color = ExcelKnownColors.Orange; + font.FontName = "Broadway"; + + //Set the rich text font + chart.ChartTitleArea.Text = "Sample Chart"; + IChartRichTextString richText = chart.ChartTitleArea.RichText; + richText.SetFont(0, 5, font); + + //Get the RichText length or count + int richTextLength = chart.ChartTitleArea.RichText.Text.Length; + if (richTextLength != 0) + { + //Your code here + } + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets the formatting runs of the chart title. Read-only. + + + To know more about charts refer this link. + + The following code illustrates use of FormattingRuns property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Gets the formatting runs of the chart title + int length = sheet.Charts[0].ChartTitleArea.RichText.FormattingRuns.Length; + if(length != 0) + { + //Your code here + } + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Low level text object. + + + + + Parent workbook. + + + + + Indicates whether string is read-only. + + + + + Represents the parent object + + + + + Represents the chart text area + + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + Indicates whether string is read-only. + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + Indicates whether string is read-only. + Indicates whether to create inner TextWithFormat. + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + Text to wrap. + + + + Searches for all necessary parent objects. + + + + + Sets font for range of characters. + + First character of the range. + Last character of the range. + Font to set. + + + + Gets font for the specified formatting run. + + Formatting run to return its font + + + + Adds font to all required collections.. + + Font to add. + Font index in the collection. + + + + Gets the formatting runs of rich-text + + + + + Gets or sets the chart text area + + + + + Gets the text + + + + + Returns parent object. Read-only. + + + + + Returns parent application object. Read-only. + + + + + Class to hold Xml collection. + + + + + Map information element name. + + + + + Selection namespace attribute name. + + + + + Collection of XmlMap object. + + + + + Represent parent workbook. + + + + + Create an instance of XmlMapCollection. + + Parent workbook object. + + + + Added the XML document to the workbook using file path. + + Represents the XML file + + + + Adds the XML map to the workbook based on the specified XML data stream. + + Stream data of the xml file. + Returns TRUE if the XML is valid. + The stream should be passed as file stream to bind the xml + + + + Add XmlMap object to the collection. + + XML stream + Destination sheet + Starting row + Starting column + Returns TRUE if the XML is valid. + + + + Checks whether given root element string exists in the collection. + + Root element as string + True if root element string exists. + + + + Checks whether given name string exists in the collection. + + Name element as string + True if Name string exists. + + + + Parse and intialize mapping information. + + XML reader. + + + + Parses the map databinding. + + XML reader. + XmlMap information. + + + + To get XmlMap object from the collection by schema id. + + Schema id + Returns XmlMap object if schema id found. Return null as default. + + + + Serilaize the mapping information. + + Xml writer. + + + + Dispose the collection. + + + + + Returns XmlMap object from its collection for the given index. Read-Only. + + Zero-based index value. + + + + Returns the number of XmlMap object in the collection. Read-Only Integer. + + + + + Class represent Date filter for a column. + + + + + Common interface for all filter type, except custom filter. + + + + + Specifies the type of filter. Read-Only. + + + + + Relative date filter type used. + + + + + Represents type of filter. + + + + + Relative date filter type used. + + + + + Class represent DateTime filter for a column + + + + + Common interface for all combination filter type. + + + + + Specifies the combination filter type(either Text or DateTime). + + + + + Represent Date and Time. + + + + + Represents datetime grouping type. + + + + + Represent Date and Time. Read-Only. + + + + + Represents datetime grouping type. + + + + + Represents type combination filter. + + + + + Represents the event settings to export data to a data table + + + + + Represents the row index of Excel document. + + + + + Represents the column index of Excel document. + + + + + Represents the column index of data table. + + + + + Represents the cell value of Excel document. + + + + + Represents the ExportDataTableEventOption. + + + + + Represents the cell range. + + + + + Represents the column type of Data table. + + + + + Represents the value of data table. + + + + + Constructor of ExportDataTableEventArgs class. + + + + + Gets the column index of the data table that is beign updated. + + + + + System type that gets the column type of the data table. Read only. + + + + + Gets the Excel cell range. + + + + + Gets the Excel row index that is being exported to the data table. + + + + + Gets the column index of the data table that is being updated. + + + + + Gets the Excel cell value that is being exported to the data table. + + + + + Gets or sets a value in the data table. + + + + + Gets or sets the export data table event action. + + + + + Font color. + + + + + Border collapse. + + + + + Font family. + + + + + Font size. + + + + + Background color. + + + + + All border. + + + + + Top border. + + + + + Bottom border. + + + + + Right border. + + + + + Left border. + + + + + Text align. + + + + + Width of table. + + + + + Specifies Font color. + + + + + Specifies background color. + + + + + Specifies font family. + + + + + Specifies font size. + + + + + Specifies all border. + + + + + Specifies top border. + + + + + Specifies bottom border. + + + + + Specifies left border. + + + + + Specifies right border. + + + + + Specifies border collapse. + + + + + Initializes a HTMLToExcelConverter instance. + + + + + Parses HTML table from HTML content. + + HTML text. + Worksheet to export data into. + Specifies the row in the worksheet. + Specifies the column in the worksheet. + + + + Converts the CSS style to Cell Style. + + Css Style + IStyle instance + + + + Converts text format into Cell Style. + + Text Format + IStyle instance. + Cell Range + + + + Gets HTML alignment equal Excel horizontal alignment + + alignment value + Horizontal Alignment + + + + Gets HTML alignment equal Excel vertical alignment + + alignment value + Vertical Alignment + + + + Parses border style from CSS style string. + + Border + Border properties in CSS. + IBorder + + + + Parse CSS style. + + XmlNode of CSS + Dictionary + + + + Parse table row in HTML. + + XML node + Worksheet to export data into. + Worksheet row. + Worksheet column. + Dictionary of CSS styles. + HTML table row index. + + + + Parse table column in HTML. + + XML Node + Worksheet to export data. + Row + Column + + + + Parses the style. + + Style node. + + + + Applies textformat to style. + + Text format. + Cell Style. + + + + Represents a writer that provides JSON data. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Represents whether the JSON will be written in Schema format. + + + + + Gets or sets how many IndentChars to write for each level in the hierarchy when Formatting is set to JsonFormatting.Indented. Default value is 2. + + + + + Gets or sets which character to use for indenting when Formatting is set to JsonFormatting.Indented. Default character is blank space (' '). + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON array. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of a JSON array. + + + + + Writes the property name of a name/value pair on a JSON object. + + Name to be written + + + + Writes a String value. + + Value to be written + + + + Get spaces for writer + + + + + + Initializes a new instance of the JsonWriter class using the specified StreamWriter. + + Stream writter + + + + Initializes a new instance of the JsonWriter class using the specified stream. + + StreamWriter stream + + + + Releases unmanaged and - optionally - managed resources. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Represents whether the JSON will be written in Schema format. + + + + + Gets or sets how many IndentChars to write for each level in the hierarchy when Formatting is set to JsonFormatting.Indented. + + + + + Gets or sets which character to use for indenting when Formatting is set to JsonFormatting.Indented + + + + + Summary description for IEncryptor. + + + + + Decrypts DataProvider and writes result back into it. + + Provider to decrypt. + Offset to the first byte to decrypt. + Number of bytes to decrypt. + Position of the record in the stream. + + + + Decrypts byte array and writes result back into it. + + Array to decrypt. + Offset to the first byte to decrypt. + Number of bytes to decrypt. + + + + Sets information required to decrypt. + + Unique document id. + Encrypted document id. + Digest used to verify the entered password. + Password to use for verification and decryption. + True if password was verified and method succeeded. + + + + represents Constant read length + + + + + Represents the pass length + + + + + Represents block size + + + + + Represents starting position + + + + + Represents byte max value + + + + + Represents VerifierHash + + + + + Represents Verifier + + + + + Represents salt + + + + + represents password + + + + + Represents StateVector with null value + + + + + represents internal x vector + + + + + represents internal y vector + + + + + represents block number + + + + + represents key + + + + + Write byte + + + + + Indicates whether S vector should consist pre value + + + + + Generates the key + + + + + + + + + Verifies the password. + + True if password was verified. + + + + Combines the give arrays. + + + + + + + creates Decryption for provided data + + + + + + + + create Decryption for provided data + + + + + + + + + + Decrypt the buffer + + + + + + + + + + Creates S vector array when S vector is null + + + + + + Decryption member + + + + + + + + + Set the encryption value of the sheet + + + + + + + + + + + + Represents State vector + + + + + represents Key. + + + + + Indicates whether bytes needs to be write or not + + + + + Indicates whether the record already decrypted or not + + + + + Bullet class + + + + + Typeface value + + + + + Panose + + + + + Pitch family + + + + + Char set + + + + + Bullet character + + + + + Gets bullet type for the character. + + Bullet char + BulletType + + + + Sets bullet character for the type. + + Bullet char + BulletType + + + + Specifies the typeface attribute value. + + + + + Specifies the panose attribute value. + + + + + Specifies the pitchfamily attribute value. + + + + + Specifies the typeface charset value. + + + + + Specifies the bullet character. + + + + + + Gets the Bullet type + + + + + Bullet type enum + + + + + Default run properties. + + + + + Bold + + + + + Italic + + + + + Underline + + + + + Font size + + + + + Strike through + + + + + Indicates whether the font is bold. + + + + + Indicates whether the font is underline. + + + + + Indicates whether the font is italic. + + + + + Specifies the font size. + + + + + Specifies the strike through type + + + + + Strike type enum for level styles. + + + + + Level properties + + + + + Run properties + + + + + Text alignment + + + + + Default tab size + + + + + East Asian line break + + + + + Font alignment + + + + + Indent value + + + + + Latin line break + + + + + Left Margin + + + + + Right Margin + + + + + Indicates whether the text is right to left + + + + + Run properties of the current level. + + + + + Text alignment type + + + + + Default tab size + + + + + East asian break. + + + + + Font alignment type. + + + + + Indent level. + + + + + Latin Break. + + + + + Left margin. + + + + + Right margin. + + + + + Indicates whether the text is right to left direction. + + + + + Level properties text align types. + + + + + Level properties font align types. + + + + + Outline Wrapper for Outline. Redirects the properties to the Outline + + + + + Contains outline information about. + + + + + Outline level. + + + + + Indicates whether object is collapsed. + + + + + Indicates whether object is hidden. + + + + + Index of extended format. + + + + + Row or column index. + + + + + Contains outline information about. + + + + + First Index of the row/column. + + + + + Last index of the row/column. + + + + + Indicates the Outline object + + + + + Indicates the Grouped range + + + + + Indicates the ExcelGroupBy type + + + + + Represents the outline first index + + + + + Represents the outline last index + + + + + + Represents the Outline range + + + + + Represents the Group by enumeration + + + + + Represents the Outline Level + + + + + Represents Is Collapsed property of IOutline + + + + + Represents Is Hidden property of IOutline + + + + + Represents the Extended format index of outline object + + + + + Represents the index value + + + + + Returns or sets the First Row/Column index for the Outline + + + + + Returns or sets the Last Row/Column index for the Outline + + + + + Returns or sets the IOutline object + + + + + Returns or sets the index value + + + + + Returns or sets the IRange value for a specified outline + + + + + Returns or sets the Excel Group by Enum value + + + + + Returns or sets the Extended format index value for an outline range + + + + + Returns or sets the IsHidden value for an outline + + + + + Returns or sets the IsCollapsed value for an outline + + + + + Returns or sets the outline level value for an outline + + + + + + This class contains utility methods, that cannot be logically placed in any other class. + + + + + Represents the outline levels dictionary collection + + + + + Represents the outline level order + + + + + + + + + + Adds the row level group. + + + + + Adds the row level group. + + + + + Ungroup the row level. + + + + + Ungroup the column level. + + + + + Adds the column level. + + + + + Adds the column level. + + + + + Inserts the levels as per key. + + + + + Returns or sets the outline dictionary collection + + + + + Adds the level into collection as per key. + + + + + This is the base class for all collections. + + + + + CollectionBase + + + + + + List with collection items. + + + + + Initializes a new instance of the class with the default initial capacity. + + + + + Initializes a new instance of the class with the specified capacity. + + The number of elements that the new list can initially store. + + + + Removes all objects from the System.Collections.CollectionBase instance. + + + + + Inserts an element into the list at the specified index. + + The zero-based index at which item should be inserted. + The object to insert. The value can be null for reference types. + + + + Returns an enumerator that iterates through this instance. + + An enumerator for this instance. + + + + Performs additional custom processes when clearing the contents of this instance. + + + + + Performs additional custom processes after clearing the contents of this instance. + + + + + Performs additional custom processes before inserting a new element into this instance. + + The zero-based index at which to insert value. + The new value of the element at index. + + + + Performs additional custom processes after inserting a new element into this instance. + + The zero-based index at which to insert value. + The new value of the element at index. + + + + Performs additional custom processes when removing an element from this instance. + + The zero-based index at which value can be found. + The value of the element to remove from index. + + + + Performs additional custom processes after removing an element from this instance. + + The zero-based index at which value can be found. + The value of the element to remove from index. + + + + Performs additional custom processes before setting a value in this instance. + + The zero-based index at which oldValue can be found. + The value to replace with newValue. + The new value of the element at index. + + + + Performs additional custom processes after setting a value in this instance. + + The zero-based index at which oldValue can be found. + The value to replace with newValue. + The new value of the element at index. + + + + Removes the element at the specified index of this instance. + + The zero-based index of the element to remove. + + + + Gets the index of the item + + + + + + + Adds the item. + + + + + + Checks whether the list contains the item. + + + + + + + Copies the array to specified index. + + + + + + + Removes the specified item. + + + + + + + Gets or sets the number of elements that the System.Collections.CollectionBase can contain. + + + + + Gets the number of elements contained in the System.Collections.CollectionBase instance. + + + + + Gets the list of elements in the instance. + + + + + Gets the list of elements in the instance. + + + + + Gets or sets the list of elements in the instance. + + + + + + + Gets if the collection is read-only. + + + + + An Application object that represents the Excel application. + + + + + The parent object for the specified object. + + + + + If True, events will not be raised; if False, events will be raised. + + + + + Default constructor. To prevent class creation by default constructor. + + + + + Creates collection and sets its Application and Parent values. + + + Application object that represents the Excel application. + + Parent object of this collection. + + + + This method raises the Changed event. + + + + + OnClear is invoked before Clear behavior. + + + + + OnClear is invoked after Clear behavior. + + + + + Performs additional processes before inserting + a new element into the collection. + + The zero-based index at which to insert value. + The new value of the element at index. + + + + Performs additional processes after inserting + a new element into the collection. + + The zero-based index at which to insert value. + The new value of the element at index. + + + + Performs additional processes before removing + an element from the collection. + + + The zero-based index at which the value can be found. + + + The value of the element to remove from index. + + + + + Performs additional processes after removing + an element from the collection. + + The zero-based index at which the value can be found. + The value of the element to remove from index. + + + + Performs additional processes before setting + a value in the collection. + + + The zero-based index at which oldValue can be found. + + The value to replace with newValue. + The new value of the element at index. + + + + Performs additional processes after setting a value in the collection. + + The zero-based index at which oldValue can be found. + The value to replace with newValue. + The new value of the element at the index. + + + + Method used to find parent within a specific type. + + Parent type to search. + Found parent if was parent was found or NULL otherwise. + + When there is cycle in object tree. + + + + + Method used to find parent within a specific type. + + Parent type to search. + Indicates whether to look into subclasses. + Found parent if was parent was found or NULL otherwise. + + When there is cycle in object tree. + + + + + Sets parent object for class. + + Parent object for sets. + + + + Creates copy of the collection. + + Parent object for the new collection. + A copy of the collection. + + + + Enlarges internal storage if necessary. + + Required size. + + + + Clear max values from dictionary. + + + + + Generates default name. + + Names collection. + Start string. + Returns string with new name. + + + + Generates default name. + + Names collection. + Start string. + Returns string with new name. + + + + Generates ID. + + Shape collection. + Returns new id. + + + + Generate default name. + + Start string. + Collection with names. + Returns new name. + + + + Changes name. + + Hash table with names + + + + + Read-only. An Application object that represents the Excel application. + + + + + Read-only. The parent object for the specified object. + + + + + Gets / sets whether class can raise events. + + + + + Application object. Read-only. + + + + + Gets maximum value collection + + + + + Change in the collection. + + + + + Raised by class before real cleaning of collection. + + + + + Raised by class after collection clean process. + + + + + Raised by class before item will be added into the collection. + + + + + Raised by class after item is added to the collection. + + + + + Raised by class before real item is removed from the collection. + + + + + Raised by class after item is removed from the collection storage + + + + + Raised by class before item is replaced in the collection. + + + + + Raised by class after item is replaced in the collection. + + + + + Delegate for Clear event. + + + + + Delegate for Change event. + + + + + Delegate for Set event. + + + + + Represents a collection of parameters collection. + + + + + Adds a parameter to the collection. + + Returns the newly added instance. + + To add a condition to the parameter we use method. It adds and returns a new parameter + object, that we can use to set and get parameter and properties. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Save and Dispose. + workbook.SaveAs("QueryTables.xlsx"); + workbook.Close(); + } + + + + + + Removes the parameter from the collection. + + Index of the parameter to be removed. + + The following code illustrates how to remove a particular condition from the parameter collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Save and Dispose. + workbook.SaveAs("QueryTables.xlsx"); + workbook.Close(); + } + + + + + + + Gets the number of parameters in the query table. Read-only. + + + returns the number of conditions applied. Here for example, we check value + before and after applying three conditions. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Save and Dispose. + workbook.SaveAs("QueryTables.xlsx"); + workbook.Close(); + } + + //Output will be + //3 + + + + + + Gets a parameter of the specified index from the collection. Read-only. + + + The following code illustrates how to access the first condition from . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Save and Dispose. + workbook.SaveAs("QueryTables.xlsx"); + workbook.Close(); + } + + + + + + Creates and add a new query table parameter to the collection. + + Name of the parameter + Data type of the parameter + Created parameter + + + + Creates a new query table parameter. + + Name of the parameter + Data type of the parameter + Created parameter + + + + Clones query table parameters collection. + + Parent object. + Returns cloned object. + + + + Dispose the parameters collection. + + + + + Represents the parameter used in a query table. + + + + + Represents the parameter used in a query table. + + + + + Set parameter type and value. + + + + + Gets or sets the data type of the query parameter. + + + + + Gets or sets the parameter type. + + + + + Returns the phrase that prompts the user for a parameter value in a parameter query. + + + + + The parameter value. + + + + + Returns a Range object that represents the cell that contains the value of the specified query parameter. + + + + + Returns or sets the name of the object. + + + + + True if the specified query table is refreshed whenever you change the parameter value of a parameter query. + + + + + Occurs while refresh the table whenever the parameter type is set as prompt. + + + + + Represents the data type of query parameter. + + + + + Represents the parameter type. + + + + + Represents the phrase that prompts the user for a parameter value in a parameter query. + + + + + Represents the parameter value. + + + + + Represents a Range object that represents the cell that contains the value of the specified query parameter. + + + + + Represents the name of the object. + + + + + True if the specified query table is refreshed whenever you change the parameter value of a parameter query. + + + + + Represents a Range address that represents the cell that contains the value of the specified query parameter. + + + + + byte value used as flag to maintains the value type + + + + + Initializes new instance of the query table parameter. + + Application object for the new shape. + Parent object for the new shape. + + + + Initializes new instance of the query table parameter. + + Application object for the new shape. + Parent object for the new shape. + Name of the parameter + Data type of the parameter + + + + Set parameter type and value. + + Parameter type. + Parameter value. + + + + Raise the prompt event. + + + True if the parameter value is set + + + + Clones query table parameter. + + Parent object. + Returns cloned object. + + + + Dispose the parameter. + + + + + Occurs while refresh the table whenever the parameter type is set as prompt. + + + + + Gets or sets the data type of the query parameter. + + + + + Gets or sets the parameter type. + + + + + Returns the phrase that prompts the user for a parameter value in a parameter query. + + + + + The parameter value. + + + + + Returns a Range object that represents the cell that contains the value of the specified query parameter. + + + + + Returns or sets the name of the object. + + + + + True if the specified query table is refreshed whenever you change the parameter value of a parameter query. + + + + + Represents a Range address that represents the cell that contains the value of the specified query parameter. + + + + + byte value used as flag to maintains the value type + + + + + Event delegate for UpdateNamedRange event. + + The CalcEngine. + The for this event. + + + + The event args for the UpdateNamedRange event, which is raised whenever the CalcEngine calculate the intersection range of two named range . + + + + + Gets or sets the value of the parameter. + + + + + Add the filter column filter to filter collections + + + + + + Get the filter column filter based on Index. + + + + + + + Range to which auto filter is applied + + + + + adding the pivot filter + + + + + + property of range to whcih filter is applied + + + + + get the pivot Filter based on Index + + + + + + + + + + + + Represents the pivot cell format + + + + + Represents Pivot Cell Format + + + + + Gets or sets the background color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.BackColor = ExcelKnownColors.Red; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets and sets the back ground RGB color. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.BackColorRGB = System.Drawing.Color.FromArgb(255, 255, 0, 0); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets and sets the pattern style from pivot cell format. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.PatternStyle=ExcelPattern.DarkVertical; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets RGB color to pattern. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.PatternStyle = ExcelPattern.DarkVertical; + cellFormat.PatternColorRGB = System.Drawing.Color.FromArgb(255, 255, 0, 0); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the pattern color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.PatternStyle = ExcelPattern.DarkVertical; + cellFormat.PatternColor = ExcelKnownColors.Green; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the Font color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.FontColor=ExcelKnownColors.Red; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets RGB color to font. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.FontColorRGB=System.Drawing.Color.FromArgb(255, 0, 0, 255); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets RGB color to font. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.FontSize = 14; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets RGB color to font. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.FontName = "Arial"; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets a boolean value indicating whether the font is bold. + + Default value is false. + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.Bold = true; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets a boolean value indicating whether the font is italic. + + Default value is false. + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.Italic = true; + + workbook.SaveAs("PivotFormat.xlsx"); + + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the underline type from the pivot cell format. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.Underline =ExcelUnderline.Single; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets a boolean value indicating whether the font is Strike. + + Default value is false. + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.StrikeThrough=true; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the Top Border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.TopBorderStyle=ExcelLineStyle.Thick; + cellFormat.TopBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets RGB color to Top border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.TopBorderStyle=ExcelLineStyle.Thick; + cellFormat.TopBorderColorRGB=System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the Top border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.TopBorderStyle=ExcelLineStyle.Thick; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the Horizontal Border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.HorizontalBorderStyle=ExcelLineStyle.Thick; + cellFormat.HorizontalBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets RGB color to horizontal border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.HorizontalBorderStyle=ExcelLineStyle.Thick; + cellFormat.HorizontalBorderColorRGB=System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the Horizontal border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.HorizontalBorderStyle = ExcelLineStyle.Thick; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the Vertical Border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.VerticalBorderStyle=ExcelLineStyle.Thick; + cellFormat.VerticalBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets RGB color to Vertical border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.VerticalBorderStyle=ExcelLineStyle.Thick; + cellFormat.VerticalBorderColorRGB=System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the Vertical border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.VerticalBorderStyle = ExcelLineStyle.Thick; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the bottom border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.BottomBorderStyle=ExcelLineStyle.Thick; + cellFormat.BottomBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets RGB color to bottom border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.BottomBorderStyle=ExcelLineStyle.Thick; + cellFormat.BottomBorderColorRGB=System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the bottom border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.BottomBorderStyle=ExcelLineStyle.Thick; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the right border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.RightBorderStyle=ExcelLineStyle.Thick; + cellFormat.RightBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets RGB color to right border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.RightBorderStyle=ExcelLineStyle.Thick; + cellFormat.RightBorderColorRGB=System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the right border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.RightBorderStyle=ExcelLineStyle.Thick; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the left border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.LeftBorderStyle=ExcelLineStyle.Thick; + cellFormat.LeftBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets RGB color to left border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.LeftBorderStyle=ExcelLineStyle.Thick; + cellFormat.LeftBorderColorRGB=System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the left border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.LeftBorderStyle=ExcelLineStyle.Thick; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Horizontal alignment. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + //Set alignment + cellFormat.HorizontalAlignment = ExcelHAlign.HAlignRight; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Indent level. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + //Set indent level + cellFormat.IndentLevel = 2; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Vertical alignment. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + //Set alignment + cellFormat.VerticalAlignment = ExcelVAlign.VAlignCenter; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the diagonal border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.DiagonalBorderStyle=ExcelLineStyle.Thick; + cellFormat.DiagonalBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets the diagonal border color (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.DiagonalBorderStyle = ExcelLineStyle.Thick; + cellFormat.DiagonalBorderColorRGB=System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets / sets line style of the diagonal border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.DiagonalBorderStyle=ExcelLineStyle.Thick; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Text direction, the reading order for far east versions. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + //Set reading order + cellFormat.ReadingOrder = ExcelReadingOrderType.RightToLeft; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + True - Indicates that text is wrapped at right border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + //Set wrap text + cellFormat.WrapText = true; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + True- Indicates that the contents are shrunk to fit into cell. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + //Set shrink to fit + cellFormat.ShrinkToFit = true; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Indicates whether cell with this XF is locked. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + + //Set FormulaHidden + cellFormat.FormulaHidden = true; + + //Set locked + cellFormat.Locked = true; + + //Enable sheet protection + worksheet.Protect("", ExcelSheetProtection.All); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Indicates whether formula is hidden. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + + //Set FormulaHidden + cellFormat.FormulaHidden = true; + + //Set locked + cellFormat.Locked = true; + + //Enable sheet protection + worksheet.Protect("", ExcelSheetProtection.All); + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Text rotation angle: + 0 Not rotated + 1-90 1 to 90 degrees counterclockwise + 91-180 1 to 90 degrees clockwise + 255 Letters are stacked top-to-bottom, but not rotated. + + + Thrown when value is more than 0xFF. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + //Set rotation + cellFormat.Rotation = 40; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets number format index of the conditional format rule. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + //Set number format index + cellFormat.NumberFormatIndex = 5; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Gets or sets number format of the conditional format rule. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + //Set number format + cellFormat.NumberFormat = "#,##0.00_);[Red](#,##0.00)"; + + workbook.SaveAs("PivotFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + } + + + + + + Conditional format color. Read-only. + + + + + Conditional format background color. Read-only. + + + + + Conditional format top border color. Read-only. + + + + + Conditional format bottom border color. Read-only. + + + + + Conditional format left border color. Read-only. + + + + + Conditional format right border color. Read-only. + + + + + Gets pivot cell format horizontal border color object. Read-only. + + + + + Gets pivot cell format vertical border color object. Read-only. + + + + + Get/set DiagonalUpBorder color. + + + + + Conditional format font color. Read-only. + + + + + True if Number format is present. False otherwise. + + + + + + Flag for cell protection (cell locked and formula hidden). + + + + + True if background color is present. otherwise, False. + + + + + True if the pivot cell format contains border formatting. otherwise, False. + + + + + True if the pivot cell format contains font color present. otherwise, Flase. + + + + + True if top border line style and color is modified. otherwise, False. + + + + + True if bottom border line style and color is modified. otherwise, False. + + + + + True if right border line style and color is modified. otherwise, False. + + + + + True if left border line style and color is modified. otherwise, False. + + + + + True if bottom border line style and color is modified. otherwise, False. + + + + + True if Horizontal border line style and color is modified. otherwise, False. + + + + + True if diagonal border line style and color is modified. otherwise, False. + + + + + True if the pivot cell format contains font formatting. otherwise, False. + + + + + True if the pivot cell format contains pattern formatting. otherwise, False. + + + + + True if the pivot cell format contains pattern format present. otherwise, Flase. + + + + + Parent pivot format. + + + + + Color object that stores pivot cell format background color. + + + + + Represent the fill pattern style. + + + + + Color object that stores pivot cell format color. + + + + + Color object that stores pivot cell format font color color. + + + + + Represent the font size. + + + + + Represent the font name. + + + + + Set the font style to bold or not. + + + + + Set the font style to italic or not. + + + + + Gets or sets the underline type for the conditional format. + + + + + Set the strike through to font or not. + + + + + Color object that stores pivot cell format top border color. + + + + + set the line style of the top border. + + + + + Color object that stores pivot cell format bottom border color. + + + + + set the line style of the bottom border. + + + + + Color object that stores pivot cell format right border color. + + + + + Set the line style of the right border. + + + + + Color object that stores pivot cell format left border color. + + + + + Set the line style of the left border. + + + + + Color object that stores pivot cell format diagonal border color. + + + + + Set the diagonal border line style. + + + + + Check the top border modified or not. + + + + + Check the bottom border modified or not. + + + + + Check the left border modified or not. + + + + + Check the right border modified or not. + + + + + Check the diagonal border modified or not. + + + + + Check the border format present or not. + + + + + Check the font color present or not. + + + + + Check the font format present or not. + + + + + Check the fill pattern back color modified or not. + + + + + Check the pattern format present or not. + + + + + Check the pattern Color modified or not. + + + + + Check the vertical border modified or not + + + + + Check the Horizontal border modified or not. + + + + + Color object that stores pivot cell format vertical border color. + + + + + Color object that stores pivot cell format horizontal border color. + + + + + Set the vertical border line style. + + + + + Set the horizontal border line style. + + + + + Horizontal alignment. + + + + + Indent level. + + + + + Vertical alignment. + + + + + Text rotation angle: + + + + + Text direction, the reading order for far east versions. + + + + + True - Indicates that text is wrapped at right border. + + + + + True- Indicates that the contents are shrunk to fit into cell. + + + + + Indicates whether cell with this XF is locked. + + + + + Indicates whether formula is hidden. + + + + + Represents the pivot table worksheet. + + + + + Number format index. + + + + + True if record contains number format. + + + + + Flag for horizontal and vertical alignment, text wrap, indentation, + orientation, rotation, and text direction. If False, the attribute + of parent style is used. + + + + + Flag for cell protection (cell locked and formula hidden). + + + + + Constructor to set the pivot cell format to set the parent pivot cell formats. + + + + + + Represent this method remove the pivot cell format in pivot cell format list. + + + + + Clone the pivot cell format and set the parent. + + pivot cell formats object + Clone pivot cell format + + + + Dispose the pivot cell format reference value. + + + + + Equals the pivot cell format object. + + pivot cell format object + True, If two pivot cell format is equal, Otherwise false. + + + + This method should be called after any changes. + Sets Saved property of the parent workbook to False. + + + + + Initializes color objects. + + + + + Update the top border color. + + + + + Update the bottom border color + + + + + Update the back color. + + + + + Update pattern Color. + + + + + Update left border color. + + + + + Update the right border Color. + + + + + Update the diagonal border Color. + + + + + Update the font Color. + + + + + Update the border style present. + + + + + Update the font format present. + + + + + Update the pattern format present. + + + + + Update the vertical border color. + + + + + Update the horizontal border color. + + + + + Gets and sets the pivot cell formats. + + + + + Gets or sets the pattern background color from predefined colors (). + + + + + Gets or sets the pattern background color (). + + + + + Gets or sets the fill pattern style. + + + + + Gets or sets the pattern background color from predefined colors (). + + + + + Gets or sets the color (). + + + + + Gets or sets the font color from predefined colors (). + + + + + Gets or sets the pattern background color (). + + + + + Represent the font size. + + + + + Represent the font name. + + + + + True if the bold is present font otherwise, False. + + + + + True if the italic is present font otherwise, False. + + + + + Gets or sets the underline type for the conditional format. + + + + + True if the strike through is present font otherwise, False. + + + + + Gets or sets the top border color from predefined colors (). + + + + + Gets or sets the top border color (). + + + + + Gets and sets the top border line style. + + + + + Gets and sets the vertical border color. + + + + + Gets or sets the vertical border color (). + + + + + Gets and sets the vertical border line style. + + + + + Gets and sets the horizontal border color. + + + + + Gets or sets the Horizontal border color (). + + + + + Gets and sets the Horizontal border line style. + + + + + Gets or sets the bottom border color from predefined colors (). + + + + + Gets or sets the bottom color (). + + + + + Gets or sets the bottom border line style. + + + + + Gets or sets the top right color from predefined colors (). + + + + + Gets or sets the right border color (). + + + + + Gets or sets the right border line style. + + + + + Gets or sets the left border color from predefined colors (). + + + + + Gets or sets the left border color (). + + + + + Gets or sets the left border line style. + + + + + True if top border line style and color is modified. otherwise, False. + + + + + True if bottom border line style and color is modified. otherwise, False. + + + + + True if right border line style and color is modified. otherwise, False. + + + + + True if left border line style and color is modified. otherwise, False. + + + + + True if diagonal border line style and color is modified. otherwise, False. + + + + + True if the pivot cell format contains font formatting. otherwise, False. + + + + + True if the pivot cell format contains pattern formatting. otherwise, False. + + + + + True if the pivot cell format contains pattern format present. otherwise, Flase. + + + + + True if background color is present. otherwise, False. + + + + + True if the pivot cell format contains border formatting. otherwise, False. + + + + + True if the pivot cell format contains font color present. otherwise, Flase. + + + + + Gets pivot cell format font color object. Read-only. + + + + + Gets pivot cell format color object. Read-only. + + + + + Gets pivot cell format back color object. Read-only. + + + + + Gets pivot cell format top border color object. Read-only. + + + + + Gets pivot cell format bottom border color object. Read-only. + + + + + Gets pivot cell format horizontal border color object. Read-only. + + + + + Gets pivot cell format vertical border color object. Read-only. + + + + + Gets pivot cell format right border color object. Read-only. + + + + + Gets table style eleement left border color object. Read-only. + + + + + True if bottom border line style and color is modified. otherwise, False. + + + + + True if Horizontal border line style and color is modified. otherwise, False. + + + + + Horizontal alignment. + + + + + Indent level. + + + + + Vertical alignment. + + + + + Get/set DiagonalUpBorder color. + + + + + Gets or sets the diagonal border color from predefined colors (). + + + + + Gets or sets the diagonal border color (). + + + + + Gets / sets line style of the diagonal border. + + + + + Text direction, the reading order for far east versions. + + + + + True - Indicates that text is wrapped at right border. + + + + + True- Indicates that the contents are shrunk to fit into cell. + + + + + Indicates whether cell with this XF is locked. + + + + + Indicates whether formula is hidden. + + + + + Text rotation angle: + 0 Not rotated + 1-90 1 to 90 degrees counterclockwise + 91-180 1 to 90 degrees clockwise + 255 Letters are stacked top-to-bottom, but not rotated. + + + Thrown when value is more than 0xFF. + + + + + Gets or sets number format index of the conditional format rule. + + + + + Gets or sets number format of the conditional format rule. + + + + + True if Number format is present. False otherwise. + + + + + + Flag for cell protection (cell locked and formula hidden). + + + + + Represents the pivot cell format wrapper + + + + + Parent pivot format + + + + + Array that contains all cells. + + + + + Represents the pivot table worksheet. + + + + + Constructor to set the pivot cell format Wrapper from pivot cell formats collection. + + pivot formats collection + pivot cell formats collection + + + + Represent this method remove the pivot cell format in pivot cell format list. + + + + + Dispose the pivot cell format reference value. + + + + + Equals the pivot cell format object. + + pivot cell format object + True, If two pivot cell format is equal, Otherwise false. + + + + This method should be called after any changes. + Sets Saved property of the parent workbook to False. + + + + + Gets or sets the pattern background color from predefined colors (). + + + + + Gets or sets the pattern background color (). + + + + + Gets or sets the fill pattern style. + + + + + Gets or sets the pattern background color from predefined colors (). + + + + + Gets or sets the color (). + + + + + Gets or sets the font color from predefined colors (). + + + + + Gets or sets the pattern background color (). + + + + + Represent the font size. + + + + + Represent the font Name. + + + + + True if the bold is present font otherwise, False. + + + + + True if the italic is present font otherwise, False. + + + + + Gets or sets the underline type for the conditional format. + + + + + True if the strike through is present font otherwise, False. + + + + + Gets or sets the top border color from predefined colors (). + + + + + Gets or sets the top border color (). + + + + + Gets and sets the top border line style. + + + + + Gets and sets the vertical border color. + + + + + Gets or sets the vertical border color (). + + + + + Gets and sets the vertical border line style. + + + + + Gets and sets the horizontal border color. + + + + + Gets or sets the Horizontal border color (). + + + + + Gets and sets the Horizontal border line style. + + + + + Gets or sets the bottom border color from predefined colors (). + + + + + Gets or sets the bottom color (). + + + + + Gets or sets the bottom border line style. + + + + + Gets or sets the top right color from predefined colors (). + + + + + Gets or sets the right border color (). + + + + + Gets or sets the right border line style. + + + + + Gets or sets the left border color from predefined colors (). + + + + + Gets or sets the left border color (). + + + + + Gets or sets the left border line style. + + + + + True if top border line style and color is modified. otherwise, False. + + + + + True if bottom border line style and color is modified. otherwise, False. + + + + + True if right border line style and color is modified. otherwise, False. + + + + + True if left border line style and color is modified. otherwise, False. + + + + + True if diagonal border line style and color is modified. otherwise, False. + + + + + True if the pivot cell format contains font formatting. otherwise, False. + + + + + True if the pivot cell format contains pattern formatting. otherwise, False. + + + + + True if the pivot cell format contains pattern format present. otherwise, Flase. + + + + + True if background color is present. otherwise, False. + + + + + True if the pivot cell format contains border formatting. otherwise, False. + + + + + True if the pivot cell format contains font color present. otherwise, Flase. + + + + + Gets pivot cell format font color object. Read-only. + + + + + Gets pivot cell format color object. Read-only. + + + + + Gets pivot cell format back color object. Read-only. + + + + + Gets pivot cell format top border color object. Read-only. + + + + + Gets pivot cell format bottom border color object. Read-only. + + + + + Gets pivot cell format horizontal border color object. Read-only. + + + + + Gets pivot cell format vertical border color object. Read-only. + + + + + Gets pivot cell format right border color object. Read-only. + + + + + Gets table style eleement left border color object. Read-only. + + + + + True if bottom border line style and color is modified. otherwise, False. + + + + + True if Horizontal border line style and color is modified. otherwise, False. + + + + + Horizontal alignment. + + + + + Indent level. + + + + + Vertical alignment. + + + + + Get/set DiagonalUpBorder color. + + + + + Gets or sets the diagonal border color from predefined colors (). + + + + + Gets or sets the diagonal border color (). + + + + + Gets / sets line style of the diagonal border. + + + + + Text direction, the reading order for far east versions. + + + + + True - Indicates that text is wrapped at right border. + + + + + True- Indicates that the contents are shrunk to fit into cell. + + + + + Indicates whether cell with this XF is locked. + + + + + Indicates whether formula is hidden. + + + + + Text rotation angle: + 0 Not rotated + 1-90 1 to 90 degrees counterclockwise + 91-180 1 to 90 degrees clockwise + 255 Letters are stacked top-to-bottom, but not rotated. + + + Thrown when value is more than 0xFF. + + + + + Gets or sets number format index of the conditional format rule. + + + + + Gets or sets number format of the conditional format rule. + + + + + True if Number format is present. False otherwise. + + + + + + Flag for cell protection (cell locked and formula hidden). + + + + + Filter operator of the custom filter + + + + + String value of the customer filters + + + + + Property for filter operator of the custom filter. + + + + + Property for string value of the custom filter. + + + + + Relative date filter type used. + + + + + Relative date filter type used. + + + + + adding the pivot filter + + + + + + get the pivot Filter based on Index + + + + + + + Get the count of the custom filters. + + + + + Represents an item in PivotTable field. The items are the individual data entries in a field category. + + + + + Gets or sets a Boolean value indicating the visibility of pivot field item. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a Visible property in pivot field item. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + IPivotField pivotField = pivotTable.Fields[1]; + + //Sets a Boolean value indicating the visibility of pivot field item. + pivotField.Items[0].Visible = false; + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets position of the field (first, second, third and so on). + + To know more about Pivot Tables refer this link. + + + The following code illustrates setting the position of Pivot field item. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + IPivotField pivotField = pivotTable.Fields[1]; + + //Sets position of the field + pivotField.Items[0].Position = 2; + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the text of the field item. + + + The following code illustrates setting the text of Pivot field item. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + IPivotField pivotField = pivotTable.Fields[1]; + + //Sets the text of the field item. + pivotField.Items[0].Text = "SampleText"; + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Member for setting the visibility of each field item. + + + + + Parent(field) of item . + + + + + Represents the item name. + + + + + Represents the item attributes. + + + + + + Gets or sets the name of the field item. + + + + + Get/set the parent of the items (ie. Field) + + + + + Get /set the visibity of each item of field + + + + + + Gets or sets the item attributes. + + + + + Parent(field) of item . + + + + + Represents the item name. + + + + + Represents the current field index. + + + + + Represents the current index of item collection. + + + + + Represents the inner items. + + + + + Indicates whether this is subtotal or not. + + + + + Initializes new instance of the pivot inner item. + + Name of the instance. + Parent of the instance. + + + + Initializes new instance of the pivot inner item. + + List of PivotInnerItem that the index find from. + Name of the PivotInnerItem. + Returns the PivotInnerItem index + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Parent(field) of item . + + + + + Represents the item name. + + + + + Represents the current field index. + + + + + Represents the current field index. + + + + + Represents the inner items. + + + + + Indicates whether this is subtotal or not. + + + + + Represents the pivot area reference. + + + + + Represents the inner items. + + + + + Represents the current index of item collection. + + + + + Represents the current child index . + + + + + Initializes new instance of the Reference. + + + + + Initializes new instance of the Reference. + + Current index of the reference. + Pivot area reference. + + + + Represents the pivot area reference. + + + + + Represents the inner items. + + + + + Represents the current index . + + + + + Represents the current child index . + + + + + Represents a collection of in a PivotTable field. + + + + + Gets the from the collection with the specified index. Read-only. + + Index of the required item. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a index property in pivot field item. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + IPivotField pivotField = pivotTable.Fields[1]; + + //Gets the field item from the collection with the specified index + pivotField.Items[0].Visible = false; + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the from the collection based on the specified text. Read-only. + + The text value in the required item. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a FilterText property in pivot field item. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + IPivotField pivotField = pivotTable.Fields[1]; + + //Gets the field item from the collection based on the specified text + pivotField.Items["Andrew"].Position = 4; + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the count of field items in the collection. Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a Count property in pivot field item collections. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + IPivotField pivotField = pivotTable.Fields[1]; + + //Gets the count of field items in the collection + int pivotItemCount = pivotField.Items.Count; + if(pivotItemCount > 0) + { + //Your Code Here + } + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Adding the pivot filter item. + + Field of the item. + Cache field value of the item. + Text value of the item. + + + + Adds the pivot filter item to the collection. + + PivotField to whih the item belongs to. + Pivot field item value. + Item attributes for the pivot field item. + + + + Gets position of the given pivot field item among the pivot field items collection. + + Pivot field item in the field. + Position of the item among the pivot field items collection. + + + + Sets position of the given pivot field item among the pivot field items collection. + + Pivot field item in the field. + + + + Clears the pivot field item collection. + + + + + get the pivot items based on index + + + + + + + Get the field items based on filter text + + + + + + + Represents a collection of in the pivot table. + + + + + Adds a to the collection. + + Returns an object. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to add filter using add method in the pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.Fields[1]; + field.PivotFilters.Add(PivotFilterType.ValueBetween, field, "50", "80"); + + //Adds filter to the pivot field + field.PivotFilters.Add(); + field.PivotFilters[0].Value1 = "1"; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Adds filter with Value/Label based on the specified filter values. + + Type of the filter. + Data field to which filter is applied (Data Field must not be null for Value filter). + Filter value 1. + Filter value 2. + Returns an object. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to add filter using add method in the pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.Fields[1]; + + //Adds filter with Value/Label based on the specified filter values + field.PivotFilters.Add(PivotFilterType.ValueBetween, field, "50", "80"); + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Remove the filters from a pivot field. + + + The following code illustrates how to remove pivot filters from a pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IPivotTable pivotTable = worksheet.PivotTables[0]; + //Apply page field filter + IPivotField pageField = pivotTable.Fields[0]; + + //Remove Pivot filters + pageField.PivotFilters.Remove(); + + //Save and dispose + workbook.SaveAs("Output.xlsx"); + workbook.Close(); + } + + + + + + Gets from the collection with the specified index. Read-only. + + Index of the IPivotFiter. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to add filter using add method in the pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.Fields[1]; + field.PivotFilters.Add(PivotFilterType.ValueBetween, field, "50", "80"); + field.PivotFilters.Add(); + + //Sets the value for filter + field.PivotFilters[0].Value1 = "1"; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the Parent of the filter. Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use Parent property in the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.Fields[1]; + + //Gets the Parent field of the filter + IPivotField parent = field.PivotFilters.Parent; + if(parent != null) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Pivot value (or) Label filter + + + + + + + + + + Adding the pivot value (or) label filter to pivot field. + + Type of the pivot filter. + Datafield to which pivot filter is applied. + Value 1 of the pivot filter. + value 2 of the pivot filter. + + + + + Check whether values is Integer. + + + + + + + Get operator method of pivot filter + + + + + + + Get value method of pivot filter + + + + + + + Get dynamic filter type of pivot filter + + + + + + + Remove the filters from a pivot field. + + + + + Property for ValueLabel filter + + + + + + + + + + Zero-based index indicating the AutoFilter column to which this filter information applies + + + + + Flag indicating whether the AutoFilter button for this column is hidden. + + + + + Flag indicating whether the filter button is visible. + + + + + Custom filter. + + + + + Filter column type filter. + + + + + Top 10 filter + + + + + Dynamic filter + + + + + Zero-based index indicating the AutoFilter column to which this filter information applies + + + + + Flag indicating whether the AutoFilter button for this column is hidden. + + + + + Flag indicating whether the filter button is visible. + + + + + Custom filter + + + + + Filter Column Filter + + + + + Top 10 filter + + + + + Dynamic filter + + + + + Represents a pivot filter which is applied to . + + + + + Gets or sets the formula for the calculated field. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use Value1 property in the pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.Fields[1]; + field.PivotFilters.Add(PivotFilterType.ValueBetween, field, "50", "80"); + field.PivotFilters.Add(); + + //Sets the value for filter + field.PivotFilters[0].Value1 = "1"; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Pivot Filter collection. + + + + + Assign pivot filter items. + + + + + + Updates the pivot field items from its cache field. + + The pivotField whose fields are to be updated. + The pivot table with the pivot field. + The pivot filter value. + + + + Represents pivot format. + + + + + Represents the Format pivot area. + + + + + Represents the Pivot Cell Format. + + + + + Represents the parent pivot formats. + + + + + Represents the parent pivot table. + + + + + Clone the corresponding pivot format. + + Parent of pivot format. + Clone pivot format object + + + + Represents the Format pivot area. + + + + + Represents the Pivot Cell Format. + + + + + Represents the parent pivot table. + + + + + Represents pivot formats collection. + + + + + Add the pivot format to the collection. + + + + + + Add the pivot format to the collection. + + + + + + Check if the pivot format exists in the collection. + + + True if the pivot format exists in the collection, Otherwise False. + + + + Check if the pivot format exists in the collection and the return the index of the format. + + + Return the index of the pivot format. + + + + Clone the corresponding pivot formats. + + Parent of pivot formats. + Clone pivot formats object + + + + Returns the parent pivot table. + + + + + Returns a single pivot format from the collection. + + + + + Returns the pivot format collection. + + + + + Specifies the description of the pivot filter. + + + + + Specifies the evaluation order of the pivot filter + + + + + Specifies the index of the field to which this pivot filter belongs. + + + + + Specifies the unique identifier of the pivot filter as assigned by the PivotTable + + + + + Specifies the string value "1" used by label pivot filters. + + + + + Specifies the string value "2" used by label pivot filters. + + + + + Pivot filter type. + + + + + Specifies the index of the measure field + + + + + Specifies the index of the measure Hier field + + + + + adding the pivot filter + + + + + + Specifies the description of the pivot filter. + + + + + Specifies the evaluation order of the pivot filter + + + + + Specifies the index of the field to which this pivot filter belongs. + + + + + Specifies the index of the measure field + + + + + Specifies the index of the measure Hier field + + + + + Specifies the unique identifier of the pivot filter as assigned by the PivotTable + + + + + Specifies the string value "1" used by label pivot filters. + + + + + Specifies the string value "2" used by label pivot filters. + + + + + Pivot filter type + + + + + get the pivot Filter based on Index + + + + + + + + + + + + Remove the filter from filter collections of pivot table. + + + + + + adding the pivot filter + + + + + + get the pivot Filter based on Index + + + + + + + + + + + + Represents the layout of the pivot table. + + + + + + + + + + Maximum Row Count + + + + + Maximum Column Count + + + + + + + + + + + + + Inner list of pivot value collection + + pivot value row index + list of pivot value for particular row index + + + + Class used for rendering the Pivot Table style in the PDF page. + + + + + Represents the worksheet object + + + + + The actual cell value in the range which is used to perform the comparison for this filter. + + + + + Value of the top 10 filter. + + + + + Flag indicating whether or not to filter by percent value of the column + + + + + Flag indicating whether or not to filter by top order + + + + + The actual cell value in the range which is used to perform the comparison for this filter. + + + + + Property for specifying the value of the top 10 filter. + + + + + Flag indicating whether or not to filter by percent value of the column + + + + + Flag indicating whether or not to filter by top order + + + + + Specifies the cell type in the pivot table. + + + + + None. + + + + + Row header. + + + + + Column header. + + + + + Grand total for rows. + + + + + Sub total for rows. + + + + + Sub total for Columns. + + + + + Grand total for Columns. + + + + + Value cell. + + + + + Enumeration values representing various pivot table parts. + + + + + Represents the whole table. + + + + + Represents labels for the page fields. + + + + + Represents values for the page fields. + + + + + Represents the first column stripe. + + + + + Represents the second column stripe. + + + + + Represents the first row stripe. + + + + + Represents the second row stripe. + + + + + Represents the first column of the pivot table. + + + + + Represents the header row of the pivot table. + + + + + Represents the first cell in the header row of the pivot table. + + + + + Represents first subtotal column in the pivot table. + + + + + Represents second subtotal column in the pivot table. + + + + + Represents the third subtotal column in the pivot table. + + + + + Represents a blank row in the pivot table. + + + + + Represents first subtotal row in the pivot table. + + + + + Represents second subtotal row in the pivot table. + + + + + Represents the third subtotal row in the pivot table. + + + + + Represents the first column sub-heading in the pivot table. + + + + + Represents the second column sub-heading in the pivot table. + + + + + Represents the third column sub-heading in the pivot table. + + + + + Represents the first row sub-heading in the pivot table. + + + + + Represents the second row sub-heading in the pivot table. + + + + + Represents the third row sub-heading in the pivot table. + + + + + Represents the Grand Total column in the pivot table. + + + + + Represents the Grand Total row in the pivot table. + + + + + Represents no part of pivot table. + + + + + Represents a collection of Pivot values in the pivot table. + + + + + Specify the immediate row header for any pivot value. + + + + + Specify the immediate column header for any pivot value + + + + + Specifies the cell type. + + + + + Specifies the Value + + + + + + + + + + Pivot value collections + + + + + Gets or sets the style for the pivot table part. + + + + + Gets or sets the immediate row header for any pivot value. + + + + + gets or sets the immediate column header for any pivot value. + + + + + Gets or sets the the cell type. + + + + + Gets or sets the pivot table value. + + + + + Represents the extended format record of the pivot table cell. + + + + + Represents pivot value filter or pivot label filter object. + + + + + Gets the first filter value of the pivot table. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use first value property in the pivot table filters. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.Fields[1]; + IPivotValueLableFilter pivotLabelValue = field.PivotFilters.Add(PivotFilterType.ValueBetween, field, "50", "80"); + + //Gets the first filter value of the pivot table + string value1 = pivotLabelValue.Value1; + if(value1 != string.Empty) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the second filter value of the pivot table. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use second value property in the pivot table filters. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.Fields[1]; + IPivotValueLableFilter pivotLabelValue = field.PivotFilters.Add(PivotFilterType.ValueBetween, field, "50", "80"); + + //Gets the second filter value of the pivot table + string value2 = pivotLabelValue.Value2; + if(value2 != string.Empty) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets data field using to which the filter is applied. Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use DataField property in the pivot table filters. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.Fields[1]; + IPivotValueLableFilter pivotLabelValue = field.PivotFilters.Add(PivotFilterType.ValueBetween, field, "50", "80"); + + //Gets data field to which the filter is applied + IPivotField filterField = pivotLabelValue.DataField; + if(pivotLabelValue != null) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the of the pivot filter applied to the data field. Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use filter Type property in the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.Fields[1]; + IPivotValueLableFilter pivotLabelValue = field.PivotFilters.Add(PivotFilterType.ValueBetween, field, "50", "80"); + + //Gets type of the pivot filter applied to the data field + PivotFilterType filterType = pivotLabelValue.Type; + if(filterType == PivotFilterType.ValueBetween) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Values 1 of the pivot filter + + + + + Value 2 of the pivot filter + + + + + Types of the filter applied to pivot filter. + + + + + Field to which filter is applied + + + + + Value 1 of the pivot filter. + + + + + Value 2 of the pivot filter. + + + + + Type of the pivot filter applied to pivot table. + + + + + Fiedl to which pivot filter is applied. + + + + + Represents the Autoshape. + + + + + Class used for Shape Implementation. + + + + + Represents a shape. + + + + + Removes this from collection. + + + The following code illustrates how to remove a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 100); + worksheet.Shapes.AddAutoShapes(AutoShapeType.Cube, 5, 5, 20, 100); + + //Remove a shape + worksheet.Shapes[0].Remove(); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Scales the shape. + + Width scale in percents. + Height scale in percents. + + The following code illustrates how to scale a shape after adding it. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 100); + + //Set scaling + shape.Scale(50, 50); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Height of the shape. + + + The following code illustrates how to set and get shape's height using Height property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + IComboBoxShape comboBox = worksheet.Shapes.AddComboBox(); + + //Set dimensions + comboBox.Left = 140; + comboBox.Top = 150; + comboBox.Height = 20; + comboBox.Width = 100; + + //Get dimensions + Console.WriteLine(shape.Width); + Console.WriteLine(shape.Height); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //70 + //20 + + + + + + Gets or sets the height of the Shape expressed in decimal units. + + + The following code illustrates how to set and get shape's height using Height property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + IComboBoxShape comboBox = worksheet.Shapes.AddComboBox(); + + //Set dimensions + comboBox.Left = 140; + comboBox.Top = 150; + comboBox.HeightDouble = 20.77; + comboBox.Width = 100; + + //Get dimensions + Console.WriteLine(shape.Width); + Console.WriteLine(shape.Height); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //70 + //20 + + + + + + Shape id. + + + The following code illustrates how to access Id property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + IShape checkBox = worksheet.Shapes.AddCheckBox(); + + //Set dimensions + checkBox.Left = 150; + checkBox.Top = 150; + checkBox.Width = 70; + checkBox.Height = 20; + + //Get ID + Console.WriteLine(checkBox.Id); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //0 + + + + + + Left position of the shape. + + + The following code illustrates how to set and get left side spacing for the shape using Left property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + IComboBoxShape comboBox = worksheet.Shapes.AddComboBox(); + + //Set dimensions + comboBox.Left = 140; + comboBox.Top = 150; + comboBox.Height = 20; + comboBox.Width = 100; + + //Get dimensions + Console.WriteLine(shape.Width); + Console.WriteLine(shape.Height); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //70 + //20 + + + + + + Gets or sets the left position of the Shape expressed in decimal units. + + + The following code illustrates how to set and get left side spacing for the shape using Left property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + IComboBoxShape comboBox = worksheet.Shapes.AddComboBox(); + + //Set dimensions + comboBox.LeftDouble = 149.87; + comboBox.Top = 150; + comboBox.Height = 20; + comboBox.Width = 100; + + //Get dimensions + Console.WriteLine(shape.Width); + Console.WriteLine(shape.Height); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //70 + //20 + + + + + + Name of the shape. + + + The following code illustrates how to access Name property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + IShape checkBox = worksheet.Shapes.AddCheckBox(); + + //Set dimensions + checkBox.Left = 150; + checkBox.Top = 150; + checkBox.Width = 70; + checkBox.Height = 20; + + //Get name + Console.WriteLine(checkBox.Name); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //CheckBox1 + + + + + + Top position of the shape. + + + The following code illustrates how to set and get top spacing for the shape using Top property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + IComboBoxShape comboBox = worksheet.Shapes.AddComboBox(); + + //Set dimensions + comboBox.Left = 140; + comboBox.Top = 150; + comboBox.Height = 20; + comboBox.Width = 100; + + //Get dimensions + Console.WriteLine(shape.Width); + Console.WriteLine(shape.Height); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //70 + //20 + + + + + + Gets or sets the top position of the Shape expressed in decimal units. + + + The following code illustrates how to set and get top spacing for the shape using Top property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + IComboBoxShape comboBox = worksheet.Shapes.AddComboBox(); + + //Set dimensions + comboBox.Left = 140; + comboBox.TopDouble = 150.66; + comboBox.Height = 20; + comboBox.Width = 100; + + //Get dimensions + Console.WriteLine(shape.Width); + Console.WriteLine(shape.Height); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //70 + //20 + + + + + + Width of the shape. + + + The following code illustrates how to set and get the width of the shape using Width property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + IComboBoxShape comboBox = worksheet.Shapes.AddComboBox(); + + //Set dimensions + comboBox.Left = 140; + comboBox.Top = 150; + comboBox.Height = 20; + comboBox.Width = 100; + + //Get dimensions + Console.WriteLine(shape.Width); + Console.WriteLine(shape.Height); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //70 + //20 + + + + + + Gets or sets the width of the Shape expressed in decimal units. + + + The following code illustrates how to set and get the width of the shape using Width property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + IComboBoxShape comboBox = worksheet.Shapes.AddComboBox(); + + //Set dimensions + comboBox.Left = 140; + comboBox.Top = 150; + comboBox.Height = 20; + comboBox.WidthDouble = 99.99; + + //Get dimensions + Console.WriteLine(shape.Width); + Console.WriteLine(shape.Height); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //70 + //20 + + + + + + Shape type. + + + The following code illustrates how to access ShapeType property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Get shape type + Console.WriteLine(shape.ShapeType); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //AutoShape + + + + + + Indicates whether shape is visible. + + + The following code illustrates how to set visibility of the shape. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set shape visibility + shape.IsShapeVisible = false; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Alternative text. + + + The following code illustrates how to set AlternativeText for the shape. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set alternate text + shape.AlternativeText = "Rectangle Shape"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether shape must be moved with cells. + + + By default IsMoveWithCell property is set to "true" so the shape will be moving along the cell if the cell's width is increased or decreased. + Here for example, we set IsMoveWithCell to "false". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + + //Set move with cells + shape.IsMoveWithCell = false; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether shape must be sized with cells. + + + By default IsSizeWithCell property is set to "false" so the shape's size will is not changed if the cell's height and width are changed. + Here for example, we set IsSizeWithCell to "true". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + + //Set size with cells + shape.IsSizeWithCell = true; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents fill properties. Read-only. + + + The following code illustrates how to access Fill property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set fill + IFill fill = shape.Fill; + + //Set fill color + fill.ForeColorIndex = ExcelKnownColors.Red; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents line format properties. Read-only. + + + The following code illustrates how to access Line property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set line color + lineFormat.ForeColorIndex = ExcelKnownColors.Red; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets macro associated with this shape + + + + + Gets the Shadow of the shape + + + The following code illustrates how to access Shadow property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set shadow + IShadow shadow = shape.Shadow; + + //Set shadow properties + shadow.Distance = 40; + shadow.Size = 150; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets the Three dimensional format of the shape. + + + The following code illustrates how to access ThreeD property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set 3D format + IThreeDFormat format = shape.ThreeD; + + //Set material + format.Material = Excel2007ChartMaterialProperties.TranslucentPowder; + + //Save and dispose + workbook.SaveAs("Shapes3D.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the rotation of the shape, in degrees. + + + The following code illustrates how to set ShapeRotation property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set shape rotation + shape.ShapeRotation = 35; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Returns a object that contains the + alignment and anchoring properties for the specified shape. Read-only. + + + The following code illustrates how to access TextFrame property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text range + ITextRange textRange = textFrame.TextRange; + + //Set text + textRange.Text = "Sample"; + + //Set alignment + textFrame.HorizontalAlignment = ExcelHorizontalAlignment.Right; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Get object that represents the for the shape. + + + To know more about HyperLinks refer Hyperlinks on Shapes. + + + The following code illustrates how to set and access HyperLink in Shapes. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Add hyperlink + IHyperLink hyperLink = worksheet.HyperLinks.Add(shape, ExcelHyperLinkType.Url, "http://www.syncfusion.com", "Syncfusion"); + + //Set hyperlink + IHyperLink link = shape.Hyperlink; + + //Get address + Console.Write(link.Address); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //http://www.syncfusion.com + + + + + + Implement objects that contains Name. + + + + + Gets or sets the name of the object. + + + + + Represents alpha constant, that represents index in ExcelKnownColors structures. + + + + + Value of SizeTextToFitShape option when it is set to false. + + + + + Value of SizeTextToFitShape option when it is set to true. + + + + + Value of NoFillHitTest option. + + + + + Offset for full column. + + + + + Offset for full row. + + + + + Represents default line weight. + + + + + Represents default transparency mull. + + + + + Represents default transparency mull multiplied by 100. + + + + + Represents default line weight mull. + + + + + Represents maximum shape width and height in pixel. + + + + + Represents minimum shape width and height in pixel. + + + + + Default foreground color. + + + + + Default background color. + + + + + Represents default parent types. + + + + + Fill options. + + + + + Represent the shape start x position inside the chart. + + + + + Represent the shape start y position inside the chart. + + + + + Represent the shape to x position inside the chart. + + + + + Represent the shape to y position inside the chart. + + + + + Represent the shape X position inside the chart. + + + + + Represent the shape Y position inside the chart. + + + + + Represent the shape width inside the chart. + + + + + Represent the shape height inside the chart. + + + + + Indicates if this shape support shape color-line options. + + + + + Indicate if comments is valid or not + + + + + Indicate if left value is set. + + + + + Name of the shape. + + + + + Name of assigned Macro Name + + + + + Alternative text. + + + + + Shape's record. + + + + + Parent workbook for the shape. + + + + + Type of the shape. + + + + + Shape record. + + + + + Client anchor record. + + + + + Preset Geometry element specifies when a preset geometric shape should be used instead of a custom geometric shape. + + + + + Parent shapes collection. + + + + + OBJ record. + + + + + Shape's options. + + + + + Absolute coordinates of the shape in pixels. + + + + + Represents fill properties. + + + + + Represents shape line format. + + + + + Indicates is parse or serialize Line fill properties. + + + + + This object contains not parsed xml data. + + + + + This object contains not parsed type stream data. + + + + + Preserved relation to the image. + + + + + Preserved relation id. + + + + + Indicates whether we have to update absolute positions after setting TopRow, + BottomRow, LeftColumn, RightColumn. + + + + + Indicates whether shape is vml shape or not. + + + + + Id of this shape. + + + + + Macrolink of this shape + + + + + Tokens containing reference to the associated macro. + + + + + Visibility of the shape. + + + + + Represents Shadow + + + + + Represents the 3D features + + + + + Represens the Child Shapes in the Group. + + + + + Child Client anchor record. + + + + + Unknown record. + + + + + Preserves the Style properties. + + + + + Preserves the Style properties as string value. + + + + + FormulaMacro maintain as stream + + + + + Indicates the whether the shape has the borders. + + + + + Stream to preserve the Slicers graphic frame + + + + + Anchor type + + + + + Stream to preserve the ExtLst of picture. + + + + + Get object that represents the hyperlink for the shape. + + + + + Dictionary to have preserved streams of shape properties + + + + + Indicates whether custom geometry will be used for this shape. + + + + + + + Represents the group frame of the shape. + + + + + Indicates whether the group shape contains fill. + + + + + Indicates whether the group shape contains line. + + + + + Indicates whether the shape is slicer shape or not. + + + + + Indicates whether extent tag is present or not. + + + + + Serialize FOPTE structure. + + Parent collection. + Structure id to serialize. + Array of byte - main byte of structure. + + + + Serialize FOPTE structure. + + Parent collection. + Structure id to serialize. + Array of byte - main byte of structure. + Represents additional data. + Represents if valid + + + + Serialize FOPTE structure. + + Parent collection. + Structure id to serialize. + Represents UInt value of structure. + + + + Serialize FOPTE structure. + + Parent collection. + Structure id to serialize. + Represents int value of structure. + Represents additional data. + Represents if valid + + + + Indicates whether text frame should be autosized. + + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + Current object to clone. + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + Array of records that contains the record for new shape. + Index of the records for new shape. + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + Shape container record that describes the new shape. + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + Shape container record that describes the new shape. + Parse options. + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + Record that describes the new shape. + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + Record that describes the new shape. + Parse options. + + + + Creates default fill and line formatting options. + + + + + Parses shape container record. + + + + + Parses shape container record. + + Parse options. + + + + Parses client data record. + + Record to parse. + Parse options. + + + + Parses all unknown records (should be overridden in child classes). + + Record to parse. + Parse options. + + + + Parses options. + + Options to parse. + + + + Parses fill options. + + Represents single fill option + Returns true if parsed correctly. + + + + Parses option record. + + Record to parse. + Value indicating fill option. + + + + Parses shape record. + + Record to parse. + + + + Parses client anchor record. + + Record to parse. + + + + Searches for all necessary parent objects. + + + + + Change the parent for the shape. + + + + + Raises events. + + + + + Suppress events. + + + + + Parses shape group record. + + Record to parse. + + + + Parses shape group container. + + Container to parse. + + + + Parses child anchor record. + + Record to parse. + + + + Parses Unknown record. + + Record to parse. + + + + Converts option value to color. + + Option to convert. + Corresponding color value. + + + + Gets single byte by index for forte structure. + + Represents current FORTE structure. + Byte index. + Returns single byte by index. + + + + Extracts shape name from option. + + Option that contains shape name. + Name extracted. + + + + Extracts all necessary option. + + Represents option holder. + + + + Extract necessary option. + + Option to extract. + Value indicating extracted option. + + + + Removes this shape from the collection. + + + + + Scales the shape. + + Width scale in percent. + Height scale in percent. + + + + Detaches events and disposes current object. + + + + + Serializes shape into shape group container. + + Shape group container that will receive shape data. + + + + Serializes shape into shape group container. + + Shape group container that will receive shape data. + + + + Serializes shape record (MsofbtSp) into shape group container. + + Shape group container that will receive shape data. + + + + Serializes shape record (MsofbtSp) into shape group container. + + Shape group container that will receive shape data. + + + + Serializes mso options. + + Represents mso container. + + + + Serialize mso options. + + Represents option record. + Returns option record, initialized by option values. + + + + Serialize transparency option. + + Represents option storage. + Transparency value. + + + + Serializes shape's options. + + Parent record for options record. + Options record. + + + + Serializes SizeTextToFitShape option. + + MsofbtOPT record to which text ID will be added. + + If options argument is NULL. + + + + + Serializes HitTest option. + + MsofbtOPT record to which text ID will be added. + + If options argument is NULL. + + + + + Serialize shape's options. + + Options record. + Option ID. + Option value. + + + + Serialize shape's options. + + Options record. + Option ID. + Option value. + Record with option. + + + + Serialize shape's options sorted by option id. + + Options record. + Option ID. + Option value. + + + + Serializes shape visibility. + + Option holder. + + + + Serializes shape name. + + Option holder. + + + + Serializes shape name. + + Options object to store name in. + Option id to store name in. + Name to serialize. + + + + Create default shape options. + + Record with option. + + + + Sets all fill fopte structure to default value. + + Represents option holder. + + + + Serialize comment shadow. + + Represents option holder. + + + + Gets border thickness + + + + + + Get border color + + Color + + + + Get fill color. + + Color + + + + Gets the default fill color for the shape from style. + + Preserved flag to be checked. + Xml tag to create reader. + Shape for which fill color should be obtained. + color + + + + Get color from style element. + + AutoshapeImpl + Preserved flag to be checked. + Stream tage name + xml tag to the create reader + Fill or border color. + + + + Check whether color is empty or not. + + RGB Color object to check. + Returns true if color is empty. + + + + Generates default shape name and sets it. + + + + + This method is called when removing shapes from the collection. + + + + + Sets object with value. + + Value to be set. + + + + Creates a clone of the current shape and adds it to the parent shapes collection. + + New parent for the shape object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Indicates whether we should add created + shape into all necessary parent collections. + A copy of the current shape. + + + + Creates a clone of the current shape. + + New parent for the shape object. + A copy of the current shape. + + + + Copies settings from another shape object. + + Shape to copy settings from. + Dictionary with new worksheet names. + Dictionary with new font indexes. + + + + Checks whether it is possible insert row or column into iIndex. + + Index of row or column to insert. + Number of rows or columns to insert. + Indicates whether rows or columns are inserted. + Maximum possible index. + True if it is possible to insert row or column. + + + + Returns lower bound of the shape. + + Indicates whether lower row or lower column must be returned. + Lower bound of the shape. + + + + Returns upper bound of the shape. + + Indicates whether upper row or upper column must be returned. + Upper bound of the shape. + + + + Removes row or column. + + Index of row or column to remove. + Number of rows or columns to remove. + Indicates whether rows or columns are removed. + + + + This method should be called after rows or columns were inserted. + + Index of row or column to insert. + Number of rows or columns to insert. + Indicates whether rows or columns are inserted. + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Sets shape name without updating parent shapes collection. + + Name to set. + + + + Registers shape in all required sub collections. + + + + + Indicates is can copy current shape. + + Represents source range dimension. + Represents destination range dimension. + Gets new position of shape. + Returns true if can copy; otherwise - false. + + + + Copies / moves shape in range copy / move. + + Represents destination sheet. + Represents position of . + Indicates is copy. + Returns copied moved shape. + + + + Copy comments options. + + Represents source shape. + Represents dictionary with font indexes. + + + + Prepares shape for serialization. We should fill all not prepared fields + like m_shape in this method. + + + + + This method is called inside of PrepareForSerialization to make shape-dependent preparations. + + + + + Updates macro information. + + + + + Sets instance value for the shape. + + Instance to set. + + + + Sets option with value. + + Represents shape option. + Represents value to be set. + + + + Updates indexes to named ranges. + + New indexes. + + + + Updates indexes to named ranges. + + New indexes. + + + + Updates left column and offset values correspondingly + to X-coordinate changes. + + + + + Clears the Shape Offsets. + + Clears the offset if True. + + + + Update right column + + + + + + Updates right column and offset values correspondingly + to left column or offset or width changes. + + + + + Updates top row and offset values correspondingly + to Y-coordinate changes. + + + + + Updates bottom row of the shape. + + + + + Updates width of the shape. + + + + + Updates Height of the shape. + + + + + Converts offset value into pixels. + + Width of row or column. + Offset in row or column. + Indicates whether it is column offset. + Offset value in pixels. + + + + Converts offset value into pixels. + + Width or Height. + Offset in row or column. + Indicates whether it is column offset. + Offset value in pixels. + + + + Converts pixels into offset value. + + Index to the current row or column. + Size in pixels. + Indicates whether iCurRowColumn is column index should. + Size of the row / column in pixels. + + + + Converts pixels into offset value. + + Index to the current row or column. + Size in pixels. + Indicates whether iCurRowColumn is column index should. + Size of the row / column in pixels. + + + + Converts pixels into offset value. + + Index to the current row or column. + Size in pixels. + Indicates whether iCurRowColumn is column index should. + Size of the row / column in pixels. + + + + Returns width of the area. + + Column index. + Column offset. + Second column index. + Offset in the second column. + Indicates whether offsets are in pixels. + Width in pixels of the specified area. + + + + Returns height of the specified area. + + The first row. + Offset in the first row. + The second row. + Offset in the second row. + Indicates whether offsets are in pixels. + Height in pixels of the specified area. + + + + Converts width offset into pixels and checks if it is out of range. + + Width of the target column. + Offset in the target column. + + Indicates whether offset is in pixels (True) or in the units + relative to width of the column (False). + + Offset in pixels. + + If resulting offset is more that column width. + + + + + Converts width offset into pixels and checks if it is out of range. + + Height of the target row. + Offset in the target row. + + Indicates whether offset is in pixels (True) or in the units + relative to height of the row (False). + + Offset in pixels. + + If resulting offset is more than row height. + + + + + Converts pixels into column width offset. + + Represents pixel. + Width of the target column. + Value in column width. + + + + Converts pixels into height offset. + + Pixels to convert. + Represents target row height. + Offset in terms of Row height. + + + + Converts pixels into height offset. + + Pixels to convert. + Represents target row height. + Offset in terms of Row height. + + + + Evaluates top left position of the shape. + + + + + Evaluates left position. + + + + + Evaluates Right Position. + + + + + Evaluates top position. + + + + + Sets client anchor record. + + Represents anchor. + + + + This method is called when left column was changed. + + + + + This method is called when top row was changed. + + + + + Indicates whether specified row / column index is before shape. + + Row / column index. + Indicates whether it is row or column index. + True if specified row / column index is before shape. + + + + Indicates whether specified row / column index is in the middle of the shape. + + Row / column index. + Indicates whether it is row or column index. + True if specified row / column index is before shape. + + + + Indicates whether it is last row or column index + + Row / column index. + Indicates whether it is row or column index. + Value indicating whether it is last row or column index. + + + + Increases and updates both begin and end of the shape. + + Number of inserted rows / columns. + Indicates whether rows where inserted. + + + + Increases and updates end of the shape. + + Number of inserted rows / columns. + Indicates whether rows where inserted. + + + + Gets count of rows \ columns that is above shape. + + Represents start index. + Represents count of rows \ columns. + Indicates is in row. + Returns count of rows \ columns above shape. + + + + Gets count of rows inside. + + Represents first index. + Represents count. + Indicates is row or column. + Returns count of inside. + + + + Indicates is when remove or insert use top\left row\column. + + Represents start index of remove \ insert. + Represents count. + Indicates is in row. + If true - use first row\column; otherwise - false. + + + + Updates row \ column indexes. + + Count to update. + Indicates is update row indexes or column. + + + + Updates first row/column indexes. + + Indicates is in row. + Represents count. + + + + Updates shape that include not size and not move flags. + + Indicates is row or column to update. + Row or column index. + Number of inserted/removed rows/column. + + + + Updates inside row/column indexes. + + Represents count. + Indicates is in row. + + + + Updates last row\column indexes. + + Indicates is row or column. + + + + Updates record. + + Represents client anchor. + + + + Parses line and fill objects. + + Options holder. + + + + Updates mso object. + + Represents mso object to update. + Returns true if updated otherwise - false. + + + + Clones line and fill objects. + + Shape to be cloned. + + + + Column width change event. + + Represents sender object + Represents value changed event. + + + + Leaves bottom right corner of the shape. + + + + + This method should be called after any change in font of "Normal" style. + + Event sender. + Event arguments. + + + + This method should be called after row height changes. + + Event sender. + Event arguments. + + + + Checks the Left Offset. + + + + + Update GroupFrame for the shape.. + + Event sender. + Event arguments. + + + + Update GroupFrame for the shape.. + + Event sender. + Event arguments. + + + + Update the GroupFrame position. + + left position of the group frame + top position of the group frame + width position of the group frame + height position of the group frame + + + + Get the updated child shape positions. + + Group shape rectangle. + The group shape rotation. + The child shape rectangle to be updated. + The updated child shape rectangle. + + + + Get Shape Rotations. + + Group Shape. + Flip count. + + + + Get the updated the rectangle from the Matrix. + + Group Shape. + The shape rectangle. + The updated rectangle. + + + + Creates the from points array. + + The points. + The rectangle. + + + + Gets the transformation matrix for the AutoShape. + + Rectangle bounds of the AutoShape. + Rotation angle to be applied. + Horizontal flip. + Vertical flip. + Transformed matrix value in which shape will be rendered. + + + + Gets the transformation matrix for the AutoShape. + + Rectangle bounds of the AutoShape. + Rotation angle to be applied. + Horizontal flip. + Vertical flip. + Transformed matrix value in which shape will be rendered. + + + + Update the shape bounds based on ShapeRotation. + + Current Rectangle bound values of the AutoShape. + Rotation angle of the shape. + Updated Rectangle bounds of the AutoShape. + + + + Set postions for the shape. + + X-coordinate. + Y-coordinate. + Extenstion Width. + Extenstion Height. + + + + Set Left postion for the shape. + + double value to set. + + + + Set Top postion for the shape. + + double value to set. + + + + Set Height for the shape. + + double value to set. + + + + Set Height for the shape. + + double value to set. + + + + Set the group shape property value to all the inner shapes. + + Property value to set. + Property name. + + + + Gets or sets the height of the shape. + + + + + Gets or sets the height of the Shape expressed in decimal units. + + + + + Gets Shape ID. + + + + + Gets the chart3 D properties. + + The chart3 D properties. + + + + Gets or sets the value indicating if comment has proper row column values + + + + + Gets the shadow properties. + + The shadow properties. + + + + Gets or sets the value indicating if Left value is set. + + + + + Gets or sets the value of the shape has extent tag or not + + + + + Gets or set x coordinate of upper left corner of shape. + + + + + Gets or sets the left position of the Shape expressed in decimal units. + + + + + Gets or sets name of the shape. + + + + + Gets or sets the Y coordinate of the shape + + + + + Gets or sets the top position of the Shape expressed in decimal units. + + + + + Gets or sets width of the shape. + + + + + Gets or sets the width of the Shape expressed in decimal units. + + + + + Gets or sets shape type + + + + + Gets or set a value indicating whether shape is visible + + + + + Gets or sets alternative text of the shape + + + + + Gets or set a value indicating whether shape can move with cell + + + + + Gets or sets a value indicating whether shape can size with cell. + + + + + Represents fill properties. Read-only. + + + + + Represents line format properties. Read-only. + + + + + Preset Geometry element specifies when a preset geometric shape should be used instead of a custom geometric shape. + + + + + Gets or sets the macro name. + + + + + True if the size of the specified object is changed automatically + to fit text within its boundaries. Read/write Boolean. + + + + + Gets / sets xml data stream. + + + + + Gets or sets xml type stream. + + + + + Indicates whether this is vml shape or not. + + + + + Gets or sets macro-command that is called when action happens. + + + + + Gets or sets the Image relation id + + + + + Gets or sets the image relation + + + + + Returns or sets the rotation of the shape, in degrees. + + + + + + Returns a TextFrame object that contains the + alignment and anchoring properties for the specified shape. Read-only. + + + + + FormulaMacro Stream + + + + + Get object that represents the hyperlink for the shape. + + + + + Preserve the style as stream for further processing. + + + + + Gets and sets the shape x position inside the chart. + + + + + Gets and sets the shape y position inside the chart. + + + + + Gets and sets the shape width inside the chart. + + + + + Gets and sets the shape height inside the chart. + + + + + Gets and sets shape start x position inside the chart. + + + + + Gets and sets shape start y position inside the chart. + + + + + Gets and sets shape to x position inside the chart. + + + + + Get and sets shape to y position inside the chart. + + + + + Stream to preserve the Slicers graphic frame + + + + + Indicates the whether the shape has the borders. + + + + + Parent workbook. Read-only. + + + + + Parent workbook. Read-only. + + + + + Parent shapes collection. Read-only. + + + + + Parent worksheet. Read-only. + + + + + OBJ record. Read-only. + + + + + Client anchor. Read-only. + + + + + Top row for the shape. + + + + + Left column for the shape. + + + + + Bottom row for the shape. + + + + + Right column for the shape. + + + + + Top row offset for the shape. + + + + + Left column offset for the shape. + + + + + Bottom row offset for the shape. + + + + + Right column offset for the shape. + + + + + Gets or sets object id. + + + + + Returns internal shapes record. Read-only. + + + + + Returns inner sp record. Read-only. + + + + + Indicates whether it is short version of the shape + (without obj and maybe some other properties). + + + + + Returns number of shapes contained by this shape (1 means no sub shapes). Read-only. + + + + + Indicates whether we have to update absolute positions after setting TopRow, + BottomRow, LeftColumn, RightColumn. + + + + + Returns instance value. Read-only. + + + + + Indicates whether fill item was created. Read-only. + + + + + Indicates whether the group shape contains fill. + + + + + Indicates whether the group shape contains line. + + + + + Indicates whether line item was created. Read-only. + + + + + Gets / sets shape id. + + + + + Returns internal shape record, creates new one if necessary. Read-only. + + + + + Indicates whether this control is an ActiveX Control. + + + + + Preserves the Shape style properties. + + + + + Preserves the Shape style properties as string value. + + + + + We find the anchor type. + + + + + gets and sets the extlst of the picture,which intends to get preserved. + + + + + Represents whether the shape is slicer or not. + + + + + Represents the parent group shape. + + + + + Indicates whether the shape is group shape. + + + + + Gets stream of preserved elements in shape properties + + + + + Indicates whether custom geometry will be used for this shape. + + + + + Represents the shape frame of the shape. + + + + + Represents the group frame of the shape. + + + + + Gets shape options. + + + + + Represens the Child Shapes in the Group. + + + + + Child Client Anchor Record. + + + + + Extended the ShapeImpl class to support AutoShape. + + + + + Gets or set a value indicating whether shape can move with cell + + + + + Gets or sets a value indicating whether shape can size with cell. + + + + + Indicates whether shape fill color is preserved or not. + + + + + Indicates whether autoshape has noFill or not. + + + + + Indicates whether autoshape has group fill or not. + + + + + Instantiates the ShapeExt with the Shape Type. + + Type of the AutoShape. + Represents the Worksheet object. + + + + Updates the shape id. + + + + + + Updates the Placement Value for the shape. + + + + + Indicates whether autoshape has group fill or not. + + + + + Indicates whether shape fill color is preserved or not. + + + + + Indicates whether autoshape has noFill or not. + + + + + Gets the Extended ShapeImpl class to support AutoShape. + + + + + Specifies a vertical flip. When true, this attribute defines that the group is flipped + vertically about the center of its bounding box + + + + + Specifies a horizontal flip. When true, this attribute defines that the shape is flipped + horizontally about the center of its bounding box + + + + + Represents the Text Frame. + + + + + + Represents the Shape's Description. + + + + + Represents the Shape's unique id. + + + + + Represents the name of the Shape. + + + + + Represents the Shape Rotation. + + + + + Represents the fill. + + + + + Represents the Line Format. + + + + + Indicates whether the shape is hidden. + + + + + Represents the shape title. + + + + + Gets or set a value indicating whether shape can move with cell + + + + + Gets or sets a value indicating whether shape can size with cell. + + + + + Initializes new instance of the shape. + + Parent shape. + + + + Serializes row-column anchor point. + + XmlWriter to serialize into. + Tag name to use. + Column index. + Offset inside column. + Row index. + Offset inside row. + Parent worksheet. + Xml namespace to use. + + + + Serializes XY anchor point + + XmlWriter to serialize into. + Tag name to use. + X coordinate (will be divided by 1000 in the current implementation). + Y coordinate (will be divided by 1000 in the current implementation). + Xml namespace to use. + + + + Represents the size information of the shape. + + + + + Represents the Current worksheet instance. + + + + + Intializes the members. + + Current Worksheet object. + + + + Clones current object. + + Parent object. + Returns cloned object. + + + + Represents different text direction. + + + + + Represents the horizontal text direction + + + + + Rotates the text by 90 degrees + + + + + Rotates the text by 270 degrees + + + + + Rotates the text from left to right + + + + + Rotates the text from right to left + + + + + Represents different horizontal alignments + + + + + Represents Left horizontal alignment setting for the shapes. + + + + + Represents Center horizontal alignment setting for the shapes. + + + + + Represents Right horizontal alignment setting for the shapes. + + + + + Represents LeftMiddle horizontal alignment setting for the shapes. + + + + + Represents CenterMiddle horizontal alignment setting for the shapes. + + + + + Represents RightMiddle horizontal alignment setting for the shapes. + + + + + Represents different vertical alignments + + + + + Represents Top vertical alignment setting for the shapes. + + + + + Represents Middle vertical alignment setting for the shapes. + + + + + Represents Bottom vertical alignment setting for the shapes. + + + + + Represents TopCentered vertical alignment setting for the shapes. + + + + + Represents MiddleCentered vertical alignment setting for the shapes. + + + + + Represents BottomCentered vertical alignment setting for the shapes. + + + + + Represents different vertical overflow types. + + + + + Represents a overflow type of vertical overflow. + + + + + Represents a ellipsis type of vertical overflow. + + + + + Represents a clip type of vertical overflow. + + + + + Represents different horizontal overflow types. + + + + + Represents a Overflow type of horizontal types. + + + + + Represents a Clip type of horizontal types. + + + + + Represents Cross Filter type of the slicer + + + + + Hide the unfiltered items from the slicer. + + + + + Differentiate the filtered items and unfiltered items. + + + + + Display the unfiltered items at the last. + + + + + There is no difference between the filtered and unfiltered data. + + + + + Represents Slicer style + + + + + Represents the SlicerStyleLight1 style + + + + + Represents the SlicerStyleLight2 style + + + + + Represents the SlicerStyleLight3 style + + + + + Represents the SlicerStyleLight4 style + + + + + Represents the SlicerStyleLight5 style + + + + + Represents the SlicerStyleLight6 style + + + + + Represents the SlicerStyleOther1 style + + + + + Represents the SlicerStyleOther2 style + + + + + Represents the SlicerStyleDark1 style + + + + + Represents the SlicerStyleDark2 style + + + + + Represents the SlicerStyleDark3 style + + + + + Represents the SlicerStyleDark4 style + + + + + Represents the SlicerStyleDark5 style + + + + + Represents the SlicerStyleDark6 style + + + + + Represent columns in the Text frame. + + + + + + Gets or sets the number of the text frame columns. + + + + + Gets or sets the spacing point of the text frame columns. + + + + + Gets the value for the given . + + value to convert to . + parsed value for the input . + + + + Initializes new instance of the serializator. + + Auto shape. + Auto shape. + + + + Extended the ShapeImp to add support for the Autoshape. + + + + + Shape guide dictionary to hold the path information of the autoshapes. + + + + + List to hold the path information of the free form shape. + + + + + Represents custom geometry or not.(If shape is free form shape this is true). + + + + + Initializes new instance of the shape extension. + + Auto shape type. + WorksheetBaseImpl. + + + + Clones current object. + + Parent object. + Returns cloned object. + + + + Shape guide dictionary to hold the path information of the autoshapes. + + + + + List to hold the path information of the free form shape. + + + + + Represents custom geometry or not.(If shape is free form shape this is true). + + + + + Initializes new instance of the shape property serializator. + + Auto shape. + string attribute. + + + + Stores and serialize the chart / shape style entries + + + + + attribute used as prefix + + + + + autoshape parent + + + + + Name space used on serialization + + + + + mods enum value for the style element + style entry is not provided + + + + + It specifies a reference to a line style within the style matrix. + must be initialized for chartStyle + + + + + It specifies a multiplier to apply to the line width. + + + + + It reference to an effect style within the style matrix. + must be initialized for chartStyle + + + + + It specifies a reference to a fill style within the style matrix. + must be initialized for chartStyle + + + + + It specifies a reference to a themed font. + must be initialized for chartStyle + + + + + It specifies visual shape properties associated with this StyleEntry + + + + + It specifies the default text character properties for a text body associated with this StyleEntry. + + + + + It specifies the body properties for a text body associated with this StyleEntry + + + + + Default constructor + + + + + Constructor used for auto shape + + input shape + input attribute + + + + Constructor used for chart style + + input attribute value + input namespace value + input style modifier enum value + + + + Serialize the Style or font reference for entry + + input XML writer + input style entry reference + style entry reference name + boolean value indicates whether thr reference is font or not + + + + Serialize the input color and its values + + input XML writer + color model type + color value string + luminance modulation value + luminance offset 1 value + luminance offset 2 value + shade value on color + + + + Serialize the shape properties current object + + input XML writer + + + + Serialize the Default run paragraph properties + + input XML writer + + + + Serialize the current shape style and its member + + input XML writer + input parent element of chart style + + + + Gets / Sets the value of member StyleElementMod + + + + + Gets / Sets the line reference style entry + + + + + Gets / Sets the line width of style entry + + + + + Gets / Sets the effect reference of style entry + + + + + Gets / Sets the Fill reference of style entry + + + + + Gets / Sets the Font reference of style entry + + + + + Gets / Sets the shape properties of style entry + + + + + Gets / Sets the Default paragraph run properties of style entry + + + + + Gets / Sets the text body properties of style entry + + + + + Stores the information required for each style entries + lineRef, fillRef, effectRef, fontRef, + + + + + Style entry Index + integer for lineRef, fillRef, effectRef style elements + enum integer value for fontRef style elements + + + + + Color model value + + + + + Its stores the value of color respect to color model + hexa color or schema color information + + + + + luminace modulation value for scheme color + + + + + luminance offset value 1 for scheme color + + + + + luminance offset value 2 for scheme color + + + + + stores the shade value + + + + + Initialize the member with its values + + Index value + colorModel value + color value + luminance modulation value + luminance offset 1 value + luminance offset value 2 + shade value of color + + + + Gets / Sets the value of member index + + + + + Gets / Sets the value of member ColorModelType + + + + + Gets / Sets the value of member ColorValue + + + + + Gets / Sets the value of member LumModValue + + + + + Gets / Sets the value of member LumOffValue1 + + + + + Gets / Sets the value of member LumOffValue2 + + + + + Gets / Sets the value of member Shade value + + + + + Stores the information of shape properties of style entry + + + + + Indicates whether the options are enabled. Bit position + 0-Shape fill + 1-Line fill + 2-line width (if set to 0, no fill) + 3-line cap + 4-line cmpd + 5-line align + + + + + enum indicates the fill type of shape s + + + + + indicates the line width + + + + + shape fill color model value + + + + + Its stores the value of shape fill color respect to color model + hexa color or schema color information + + + + + luminace modulation value for scheme color of shape fill + + + + + luminance offset value 1 for scheme color of shape fill + + + + + luminance offset value 2 for scheme color of shape fill + + + + + Color model value + + + + + Its stores the value of border color respect to color model + hexa color or schema color information + + + + + luminace modulation value for scheme color of border + + + + + luminance offset value 1 for scheme color of border + + + + + luminance offset value 2 for scheme color of border + + + + + Specifies the compound line type to be used for the underline stroke. + + + + + Indicates that lines joined together have a round join. + + + + + Specifies the ending caps that should be used for this line. + + + + + Specifies the alignment to be used for the underline stroke. + + + + + Default constructor + + + + + Gets / Sets the shapefillType member + + + + + Gets / Sets the Border Weight member + + + + + Gets / Sets the ShapeFillColorModel member + + + + + Gets / Sets the ShapeFillColorValue member + + + + + Gets / Sets the ShapeFill Luminance Modulation member + + + + + Gets / Sets the shapefill luminace offset 1 member + + + + + Gets / Sets the shapefill luminace offset 2 member + + + + + Gets / Sets the Border Fill ColorModelType member + + + + + Gets / Sets the BorderFill Color member + + + + + Gets / Sets the BorderFill Luminance Modulation member + + + + + Gets / Sets the borderFill Luminace Offset Value1 member + + + + + Gets / Sets the borderFill Luminace Offset Value2 member + + + + + Gets / Sets the shapeLineStyle member + + + + + Gets / Sets the BorderIsRound member + + + + + Gets / Sets the LineCap member + + + + + Gets / Sets the IsInsetPen member + + + + + Get the options enabled flags + + + + + Clones current object. + + Parent object. + Returns cloned object. + + + + Represents the text frame + + + + + Returns a TextFrame object that contains the + alignment and anchoring properties for the specified shape. Read-only. + + + + + Gets or sets overflow of the text frame[Used internally]. + + + + + Gets or sets wrap text in the text frame + + + The following code illustrates how to set WrapTextInShape property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text + textFrame.TextRange.Text = "Sample Text in shape"; + + //Set clip + textFrame.TextHorzOverflowType = TextHorzOverflowType.Clip; + + //Set wrap + textFrame.WrapTextInShape = false; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets autosize in the text frame + + + The following code illustrates how to set IsAutoSize property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text + textFrame.TextRange.Text = "Sample"; + + //Set auto size + textFrame.IsAutoSize = true; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets left margin of the text frame + + + The following code illustrates how to set the left margin for the text inside the shape using MarginLeftPt property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set margin + textFrame.MarginLeftPt = 14; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets top margin of the text frame + + + The following code illustrates how to set the top margin for the text inside the shape using TopMarginPt property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 70); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set margin + textFrame.TopMarginPt = 14; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets right margin of the text frame + + + The following code illustrates how to set the right margin for the text inside the shape using RightMarginPt property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set margin + textFrame.RightMarginPt = 14; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets bottom margin of the text frame + + + The following code illustrates how to set the bottom margin for the text inside the shape using BottomMarginPt property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 70); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set margin + textFrame.BottomMarginPt = 14; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets auto margin of the text frame + + + The following code illustrates how to access IsAutoMargin property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set margin + textFrame.MarginLeftPt = 14; + + //Check IsAutoMargins + Console.Write(textFrame.IsAutoMargins); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + + + + + + Gets or sets vertical text overflow in the text frame. + + + By default is set to TextVertOverflowType property. Here for example, we set + to TextVertOverflowType. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text range + ITextRange textRange = textFrame.TextRange; + + //Set text + textRange.Text = "Sample Sample Sample Sample Sample Sample Sample"; + + //Set overflow type + textFrame.TextVertOverflowType = TextVertOverflowType.Ellipsis; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets horizontal text overflow in the text frame. + + + By default is set to TextHorzOverflowType property. Here for example, we set + to TextHorzOverflowType. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 70); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text + textFrame.TextRange.Text = "Sample Text in shape"; + + //Set clip + textFrame.TextHorzOverflowType = TextHorzOverflowType.Clip; + + //Set wrap + textFrame.WrapTextInShape = false; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets horizontal alignment in the text frame. + + + By default is set to HorizontalAlignment. Here for example, we set + to HorizontalAlignment property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text range + ITextRange textRange = textFrame.TextRange; + + //Set text + textRange.Text = "Sample"; + + //Set alignment + textFrame.HorizontalAlignment = ExcelHorizontalAlignment.Left; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets vertical alignment in the text frame. + + + By default is set to VerticalAlignment. Here for example, we set + to VerticalAlignment property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text range + ITextRange textRange = textFrame.TextRange; + + //Set text + textRange.Text = "Sample"; + + //Set alignment + textFrame.VerticalAlignment = ExcelVerticalAlignment.Bottom; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets text direction of the text frame. + + + By default is set to TextDirection. Here for example, we set + to TextDirection property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 100, 30); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text range + ITextRange textRange = textFrame.TextRange; + + //Set text + textRange.Text = "Sample"; + + //Set text direction + textFrame.TextDirection = TextDirection.RotateAllText90; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets text range of the text frame. + + + The following code illustrates how to set by accessing TextRange property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text range + ITextRange textRange = textFrame.TextRange; + + //Set text + textRange.Text = "Sample text"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Clones current object. + + Parent object. + Returns cloned object. + + + + Gets or sets if the text overflows + + + + + Gets the test range + + + + + Gets or sets the warp text in shape + + + + + Gets or sets the left margin pt + + + + + Gets or sets the top margin pt + + + + + Gets or sets the right margin pt + + + + + Gets or sets the bottom margin pt + + + + + Gets or sets if the text frame has auto margins + + + + + Gets or sets if the text frame has auto size + + + + + Gets or sets the vertical overflow type of the text + + + + + Gets or sets the horizontal overflow type of the text + + + + + Gets or sets the horizontal alignment + + + + + Gets or sets the vertical alignment + + + + + Gets the text direction + + + + + Gets / Sets the text body properties + + + + + Represents the text range + + + + + Returns the TextRange object that represents the text in the object. Read-only. + + + + + Gets or sets the text property of the text range. + + + The following code illustrates how to set Text inside the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text range + ITextRange textRange = textFrame.TextRange; + + //Set text + textRange.Text = "Sample text"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Text of the comment. Read-only. + + + The following code illustrates how to set RichText inside the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set text frame + ITextFrame textFrame = shape.TextFrame; + + //Set text range + ITextRange textRange = textFrame.TextRange; + + //Set rich text + IRichTextString richText = textRange.RichText; + richText.Text = "Sample"; + + //Create font + IFont font = workbook.CreateFont(); + font.Color = ExcelKnownColors.Red; + + //Apply rich text format + richText.SetFont(0, 5, font); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Initializes variables. + + + + + Clones current object. + + Parent object. + Returns cloned object. + + + + Gets or sets the Text of the RichText string + + + + + Comment text. + + + + + Class that stores that text body properties + + + + + text vertical overflow type + + + + + text horizontal overflow type + + + + + text direction enum + + + + + left margin point of text + + + + + top margin point of text + + + + + right margin point of text + + + + + bottom margin of text + + + + + boolean value indicates whether the text to be wrapped in text + + + + + struct type of columns + + + + + vertical alignment of text + + + + + horizontal alignment of text + + + + + Boolean value indicates whether the text is to be auto sized + + + + + Boolean value indicates whether margin is automatically generated + + + + + boolean value indicates whether the text to be preset wrapped in text + + + + + Get the anchor position from text direction and alignment + + input text Direction of the text body + input text body vertical alignment + input text body horizontal alignment + output anchor + + + + Update the anchor value. + + Text direction + vertical alignment + horizontal alignment + alignment string + true + + + + Get the string formatted text direction from enum + + input text direction enum + output string formatted text direction + + + + Get Left margin value of text body + + converted left margin value + + + + Set Left margin value of text body + + converted left margin value + + + + Get Top margin value of text body + + converted Top margin value + + + + Set Top margin value of text body + + converted Top margin value + + + + Get Right margin value of text body + + converted right margin value + + + + Set Right margin value of text body + + converted right margin value + + + + Get Bottom margin value of text body + + converted Bottom margin value + + + + Set Bottom margin value of text body + + converted Bottom margin value + + + + Get anchor position value of text body from current object properties + + anchor position value + + + + Serializes the text body properties attributes + + input XML writer + prefix of the element + namespace of the element + + + + Gets / Sets the TextVertOverflowType member + + + + + Gets / Sets the TextHorzOverflowType member + + + + + Gets / Sets the TextDirection member + + + + + Gets / Sets the LeftMarginPt member + + + + + Gets / Sets the TopMarginPt member + + + + + Gets / Sets the RightMarginPt member + + + + + Gets / Sets the BottomMarginPt member + + + + + Gets / Sets the WrapTextInShape member + + + + + Gets / Sets the VerticalAlignment member + + + + + Gets / Sets the HorizontalAlignment member + + + + + Gets / Sets the IsAutoSize member + + + + + Gets / Sets the IsAutoMargins member + + + + + Gets / Sets the number of column + + + + + Gets / Sets the spacingPt of column + + + + + Gets / Sets the PresetWrapTextInShape member + + + + + Represents the group shape in a worksheet. + + + + + Represents the group shape in a worksheet. + + + + + Returns the array of individual shapes in the specified . + + + The following code illustrates how to get items from group shape. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("GroupShapes.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IShapes shapes = worksheet.Shapes; + IShape[] groupItems = (shapes[0] as IGroupShape).Items; + + //Save and dispose + workbook.SaveAs("GroupShapes.xlsx"); + workbook.Close(); + } + + + + + + Inner shapes collection. + + + + + Represents vetical flip of the shape. + + + + + Represents horizontal flip of the shape + + + + + Represents preserved elements of the group shape. + + + + + Initializes new instance of the group shape. + + Application object for the new group shape. + Parent object for the new group shape. + + + + Creates a clone of the current group shape. + + A copy of the current current shape. + + + + Layout the group shape and inner shapes. + + + + + Layout the group shape and inner shapes. + + Group shape to layout. + + + + Set updated child offset for group shape. + + + + + Remove the shape from group shape. + + shape to remove + + + + Returns the array of individual shapes in the specified . + + + + + Gets or Sets vetical flip + + + + + Gets or Sets vetical flip + + + + + Represents preserved elements of the group shape. + + + + + This class represent the scenarios. + + + + + Represents the collection of What-If analysis scenarios in the worksheet. + + + + + Creates a What-If analysis scenario and adds it to the What-If analysis scenarios collection for the current worksheet. + + Represent the name of the scenario + Represent the changingCell address of the scenario + Represent the value of the scenario + Returns the created instance of + + The following code illustrates how to add the scenario in the scenarios collection of the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add a new scenario to the worksheet. + IScenarios scenarios = sheet1.Scenarios; + IScenario scenario1 = scenarios.Add("Scenario1", sheet.Range["C4"], 100); + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + + Creates a new worksheet that contains a summary report for the What-If analysis scenarios on the specified worksheet. + + Represent the resultantCell range for the scenarios + + The following code illustrates how to create a new worksheet that contains a summary report for the scenarios on the specified worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add the scenarios in worksheet + IScenarios scenarios = sheet1.Scenarios; + IScenario scenario1 = scenarios.Add("scenario1", sheet.Range["C4"], 100); + IScenario scenario2 = scenarios.Add("scenario2", sheet.Range["C4"], 200); + IScenario scenario3 = scenarios.Add("scenario3", sheet.Range["C4"], 300); + + //Create a summary for the worksheet + worksheet.Scenarios.CreateSummary(sheet.Range["C9"]); + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + + Gets the scenario from the What-If analysis scenarios collection based on Index. + + Represent the index of the scenatrio + Returns the created instance of + + Following code illustrates how to get scenario from scenarios collection based on Index. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IScenarios scenarios = worksheet.Scenarios; + IScenario scenario = worksheet.Scenarios[0]; + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the scenario from from the What-If analysis collection based on scenario name. + + Represent the name of the scenatrio + Returns the created instance of + + Following code illustrates how to get scenario from scenarios collection based on scenario name. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IScenarios scenarios = worksheet.Scenarios; + IScenario scenario = worksheet.Scenarios["ScenarioName"]; + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the Resultant cell range for the What-If analysis scenario. + + Returns the created instance of + + Following code illustrates how to get resultant cells range for the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IScenarios scenarios = worksheet.Scenarios; + + //Get the changnig cells range for the scenario + IRange resultantcellRange = scenarios.ResultantCells; + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the number of the What-If analysis scenarios in scenarios collection. + + + Following code illustrates how to get number of scenario in the scenarios collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IScenarios scenarios = worksheet.Scenarios; + int count = worksheet.Scenarios.Count; + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Represent the parent worksheet + + + + + Represent the Last changing scenario + + + + + true if it shows a scenario + + + + + Represent the Last changing scenario index + + + + + Represent the resultant cells for scenarios. + + + + + Constructor for scenarios object + + Represents the parent worksheet + Represents the parent application + + + + Create a scenario and add it to the scenarios collection for the current worksheet. + + Represent the name of the scenario + Represent the changingCell address of the scenario + Represent the value of the scenario + Returns the created instance of + + + + Create a scenario and add it to the scenarios collection for the current worksheet. + + Represent the name of the scenario + Represent the changingCell address of the scenario + Represent the value of the scenario + Returns the created instance of + The comment for the scenario, including the author's name and date, can be generated from the built-in document properties.The default value for the "Locked" function of the scenario is true.The default value for the "Hidden" function of the scenario is false. + when scenario name must be same + + + + Creates a new worksheet that contains a summary report for the scenarios on the specified worksheet. + + Represent the resultantCells range for the scenarios + + + + Represent the range of the changing cells + + Represent the current worksheet + Represent the start row from where the changing cell are to be updated + Represent the starting row from where the changing cell values are to be updated + Represent the start column from where the changing cell values are to be updated + Represent the starting column from where the current changing cell values are to be updated + + + + Stores the changing cell values to be listed in the scenario summary worksheet + + Represent the current worksheet + Represent the scenario + Represent the starting row from where the values are to be updated + Represent the starting column from where the values are to be updated + Represent the range of the values + + + + Represent the range of the result cells + + Represent the current worksheet + Represent the starting row from where the result cell values are to be updated + Represent the starting column from where the result cell values are to be updated + Represent the starting column from where the current result cell values are to be updated + Represent the result cell range + + + + Stores the Resultant cell values + + Represent the worksheet + Represent the scenario + Represent the starting row from where the result cell values are to be updated + Represent the starting column from where the result cell are to be updated + >Represent the result cell range + + + + Stores the changing cells name manager + + Represent the current worksheet + Represent the starting row from where the changing cell names are to be updated + Represent the starting column from where the changing cell names are to be updated + + + + Stores the resultant cells name manager + + Represent the worksheet + Represent the starting row from where the reusltant cell names are to be updated + Represent the starting column from where the reusltant cell names are to be updated + Represent the resultant cell range + + + + + Clone the scenarios + + Represent the parent worksheet + Represent the application + + + + + Dispose the scenarios. + + + + + Gets the number of scenario in scenarios collection. + + + + + Gets the scenario from scenarios collection based on Index. + + Represent the index of the scenatrio + Returns the created instance of + + + + Gets the scenario from scenarios collection based on scenario name. + + Represent the name of the scenatrio + Returns the created instance of + + + + Gets the Resultant cell range for the scenario + + Returns the created instance of + + + + Represent the worksheet in which the scenarios are present + + + + + True if the scenario is shown. + + + + + Gets or sets the last changing cell values + + + + + Gets or sets the last chaning cell value index + + + + + This class represent the scenario + + + + + Represents What-If analysis scenario in the worksheet. + + + + + + Deletes the current scenario from What-If analysis scenarios collection. + + + Following code illustrates how to delete the current scenario from scenarios collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add new scenarios to the worksheet. + IScenarios scenarios = sheet1.Scenarios; + IScenario scenario1 = scenarios.Add("Scenario1", sheet.Range["B3:B9"], 100); + IScenario scenario2 = scenarios.Add("Scenario2", sheet.Range["B3:B9"], 200); + + //Delete the scenarios + scenario2.Delete(); + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Applies the scenario values to the worksheet and shows the updated cell values. + + + Following code illustrates how to show the scenario by inserting its values on the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Adding new scenarios to the worksheet. + IScenarios scenarios = sheet1.Scenarios; + IScenario scenario1 = scenarios.Add("Scenario1", sheet.Range["B3:B9"], 100); + IScenario scenario2 = scenarios.Add("Scenario2", sheet.Range["B3:B9"], 200); + + //Delete the scenarios + scenario2.Show(); + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + + Gets or sets the comment associated with the What-If analysis scenario. + + + Following code illustrates how to get or set the comment associated with the scenario + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Adding a new scenario to the worksheet. + IScenarios scenarios = sheet1.Scenarios; + IScenario scenario1 = scenarios.Add("Scenario1", sheet.Range["C4"], 100); + + //Set the comment for the scenario + scenario1.Comment = "New comment"; + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets a boolean value indicating whether the What-If analysis scenario is hidden or not. + + + True if the scenario is hidden. Otherwise false. + + + Following code illustrates shows true if the scenario is hidden. The default value is false + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Adding a new scenario to the worksheet. + IScenarios scenarios = sheet1.Scenarios; + IScenario scenario1 = scenarios.Add("Scenario1", sheet.Range["C4"], 100); + + //Set the scenario as hidden + scenario1.Hidden = true; + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the index of the What-If analysis scenario in the scenarios collection. + + + Following code illustrates how to get the scenario index for scenarios collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Adding a new scenario to the worksheet. + IScenarios scenarios = sheet1.Scenarios; + IScenario scenario1 = scenarios.Add("Scenario1", sheet.Range["C4"], 100); + + //Get the scenario index for scenarios collection. + int index = scenario1.Index; + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets a boolean value indicating whether the What-If analysis scenario is locked or not. Default value is true. + + + True if the scenario is locked. Otherwise false. + + + Following code illustrates shows true if the object is locked. False if the object can be modified when the sheet is protected + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Adding a new scenario to the worksheet. + IScenarios scenarios = sheet1.Scenarios; + IScenario scenario1 = scenarios.Add("Scenario1", sheet.Range["C4"]); + + //Set the scenario as locked + scenario1.Locked = true; + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the What-If analysis scenario name. + + + Following code illustrates how to get or set the scenario name. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("ScenarioManager.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Adding a new scenario to the worksheet. + IScenarios scenarios = sheet1.Scenarios; + IScenario scenario1 = scenarios.Add("Scenario1", sheet.Range["C4"]); + + //Set a name to the scenario + scenario1.Name = "Scenario2"; + + workbook.SaveAs("ScenarioManager.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + + Represent the changing cell range + + + + + Represent the parent for scenario + + + + + Represent the values of the scenario + + + + + Represent the comment for the scenario + + + + + True if the object is locked; False if the object can be modified when the sheet is protected. + + + + + Represent the index of the scenario + + + + + True if the scenario is hidden. The default value is False. + + + + + Represent the names of the scenario + + + + + Constructor for scenario object + + Represent the scenario collection + + + + Constructor for scenario object + + Represent the name of the scenario + Represent the changingCell address of the scenario + Represent the value of the scenario + Represent the comment associated with the scenario + True if the object is locked. False if the object can be modified when the sheet is protected. + True if the scenario is hidden. The default value is False. + + + + + Delete the current scenario from scenarios collection. + + + + + Shows the scenario by inserting its values on the worksheet. + + + + + Clones the scenario + + + + + + + Dispose the scenario elements. + + + + + Gets or sets the parent for the scenarios + + + + + + Gets or sets the comment associated with the scenario + + + + + Gets or sets a boolean value indicating whether the scenario is hidden or not. Default value is false. + + + True if the scenario is hidden. Otherwise false. + + + + + Gets the scenario index from the scenarios collection + + + + + Gets or sets a boolean value indicating whether the scenario is locked or not. Default value is true. + + + True if the scenario is locked. Otherwise false. + + + + + Gets or sets the name of the scenario + + + + + Gets the list of values for the changing cells of the scenario + + A scenario is limited to have maximum of 32 changing cells, each with its associated value. + + + + This class represents Slicer. + + + + + Represents the Slicer in a worksheet + + + + + Gets or sets the name of the slicer in the worksheet. + + + Following code illustrates how to get and change the slicer name. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + string name = slicer.Name; + slicer.Name = "Sample Slicer"; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the caption of the slicer in the worksheet. + + + Following code illustrates how to get and change the slicer Caption. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + string name = slicer.Caption; + slicer.Caption = "Sample"; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the vertical position of the slicer, in points. + + + Following code illustrates how to set the Top position of the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.Top = 100; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the horizontal position of the slicer, in points. + + + Following code illustrates how to set the Left position of the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.Left = 300; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the height of the slicer, in points. + + + Following code illustrates how to set the Height of the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.Height = 200; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the width of the slicer, in points. + + + Following code illustrates how to set the Width of the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.Width = 150; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the height of the slicer, in pixel. + + + Following code illustrates how to set the Height of the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.Height = 200; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the width of the slicer, in pixel. + + + Following code illustrates how to set the Width of the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.Width = 150; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the width, in points, of each column in the slicer. + + + Following code illustrates how to set the Width of the slicer button. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.SlicerItemWidth = 80; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the height, in points, of each row in the slicer. + + + Following code illustrates how to set the Height of the slicer button. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.SlicerItemHeight = 0.4; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the width, in pixel, of each column in the slicer. + + + Following code illustrates how to set the Width of the slicer button. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.SlicerItemWidth = 80; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the height, in pixel, of each row in the slicer. + + + Following code illustrates how to set the Height of the slicer button. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.SlicerItemHeight = 0.4; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the number of columns in the slicer. + + + Following code illustrates how to gets or sets the Number of columns in the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.NumberOfColumns = 2; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Indicates whether the slicer caption need to be visible or not. + + + Following code illustrates how to change the DisplayHeader option of the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.DisplayHeader = false; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the slicer style + + + Following code illustrates how to change the slicer style. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.SlicerStyle = ExcelSlicerStyle.SlicerStyleDark2; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the parent table of the slicer. Read only. + + + Following code illustrates how to get the source table of the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + IListObject table1 = slicer.SourceTable; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the slicer cahce of the slicer + + + Following code illustrates how to get the Slicer Cache of the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicerCache cache = worksheet.Slicers[0].SlicerCache; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Name of the slicer. + + + + + Name of the table column from which the slicer is created. + + + + + Caption of the slicer. + + + + + Top position of the slicer + + + + + Left position of the slicer + + + + + Height of the slicer + + + + + Width of the slicer + + + + + Height of the slicer in pixels + + + + + Width of the slicer in pixels + + + + + Slicer button Width + + + + + Slicer button Height + + + + + Slicer button Width in pixels + + + + + Slicer button Height in pixels + + + + + Number of slicer items present in the line. + + + + + Represents the number of levels in the slicer + + + + + Indicates whether the slicer header is present or not. + + + + + Indicates slicer style + + + + + Indicates source table of the slicer + + + + + Indicates source pivot table of the slicer + + + + + Indicates slicer cache of the slicer + + + + + Indicates slicer worksheet + + + + + Indicates slicer collection + + + + + Indicates whether the slicer is pivot slicer or not + + + + + Indicates column index of the table from that the slicer is created. + + + + + Indicates slicer cache name + + + + + Used to store the slicer as the stream + + + + + Constructor of slicer to create the slicer. + + Source table from which the slicer created + Indicates column index of the table from that the slicer is created. + Top position of the slicer + Left position of the slicer + Slicer collection of the worksheet + Source pivot table from which the slicer created + + + + Constructor of slicer to create the slicer. + + Slice name + Slicer Cache + Slicer Caption + Row height of the slicer + Worksheet in which the slicer is present + + + + Clone the corresponding slicer elements. + + Parent of slicer object. + Clone slicer elements object + + + + Dispose the slicer elements. + + + + + Name of the slicer. + + + + + Name of the table column from which the slicer is created. + + + + + Indicates slicer cache of the slicer + + + + + Caption of the slicer. + + + + + Top position of the slicer + + + + + Left position of the slicer + + + + + Height of the slicer + + + + + Width of the slicer + + + + + Height of the slicer in pixels + + + + + Width of the slicer in pixels + + + + + Slicer button Width + + + + + Slicer button Height + + + + + Slicer button Width in pixels + + + + + Slicer button Height in pixels + + + + + Number of slicer items present in the each line. + + + + + Indicates whether the slicer header is present or not. + + + + + Indicates slicer style + + + + + Indicates source table of the slicer + + + + + Indicates source pivot table of the slicer + + + + + Indicates slicer worksheet + + + + + Indicates whether the slicer is pivot slicer or not + + + + + Indicates column index of the table from that the slicer is created. + + + + + Indicates slicer collection + + + + + Indicates slicer cache name + + + + + Represents the number of levels in the slicer + + + + + Used to store the slicer as the stream + + + + + This class represents Slicer Cache. + + + + + Represents the slicer cache of the slicer. + + + + + Gets or sets the cross filter type of the slicer + + + Following code illustrates how to get and change the CrossFilterType of the Slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.SlicerCache.CrossFilterType = SlicerCrossFilterType.HideItemsWithNoData; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Indicates whether the custom list is used for sorting. + + + Following code illustrates how to set the Custom list sorting. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.SlicerCache.UseCustomListSorting = true; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the name of the cache field. + + + Following code illustrates how to get the Name of the cache field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + string Name = slicer.SlicerCache.SourceName; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Indicates whether the items in the slicer is sorted in the ascending order. + + + Following code illustrates how to get or set the sort order. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + slicer.SlicerCache.IsAscending = true; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the items of the slicer cache + + + Following code illustrates how to get or set the sort order. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + ISlicerCacheItems cacheItems = slicer.SlicerCache.SlicerCacheItems; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Represents the slicer cross filter type + + + + + Represents the custom list sorting + + + + + Represents the column name + + + + + Represents the sort order of the slicer items + + + + + Represents the slicer cache items + + + + + Represents the slicer + + + + + Represents the table index of the slicer + + + + + Represents the pivot table index of the slicer + + + + + Represents the column index of the slicer + + + + + Represents the slicer cahce name + + + + + Represents the slicer is created from pivot table or not + + + + + Represents the source pivot table name of the slicer + + + + + Represents the pivot slicer items + + + + + Represents the pivot slicer items selected property value + + + + + Represents the pivot slicer item is fileter property value + + + + + Represents the pivot slicer cache as a stream + + + + + Represents the slicer cache as a stream + + + + + Constructor of the slicer cache + + Source table from which the slicer created + Indicates column index of the table from that the slicer is created. + + + + Constructor of the slicer cache + + Source table from which the slicer created + Indicates column index of the table from that the slicer is created. + Source pivot table from which the slicer created + + + + Constructor of the slicer cache + + Slice cache name + Source name of the slicer cache. + Table id from which the slicer created + Column index of the table from which the slicer is created + Sort order of the slicer items. + Cross filter type of the slicer + + + + Constructor of the slicer cache + + Slicer sheet id + Source pivot table name of the slicer. + Slicer cache name + Source name of the slicer cache + Sort order of the slicer items. + Cross filter type of the slicer + Xml reader of the slicer + + + + Add the slicer cahce items + + Represents the slicer cache item collection + + + + Clone the corresponding slicer cache elements. + + Parent of slicer object. + Clone slicer cache elements object + + + + Dispose the slicer cache elements. + + + + + Represents the slicer cache items + + + + + Represents the slicer cross filter type + + + + + Represents the custom list sorting + + + + + Represents the column name + + + + + Represents the slicer cahce name + + + + + Represents the source pivot table name of the slicer + + + + + Represents the sort order of the slicer items + + + + + Represents the table index of the slicer + + + + + Represents the pivot table index of the slicer + + + + + Represents the column index of the slicer + + + + + Represents the slicer is created from pivot table or not + + + + + Represents the pivot slicer items + + + + + Represents the pivot slicer items selected property value + + + + + Represents the pivot slicer item is fileter property value + + + + + This class represents Slicer Cache Item. + + + + + Respresents the slicer item of the slicer + + + + + Indicates whether the slicer item is selected or not. + + + Following code illustrates how to find whether the slicer item is selected or not. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + bool selected = slicer.SlicerCache.SlicerCacheItems[0].IsSelected; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the item text of the slicer. + + + Following code illustrates how to gets the label text of the slicer. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + string value = slicer.SlicerCache.SlicerCacheItems[0].Value; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Represents the slicer item is selected or not. + + + + + Represents the slicer item value. + + + + + Represents the slicer item row + + + + + Represents the slicer item column + + + + + Represents the slicer item source table + + + + + Represents the slicer item source pivot table + + + + + Represents the slicer pivot item + + + + + Represents the slicer cache item collection + + + + + Represents the slicer cahce item + + Represents the slicer cache item value + Represents the pivot slicer cache item index + Represents the slicer cache item is selected or not + Represents the slicer cache item row + Represents the slicer cache item column + Represents the slicer table + Represents the slicer pivot table + + + + Clone the corresponding slicer cache item elements. + + Parent of slicer cache items object. + Clone slicer cache item object + + + + Dispose the slicer cache item elements. + + + + + Represents the slicer item is selected or not. + + + + + Represents the slicer item value. + + + + + Represents the slicer pivot item + + + + + Represents the slicer item row + + + + + This class represents Slicer Cache Item collection. + + + + + Respresents the slicer item collection of the slicer + + + + + Gets or sets the the number of items present in the slicer. + + + Following code illustrates how to get the count of the slicer items. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + int count = slicer.SlicerCache.SlicerCacheItems.Count; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the slicer cache item object based on the given index. + + + Following code illustrates how to access the slicer cache items. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + ISlicerCacheItems cacheItems = slicer.SlicerCache.SlicerCacheItems; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Indicates slicer worksheet + + + + + Indicates slicer Cache + + + + + Indicates slicer cache items + + + + + Constructor of slicer cahce item collection + + Represents the slicer cache + Represents the parrent application + + + + Add the slicer item into the slicer item collection + + Source table of the slicer + Column index of the slicer + Source pivot table of the slicer + Column name of the slicer + + + + Sort the slicer items + + + + + Clone the corresponding slicer cache items. + + Parent of slicer cache object. + Clone slicer cache items + + + + Dispose the slicer elements. + + + + + Indicates slicer items count + + + + + Gets the slicer cache item from slice cahce collection. + + Index of the slicer cache item. + Related slicer item + + + + This class is represents the slicer collection + + + + + Respresents the slicer collection of the worksheet + + + + + Creates a slicer using the provided column index of the table + + Represents the table object. + Represents the column index of the table. + Represents the top row for the slicer. + Represents the left column for the slicer + Returns an index of the slicer + + The following code illustrates how a slicer can be created in a worksheet using the given table in the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IListObject table = worksheet.ListObjects[0]; + + //Add a new slicer to the worksheet. + int index= worksheet.Slicers.Add(table, 2, 3, 5); + + ISlicerCacheItems cacheItems = worksheet.Slicers[0].SlicerCache.SlicerCacheItems; + int itemscount = cacheItems.Count; + ISlicerCacheItem item = cacheItems[0]; + string value = item.Value; + Item. IsSelected = false; + + //Name of the slicer + ISlicer slicer = worksheet.Slicers[0]; + string name = slicer.Name; + slicer.Name = "Sample Slicer"; + + //Caption name of the slicer + slicer.Caption = "Product Details"; + + //Displays the header + slicer.DisplayHeader = true; + slicer.SlicerStyle= ExcelSlicerStyle.SlicerStyleDark1; + slicer.Top = 20; + slicer.Left = 200; + + //Height and width of the slicer + slicer.Width = 90; + slicer.Height = 90; + //Height and width of the buttons inside the slicer + slicer.SlicerItemHeight = 30; + slicer.SlicerItemWidth = 30; + + //Number of columns inside the slicer + slicer.NumberOfColumns = 2; + + slicer.SlicerCache.CrossFilterType = SlicerCrossFilterType.HideItemsWithNoData; + slicerCache.IsAscending = true; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Removes a specified slicer from the slicer collection. + + Slicer to be removed + + Following code illustrates how to remove a slicer from the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + + //Remove the slicer from the worksheet + worksheet.Slicers.Remove(slicer); + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Removes a slicer at specified index from the slicer collection + + Index of the slicer to be removed + + Following code illustrates how to remove a slicer from the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + + //Remove the slicer from the worksheet + worksheet.Slicers.RemoveAt(0); + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets the number of slicers in the worksheet. + + + Following code illustrates how to get the slicer count from the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + int count = worksheet.Slicers.Count; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Returns the slicer object based on the given index. + + + Following code illustrates how to get slicer object based on the given index. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Slicer.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + ISlicer slicer = worksheet.Slicers[0]; + + workbook.SaveAs("Slicer.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Slicers Constant + + + + + Slicer Constant + + + + + Slicer name Constant + + + + + Slicer Cache + + + + + Slicer Caption + + + + + Row Height Constant + + + + + Column count Constant + + + + + Style Constant + + + + + Show Caption Constant + + + + + Indicates slicer worksheet + + + + + Add the slicer into the sheet + + Represents the slicer source table + Represents the column index + Represents the slicer top row position + Represents the slicer left position + Slicer id + + + + Add the slicer into the sheet + + Represents the slicer + Slicer id + + + + Remove the slicer from the sheet + + Represents the slicer + + + + Remove the slicer from the sheet + + Represents the index of the slicer + + + + Find the worksheet of the slicer + + Represents the parent worksheet + Represents the parrent application + + + + Clone the corresponding slicer collection elements. + + Represents the parent worksheet + Represents the parrent application + Clone slicer collection elements object + + + + Dispose the slicer elements. + + + + + Indicates slicers count in the worksheet + + + + + Gets the slicer from slicer collection. + + Index of the slicer. + Related slicer + + + + This class represents the mention feature of threaded comment + + + + + Represents the Id of the mentioned person + + + + + Represents the Id of the mentioned threaded comment + + + + + Represents the start index position of the mention + + + + + Represents the Length of the mention + + + + + Represents the parent threaded comment to which the mention object belongs + + + + + Constructor to create mention object + + represents the parent threaded comment to which the mention belongs + + + + Clone each mention of a threaded comment + + threaded comment clone + cloned mention + + + + Gets or sets the Id of the mentioned person + + + + + Gets or sets the Id of the mentioned threaded comment + + + + + Gets or set the start index position of the mention + + + + + Gets or sets the length of the mention + + + + + This class represents the threaded comment for range. + + + + + Represents the threaded comment for range. + + + + + Adds a reply for existing threaded comment with the specified text. + + Reply threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . If the thread is resolved, reply threaded comment cannot be created and returns null + + The reply threaded comment is created by mapping with author name from built-in document properties + + + The following code illustrates how to add reply to a threaded comment with text. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Add reply with text + threadedComment.AddReply("reply thread"); + + //Add reply with text and creation time + DateTime date = new DateTime(2020, 11, 22, 2, 22, 23); + threadedComment.AddReply("Text", date); + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Adds a reply for existing threaded comment with the specified text and author. + + Reply threaded comment text + The author of the reply threaded comment + Optional. The creation time of the threaded comment + Returns the created instance of . If the thread is resolved, reply threaded comment cannot be created and returns null + + The following code illustrates how to add reply to a threaded comment with text and author. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Add reply with text and author + threadedComment.AddReply("reply thread", "User"); + + //Add reply with text, author and creation time + DateTime date = new DateTime(2020, 11, 22, 2, 22, 23); + threadedComment.AddReply("Text", "User", date); + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Deletes the threaded comment from the parent threaded comment. + + + The following code illustrates how to Delete a threaded comment. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Delete the threaded comment from the collection. + threadedComment.Delete(); + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets the author of the created threaded comment. + + The author of the . + + The following code illustrates how to access Author property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Get author + string author = threadedComment.Author; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the text of the threaded comment. + + The text of the + + The following code illustrates how to access Text property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Set text + threadedComment.Text = "Modified"; + + //Get Text + string text = threadedComment.Text; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets the creation time of the threaded comment. + + The creation time of the + + The following code illustrates how to access CreatedTime property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Get Created time + DateTime dateTime = threadedComment.CreatedTime; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether this threaded comment is resolved or not. + + True if threaded comment is marked as resolved. By default, false. + + The following code illustrates how to access IsResolved property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Add reply threaded comment + threadedComment.AddReply("sample text", "User"); + + //Resolve the thread + threadedComment.IsResolved = true; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection of replies from the current threaded comment. + + The collection of threaded comment replies, or null if the current threaded comment has no replies. + + The following code illustrates how to access Replies property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Add reply threaded comment + threadedComment.AddReply("sample text", "User"); + + //Access the reply threaded comment + threadedComment.Replies[0].Text = "Modified text"; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets the row index of threaded comment. + + The row index of the + + The following code illustrates how to access RowIndex property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Get the row index of the threaded comment. + int rowIndex = threadedComment.RowIndex; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets the column index of threaded comment. + + The column index of the + + The following code illustrates how to access ColumnIndex property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Get the column index of the threaded comment. + int columnIndex = threadedComment.ColumnIndex; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + The author of the threaded comment + + + + + Refers to the text of the threaded comment + + + + + The created time of the threaded comment + + + + + True if the thread is resolved. If not, false. Not applicable for reply threaded comment. + + + + + The row index of the (threaded) commented cell + + + + + The column index of the (threaded) commented cell + + + + + represents the threaded comment id property + + + + + Represents the Id of the parent threaded comment + + + + + Reference on worksheet to which the threaded comment is added. + + + + + The associated comment object for a threaded comment object + + + + + Represents the collection to which this threaded comment belongs. + + + + + Represents the reply threaded comment collection to this threaded comment + + + + + Represents the list of mentions to this threaded comment + + + + + Represent store the paragraph extLst element stream. + + + + + Represents the person Id of the threaded comment + + + + + True if the threaded comment has hyperlink.If not, false. + + + + + Constructor to create threaded comment object + + The author of the threaded comment + Threaded comment text + threaded comment creation time + row index of the cell that has the threaded comment + column index of the cell that has the threaded comment + id of the threaded comment + parent id of the reply threaded comment + collection to which the threaded comment belongs + comment created to support threaded comment. Not applicable for reply threaded comment + Worksheet to which the threaded comment belongs + + + + Constructor to create threaded comment object + + parent worksheet of the threaded comment + + + + Adds a reply for existing threaded comment with the specified text. + + Reply threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . If the thread is resolved, reply threaded comment cannot be created and returns null + + The reply threaded comment is created by mapping with author name from built-in document properties + + + + + Adds a reply for existing threaded comment with the specified text and author. + + Reply threaded comment text + The author of the reply threaded comment + Optional. The creation time of the threaded comment + Returns the created instance of . If the thread is resolved, reply threaded comment cannot be created and returns null + + + + Delete the threaded comment from existing threaded comments. + + + + + Removes mentioned persons from the person dictionary + + person dictionary + + + + Clone threaded comment + + parent cloned sheet + cloned threaded comments collection + cloned threaded comment + + + + Dispose threaded comment object. + + + + + Gets the author of the created threaded comment. + + The author of the . + + + + Gets or sets the text of threaded comment. + + The text of the + + + + Gets the creation time of the threaded comment. + + The creation time of the + + + + Gets or sets the person Id of the threaded comment + + + + + Gets or sets a boolean value indicating whether this threaded comment is resolved or not. Default value is false. + + True if threaded comment is marked as resolved. Otherwise false. + + + + Gets the collection of threaded comments that are replies to the current threaded comment. + + The collection of threaded comment replies, or null if the current threaded comment has no replies. + + + + Gets the row index of threaded comment. + + The row index of the + + + + Gets the column index of threaded comment. + + The column index of the + + + + Gets or sets the threaded comment Id + + + + + Gets or sets the parent Id if the threaded comment is a reply + + + + + Gets or set the associate comment for a threaded comment + + + + + Gets the list of mentions that this threaded comment has + + + + + Represents the collection to which this threaded comment belongs. + + + + + Gets and sets the paragraph extLst element stream. + + + + + Gets and sets a boolean value indicating whether the threaded comment has a hyperlink. + Returns true if it has a hyperlink, otherwise false. + + + + + This class represents the threaded comment collection for a worksheet. + + + + + Represents the threaded comment collection for a worksheet. + + + + + Removes all the existing threaded comments from the threaded comments collection. + + + The following code illustrates how to clear the threaded comments collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Get the threaded comments collection + IThreadedComments threadedComments = worksheet.ThreadedComments. + + //Removes all the threaded comments from the collection + threadedComments.Clear(); + + //Get the threaded comments count. + int count = threadedComments.Count; //Count is 0 + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets the threaded comment from the threaded comments collection based on the specified index. + + The index of the threaded comment in the collection. + The at the specified index. + + The following code illustrates how to access a threaded comment from the collection using a specific index. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Get the threaded comments collection + IThreadedComments threadedComments = worksheet.ThreadedComments. + + //Access the threaded comment from the threaded comment collection by index + string text = threadedComments[0].Text; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets the threaded comment from the threaded comments collection based on the specified row and column index. + + The row index of the threaded comment + The column index of the threaded comment + The at the specified row and column index, or null if the threaded comment is not found. + + The following code illustrates how to access a threaded comments from the collection using row and column index.. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Get the threaded comments collection + IThreadedComments threadedComments = worksheet.ThreadedComments. + + //Access the threaded comment from the threaded comment collection by row and column index + string text = threadedComments[3, 2].Text; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets the number of threaded comments in the threaded comment collection. + + The number of threaded comments in the collection. + + The following code illustrates how to get the Count of IThreadedComments. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Get the threaded comments collection + IThreadedComments threadedComments = worksheet.ThreadedComments. + + //Get the threaded comments count + int count = threadedComments.Count; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Indicates the worksheet where the threaded comment collection is present + + + + + Constructor to create threaded comments collection object + + worksheet to which the threaded comment collection belongs + application to which the threaded comment collection belongs + + + + Removes all the existing threaded comments from the threaded comments collection. + + + + + Clone threaded comments + + Cloned worksheet + Application + IThreadedComments + + + + Dispose threaded comments collction + + + + + Gets the threaded comments from the threaded comments collection based on the specified index. + + The index of the threaded comment in the collection. + The at the specified index. + + + + Gets the threaded comments from the threaded comments collection based on the specified row and column index. + + The row index of the threaded comment + The column index of the threaded comment + The at the specified row and column index, or null if the threaded comment is not found. + + + + Get the threaded comment from the collection based on the threaded comment id. + + threaded comment Id + Returns the threaded comment as IThreadedComment + + + + Gets the number of threaded comments in the threaded comment collection. + + The number of threaded comments in the collection. + + + + This class represents the person who authored threaded comments. + + + + + Represents the display name of the person + + + + + Represents the Id of the person + + + + + Represents the user Id of the person + + + + + Represents the provider of the person's information + + + + + Represents the number of existing threaded comments created by the person + + + + + Represents the parent workbook of the person object + + + + + Constructor to create a person object + + Display name of the Person + id of the person + userId of the person + provider ID of the person + + + + Constructor to create a person object + + parent workbook of the person object + + + + Clone person + + parent workbook + cloned person + + + + Gets or sets the display name of the person + + + + + Gets or sets the Id of the person + + + + + Gets or sets the user Id of the person + + + + + Gets or sets provider of the person's information + + + + + Gets or set the number of existing threaded comments created by the person + + + + + Indicates whether the current row inserted is grand total row. + + + + + Incidates to replace existing subtotal + + + + + Indicates to insert pageBreaks + + + + + Indicates to insert GrandTotal to below data + + + + + Indicates to group rows + + + + + ConsolidationFunction enumeration + + + + + TotalList of columns to be added + + + + + Current row + + + + + Zero based index of column + + + + + Total colulmn Count + + + + + Record Table + + + + + Column Names + + + + + TotalString + + + + + GrandTotalString + + + + + Height of the row + + + + + ExcelVersion + + + + + Bloack size of the rows + + + + + worksheet + + + + + Horizontal PageBreaks collection + + + + + First row index + + + + + First column index + + + + + Last row index + + + + + Las column index + + + + + No of subTotals + + + + + Create a SubTotal Object + + WorkSheet + + + + Collects all the formulas in the worksheet. + + Worksheet + + + + Creates SubTotal for the Specified Ranges + + FirstRow + FirstColumn + LastRow + LastColumn + GroupBy + ConsolidationFunction + TotalList + Replace + InsertPageBreaks + SummaryBelowData + + + + Retruns corresponding column index above the subtotal formula + + + + + + + Check whether the current row contains SubTotal Formula + + RowIndex + Returns true if row contains SubTotal Formula + + + + Check whether the current row contains SubTotal Formula + + RowStorage + + + + + Updates row value where subtotal is applied. + + row index - one based + + + + Creates the Total row below the data + + A boolean variable indicating if the number format of + the subtotal row is to be updated. + + + + Creates the Total row above the data + + A boolean variable indicating if the number format of + the subtotal row is to be updated. + + + + Class used for Table style rendering in the pdf page. + + + + + Collection of List object ranges and their respective borders and bordercolors. + + + + + Collection of built in styles bordercolors. + + + + + Collection of font colors of listobjects. + + + + + Collection of Dark built in styles for the Last and first column. + + + + + Collection of double border built in styles. + + + + + Collection of list object ranges and their font colors. + + + + + Collection of Light buit in Styles for the Row and column stripes. + + + + + Sheet List objects. + + + + + Collection of Medium styles for the column stripes. + + + + + Collection of Medium built in Styles for the Last and first column that has border settings. + + + + + Collection of Medium built in Styles for the Last and first column that has no border settings. + + + + + Collection of built in styles that has top border as solid. + + + + + List object built in style. + + + + + Indicates whether the Column Stripes are shown. + + + + + Indicates whether First Column is shown. + + + + + List Object Header color + + + + + Indicates whether Header Row is shown. + + + + + Indicates whether Last Column is shown. + + + + + Indicates whether the Row stripes are shown. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The sheet list objects. + + + + Applies the styles. + + The sheet. + The font color collection. + Range collection with the borders and their respective colors + + + + Initializes the light style. + + + + + Initializes the borders. + + + + + Initializes the color fonts. + + + + + Initializes the double borders. + + + + + Initializes the top solid. + + + + + Initializes the column settings. + + + + + Initializes the medium style. + + + + + Apply related table tyle element and range to set the border, font and back ground color and format. + + Current work sheet from work book + Table style element object + Related table range + True, If table style element total row is applied, Other wise false. + FirstColumnStripeStyle stripe size + SecondColumnStripeStyle stripe size + FirstRowStripeStyle stripe size + SecondRowStripeStyle stripe size + + + + custom table style element in whole table element range to get and set the border, back ground and font color, format. + + current sheet in work book + whole table element range + custom table style element + + + + Custom table style elements range get and set the border, back ground and font color, format. + + current sheet in work book + whole table element range + custom table style element + + + + Custom table style in first column stripe element range to set the border, back ground and font color and format. + + + + + + SecondColumnStripeStyle stripe size + + + + Custom table style in second column stripe element range to set the border, back ground and font color and format. + + + + + + FirstColumnStripeStyle stripe size + + + + Custom table style in first row stripe element range to set the border, back ground and font color and format. + + + + + + SecondRowStripeStyle strip size + + + + Custom table style in second row stripe element range to set the border, back ground and font color and format. + + + + + + firstRowStripeStyle strip size + + + + Draws the table style. + + The worksheet. + The built in style. + The list object location. + if set to true [show totals]. + + + + Renders the style to the total part of the table. + + The worksheet. + The listobject location. + The border style. + Color of the border. + if set to true [entire row]. + Color of the background. + The solid style. + if set to true [show totals]. + Color of the font. + if set to true [bold font]. + + + + Apply text color. + + Text color. + The Range. + + + + + Apply borders and line style in table. + + Apply border color and line style range + custom table style element + + + + Apply Whole table style element borders. + + Current sheet in work book + Apply Border color and line style range + sustom table style element + + + + Apply Font Color and format in table. + + Font Range + Custom table style element + + + + Apply back ground color and format. + + Apply back ground color and format range + custom table style element + + + + Renders the style to the header part of the table. + + The Worksheet. + The header range. + The header border style. + Color of the border. + if set to true [entire row]. + Color of the background. + The solid line style. + Color of the font. + + + + Renders the style to the content part of the table. + + The Worksheet. + The header range. + The content border style. + Color of the border. + if set to true [entire row]. + First color of the Background. + Second color of the Background. + The solid line style. + Color of the font. + if set to true [show totals]. + + + + Applies the background color. + + Color of the background. + Cells. + + + + Applies the border. + + The Worksheet. + The border range. + The solid style. + The border style. + Color of the border. + if set to true [entire row]. + + + + Apply border to cell. + + The cell. + Excel border index. + Solid style. + Solid style first. + Solid style second. + Border color. + + + + Applies the border to the first and last column of the table. + + The Worksheet. + The border range. + The solid style. + The border style. + Color of the border. + if set to true [entire row]. + + + + Applies the cell top border. + + The Worksheet. + The border range. + The solid style. + Color of the border. + + + + Applies the first and last column style. + + The Worksheet. + The content range. + Color of the font. + First color of the bg. + if set to true [show totals]. + IRange Object + + + + Checks the style. + + + Returns true if the built in style is within the this.lastColumn and first column list else false will be returned. + + + + + Enumeration of the Border Styles. + + + + + Represents that no ExcelBorderIndex is set. + + + + + Represents that Top ExcelBorderIndex is set. + + + + + Represents that Bottom ExcelBorderIndex is set. + + + + + Represents that Left ExcelBorderIndex is set. + + + + + Represents that Right ExcelBorderIndex is set. + + + + + Represents that both Top and Bottom ExcelBorderIndex is set. + + + + + Represents that both Left and Right ExcelBorderIndex is set. + + + + + Represents that all ExcelBorderIndex is set. + + + + + Enumeration of the Solid style in Borders + + + + + Represents the No Solidstyle. + + + + + Represents the solid style for the Top ExcelBorderIndex. + + + + + Represents the solid style for the Bottom ExcelBorderIndex. + + + + + Represents the solid style for the Right ExcelBorderIndex. + + + + + Represents the solid style for the Left ExcelBorderIndex. + + + + + Represents the solid style for both Top and Bottom ExcelBorderIndex. + + + + + Represents the solid style for both Right and Left ExcelBorderIndex. + + + + + Represents the warning details with type and description. + + + + + Warning description. + + + + + Warning type + + + + + Initializes a new instance of the class. + + + + + Specifies the description for the warning. + + + + + Specifies the type of the warning. + + + + + This class represents slicer parsing. + + + + + Extracts specified list object from XmlReader. + + XmlReader to get table from. + Worksheet to put extracted table into. + + + + This class is used for Slicer serialization. + + + + + This method serializes specified slicer + + XmlWriter to serialize shape settings into. + Represents the slicer collection. + + + + Represents the Warning details for the unsupported and substituted elements. + + + + + Shows the warning in the workbook. + + WarningInfo instance with the warning description and type. + + + + Indicates whether to cancel the current process. + + + + + Class that holds XmlMap information. + + + + + Schema element name. + + + + + Id attribute name. + + + + + Map element name. + + + + + Name attribute name. + + + + + Root element attribute name. + + + + + Schema id attribute name. + + + + + Show import export validation errors attribute name. + + + + + Autofit attribute name. + + + + + Append attribute name. + + + + + Preserve sort AFLayout attribute name. + + + + + Preserve format attribute name. + + + + + Preserve DataBinding Element name. + + + + + Preserve FileBinding attribute name. + + + + + Preserve DataBindingLoadMode attrbute name. + + + + + Sheet where XmlMap imports the data. + + + + + Name of the XmlMap object. + + + + + Id of the XML schema. + + + + + Root element of XML document. + + + + + XML schema stream. + + + + + XmlMap Id. + + + + + Xml connection ID. + + + + + Denotes whether a DataBinding element is read from XML. + + + + + Extracts XML data from the stream and import to the sheet. + + XML stream. + Workbook object. + Sheet object to import data. + Starting row. + Starting column. + Count of XmlMaps in the workbook. + True if data imports to the sheet, else False. + + + + Column attributes of a table fetched from XML schema. + + Column of a table. + XML schema where the data type of column is preserved. + Represents the column in the Data table + Returns True if data have sub-element path, False otherwise. + + + + Recursion method used to find the sub element path from the root element. + + Element path from the root element. + Table column. + Values collection. + Represents the column in the Data table + + + + Convert the XML stream to schema element. + + XML stream. + Returns XML schema if the data is valid. Default null. + + + + Parse XML schema from the file. + + XML reader. + + + + Serializes schema in the file. + + xml writer. + + + + Serializes XmlMapping information. + + Xml writer. + + + + Dispose the object. + + + + + Name of the XmlMap object. + + + + + Sheet where XmlMap imports the data. + + + + + Id of the XML schema. + + + + + Root element of XML document. + + + + + XML schema stream. + + + + + XmlMap Id. + + + + + Represents Excel2013 Serializator + + + + + Class used for Excel 2007 Serialization. + + + + + Class used for Excel 2007 Serialization. + + + + + Maximum allowed formula length. + + + + + File heading. + + + + + Namespace with ContentTypes items. + + + + + Namespace for hyperlink. + + + + + Namespace for relation tags/attributes. + + + + + Namespace for relation tags/attributes for Strict Open Xml spreadsheet format document. + + + + + Main xml namespace. + + + + + Dynamic array namespace + + + + + Namespace for threaded comments. + + + + + Name of the relation type that indicates that part contains worksheet data. + + + + + Name of the relation type that indicates that part contains macrosheet data. + + + + + Name of the relation type that indicates that part contains intlmacrosheet data. + + + + + Name of the relation type that indicates that part contains chartsheet data. + + + + + Name of the relation type that indicates that part contains dialogsheet data. + + + + + Name of the relation type that indicates that part contains extended document properties. + + + + + Name of the relation type that indicates that part contains core properties. + + + + + Name of the relation type that indicates that part contains the Sparkline properties. + + + + + Represents the X15 Namespace + + + + + Name of the relation type that indicates that part contains the list properties. + + + + + Pivot Field URi + + + + + The URi is constant and used for pivor table definition extension list. + + + + + Extern List URi + + + + + Slicer Cache extersion URi + + + + + Worksheet slicer extersion URi + + + + + Slicer cache extersion URi + + + + + Slicer cache filter URi + + + + + Slicer drawing URi + + + + + Meta data Extension Uri + + + + + Slicer URi + + + + + Slicer extersion URi + + + + + X14 Namespace Attibute + + + + + Hide values row attribute + + + + + Main Microsoft Namespace + + + + + Main Microsoft Namespace Attribute + + + + + Main XM Namespace + + + + + Main XM Namespace Attribute + + + + + x14 PivotTable Definition Attribute + + + + + Uri for the Sparkline properties. + + + + + MC prefix + + + + + MC Namespace + + + + + Prefix for core properties namespace. + + + + + Name of the relation type that indicates dublin core part. + + + + + Prefix for dublin core namespace. + + + + + Name of the relation type that indicates dublin core terms part. + + + + + Prefix for dublin core terms namespace. + + + + + Name of the relation type that indicates DCMIType part. + + + + + Prefix for DCMIType namespace. + + + + + Name of the relation type that indicates XSI part. + + + + + Prefix for XSI namespace. + + + + + Name of the relation type that indicates that part contains custom properties. + + + + + Name of the relation type that indicates DocPropsVTypes namespace + + + + + OleObject Content Type + + + + + OleObject File Extension + + + + + Prefix for DocPropsVTypes namespace. + + + + + Prefix for relation namespace. + + + + + Prefix for Sparkline namespace. + + + + + Prefix for X15 namespace. + + + + + Prefix for X namespace. + + + + + Prefix for xda namespace + + + + + Prefix for list namespace. + + + + + Prefix for Chart 15. + + + + + Prefix for Microsoft Main Namespace. + + + + + Name of the xml tag that stores content types definitions. + + + + + Name of the xml attribute with part extension. + + + + + Name of the xml tag that stores default type name. + + + + + Name of the xml tag that stores content type string. + + + + + Name of the xml tag that stores type override. + + + + + Name of the xml attribute that stores part name. + + + + + Name of the xml tag that defines the structure of the workbook. + + + + + Name of the xml tag that represents the collection of sheets in the workbook. + + + + + Name of the xml tag that represents the fileSharing of the workbook. + + + + + Name of the xml attribute that stores the readOnly value. + + + + + Name of the xml tag that defines a sheet in this workbook. + + + + + Name of the xml attribute that stores sheet name. + + + + + Default worksheet path format + + + + + Relation id format + + + + + Name of the xml attribute that stores unique sheet id. + + + + + Name of the xml attribute that stores relation id. + + + + + Name of the xml attribute that stores relation id, + it is used in .rels file (starts with capital letter). + + + + + Name of the xml attribute that specifies the visible state of this sheet. + + + + + This element defines the collection of properties the application uses + to record calculation status and details. + + + + + Calculation ID + + + + + Calculation Mode + + + + + Tab Selected + + + + + Manual Calc Mode Value + + + + + Auto No Table Calc Mode Value + + + + + Default delimiter between worksheet rows. + + + + + Indicates the book window is hidden, but can be shown by the user via the user interface. + + + + + Indicates the sheet is hidden and cannot be shown in the user interface (UI). + This state is only available programmatically. + + + + + Indicates the sheet is visible. + + + + + Name of the xml tag that holds relationships data. + + + + + Name of the xml tag that holds relationship data. + + + + + Name of the xml attribute that holds relationship type. + + + + + Name of the xml attribute that holds relationship target. + + + + + Name of the xml attribute that holds relationship target mode. + + + + + Name of relationship external target mode. + + + + + Name of the xml tag that contains merged cells data. + + + + + Name of the count attribute. + + + + + Name of the defaultTableStyle. + + + + + Name of the defaultPivotStyle. + + + + + Name of the xml tag that contains single merge region's data. + + + + + Name of the ref attribute. + + + + + Name of the xml tag that contains all defined named ranges. + + + + + Name of the xml tag that contains single defined named range. + + + + + Name of the name attribute. + + + + + Name of the source name attribute. + + + + + Name of the comment attribute. + + + + + Name of the attribute that stores sheet id for named range. + + + + + Name of the xml tag that contains all styles settings (fonts, number formats, fills, etc.) inside. + + + + + Name of the xml tag that contains slicer list + + + + + Name of the xml tag that contains slicer + + + + + Name of the xml tag that contains slicer caches + + + + + Name of the xml tag that contains slicer cache + + + + + Name of the xml tag that contains all fonts settings inside. + + + + + Name of the xml tag that contains all font settings inside. + + + + + Name of the xml tag that indicates that font is bold. + + + + + Name of the xml tag that indicates that font is italic. + + + + + Name of the xml tag that stores font underline settings. + + + + + Name of the value attribute. + + + + + Name of the xml tag that stores font underline settings. + + + + + Name of the xml tag that indicates that font has strike settings. + + + + + Name of the xml tag that represents font name. + + + + + Name of the xml tag that contains color settings. + + + + + Name of the indexed attribute in the color tag. + + + + + Name of the xml attribute that represents index into the theme colors collection. + + + + + Name of the xml attribute that represents the tint value applied to the color. + + + + + Name of the rgb attribute in the color tag. + + + + + Name of the default color attribute. + + + + + Name of the xml tag that stores indexed color values. + + + + + Name of the xml tag that stores color settings. + + + + + Name of the xml tag that stores rgb color. + + + + + Name of the xml tag that stores MacOSShadow settings. + + + + + Name of the xml tag that stores font vertical alignment settings. + + + + + Name of the xml tag that stores font family settings. + + + + + Name of the xml tag that stores font charset settings. + + + + + Name of the xml tag that represents number formats. + + + + + Name of the xml tag that represents single number format. + + + + + Name of the xml attribute that defines number format id. + + + + + Name of the xml attribute that defines number format string. + + + + + Name of the xml tag that represents fills collection. + + + + + Name of the xml tag that represents single fill object. + + + + + Name of the xml tag that represents pattern fill object. + + + + + Name of the xml tag that represents gradient-style cell fill. + + + + + Name of the xml attribute that represents type of gradient fill. + + + + + This gradient fill is of linear gradient type. + + + + + This gradient fill is of path gradient type. + + + + + Name of the xml attribute that represents angle of the linear gradient - vertical, horizontal, diagonal. + + + + + Name of the xml attribute that specifies in percentage format (from the top to the bottom) the + position of the bottom edge of the inner rectangle (color 1). + + + + + Name of the xml attribute that specifies in percentage format (from the left to the right) the + position of the left edge of the inner rectangle (color 1). + + + + + Name of the xml attribute that specifies in percentage format (from the left to the right) the + position of the right edge of the inner rectangle (color 1). + + + + + Name of the xml attribute that specifies in percentage format (from the top to the bottom) the + position of the top edge of the inner rectangle (color 1). + + + + + Name of the xml tag name that represents one of a sequence of two or more gradient stops, constituting this gradient fill. + + + + + Name of the xml attribute that represents position information for this gradient stop. + + + + + Name of the xml attribute that defines pattern. + + + + + Name of the xml tag that represents background color. + + + + + Name of the xml tag that represents foreground color. + + + + + Name of the xml tag that stores all border collections inside. + + + + + Name of the xml tag that stores single border collection. + + + + + Name of the xml attribute that represents border style. + + + + + Name of the xml tag that stores border color. + + + + + This is the root element of Sheet Parts that are of type 'worksheet'. + + + + + Name of the xml tag that stores worksheet dimension. + + + + + Name of the xml tag that stores sheet data. + + + + + Name of the xml tag that stores the scenarios + + + + + Name of the xml tag that stores the scenario + + + + + Name of the xml tag that shows the index value of the current scenario + + + + + Name of the xml tag that shows the index value of the current scenario + + + + + Name of the xml tag that stores the resultant cell range + + + + + Name of the xml tag that stores the name of the scenario + + + + + Name of the xml tag that stores the scenario to locked + + + + + Name of the xml tag that stores the scenario to hidden + + + + + Name of the xml tag that stores the count of the scenario + + + + + Name of the xml tag that stores the user name of the author + + + + + Name of the xml tag that stores the inputcell of the scenario + + + + + Name of the xml tag that stores the value of the scenario + + + + + Name of the xml tag that stores cell in the worksheet. + + + + + Name of the xml attribute that represents the cell metadata record associated with this cell. + + + + + Name of the xml attribute that represents boolean value to show phonetic information. + + + + + Name of the xml attribute that represents an A1 style reference to the location of this cell. + + + + + Name of the xml attribute that represents the index of this cell's style. + + + + + Name of the xml attribute that represents an enumeration representing the cell's data type. + + + + + Name of the xml attribute that represents index of the value metadata + record associated with this cell's value. + + + + + Name of xml tag that represents formula. + + + + + Name of xml tag that represents cell value. + + + + + Name of xml tag that represents rich text. + + + + + Name of xml tag that represents rich text run properties. + + + + + Name of xml tag that represents rich text run font name. + + + + + Name of the xml tag that stores all column settings. + + + + + Name of the xml tag that stores column settings range. + + + + + Name of the xml attribute that stores minimum column index of the column range. + + + + + Name of the xml attribute that stores maximum column index of the column range. + + + + + Name of the xml attribute that stores width of each column from column range. + + + + + Name of the xml attribute that stores style of each column from column range. + + + + + Name of the xml attribute that indicates whether column width differs from the default one. + + + + + + + + + + Name of xml tag that represents row. + + + + + Name of xml attribute that represents row index. + + + + + Name of xml attribute that represents row height in point size. + + + + + Name of xml attribute that shows whether row is visible or not. + + + + + Name of xml attribute that shows whether row style should be applied or not. + + + + + Name of xml attribute that shows whether row height has been manually set or not. + + + + + Name of xml attribute that shows whether row has been collapsed or not. + + + + + Name of xml attribute that shows whether value of the descent attribute. + + + + + Name of xml attribute that represents outlining level of the row. + + + + + Name of xml attribute that represents thick bottom flag. + + + + + Name of xml attribute that represents thick top flag. + + + + + Name of xml attribute that represents formula type. + + + + + True indicates that this formula is an array formula and the entire array shall be + calculated in full. If false the individual cells of the array shall be calculated as needed. + + + + + Name of xml attribute that represents shared formula group index. + + + + + Name of xml attribute that represents range of cells which the formula applies to. + + + + + Name of the xml tag that holds list of all comment authors. + + + + + Name of the xml tag that holds single author name. + + + + + Name of the xml tag that holds all comment notes. + + + + + Name of the xml tag that holds single comment note. + + + + + Name of the xml tag that stores comment text. + + + + + Name of the xml tag that stores all comment notes settings. + + + + + Name of the xml tag that stores all threaded comments + + + + + Name of the xml tag that stores a threaded comment + + + + + Name of the xml tag that stores all mentions of threaded comments in the worksheet + + + + + Name of the xml tag tag that stores a mention from a threaded comment + + + + + Name of the xml tag tag that stores person id of a threaded comment + + + + + Name of the xml tag tag that stores dT of a threaded comment + + + + + Name of the xml tag that stores parent Id of a threaded comment + + + + + Name of the xml tag that stores done attribute name of a threaded comment + + + + + Name of the xml tag tag that stores person Id of a threaded comment mention + + + + + Name of the xml tag tag that stores mention Id of a threaded comment mention + + + + + Name of the xml tag tag that stores start index attribute of a threaded comment mention + + + + + Name of the xml tag tag that stores lenth attribute of a threaded comment mention + + + + + Name of the xml attribute that stores comment author id. + + + + + Defines default cell data type. + + + + + Name of the xml tag that stores extended formats for named styles. + + + + + Name of the xml tag that stores extended formats for cell formats. + + + + + Name of the xml tag that stores extended formats for differential formats. + + + + + Name of the xml tag that stores table styles. + + + + + Name of the xml tag that stores table style. + + + + + Name of the xml tag that stores table style element. + + + + + Name of the xml tag that stores table style name. + + + + + Name of the xml attribute that represents type of the table style element. + + + + + Size of the xml tag. + + + + + Name of the xml tag that stores pivot value. + + + + + Name of the xml attribute that represents an index to a dxf element in the Styles Part indicating which cell formatting to + apply when the conditional formatting rule criteria is met. + + + + + Name of the xml tag that stores single extended format settings. + + + + + Name of the xml attribute that represents font id. + + + + + Name of the xml attribute that represents fill id. + + + + + Name of the xml attribute that represents border id. + + + + + Name of the xml attribute that represents extended format index. + + + + + Name of the xml tag that stores named cell styles settings. + + + + + Name of the xml tag that stores single named cell style settings. + + + + + Name of the xml attribute that stores built in style id. + + + + + Name of the xml attribute that define the customized buildinstyles. + + + + + Indicates that this formatting is for an outline style. + + + + + Name of the xml attribute indicating whether the alignment formatting + specified for this xf should be applied. + + + + + Name of the xml attribute indicating whether the border formatting + specified for this xf should be applied. + + + + + Name of the xml attribute indicating whether the font formatting + specified for this xf should be applied. + + + + + Name of the xml attribute indicating whether the number formatting + specified for this xf should be applied. + + + + + Name of the xml attribute indicating whether the fill formatting + specified for this xf should be applied. + + + + + Name of the xml attribute indicating whether the protection formatting + specified for this xf should be applied. + + + + + Name of the xml tag that hold all style's alignment information. + + + + + Name of the xml tag that hold all style's protection information. + + + + + Name of the xml attribute that stores style indent level settings. + + + + + Name of the xml attribute that specifies the type of horizontal alignment in cells. + + + + + Name of the xml attribute indicating if the cells justified or distributed + alignment should be used on the last line of text. + + + + + Name of the xml attribute that holds reading order settings. + + + + + Name of the xml attribute that holds shrink to fit option. + + + + + Name of the xml attribute that holds text rotation value. + + + + + Name of the xml attribute that holds wrap text option. + + + + + Name of the xml attribute that specifies the type of vertical alignment in cells. + + + + + Name of the xml attribute that indicates whether cell is hidden. + + + + + Name of the xml attribute that indicates whether cell is locked. + + + + + Default value for FormulaHidden value. + + + + + Default value for Locked value. + + + + + Name of the xml attribute that stores value indicating whether the text + string in a cell should be prefixed by a single quote mark. + + + + + Name of the xml attribute that indicates whether diagonalDown border is present. + + + + + Name of the xml attribute that indicates whether diagonalUp border is present. + + + + + Name of the xml tag that represents person list + + + + + Name of the xml tag that stores person list + + + + + Name of the xml tag that represents metadata + + + + + Name of the xml tag that represents metadata types + + + + + Name of the xml tag that represents metadata type + + + + + Name of the xml tag that represents future metadata + + + + + Name of the xml tag that represents bk tag + + + + + Name of the xml tag that represents dynamicArrayProperties + + + + + Name of the xml tag that represents cell metadata + + + + + Name of the xml attrbute that represents display name attribute of person tag + + + + + Name of the xml attribute that represents providerId attribute of person tag + + + + + Name of the xml attribute that represents userId attribute of person tag + + + + + Name of the xml tag that represents shared string table. + + + + + Name of the xml attribute that represents the total count of unique strings in the SST. + + + + + Name of the xml tag that represents individual string in SST. + + + + + Name of the xml tag that represents the text content shown as part of a string. + + + + + Name of the xml tag that represents rich text run. + + + + + Root items for data preserving. + + + + + Attribute to specify string spacing. + + + + + Xml prefix. + + + + + Value specifying white space preservation in a string. + + + + + Represents Number data type. + + + + + Represents string data type. + + + + + Represents boolean data type. + + + + + Represents error. + + + + + Represents formula. + + + + + Represents inline string + + + + + Represents Font scheme. + + + + + Represents sorting state. + + + + + Represents case sensitive in sorting. + + + + + Represents sorting condition. + + + + + Represents sorting order of sorting condition. + + + + + Represents sorting option of sorting condition. + + + + + Represents cell color of sorting condition. + + + + + Represents font color of sorting condition. + + + + + Name of the xml tag that represents the root level complex type associated with a shared style sheet (or theme). + + + + + Name of the xml tag that represents the root level complex type associated with a shared style sheet (or theme) overrided. + + + + + Name of the xml tag that represents the theme formatting options for the theme and is the workhorse of the theme. + + + + + Name of the xml tag that represents a set of colors which are referred to as a color scheme. + + + + + Name of the xml attribute name that the actual color value, expressed as a sequence of hex digits RRGGBB. + + + + + Name of the xml tag that represents a color bound to predefined operating system elements. + + + + + Name of the xml attribute that represents the system color value. + + + + + Name of the xml attribute that represents the color value that was last computed by the generating application. + + + + + Name of the xml tag that represents a single dxf record, expressing incremental formatting to be applied. + + + + + Name of the xml tag that represents a collection of phonetic properties that affect the display of phonetic text. + + + + + Name of the xml tag that represents phonetic text + + + + + Name of the xml tag that represents a collection of hyperlinks. + + + + + Name of the xml tag that represents a single hyperlink. + + + + + Name of the xml attribute that represents display string, if different from string in string table. + + + + + Name of the xml attribute that represents relationship Id in this sheet's relationships part, + expressing the target location of the resource. + + + + + Name of the xml attribute that represents location within target. + + + + + Name of the xml attribute that represents cell location of hyperlink on worksheet. + + + + + Name of the xml attribute that represents additional text to help the user understand more about the hyperlink. + + + + + Name of the xml tag that represents sheet level properties. + + + + + Page setup properties of the worksheet. + + + + + Flag indicating whether the Fit to Page print option is enabled. + + + + + Name of the xml tag that represents background color of the sheet tab. + + + + + Name of the xml tag that represents sheet outline properties. + + + + + Name of the xml tag that represents Summary Row below property of sheet outline + + + + + Name of the xml tag that represents Summary column right property of sheet outline + + + + + Name of the xml tag that represents Background sheet image. + + + + + Represent file hyperlink string prefix. + + + + + Represent http hyperlink string prefix. + + + + + Name of the xml tag that stores sheet format properties. + + + + + Name of the xml attribute that stores rows are hidden by default. + + + + + Name of the xml attribute that stores default row height setting. + + + + + Name of the xml attribute that stores default col width setting. + + + + + Name of the xml attribute that stores base column width setting + + + + + Name of the xml attribute that stores thickBottom setting + + + + + Name of the xml attribute that stores thickTop setting + + + + + Name of the xml attribute that stores outlineLevelCol setting + + + + + Name of the xml attribute that stores outlineLevelRow setting + + + + + Name of the xml tag that specifies the collection of workbook views. + + + + + Name of the xml tag that specifies a single Workbook view. + + + + + Name of the xml attribute that specifies an unsignedInt that contains the index to the active sheet in this book view. + + + + + Name of the xml attribute that specifies a boolean value that indicates whether to group dates + when presenting the user with filtering options in the user interface. + + + + + Name of the xml attribute that specifies the index to the first sheet in this book view. + + + + + Name of the xml attribute that specifies a boolean value that indicates whether the book window is minimized. + + + + + Name of the xml attribute that specifies a boolean value that indicates whether + to display the horizontal scroll bar in the user interface. + + + + + Name of the xml attribute that specifies a boolean value that indicates whether + to display the sheet tabs in the user interface. + + + + + Name of the xml attribute that specifies a boolean value that indicates whether to display the vertical scroll bar. + + + + + Name of the xml attribute that specifies ratio between the workbook tabs bar and the horizontal scroll bar. + + + + + Name of the xml attribute that specifies visible state of the book window. + + + + + Name of the xml attribute that specifies the height of the workbook window. + + + + + Name of the xml attribute that specifies the width of the workbook window. + + + + + Name of the xml attribute that specifies the X coordinate for the upper left corner of the book window. + + + + + Name of the xml attribute that specifies the Y coordinate for the upper left corner of the book window. + + + + + Name of the xml tag that represents horizontal page break information. + + + + + Name of the xml tag that represents vertical page break information + + + + + Name of the xml attribute that represents number of breaks in the collection. + + + + + Name of the xml attribute that represents number of manual breaks in the collection. + + + + + Name of the xml tag that represents individual row or column breaks; + + + + + Name of the xml attribute that represents zero-based row or column Id of the page break. + Breaks occur above the specified row and left of the specified column. + + + + + Name of the xml attribute that represents manual Break flag. + '1' means the break is a manually inserted break. + + + + + Name of the xml attribute that represents zero-based index of end row or column of the break. + For row breaks, specifies column index; for column breaks, specifies row index. + + + + + Name of the xml attribute that represents zero-based index of start row or column of the break. + For row breaks, specifies column index; for column breaks, specifies row index. + + + + + Worksheet/chartsheet views collection. + + + + + This element specifies a chart sheet view. + + + + + Flag indicating whether this sheet should display zero values. + + + + + Zero-based index of this workbook view, pointing to a workbookView + element in the bookViews collection. + + + + + String used to serialize sheet zooming + + + + + String used to serialize sheet view + + + + + String used to serialize sheet zooming + + + + + String used to serialize Page break preview layout. + + + + + String used to serialize Normal layout. + + + + + String used to serialize boolean True value. + + + + + String used to serialize boolean False value. + + + + + String used to serialize Sparkline Column type. + + + + + String used to serialize Sparkline WinLoss type. + + + + + String used to serialize Display of Empty Cells as gaps. + + + + + String used to serialize Display of Empty Cells as zero. + + + + + String used to serialize Display of Empty Cells as Continued lines. + + + + + String used to serialize Vertical Axis type as custom. + + + + + String used to serialize Vertical Axis type as same. + + + + + Flag indicating whether this sheet should display gridlines. + + + + + Flag indicating whether the sheet is in 'right to left' display mode. + When in this mode, Column A is on the far right, Column B ;is one column + left of Column A, and so on. Also, information in cells is displayed in + the Right to Left format. + + + + + Flag indicating whether this sheet gridline is modified by user + + + + + String used to specify the color of grid line + + + + + This collection is used to reference binary parts containing arbitrary user-defined data. + + + + + The custom property element provides a mechanism to store name/value pairs + of arbitrary user-defined data. The name is stored in the attribute name, + the arbitrary data is stored in the binary part referenced by the relationshipId. + + + + + A collection of ignored errors, by cell range. + + + + + A single ignored error type for a range of cells. + + + + + + + + + + + + + + + Attribute used to store range reference. + + + + + This element defines properties that track which version of the application + accessed the data and source code contained in the file. + + + + + Specifies the incremental public release of the application. + For example, betas, service packs, and versions. + + + + + Name of the xml tag that represents last edited + + + + + Name of the xml tag that represents lowest edited + + + + + This xml element stores the details of WorkbookPr. + + + + + This element stores information about the Date format to be used. + + + + + This element stores information about the Precision to be followed. + + + + + Specifies the application name. + + + + + Value of the application name attribute. + + + + + Flag indicating whether the panes in the window are locked due to workbook protection. + This is an option when the workbook structure is protected. + + + + + Name of the xml tag that represents funtion groups + + + + + Xml attribute containing sheet codename. + + + + + Attribute for showing or hiding the fields list of pivot table in workbook + + + + + Xml Tags and Attributes containing Sheet Sparklines. + + + + + Name of the xml tag that represents extension list + + + + + Name of the xml tag that represents extension + + + + + Name of the xml tag that represents Calculate On Open + + + + + Attribute to show two-dimenssional data table + + + + + Attribute to show one-dimentional data table is a row or column + + + + + Attribute to represent first input cell for data table. + + + + + Attribute to represent first input cell for data table. + + + + + First visible character. + + + + + Name of the xml tag that represents transition evaluation + + + + + Flag indicating whether this sheet should display row and column headers. + + + + + Properties Constant + + + + + DocumentManagement Constalt + + + + + PC prefix + + + + + P prefix + + + + + Properties NameSpace + + + + + PartnerControls NameSpace + + + + + Default Theme Version + + + + + Represent the connections + + + + + Represent the connections + + + + + Represents ODBC File + + + + + Represents DataBase Name + + + + + Represents DataBase Type + + + + + Refreshed Version Attribute + + + + + BackGround Attribute + + + + + Save Data + + + + + DataBase Property Tag + + + + + Command Text Attribute + + + + + Command Type Attribute + + + + + Connection Id Attribute + + + + + Source File + + + + + Description Tag + + + + + Interval + + + + + Save password + + + + + Only use connection file + + + + + Background refresh + + + + + Credentials + + + + + Deleted + + + + + Text Properties + + + + + Represent the WebProperties + + + + + xml + + + + + url + + + + + Represent the Olap Property + + + + + Indicating whether cell has pivot button + + + + + Name of the xml tag that specifies the collection of custom workbook views. + + + + + Name of the xml tag that specifies single custom workbook view. + + + + + Represent the Parameters Property + + + + + Represent the Parameter Property + + + + + Represent the Parameter type + + + + + Represent the Sql type + + + + + Represents parameter prompt attribute. + + + + + Represents parameter boolean attribute. + + + + + Represents parameter cell attribute. + + + + + Represents parameter double attribute. + + + + + Represents parameter double attribute. + + + + + Represents parameter string attribute. + + + + + Represents parameter string attribute. + + + + + Represents the prefixe for Slicer cache definition + + + + + Represents the table slicer cache attribute + + + + + Represents the table id attribute + + + + + Represents the column id attribute + + + + + Represents the sort order attribute + + + + + Represents the cross filter type attribute + + + + + Represents the cross filter type attribute + + + + + Represents the pivot table attribute + + + + + Represents the sheet tab attribute + + + + + Represents the data attribute + + + + + CustomXmlParts Constants + + + + + Custom Xml Name + + + + + Custom Xml properties name + + + + + Custom xml relation + + + + + Data store item + + + + + Item Id Attribute + + + + + Custom Xml Schema References + + + + + Custom Xml Schema Reference + + + + + Custom Xml Uri Attribute + + + + + Xml Item Name + + + + + Xml Properties Name + + + + + Custom Xml Namespace + + + + + Item properties prefix + + + + + Custom Xml Item ID + + + + + Item Properties Uri + + + + + Custom Xml Item Properties Relation + + + + + XML namespace used for standard XML attributes, such as xml:space. + + + + + Name of the XML attribute that specifies whether to preserve whitespace. + + + + + Sequence of error types (must be in the same order as in ErrorTagsSequence). + + + + + String that formulas for Ole images. + + + + + String for the BorderColor of OleObject Image + + + + + Sequence of error xml attribute names corresponding to error types defined in ErrorsSequence. + + + + + Chars with codes less than 0x20 which are allowed to be used inside xml strings. + + + + + Parent workbook. + + + + + Formula utils. + + + + + Record extractor. + + + + + Collection with vml shapes seriliazators. + + + + + Object represent the current thread object + + + + + Collection with header/footer vml shapes seriliazators. + + + + + Collection with shape serializators. + + + + + Conditional formats list. + + + + + Sorting data list. + + + + + Color Filter Fill style + + + + + Filter Index for Color filter + + + + + Sorting data list for AutoFilters. + + + + + Sorting data list for TableFilters. + + + + + List of Sheet names. + + + + + Special characters can use in the sheet name. + + + + + Global index maintain for worksheet's custom properties + + + + + Initializes a new instance of the Excel2007Serializator class. + + Parent workbook. + + + + Dispose + + + + + Serialize content types. + + XmlWriter to save into. + + Dictionary which is used to identify content type and stores default types. + Key - file extension (string), Value - content type (string). + + + Dictionary which is used to identify content type and stores type overrides. + Key - part name, Value - content type (string). + + + + + Serializes workbook part (workbook.xml content) into XmlWriter. + + XmlWriter to serialize workbook properties into. + Stream that contains additional workbook information that + wasn't parsed on load and that is placed before sheets. + Stream that contains additional workbook information that + wasn't parsed on load and that is placed after named ranges. + Workbook views collection. + Workbook relations. + Dictionary that will contain pivot cache files + (key - cache object, value - cache file name). + Stream containing functionGroups tag data. + Custom workbook view collection + + + + Serializes Calculation property + + + + + + Serializes the workbookPr element + + + + + + Serializes file version tag. + + XmlWriter to serialize into. + + + + Serializes file sharing tag. + + XmlWriter to serialize sharing into. + + + + Serializes workbook protection options. + + XmlWriter to serialize protection into. + + + + Serializes merged cells. + + XmlWriter to save into. + Object to serialize. + + + + Serializes named ranges into specified writer. + + XmlWriter to save named ranges into. + + + + + Serializes styles collection into specified XmlWriter. + + XmlWriter to serialize styles into. + Stream that contains Dxfs formatting tags. + Dictionary with new XF indexes. + + + + Extracts color filter dxf stream and adds it to the internal stream list. + + Filter Collection from which stream is to be extracted. + Temporary stream to hold the extracted dxf stream. + Index of the dxf stream. + + + + Serializes relations collection into specified xml writer. + + Writer to serialize into. + Relations to serialize. + + + + Serializes single worksheet object. + + XmlWriter to serialize into. + Worksheet to serialize. + Stream with xml text starting from the + beginning of worksheet to sheetData or cols tag. + Stream with conditional formatting. + Dictionary with new XF indexes, key - old index, value - new index. + + + + Serializes Data table into sheet. + + XmlWriter to serialize into. + Worksheet to serialize. + + + + Serialize cells. + + XmlWriter to serialize into. + Worksheet to serialize. + DataTable with desired data. + Row of the first cell where DataTable should be imported. + Column of the first cell where DataTable should be imported. + Lastrow of the cell where DataTable should be imported. + LastColumn of the cell where DataTable should be imported. + Represents shared string collection. + Current row of the dataTable + Serialize row index + If true the column header should imported. + + + + Serialize Extensions + + + + + + + Serializes controls additional information. + + XmlWriter to serialize into. + Worksheet to serialize. + + + + Update Anchors value in control stream. + + XmlNode element + Boolean value use the update the values. + Current wrok sheet + + + + Get the relate shapeImpl. + + Child node + Shape collection + + + + + Get the child node. + + Xml node + control string + + + + + Write Alternate Content Footer + + + + + + Write Alternate Cotent Header + + + + + + Write Alternate Content Controls Header + + + + + + Serializes protection options if necessary. + + XmlWriter to serialize into. + Worksheet to get protection options from. + + + + Serializes single protection option. + + XmlWriter to serialize protection into. + Name of the attribute to serialize. + Flag that corresponds to the attribute. + Default value. + Current protection settings. + + + + Serializes single protection option. + + XmlWriter to serialize protection into. + Name of the attribute to serialize. + Flag that corresponds to the attribute. + Default value. + Current protection settings. + + + + Serializes ignore errors options. + + XmlWriter writer to serialize options into. + Worksheet to serialize options for. + + + + Serializes single error indicator. + + XmlWriter to serialize into. + Error indicator to serialize. + + + + Serializes all required attributes for error indicator option. + + XmlWriter to serialize into. + Ignore error value. + + + + Converts cell list of the error indicator into string. + + Error indicator to get list for. + String representation of cell list for specified error indicator. + + + + Serializes custom worksheet properties if necessary. + + XmlWriter to serialize into. + Worksheet to serialize. + + + + Serializes worksheet custom property + + XmlWriter to serialize into. + Worksheet to serialize. + Represents custom document property. + + + + Writes property data into specified item. + + Parent worksheet. + Zip archive item to write property value into. + Property to get data from. + + + + Returns worksheet stream that contains its conditional formats. + + Sheet index. + Stream with conditional formats. + + + + Returns worksheet stream that contains its Sortind data. + + Sheet index. + Stream with Sorting data. + + + + Returns worksheet stream that contains its Sortind data. + + AuoFilters sheet index. + Stream with Sorting data. + + + + Returns the worksheet stream that contains color filter data + + index of the Stream to be returned. + Serialized color Stream. + + + + Returns worksheet stream that contains its Sortind data. + + AuoFilters sheet index. + Stream with Sorting data. + + + + Serializes comment notes part (authors, text and parent cell address). + + XmlWriter to serialize into. + Worksheet to get comments from. + + + + Serialize threaded comments + + XmlWriter to serialize into. + Worksheet to get comments from. + + + + Serialize threaded comments + + + + + Serialize threaded comments mentions + + XmlWriter to serialize into + List of mentions to be serialized + + + + Serializes vml shapes. + WARNING: this method doesn't check whether there are any shapes to serialize or not. + + XmlWriter to serialize into. + Shapes to serialize. + Parent worksheet data holder. + Dictionary with all known vml shapes serializators. + + + + Serializes drawings. + + XmlWriter to serialize into. + Shapes to serialize. + Parent worksheet data holder. + + + + This method serializes specified shape into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + This method serializes specified group shape into specified writer. + + XmlWriter to serialize shape settings into. + Group shape to serialize. + Parent worksheet data holder. + + + + This method serializes specified group shape properties. + + XmlWriter to serialize shape settings into. + Group shape to serialize. + Parent worksheet data holder. + + + + Checks whether the shapes has alternate content + + + + + + + Serialize Link Item + + + + + + + + Serializes external workbook into specified XmlWriter. + + XmlWriter to serialize into. + External workbook to serialize. + Collection with external link item relations. + + + + Serializes dde object link into specified XmlWriter. + + XmlWriter to serialize into. + External workbook to serialize. + Collection with external link item relations. + + + + Serializes external workbook into specified XmlWriter. + + XmlWriter to serialize into. + External workbook to serialize. + Collection with external link item relations. + + + + Serializes external worksheets data set. + + XmlWriter to serialize into. + External workbook to serialize. + + + + Serializes external sheet names. + + XmlWriter to serialize into. + External workbook to serialize. + + + + Serializes all external names from the external workbook. + + XmlWriter to serialize named ranges into. + External workbook to get named ranges from. + + + + Serializes single external name. + + Writer to serialize name into. + Name to serialize. + + + + Serializes drawings (images and other shapes). + + XmlWriter to serialize into. + Worksheet to serialize. + + + + Serializes part of the worksheet that contains information about + vml shapes (legacydrawing tag). + + XmlWriter to serialize into. + Worksheet to serialize. + + + + Serializes the OLE. + + The writer. + The sheet. + + + + Serialize Ole object. + + The writer + The sheet + Ole object + True if serialize the objecPr, otherwise not serialize + + + + Serialize ObjectPr. + + The writer + The sheet + Ole object + + + + Serialize Ole object anchor. + + The writer + The sheet + Ole object + + + + Serializes part of the worksheet that contains information about + vml shapes (legacydrawing tag). + + XmlWriter to serialize into. + Worksheet to serialize. + + + + Serializes comments list (following comment settings: note, cell address, author id). + + XmlWriter to serialize into. + Worksheet to get comments from. + Dictionary with all used authors: key - author name, value - author id. + + + + Serialize single comment settings into specified writer. + + Writer to serialize into. + Comment to serialize. + Dictionary containing author name. + + + + Serializes list of authors for comments collection. + + XmlWriter to serialize into. + Worksheet to get comments from. + Dictionary with authors: key - author name, value - author id. + + + + Serializes worksheet's dimension. + + XmlWriter to serialize into. + Worksheet to serialize dimension of. + + + + Serializes worksheet's view properties. + + XmlWriter to serialize into. + Worksheet to serialize. + + + + Serializes active cell. + + Writer to write selection information into. + Worksheet to get active cell from. + + + + Serializes pane record. + + XmlWriter to serialize into. + Worksheet to serialize pane for. + + + + Serializes stream. + + XmlWriter to serialize into. + Data to be serialized. + + + + Serializes stream data. + + XmlWriter to serialize into. + Data to be serialized + Root name of the data. + + + + Serializes dialog stream data. + + XmlWriter to serialize into. + Data to be serialized + + + + Serializes single relation object. + + XmlWriter to serialize into. + Relation key. + Relation object. + + + + Serializes sheets collection into workbook part. + + Writer to serialize into. + + + + Serializes single sheet entry inside of sheets tag from workbook part. + + XmlWriter to serialize into. + TabSheet to serialize. + + + + Serializes single sheet entry inside of sheets tag from workbook part. + + XmlWriter to serialize into. + Dialogsheet to serialize. + + + + Serializes sheets entry inside of sheets tag from workbook part. + + XmlWriter to serialize into. + macrosheet and intlmacrosheet to serialize. + + + + Generates free sheetId. + + Extracted sheet id. + + + + Converts MergeRegion into string representing range. + + Region to convert. + Converted value. + + + + Serializes named range into specified XmlWriter. + + XmlWriter to serialize named range into. + Named range to serialize. + + + + Gets the index of the local sheet. + + The sheet. + + + + + Checks the name of the sheet. + + The STR name value. + + + + + Serializes fonts collection into specified XmlWriter. + + XmlWriter to serialize fonts into. + + + + Serialize single font object into specified XmlWriter. + + XmlWriter to serialize fonts into. + Font to serialize. + Element tag name to serialize font for. + + + + Serializes font color object. + + XmlWriter to serialize into. + Name of the tag to use. + Color object to serialize. + + + + Serializes number formats collection into XmlWriter. + + XmlWriter to serialize into. + + + + Serialize single instance of number format into XmlWriter. + + Writer to save number format into. + Number format to serialize. + + + + Gets customized currency format string of user input format string, in accordance with MS Excel behavior + + Number format string. + Customized currency format string. + + + + Serializes fills into specified writer. + + XmlWriter to save fills into. + Array with fill indexes, index in array means extended format index, value means fill index. + + + + Serializes single fill object into specified XmlWriter. + + XmlWriter to serialize into. + Object to serialize. + + + + Serializes single pattern fill object into specified XmlWriter. + + XmlWriter to serialize into. + Object to serialize. + + + + Serializes single gradient fill object into specified XmlWriter. + + XmlWriter to serialize into. + Object to serialize. + + + + Serializes single cf gradient fill object into specified XmlWriter. + + XmlWriter to serialize into. + Object to serialize. + + + + + Serializes single degree gradient fill object into specified XmlWriter. + + XmlWriter to serialize into. + Object to serialize. + + + + Serializes single cf degree gradient fill object into specified XmlWriter. + + XmlWriter to serialize into. + Object to serialize. + + + + + Serializes single from corner or from center gradient fill object into specified XmlWriter. + + XmlWriter to serialize into. + Object to serialize. + + + + Serializes single Cf from corner or from center gradient fill object into specified XmlWriter. + + XmlWriter to serialize into. + Object to serialize. + + + + + Serializes stop color for gradient fill object into specified XmlWriter. + + XmlWriter to serialize into. + Stop position attribute value. + Represents Color. + + + + Converts specified pattern into string that can be understood by MS Excel 2007. + + Pattern to convert. + Converted value. + + + + Serializes borders into specified XmlWriter. + + XmlWriter to save borders into. + Border indexes. + + + + Serializes color into XmlWriter. + + XmlWriter to serialize color into. + Name of the color tag. + Color value. + + + + Serializes rgb color value. + + XmlWriter to serialize into. + Xml tag name to use for color serialization. + Color to serialize. + + + + Serializes theme color into XmlWriter. + + XmlWriter to serialize color into. + Name of the color tag. + Color value. + + + + Serializes color into XmlWriter. + + XmlWriter to serialize color into. + Name of the color tag. + Color value. + + + + Serializes borders collection into specified XmlWriter. + + XmlWriter to serialize borders into. + Borders collection to serialize. + + + + Serializes single border entry inside BordersCollection. + + XmlWriter to serialize border into. + Border to serialize. + + + + Gets border. + + Represents Border line type + Border extracted. + + + + Gets Border line style. + + Border line style to be extracted for. + Extracted line style. + + + + Serializes extended formats used by named styles. + + XmlWriter to serialize into. + Index to fill objects (position in array - xf index, + value - fill index). + Index to border objects (position in array - xf index, + value - border index). + Dictionary containing extended format indexes. + + + + Serialize extended formats that are responsible for cell format (do not have names). + + XmlWriter to serialize into. + Index to fill objects (position in array - xf index, + value - fill index). + Index to border objects (position in array - xf index, + value - border index). + Dictionary with new parent indexes. + Dictionary containing extended format indexes. + + + + Serializes single extended format. + + XmlWriter to serialize into. + Array with fill indexes. + Array with border indexes. + Format to serialize. + Dictionary with new parent indexes. + Default value for ApplyAlignment, ApplyBorder, etc. + + + + Serializes alignment options if necessary. + + XmlWriter to serialize into. + ExtendedFormat to serialize. + + + + Checks whether specified extended format has default alignment options. + + Extended format to check. + True if extended format has default alignment options. + + + + Checks whether specified extended format has default alignment options. + + Extended format to check. + True if extended format has default alignment options. + + + + Serializes protection options if necessary. + + XmlWriter to serialize into. + ExtendedFormat to serialize. + + + + Serializes all named styles. + + XmlWriter to serialize into. + Dictionary with new extended format indexes. + Key - index in our collection of extended formats, value - index in the cellStyleXfs block. + + + + Serializes single named style object. + + XmlWriter to serialize into. + Style object to serialize. + Dictionary with new extended format indexes. + Key - index in our collection of extended formats, value - index in the cellStyleXfs block. + + + + Serializes dictionary where key and value are strings. + + XmlWriter to serialize into. + Dictionary to serialize. + Tag name for single entry. + Attribute name for key. + Attribute name for value. + File name preprocessor that allows user to change item names. + + + + Lower first letter in the string. + + String to process. + New string with the first letter in lower case. + + + + Upper first letter in the string. + + String to process. + New string with the first letter in upper case. + + + + Serializes attribute if it differs from default value. + + XmlWriter to serialize into. + Attribute name. + Attribute value. + Default value. + + + + Serielaize bool value + + + + + + + + Serializes attribute if it differs from default value. + + XmlWriter to serialize into. + Attribute name. + Attribute value. + Default value. + + + + Serializes attribute if it differs from default value. + + XmlWriter to serialize into. + Attribute name. + Attribute value. + Default value. + + + + Serializes attribute if it differs from default value. + + XmlWriter to serialize into. + Attribute name. + Attribute value. + Default value. + Namespace of the attribute that is being serialized. + + + + Serializes attribute if it differs from default value. + + XmlWriter to serialize into. + Attribute name. + Attribute value. + Default value. + + + + Serializes attribute if it differs from default value. + + XmlWriter to serialize into. + Attribute name. + Attribute value. + Default value. + + + + Serializes element if it differs from default value. + + XmlWriter to serialize into. + Element name. + Element value. + Default value. + + + + Serializes element if it differs from default value. + + XmlWriter to serialize into. + Element name. + Element value. + Default value. + Element prefix. + + + + Serializes element if it differs from default value. + + XmlWriter to serialize into. + Element name. + Element value. + Default value. + + + + Serializes single sheet. + + Writer to serialize into. + Sheet to serialize. + + + + Serializes single sheet. + + Writer to serialize into. + Sheet to serialize. + + + + Serializes sheet data. + + XmlWriter to serialize into. + Cell record collection. + Dictionary with new extended format indexes. + Key - index in our collection of extended formats, value - index in the cellStyleXfs block. + + + + Serializes the scenarios + + XmlWriter to serialize + Represent the scenarios of the worksheet + sheet to serialize + + + + + Serializes the scenario + + XmlWriter to serialize + Represent the scenario of the worksheet + sheet to serialize + + + + Serializes specified attributes if necessary. + + XmlWriter to serialize. + Collection with attributes to serialize. + Key - attribute name, value - attribute value. + + + + Serializes single row. + + XmlWriter to serialize into. + Row to serialize. + Cell record collection. + Row index. + Dictionary with new extended format indexes. + Key - index in our collection of extended formats, value - index in the cellStyleXfs block. + + + + Serializes cells. + + XmlWriter to serialize into. + Current row. + Cell record collection. + Dictionary with new extended format indexes. + Key - index in our collection of extended formats, value - index in the cellStyleXfs block. + + + + Serializes cells, which are not represented by Blank, MulBlank and MulRK records. + + XmlWriter to serialize into. + Record to serialize. + Row storage enumerator. + Cell record collection. + Dictionary with new extended format indexes. + Key - index in our collection of extended formats, value - index in the cellStyleXfs block. + + + + Serialize blank cell. + + XmlWriter to serialize into. + Row index. + Column index. + Extended format index. + Dictionary with new extended format indexes. + Key - index in our collection of extended formats, value - index in the cellStyleXfs block. + + + + Serializes MulBlank record. + + XmlWriter to serialize into. + MulBlank record to serialize. + Dictionary with new extended format indexes. + Key - index in our collection of extended formats, value - index in the cellStyleXfs block. + + + + Serialize MulRKRecord cell values. + + XmlWriter to serialize into. + MulRK record. + Dictionary with new extended format indexes. + Key - index in our collection of extended formats, value - index in the cellStyleXfs block. + + + + Serializes array formula. + + XmlWriter to serialize into. + Formula array record. + + + + Serializes formula. + + XmlWriter to serialize into. + Formula record. + Cell record collection. + + + + Serializes DataTable formula. + + XmlWriter to serialize into. + Cell Formula. + + + + Serializes cell value. + + XmlWriter to serialize into. + Record to get value from. + Cell type. + + + + Serializes formula value. + + XmlWriter to serialize into. + Formula record to serialize from. + Cell type. + Row storage enumerator. + + + + Defines cell data type to serialize. + + Biff record. + String representation of the cell type. + Extracted Cell data type. + + + + Serialize Person into specified XmlWriter + + + + + + Serializes metadata into specified XmlWriter + + writer to serialize + + + + Serializes shared string table into specified XmlWriter. + + XmlWriter to save SST into. + + + + Serializes slicer cache + + XmlWriter to save Slicer cahce. + Represents the slicer. + Slicer work sheet. + + + + Serializes pivot slicer cache + + XmlWriter to save Slicer cahce. + Represents the slicer. + Slicer work sheet. + + + + Serializes string item into specified XmlWriter. + + XmlWriter to save string item into. + Rich text or string object to serialize. + + + + Replaces characters with codes less then 0x20. + + Text to replace chars in. + + + + + Ignores the hexa string with the hexa code before serialize + + string to ignore the hexa string + ignored hexa string + + + + Checks whether specified string is hexadecimal number. + + + + + + + Serializes rich text run into specified XmlWriter. + + XmlWriter to save rich text into. + Rich text run to serialize. + + + + Serializes rich text run single entry. + + XmlWriter to save rich text into. + Fonts collection. + String to serialize. + Font index. + + + + Serializes colors settings. In the current implementation it serializes palette if necessary. + + Writer to serialize into. + + + + Serializes palette. + + XmlWriter to serialize palette into. + + + + Determines whether palette contains default colors. + + True if all colors have default value; false otherwise. + + + + Serializes column settings. + + XmlWriter to serialize into. + Worksheet that stores column settings. + Dictionary with modified style indexes. + + + + Serialize single ColumnInfoRecord into specified XmlWriter. + + Writer to serialize into. + Record to serialize. This value can be null, + in this case no data will be serialized. + Dictionary with modified style indexes. + Default column width. + Parent worksheet. + Last index in the sequence of the same columns. + + + + Checks whether columns after iColumnIndex have the same settings and + returns the last number in the sequence. + + Worksheet to search in. + Column index to start searching from. + Last index in the sequence of the same columns. + + + + Serializes data validations. + + XmlWriter to serialize data validations. + Data validation table. + + + + Serializes data validation collection. + + XmlWriter to serialize data validation collection. + Data validation table. + + + + Serializes data validation. + + XmlWriter to serialize data validation. + Data validation implementation. + + + + Returns DV type name. + + Data validation type. + DV type name. + + + + Returns DV error style name. + + Data validation error style. + DV error style. + + + + Returns DV compare operator type name. + + Data validation compare operator. + DV compare operator type name. + + + + Serializes auto filters. + + XmlWriter to serialize auto filters. + Auto filters collection. + + + + Serializes auto filters. + + XmlWriter to serialize auto filters. + Auto filters collection. + Slicer source table + + + + Serializes filter column. + + XmlWriter to serialize filter column. + Auto filter to serialize. + Indices of merged column headers in AutoFilters + + + + Serializes Color Filter to Stream + + Writer object to serialize the color filter stream into. + + + + Serializes Icon Filter + + Writer object to serialize Icon Filter into. + Icon Filter to be serialzed. + + + + Serializes the alternate content of Icon Filter. + + Writer object to serialize icon filter into. + Icon Filter to be serialzed. + + + + Serializes filters. + + XmlWriter to serialize filters. + AutoFilter + + + + Serializes filter. + + XmlWriter to serialize filter. + Condition value. + + + + Serializes auto filter top ten value. + + XmlWriter to serialize top ten. + Auto filter implementation. + + + + Serializes custom filters. + + XmlWriter to serialize custom filters. + Auto filter implementation. + + + + Serializes custom filter. + + XmlWriter to serialize custom filters. + Auto filter condition. + + + + Returns auto filter condition operator name. + + Filter condition. + Auto filter condition operator name. + + + + Gets the active pane. + + The pane record. + + + + + Returns auto filter condition value. + + Filter condition. + Auto filter condition value. + + + + Serializes conditional formats and corresponding Dxf styles for this formats. + + XmlWriter to serialize formats into. + XmlWriter to serialize Dxf styles into. + Conditional formatting. + Current Dxf index. + Currents CF priority. + + + + Serializes conditional format and corresponding Dxf style for this format. + + XmlWriter to serialize format into. + XmlWriter to serialize Dxf style into. + Represents Condition. + Current Dxf index. + Currents CF priority. + Number of rules or priorities in the range. + + + + Serializes color scale of conditional format. + + XmlWriter to serialize into. + Represents color scale. + + + + Serializes icon set. + + XmlWriter to serialize into. + Icon set to serialize. + Check if the iconset have extension lists. + Check if the iconset have custom iconset. + + + + Serializes data bar. + + XmlWriter to serialize into. + Data bar to serialize. + + + + Serializes conditional value object. + + XmlWriter to serialize into. + Object to serialize. + Check is iconset. + + + + Serializes conditional value object. + + XmlWriter to serialize into. + Object to serialize. + Check if is iconset. + Check it has extension lists. + Check the iconset is custom. + + + + Serializes Custom iconset object. + + + + + + + + Returns CF comparison operator string name. + + Excel comparison operator. + CF comparison operator string name. + + + + Return the CF time period string name + + Time period type + Time period string name + + + + Returns CF type string name. + + Excel CF type. + CF type string name. + + + + Serializes Dxf styles and conditional formatting. + + Dxf stream. + Conditional formatting. + Stream containing conditional formats. + + + + Serialize the dxfs styles and table styles. + + Stream of the dxfs styles + Table styles object + Index of the DxfId + + + + + Serialize the dxfs styles and table styles. + + Stream of the dxfs styles + Table styles object + Index of the DxfId + + + + + Serializes the Custom format elements of the pivot table fields. + + Xml writer to serialize the custom formats into. + pivot table to serialize the filters + + + + Serializes Dxf styles and Sorting and Color Filter. + + Dxf stream. + SortState + AutoFilter Object to extract ColorFilter + Dxf Index of the serialized color Object + Stream containing Sorting data or Color Object. + + + + Serializes Dxf style. + + XmlWriter to serialize style into. + Conditional format. + + + + Serialize the Dxf styles. + + XmlWriter + Table style element object + + + + Serializes Dxf style. + + XmlWriter to serialize style into. + Sorting Field. + + + + Serialize the Dxf styles. + + XmlWriter + Table style element object + + + + Serializes Dxf number format. + + XmlWriter to serialize number format + Represents Condition. + + + + Serializes Dxf number format. + + XmlWriter to serialize number format + Represents Condition. + + + + Serializes Dxf style borders. + + XmlWriter to serialize borders into. + Represents Condition. + + + + Serialize the Dxf style borders. + + XmlWriter + Table style element object + + + + Serialize the Dxf style borders. + + XmlWriter + Table style element object + + + + Serializes Dxf border. + + XmlWriter to serialize border into. + Border index. + Line style. + Represents Color. + + + + Serializes Dxf style fill. + + XmlWriter to serialize fill into. + Represents Condition. + + + + Serialize the Dxf Style Fill. + + XmlWriter + Table style element object + + + + Serializes Dxf style fill. + + XmlWriter to serialize fill into. + Represents SortField. + + + + Serialize the Dxf Style Fill. + + XmlWriter + Table style element object + + + + Serializes Dxf style font. + + XmlWriter to serialize font into. + Represents Condition. + + + + Serialize the Dxf style Font. + + XmlWriter + Table style element object + + + + Serializes Dxf style font. + + XmlWriter to serialize font into. + Represents SortField. + + + + Serializes alignment options if necessary. + + XmlWriter to serialize into. + Pivot cell format to serialize. + + + + Serializes protection options if necessary. + + XmlWriter to serialize into. + ExtendedFormat to serialize. + + + + Serialize the Dxf style Font. + + XmlWriter + Table style element object + + + + Serialize the table styles Attributes. + + XmlWriter + Count of table style in collection + + + + Serialize the dxfs styles and table style. + + XmlWriter + Table style object + XmlWriter of stream Dxfs + Index of the DxfsId + + + + Serialize the table style Attributes. + + + + + + + + Serialize the table style element and dxfs styles. + + XmlWriter + Table style element + XmlWriter of stream dxfs + Index of the DxfId + + + + Serialize the table style attributes. + + XmlWriter + Type of table style element + + + + Serialize the table style attributes. + + XmlWriter + Type of table style element + + + + Serialize the table style attributes of dxfId. + + XmlWriter + Index of the DxfId + + + + Serializes hyperlinks. + + XmlWriter to serialize hyperlinks. + Worksheet with hyperlinks collection. + + + + Serializes single hyperlink. + + XmlWriter to serialize hyperlink into. + Hyperlink to serialize. + Relations collection. + + + + Serializes all print settings (margins, header, footer, etc.). + + XmlWriter to serialize into. + Worksheet to get values from. + + + + Serializes print options. + + XmlWriter to serialize print options into. + PageSetup object to get print options from. + + + + Serializes page margins. + + XmlWriter to serialize into. + Object that stores all necessary margin values. + Object that provides xml tag/attribute names used + for page setup serialization. + + + + Validate whether Page margins are fit into the Page + + + + + + Serialize PageSetup tag. + + XmlWriter to serialize into. + Object to get necessary settings from. + + + + Serializes header and footer. + + XmlWriter to serialize into. + Object that stores required header/footer strings. + + + + Converts page setup PrintComments option into string representation used by Excel 2007. + + Value to convert. + Converted value. + + + + Converts page setup PrintErrors option into string representation used by Excel 2007. + + Value to convert. + Converted value. + + + + Converts address string to Excel 2007 type. + + Address string to convert. + Converted string. + + + + Serializes worksheet properties. + + XmlWriter to serialize properties into. + Worksheet to get properties from. + + + + Serializes background image. + + XmlWriter to serialize image into. + Worksheet to get image from. + + + + Serializes extended document properties. + + XmlWriter to serialize extended properties into. + + + + Serialize App version + + + + + + Serializes core properties into XmlWriter. + + XmlWriter to serialize core properties into. + + + + Serializes created and modified datetime element into XmlWriter. + + XmlWriter to serialize into. + Element tag name. + Date time value. + + + + Serializes custom properties into XmlWriter. + + XmlWriter to serialize properties into. + + + + Serializes Document Management of the ContentType Properties into XmlWriter. + + XmlWriter to serialize properties into. + + + + Serializes custom property into XmlWriter. + + XmlWriter to serialize into. + Custom property to serialize. + Custom property id. + + + + Serializes workbook views. + + XmlWriter to serialize into. + Workbook views collection. + + + + Serializes workbook view. + + XmlWriter to serialize into. + Workbook view. + + + + Changes or adds attribute value. + + Workbook view. + Attribute to make changes. + New value for attribute. + + + + Serializes external references. + + XmlWriter external links must be serialized into. + This writer should already contain some workbook data. + Workbook relation collection. + + + + Serializes single external link. + + External workbook object to serialize. + XmlWriter to write into. + Workbook relations. + + + + Serializes worksheet horizontal and vertical pagebreaks. + + XmlWriter to serialize into. + Worksheet to serialize page breaks for. + + + + Serializes the Color Filter Dxf to stream. + + XmlWriter to serialize into + XmlWriter to serialize dxf into + color filter object to get color from. + dxfid index + + + + Serializes data sorter. + + XmlWriter to serialize into. + XmlWriter to serialize dxf into. + DataSorter to serialize into. + dxfid index. + + + + Serializes data sorter. + + XmlWriter to serialize into. + XmlWriter to serialize dxf into. + DataSorter to serialize into. + Sorting Field to serialize into. + dxfid index. + + + + Serializes worksheet horizontal pagebreaks. + + XmlWriter to serialize into. + Sheet horizontal pagebreaks. + + + + Serializes worksheet vertical pagebreaks. + + XmlWriter to serialize into. + Sheet vertical pagebreaks. + + + + Serializes single pagebreak. + + XmlWriter to serialize into. + Row/column of pagebreak. + Start row/column. + End row/column. + Pagebreak type. + + + + Extracts extent settings from reader and converts them into pixels. + + Writer to save extent data into. + Size of the shape in pixels. + + + + Serialize connections + + + + + + Serialize connection + + + + + + + Serialize the parameter. + + XmlWriter to write data. + Query table parameter collection + + + + Serialize the parameter collection. + + XmlWriter to write data. + Query table parameter to write. + + + + Serialize DataBase Property + + + + + + + Serialize Database property + + + + + + + Serialize Web property + + + + + + + Check whether the sheet have special characters + + Name of the sheet + return true if the sheet name have special characters + + + + Serializes Custom Workbook views. + + XmlWriter to write data. + List of Custom WorkBook view + + + + Serializes Custom Workbook view. + + XmlWriter to write data. + Dictionary with attributes and value + + + + Serializes conditional value object. + + XmlWriter to serialize into. + Object to serialize. + whether it is iconset conditional format + whether the conditional format value is min point + + + + Serialize Combination filters. + + XML Writer. + Combination filter object. + + + + Serialize Date Filter. + + XML Writer. + DateTime Filter + + + + Serialize Dynamic Date Filter. + + XML Writer + Dynamic Filter + + + + Gets Dictionary with serializators that can be used to serialize header/footer vml shapes. Read-only. + + + + + Gets Dictionary with serializators that can be used to serialize vml shapes. Read-only. + + + + + Gets version that is supported by this serializator. + + + + + Represents the cell's data type. + + + + + Cell containing a date. + + + + + Cell containing a boolean. + + + + + Cell containing an error. + + + + + Cell containing an (inline) rich string. + + + + + Cell containing a number. + + + + + Cell containing a shared string. + + + + + Cell containing a formula string. + + + + + Represents type of formula. + + + + + Formula is an array entered formula. + + + + + Formula is a data table formula. + + + + + Formula is a regular cell formula. + + + + + Formula is part of a shared formula. + + + + + Uri for data bar properties + + + + + Uri for data bar ext properties + + + + + Represents Excel2010Serializator for workbook + + + + + + Serialize Extensions + + + + + + + Serializes the sparkline groups. + + The writer. + The sheet. + + + + Serializes the sparkline group. + + The writer. + The sheet. + The sparkline group. + + + + Serializes the sparklines. + + The writer. + The sheet. + The sparklines. + + + + Serializes the sparkline. + + The writer. + The sheet. + The sparkline. + + + + Serialize App version + + + + + + Check whether the sheet has conditional formats or not. + + input worksheet object + output value indicates whether the stream preserved or not + the boolean value indicates whether the cf applied or not. + + + + Serializes conditional formattings. + + The writer. + The sheet. + + + + Serializes conditional value object. + + XmlWriter to serialize into. + Object to serialize. + + + + Serializes rgb color value. + + XmlWriter to serialize into. + Xml tag name to use for color serialization. + Color to serialize. + + + + Serializes conditional value object. + + XmlWriter to serialize into. + Object to serialize. + whether it is iconset conditional format + whether the conditional format value is min point + + + + Gets version that is supported by this serializator. + + + + + Initializes Excel2013Serializator for workbook + + + + + + Serialize App Version + + + + + + Gets version that is supported by this serializator. + + + + + Excel2016 Serializator + + + + + Excel2016Serializator to serialize workbook + + + + + + Serialize App Version + + + + + + Gets version that is supported by this serializator. + + + + + Class used for Excel 2019 and above Serialization. + + + + + Constructor of the XlsxSerializator class with parameter Excel workbook + + + + + Serializes element if it differs from default value. + + XmlWriter to serialize into. + + + + Gets version that is supported by this serializator. + + + + + Serializes the pivot engine. + + + + + Populates the specifed pivot table. + + Source worksheet for the pivot table. + The pivot table which is to be populated. + + + + + Column name updated for Filters + + Column Name + updated column string + + + + Set pivot table general option in pivot engine values. + + Pivot Engine + Pivot Table + + + + Renders the pivot table values. + + PivotEngine object. + Sheet in which the pivot table is present. + The pivot table which is to be rendered. + + + + Renders the pivot table outline form. + + PivotEngine object. + Sheet in which the pivot table is present. + The pivot table which is to be rendered. + + + + Adds values row in Pivot table layout + + boolean value which indicates whether the value is present or not + column position + maximum row + maximum column + pivot sheet + pivot table + values row + + + + Modifies the layout for outline form. + + Pivot Layout + Pivot table + Pivot engine + + + + Renders the pivot table tabular form. + + PivotEngine object. + Sheet in which the pivot table is present. + The pivot table which is to be rendered. + + + + Set tabular specific styles for tabular form. + + Pivot Layoout + + + + Set styles for subtotal rows based on subtotal index. + + Pivot Layout + + + + Renders the pivot table compact form. + + PivotEngine object. + Sheet in which the pivot table is present. + The pivot table which is to be rendered. + + + + Replaces the delimiter in grand total. + + The target object in which replacement is to be done. + The old delimiter. + + The target object after the replacement. + + + + AutoFits the pivot table. + + Range in which the pivot table is located. + The pivot table which is to be autofitted. + + + + + + + + + + + + + + + + + + + + + + + + + Set pivot format to pivot layout. + + Pivot table layout to be updated. + Pivot table. + + + + Apply pivot table format to the cell style + + pivot table cell range + pivot table extended format + + + + + + + + + + + + + + + + + + Pivot Engine Comparer class. + + + + + Initializes a new instance of CustomComparer class. + + The object to compare. + The object to be compared with. + Boolean vaue indicating the comaprison results. + + + + This serializator use to serialize shapes in DrawingML 2007 format, + when shape is not supported, but it was extracted from Excel 2007 + document and we can preserve it. + + + + + This is general interface for classes that are responsible for shape serialization. + + + + + False Attribute + + + + + True Attribute + + + + + This method serializes specified shape into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + This method serializes general shape settings (shape type) into specified XmlWriter. + + XmlWriter to write shape type into. + Type of the shape that is going to be serialized. + + + + Generates anchor from the shape and converts it into string representation for Excel 2007 format. + + Shape to get anchor data from. + Generated anchor string. + + + + Serializes client data tag of the shape. + + XmlWriter to serialize into. + Shape to serialize. + + + + Serializes additional tag into ClientData tag. + + XmlWriter to serialize into. + Shape to serialize for. + + + + Serialize the fill style of textbox + + XmlWriter to serialize into. + Shape to serialize style for + Parent worksheet data holder. + Resource relation collection + + + + Serialize Solid fill of textbox + + Xmlwriter to serialize into + textbox shape for serialize + + + + Serialize the Gradient Fill + + XmlWriter to serialize into. + Shape to serialize style for + + + + Serialize Texture Fill + + XmlWriter to serialize into. + textBox Shape to serialize style for + Parent worksheet data holder. + Resource relation collection + + + + Serialize pattern Fill + + XmlWriter to serialize into. + textBox Shape to serialize style for + Parent worksheet data holder. + Resource relation collection + + + + Serialize Picture Fill + + XmlWriter to serialize into. + textBox Shape to serialize style for + Parent worksheet data holder. + Resource relation collection + + + + Serialize user Picture + + XmlWriter to serialize into. + textBox Shape to serialize style for + Parent worksheet data holder. + Resource relation collection + + + + Serilaize common Gradient fill attribute + + XmlWriter to serialize into. + textBox Shape to serialize style for + + + + Serialize Common fill attributes + + XmlWriter to serialize into. + textBox Shape to serialize style for + + + + Seialize Line for the Shape + + XmlWriter to serialize into. + textBox Shape to serialize style for + Parent worksheet data holder. + Resource relation collection + + + + Serialize Pattern Line + + XmlWriter to serialize into. + textBox Shape to serialize style for + Parent worksheet data holder. + Resource relation collection + + + + double degree value to string value with some calculations + + degree in double + + + + + Generate Hexdecimal color from the Color + + color object + + + + + Get the String value from the resource + + Excel Gradient Preset + + + + + Enum pattern to string + + enum pattern to string + execel equalent name + + + + opacity double to string with some calculations + + opacity to convert + opacity in excel format + + + + Remove Preceding zeroes in the color + + string color to remove zeroes + removed preceding zeroes + + + + Get the Excel matching Dash Style + + dashstyle to string + dashstyle to excel format + + + + Get the line style from the dictionary + + linestyle to string + line style in excel format + + + + Returns if the color is empty + + + + + + + Clears the variables in inherited classes if any. + + + + + This method serializes specified shape into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + Serialize the XML data stream for shape. + + XmlWriter to write shape type into. + Stream to write. + + + + This method serializes general shape settings (shape type) into specified XmlWriter. + + XmlWriter to write shape type into. + Type of the shape that is going to be serialized. + + + + Returns editAs attribute value. + + Shape to get settings from. + String value of editAs attribute for the shape. + + + + Serializes anchor point. + + XmlWriter to serialize into. + Name of the tag for anchor point. + Column index. + Offset inside column. + Row index. + Offset inside row. + Parent worksheet. + Xml namespace to use. + + + + + Serializes XY anchor point + + XmlWriter to serialize into. + Tag name to use. + X coordinate (will be divided by 1000 in the current implementation). + Y coordinate (will be divided by 1000 in the current implementation). + Xml namespace to use. + + + + Converts XY Anchor coordinate into string value for serialization. + + Coordinate to convert. + Converted value. + + + + Serializes Transform2D tag (xfrm). + + XmlWriter to serialize into. + Namespace for main (outer) tag. + Namespace for subtags (inner). + X coordinate of the form. + X coordinate of the form. + Width of the form. + Height of the form. + + + + Serializes the form. + + The writer. + The XML outer namespace. + The XML inner namespace. + The x. + The y. + The cx. + The cy. + The shape. + + + + Serializes the form. + + The writer. + The XML outer namespace. + The XML inner namespace. + The picture for which the tranformation is to be serialized. + + + + Serializes non visual canvas properties. + + XmlWriter to serialize into. + Shape to serialize properties for. + Object that stores data of the parent worksheet. + Xml namespace to use. + + + + Serializes prstGeom xml tag. + + XmlWriter to serialize into. + + + + Serializes shape's fill. + + XmlWriter to serialize into. + Shape to serialize fill for. + FileDataHolder object. + Drawing relations. + + + + Serializes line settings. + + XmlWriter to serialize into. + Line to serialize. + Parent workbook. + + + + Serialize the borders edge join. + + Xml writer + Line format + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + Returns the pivot reference collection. + + + + + Returns the count of pivot reference collection. + + + + + Returns a single pivot reference from the collection. + + + + + Represents collection of calculated fields in the pivot table. + + + + + Represents collection of calculated fields in the pivot table. + + + + + Adds calculated to the pivot table based on the specified formula. + + Represents the name of the calculated pivot field. + Represents the formula of the calculated pivot field. + Returns the calculated . + + To know more about Pivot Tables refer this link. + + The following code illustrates the use Add method in pivot calculated field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark1"; + sheet.Range["D1"].Text = "Mark2"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Number = 87; + sheet.Range["D3"].Number = 68; + sheet.Range["D4"].Number = 98; + sheet.Range["D5"].Number = 45; + sheet.Range["D6"].Number = 70; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + + //Add calculated field to the pivot table with specified formula + IPivotField field = pivotTable.CalculatedFields.Add("AverageMark", "(Mark1+Mark2)/2"); + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the number of calculated fields in the pivot table. Read-only. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to get count of calculated fields in the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + int calculatedFieldCount = pivotSheet.PivotTables[0].CalculatedFields.Count; + if(calculatedFieldCount > 0) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets a with the specified index from the collection. Read-only. + + Zero-based index of the item to get. + + To know more about Pivot Tables refer this link. + + The following code illustrates the use of index property in pivot calculated field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark1"; + sheet.Range["D1"].Text = "Mark2"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Number = 87; + sheet.Range["D3"].Number = 68; + sheet.Range["D4"].Number = 98; + sheet.Range["D5"].Number = 45; + sheet.Range["D6"].Number = 70; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + pivotTable.CalculatedFields.Add("Average", "(Mark1+Mark2)/2"); + + //Gets a pivot field with the specified index + IPivotField field = pivotTable.CalculatedFields[0]; + field.Name = "AverageMark"; + field.Subtotals = PivotSubtotalTypes.Average; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets a with the specified name from the collection. Read-only. + + Calculated Field Name + + To know more about Pivot Tables refer this link. + + The following code illustrates the use of name as index in pivot calculated field collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark1"; + sheet.Range["D1"].Text = "Mark2"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Number = 87; + sheet.Range["D3"].Number = 68; + sheet.Range["D4"].Number = 98; + sheet.Range["D5"].Number = 45; + sheet.Range["D6"].Number = 70; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + pivotTable.CalculatedFields.Add("Average", "(Mark1+Mark2)/2"); + + //Gets a pivot field with the specified name + IPivotField field = pivotTable.CalculatedFields["Average"]; + field.Name = "AverageMark"; + field.Subtotals = PivotSubtotalTypes.Average; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Initializes a new instance of pivot calculated fields collection with the specified pivot table. + + Pivot table from which the calculated fields are extracted. + + + + Adds calculated field to the pivot table based on the specified formula. + + Represents the name of the calculated pivot field. + Represents the formula of the calculated pivot field. + Returns the calculated pivot field. + + Following code snippet illustrates how to add a pivot calculated field to the pivot table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + // Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + //Create "PivotTable1" with the cache at the specified range + IPivotTable pivotTable = worksheet.PivotTables.Add("PivotTable1", worksheet["A1"], cache); + //Add Pivot table fields (Row and Column fields) + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + pivotTable.Fields[6].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + + //Add data field + IPivotField field = pivotTable.Fields[5]; + pivotTable.DataFields.Add(field, "Sum", PivotSubtotalTypes.Sum); + + + + + + Update pivot table fields + + current pivot table + new calculated cachefield + pivot table field + + + + Gets a pivot field with the specified index from the collection. Read-only. + + Zero-based index of the item to get. + + + + Gets a pivot field with the specified name from the collection. Read-only. + + Calculated Field Name + + + + Represents an item within a PivotTable field which uses a formula + TODO: Need to create support for pivot item. + + + + + Represents a calculated pivot field item within a Pivot field of pivot table + TODO: need to add properties. + + + + + Specifies the formula of the calculated item + + + + + Specifies the formula of the calculated item + + + + + Specifies the pivotField with which this calculated item is associated. + + + + + Specifies the pivot field index with + which this calculated item is associated + + + + + Represents the calculated field area + + + + + Initializes the pivot calculated item + + + + + + Gets or sets the formula for the calculated item. + + + + + Gets the calculated field area. Read-only. + + + + + Represents the cache field + + + + + Represents the collection of calculated pivot field items in pivot table. + + + + + Pivot calculated items + + + + + Add the specified calculated item to pivot calculated items collection. + + item to add to the pivot field. + + + + Represents the setting for the pivot table in the worksheet. + + + + + Represents the setting for the pivot table in the worksheet. + + + + + + Gets or sets a Boolean value indicating whether asterisk must be displayed next to totals. + + + True if an asterisk (*) is displayed next to each subtotal and grand total value in the specified PivotTable report. False otherwise. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ShowAsteriskTotals property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets Boolean value to asterisk must be displayed next to totals + pivotOption.ShowAsteriskTotals = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the string to be displayed in column header of pivot table in compact layout mode. + + If ColumnHeaderCaption is not assigned, the string "Column Labels" will be set as default. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ColumnHeaderCaption property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the string to be displayed in column header + pivotOption.ColumnHeaderCaption = "City"; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the string to be displayed in Row header of pivot table in compact layout mode. + + If RowHeaderCaption is not assigned, the string "Row Labels" will be set as default. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the RowHeaderCaption property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the string to be displayed in Row header + pivotOption.RowHeaderCaption = "Name"; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether the "custom lists" option is offered when sorting this PivotTable. The default value is True. + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ShowCustomSortList property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets boolean value to indicating whether the custom lists option is offered when sorting this PivotTable + pivotOption.ShowCustomSortList = false; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether the field list must be showed or not. Default value of ShowFieldList is true. + + + False to disable the display of field list for the PivotTable. True otherwise. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ShowFieldList property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets boolean value to field list must be showed or not + pivotOption.ShowFieldList = false; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether the data area of the PivotTable is editable. + True to disable the alert for when the user overwrites values in the data area of the PivotTable. False otherwise. + This allows the user to change data values that previously could not be changed. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the IsDataEditable property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the boolean value to the data area of the PivotTable is editable + pivotOption.IsDataEditable = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether field properties are enabled or not. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the EnableFieldProperties property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the boolean value to field properties are enabled or not. + pivotOption.EnableFieldProperties = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the indentation increment for compact axis so as to set the Report Layout to Compact Form. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the Indent property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the indentation for compact axis of the Report Layout + pivotOption.Indent = 9; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the string displayed in cells that contain errors when the DisplayErrorString property is True. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to use the ErrorString property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Formula = "=ASIN(C4:C5)"; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the string displayed in cells that contain errors + pivotOption.ErrorString = "#ERROR#"; + pivotOption.DisplayErrorString = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether custom error string in cells that contain errors must be shown or not. + + + Use the ErrorString property to set the custom error string. This property is particularly useful for suppressing divide-by-zero errors when calculated fields are pivoted. To know more about Pivot Tables refer this link. + + + Following code illustrates how to use the DisplayErrorString property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Formula = "=ASIN(C4:C5)"; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + pivotOption.ErrorString = "#ERROR#"; + + //Sets the string displayed in cells that contain errors + pivotOption.DisplayErrorString = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether the label must be merged or not. + True if the specified PivotTable report’s outer-row item, + column item, subtotal, and grand total labels use merged cells. False otherwise. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the MergeLabels property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets boolean value to the label must be merged or not + pivotOption.MergeLabels = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the number of page fields in each column or row in the PivotTable report. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the PageFieldWrapCount property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Page; + pivotTable.Fields[1].Axis = PivotAxisTypes.Page; + pivotTable.Fields[3].Axis = PivotAxisTypes.Page; + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the number of page fields in each column + pivotOption.PageFieldWrapCount = 2; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the in which page fields are added to the PivotTable report’s layout. + + The default value is . To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the PageFieldsOrder property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the page field order are added to the PivotTable report’s layout + pivotOption.PageFieldsOrder = PivotPageAreaFieldsOrder.OverThenDown; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether custom string in cells that contain null value must be shown or not. + + Use the NullString property to set the custom null string. The default value is True. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the DisplayNullString property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets boolean value to cells that contain null value must be shown or not + pivotOption.DisplayNullString = true; + pivotOption.NullString = "null"; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the string displayed in cells that contain null values when the DisplayNullString property is True. + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the NullString property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the string displayed in cells that contain null values + pivotOption.NullString = "null"; + pivotOption.DisplayNullString = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether to preserve the format. The default value is True. + + + True if formatting is preserved when the report is refreshed or recalculated by operations such as pivoting, sorting, or changing page field items. False otherwise. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the PreserveFormatting property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the boolean value to preserve the format + pivotOption.PreserveFormatting = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether tool-tips should been shown or not.The default value is True. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ShowTooltips property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the boolean value to tool-tips should been shown or not + pivotOption.ShowTooltips = false; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether filter buttons and PivotField captions for rows and columns are displayed in the grid or not.The default value is True. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the DisplayFieldCaptions property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the boolean value to PivotField captions for rows and columns are displayed or not + pivotOption.DisplayFieldCaptions = false; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether to set print titles based on pivot table or not. The default value is false. + + + The row print titles are set to the rows that contain the PivotTable report’s column field items. The column print titles are set to the columns that contain the row items. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the PrintTitles property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the boolean value to set print titles based on pivot table or not + pivotOption.PrintTitles = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether PivotTable report is saved with the workbook or not. The default value is true. + + For OLAP data sources, this property is always set to False. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the IsSaveData property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the boolean value to set PivotTable report is saved with the workbook or not + pivotOption.IsSaveData = false; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the pivot table settings. + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the RowLayout property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the pivot table PivotTable Row Layout settings + pivotOption.RowLayout = PivotTableRowLayout.Tabular; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether to toggle the display of drill indicators in the PivotTable. + + True if drill indicators are displayed in the PivotTable. False Otherwise. To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ShowDrillIndicators property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the boolean value to display of drill indicators in the PivotTable + pivotOption.ShowDrillIndicators = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating whether the values row is displayed in the pivot table. The default value is False. + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ShowValuesRow property of the pivot table option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotTableOptions pivotOption = pivotTable.Options; + + //Sets the boolean value to show values row in the PivotTable + pivotOption.ShowValuesRow=true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Indent maximum value + + + + + + + + This property specifies the layout setting + + + + + Parent of this settings + + + + + Pivot table extented options + + + + + Pivot Table extented Defintion info + + + + + Specifies a boolean value that indicates whether an asterisks should be displayed in + subtotals and totals + + + + + Specifies the string to be displayed in column header in compact mode + + + + + Specifies the string to be displayed in Row header in compact mode + + + + + Specifies a boolean value that indicates whether new fields should have their compact + flag set to true. + + + + + Specifies a boolean value that indicates whether the field next to the data field in the + PivotTable should be displayed in the same column of the spreadsheet + + + + + Specifies the version of the application that created the cache + + + + + Specifies the version of the application that updated the cache + + + + + Specifies the mini version of the application that updated the cache + + + + + Specifies a boolean value that indicates whether the "custom lists" option is offered + when sorting this PivotTable + + + + + Specifies the name of the value area field header in the PivotTable. This caption is shown + when the PivotTable when two or more fields are in the values area. + + + + + Specifies a boolean value that indicates whether the user is allowed to edit the cells in + the data area of the PivotTable. + + + + + Specifies a boolean value that indicates whether fields in the PivotTable are sorted in + non-default order in the field list. + + + + + Specifies a boolean value that indicates whether the user is prevented from displaying + PivotField properties. + + + + + indicates whether fields in the PivotTable are sorted in + non-default order in the field list. + + + + + Specifies a boolean value that indicates whether calculated members should be shown in + the PivotTable view. + + + + + Specifies the indentation increment for compact axis and can be used to set the Report + Layout to Compact Form. + + + + + Specifies a boolean value that indicates whether new fields should have their outline + flag set to true. + + + + + Specifies a boolean value that indicates whether data fields in the PivotTable should be + displayed in outline form. + + + + + Specifies a boolean value that indicates whether the fields of a PivotTable can have + multiple filters set on them. + + + + + Specifies a boolean value that indicates whether the in-grid drop zones should be + displayed at runtime, and whether classic layout is applied. + + + + + Returns or sets the order in which page fields + are added to the PivotTable report’s layout + + + + + True if formatting is preserved when the report is refreshed or recalculated by + operations such as pivoting, sorting, or changing page field items. + + + + + True, if tooltips displayed for the pivot table cell. + + + + + Indicates whether drills are shown. + + + + + Controls whether or not filter buttons and PivotField captions for rows + and columns are displayed in the grid. + + + + + True if the print titles for the worksheet are set based on the PivotTable report. + False if the print titles for the worksheet are used. + + + + + Specifies the string to be displayed for grand totals. + + + + + Specifies a boolean value that indicates whether the values Row in pivottable shown or not + + + + + Indicates whether values row added or not + + + + + Initializes pivot table options + + + + + + + + Set repeat labels to all the pivot fields. + + Value to set to the repeat all item labels in all pivot fields. + + + + True if legacy table autoformat alignment properties are applied. False otherwise. Read/Wrire Boolean. + + + + + Gets or sets a value indicating whether the values row is added in the pivot table layout. The default value is False. + + + + + True to apply legacy table autoformat border properties. False otherwise. Read/Write Boolean. + + + + + True to apply legacy table autoformat number format properties. False otherwise. Read/Write Boolean. + + + + + True to apply legacy table autoformat pattern properties. False otherwise. Read/Write Boolean. + + + + + Gets or sets a Boolean value indicating if width/height autoformat is applied. False otherwise. Read/Write Boolean. + + + + + True if legacy table autoformat is applied to the pivot table. False otherwise. Read/Write Boolean. + + + + + True to apply legacy table autoformat font properties. False otherwise. Read/Write Boolean. + + + + + Gets or sets a value indicating whether the values row is displayed in the pivot table. The default value is False. + + + + + Gets or sets a Boolean value indicating whether asterisk must be displayed next to totals. + + + True if an asterisk (*) is displayed next to each subtotal and grand total + value in the specified PivotTable report. False otherwise. + + + + Gets or sets the string to be displayed in column header of pivot table in compact layout mode. + + If ColumnHeaderCaption is not assigned, the string "Column Labels" will be set as default + + Following code illustrates how to access the ShowFieldList property of the pivot table option. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + // Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + IPivotTableOptions options = pivotTable.Options; + // Enable header captions + options.ColumnHeaderCaption = "Units"; + + + + + + Gets or sets the string to be displayed in Row header of pivot table in compact layout mode. + + If RowHeaderCaption is not assigned, the string "Row Labels" will be set as default + + Following code illustrates how to access the ShowFieldList property of the pivot table option. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + // Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + IPivotTableOptions options = pivotTable.Options; + // Enable header captions + options.RowHeaderCaption = "Date"; + + + + + + Gets or sets the pivot table row layout settings. + + + + + Gets or sets the application version that created the cache. + + + + + Gets or sets the application version that updated the cache. + + + + + Gets or sets the minimum version of the application that updated the cache. + + + + + Gets or sets a Boolean value indicating whether the "custom lists" option is offered + when sorting this PivotTable. The default value is True. + + + + + Gets or sets the name of the value area field header in the PivotTable. + + + + + Gets or sets the position for the field representing multiple data field in the PivotTable, + whether that field is located in the row area or column area. + + + + + Gets or sets a Boolean value indicating whether the field list must be showed or not. + + False to disable the display of field list for the PivotTable. True otherwise. + + + Following code illustrates how to access the ShowFieldList property of the pivot table option. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + // Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + IPivotTableOptions options = pivotTable.Options; + options.ShowFieldList = true; + + + + + + Gets or sets a Boolean value indicating whether the data area of the PivotTable is editable. + True to disable the alert for when the user overwrites values in the data area of the PivotTable. False otherwise. + This allows the user to change data values that previously could not be changed. + + + + + Gets or sets a Boolean value indicating whether field properties are enabled or not. + + + + + Gets or sets a Boolean value indicating whether fields in the PivotTable are sorted in + default order in the field list. + + + + + Gets or sets a Boolean value indicating whether to show calculated members in + the PivotTable view. + + + + + Gets or sets the indentation increment for compact axis so as to set the Report + Layout to Compact Form. + + + + + Gets or sets a Boolean value that indicates whether new fields should have their outline + flag set to true. + + + + + Gets or sets a Boolean value that indicates whether data fields in the PivotTable should be + displayed in outline form. + + + + + Gets or sets a Boolean value that indicates whether the fields of a PivotTable can have + multiple filters set on them. + + + + + Gets or sets a Boolean value that indicates whether the in-grid drop zones should be + displayed at runtime, and whether classic layout is applied. + + + + + Gets or sets the string displayed in cells that contain errors + when the DisplayErrorString property is True. + + + + + Gets or sets a Boolean value indicating whether custom error string in cells + that contain errors must be shown or not. + + + Use the ErrorString property to set the custom error string. + This property is particularly useful for suppressing divide-by-zero errors when calculated fields are pivoted. + + + + + Gets or sets a Boolean value indicating whether custom string in cells + that contain null value must be shown or not. + + Use the NullString property to set the custom null string. The default value is True. + + + + Gets or sets a Boolean value indicating whether the label must be merged or not. + True if the specified PivotTable report’s outer-row item, + column item, subtotal, and grand total labels use merged cells. False otherwise . + + + + + Gets or sets the number of page fields in each column + or row in the PivotTable report. + + + + + Gets or sets the order in which page fields + are added to the PivotTable report’s layout. The default value is + + + + + Gets or sets the string displayed in cells that contain null + values when the DisplayNullString property is True. + + + + + Gets or sets a Boolean value indicating whether to preserve the format. The default value is True. + + + True if formatting is preserved when the report is refreshed or recalculated by operations such as pivoting, sorting, or changing page field items. False otherwise. + + + + + Gets or sets a Boolean value indicating whether tool-tips should been shown or not.The default value is True. + + + + + Gets or sets a Boolean value indicating whether to toggle the display of drill indicators in the PivotTable. + + True if drill indicators are displayed in the PivotTable. False Otherwise. + + + + Gets or sets a Boolean value indicating whether filter buttons and PivotField + captions for rows and columns are displayed in the grid or not.The default value is True. + + + + + True if the print titles for the worksheet are set based on the PivotTable report. + False if the print titles for the worksheet are used. Read/Write Boolean. + + + The row print titles are set to the rows that contain the PivotTable report’s column field items. + The column print titles are set to the columns that contain the row items. + + + + + Gets or sets a Boolean value indicating whether PivotTable report is saved with the workbook or not. + + For OLAP data sources, this property is always set to False. + + + + Return the maximum indent value + + + + + Gets or sets the string to be displayed for grand totals. + + + + + Class wich reads Rich Text. + + + + + Specifies the group start character. + + + + + Specifies the group end character. + + + + + Specifies the control start character. + + + + + Specifies the space character. + + + + + Specifies the carriege return character. + + + + + Specifies the new line character. + + + + + Specifies the semiColon character. + + + + + Carriage return followed by line feed character: "\x000d\x000a" or "\r\n". + Commonly used in text files for + paragraph breaks. + + + + + Tab string: "\x0009" or "\t". + + + + + Microsoft Windows code page + + + + + Specifies the non breaking hyphen character + + + + + Specifies the soft hyphen character + + + + + Specifies the non breaking space character + + + + + Represents the Rtf Text. + + + + + Represents the WorksheetImpl. + + + + + Represents the Range to store the RTF Text. + + + + + Represents the RichTextString class Object. + + + + + Represents the Application. + + + + + Represents the workbook. + + + + + Represents the RtfLexer class object. + + + + + Represents the RtfReader class object. + + + + + Represents the current token. + + + + + Represents the previous token. + + + + + Represents the previous token key. + + + + + Represents the previous token value. + + + + + Represents the previous control string. + + + + + Represents the font name. + + + + + Represents the current table type. + + + + + Represents the font table. + + + + + Represents the color table. + + + + + Represents the stack. + + + + + Represents the picture stack. + + + + + Represents the destination stack. + + + + + Represents the header footer stack. + + + + + Represents the current rtf font. + + + + + Represents the base rtf font. + + + + + Represents the current rtf font number. + + + + + Represents the current rtf font charset. + + + + + Represents the current rtf font ID. + + + + + Represents the current token type. + + + + + Represents the previous token type. + + + + + Represents the color table. + + + + + Represents the bold. + + + + + Represents the italic. + + + + + Represents the underline. + + + + + Represents the strikethrough. + + + + + Represents the subscript. + + + + + Represents the superscript + + + + + Represents the empty paragraph count. + + + + + Indicates whether current token is picture. + + + + + Indicates whether current token is documentation information. + + + + + Indicates whether current token is shape picture. + + + + + Indicates whether current token is List text. + + + + + Indicates whether current token is bookmark start. + + + + + Indicates whether current token is bookmark end. + + + + + Indicates whether current token is header. + + + + + Indicates whether current token is footer. + + + + + Indicates whether current token is custom properties. + + + + + Represents the current style ID. + + + + + Represents the tab collection. + + + + + Represents the tab count. + + + + + Represents the accent character. + + + + + Represents the background collection stack. + + + + + Represents the background collection. + + + + + Represents the current style name. + + + + + Represents the list level stack. + + + + + Indicates whether token is list level. + + + + + Represents the unicode count stack. + + + + + Represents the unicode count. + + + + + Represents the current color index. + + + + + Represents the tab format stack. + + + + + Represents the rtf colloection stack. + + + + + Represents the shape instruction stack. + + + + + Indicates whether token is shape instruction. + + + + + Represents the object stack. + + + + + Indicates whether token is object. + + + + + Represents the drawing field name. + + + + + Represents the drawing field value. + + + + + Represents the field result group stack. + + + + + Represents the field instruction group stack. + + + + + Represents the field group stack. + + + + + Represents the form field data stack. + + + + + Represents the current field group data. + + + + + Represents the default code page. + + + + + Indicates whether token is wrap polygon. + + + + + Indicates whether token is comment range start. + + + + + Indicates whether token is comment reference. + + + + + Represents the comment group collection. + + + + + Represents the token . + + + + + Represents the group. + + + + + Represents the group order. + + + + + Initializes the RichTextReader for the worksheet + + + + + + Parse each token from the rtf + + + + + Check whether this current group contains pn list related tokens + retrun the bool value + + current object of group class + + + + + Closes this instance. + + + + + Add font to the font table collection + + + + + Add color to the color table + + + + + Parse Control start + + + + + Seperate the annotaion sting from token. + + + + + + + Gets whether the group is a nested group + + + + + + Parse group start + + + + + Parse Group End + + + + + Remove Delimiter space from the document text + + + + + + + Parse document element + + + + + Parse control word from the rtf file + + + + + + Skip the group. + + + + + Parse font table + + + + + + + + Parse color table + + + + + + + + Parse Formatting controls + + + + + + + + Parse special characters + + + + + + Check whether the accent character need to be omitted + + + + + + Parses Accented character + + + + + + + + Get the code page for the current Font character set + + + + + + Determines whether current code page is single byte encoding. + + + true if [is single byte]; otherwise, false. + + + + + Get Font Character Set + + + + + + Determine Whether the code page is supported for Encoding + + + + + + + Get the code page is supported for Encoding + + + + + + + Sort Tab Collection based on Tab position + + + + + Seperate Token keyword from the token Value + + + + + + + Apply font color for the current text + + + + + + Sets the parsed element flag. + + The token. + + + + Parses this instance. + + + + + Appends RTF string + + RTF string + + + + Sets the RTF. + + The row. + The column. + The text. + + + + Sets the RTF. + + The text. + + + + Uppdate the RTF Text. + + + + + Creates rich text string. + + + + + Checks whether the control word is destination control word + + + + + Gets whether the group is form field group + + + + + Gets whether the group is field group + + + + + Get's or set's the Default code page of the document + + + + + Represents the group for RTF string. + + + + + Represents the child elments collection. + + + + + Get Groups's object from the childElements collection + Set Groups's object into collection + + + + + Represents token for RTF string. + + + + + Represents value of token + + + + + Gets/Sets the value of token + + + + + Represents the Tab format for RTF string. + + + + + Represents tab position + + + + + Gets and Sets the tab position + + + + + Represents the RTF color. + + + + + Represents Red component value of RGB color + + + + + Represents Green component value of RGB color + + + + + Represents Blue component value of RGB color + + + + + Gets and Sets the Red component value + + + + + Gets and Sets the green component value + + + + + Gets and Sets the blue component value + + + + + Specifies the group start character. + + + + + Represents the Rtf Data. + + + + + Represents the system encoding. + + + + + Represents the current position in data buffer. + + + + + Represents the data buffer length. + + + + + Read a single character + + + + + + Reads the image bytes from the stream + + + + + + Closes this instance. + + + + + Gets the encoding. + + + + + Gets and Sets the current position in data buffer. + + + + + Gets and Sets the data buffer length. + + + + + Specifies the group start character. + + + + + Specifies the group end character. + + + + + Specifies the control start character. + + + + + Specifies the space character. + + + + + Specifies the white space character. + + + + + Specifies the new line character. + + + + + Specifies the semicolon character. + + + + + Specifies the double quotation character. + + + + + Specifies the back quotation character. + + + + + Specifies the open parenthesis character. + + + + + Specifies the close parenthesis character. + + + + + Specifies the ambersion character. + + + + + Specifies the percentage character. + + + + + Specifies the dollar sign character. + + + + + Specifies the hash character. + + + + + Specifies the At symbol character. + + + + + Specifies the Exclamation character. + + + + + Specifies the plus character. + + + + + Specifies the caret character. + + + + + Specifies the open bracket character. + + + + + Specifies the close bracket character. + + + + + Specifies the forward slash character. + + + + + Specifies the question mark character. + + + + + Specifies the greater than character. + + + + + Specifies the lesser than character. + + + + + Specifies the comma character. + + + + + Specifies the vertical bar character. + + + + + Specifies the colon character. + + + + + Represents Rtf table type. + + + + + Represents Rtf reader. + + + + + Represents Rtf token. + + + + + Represents Rtf previous character. + + + + + Represents the imagebytes. + + + + + Represents the read new character. + + + + + Represents the rtf token type. + + + + + Represents the new character. + + + + + Represents the comment start range. + + + + + Represents the comment count. + + + + + Represents the previous token. + + + + + Represents the comment start range token key. + + + + + Represents the comment tag mark. + + + + + Represents the delimeters. + + + + + Reads the Next token from the stream + + + + + + Reads control word + + + + + + Generates commnet information + + + + + + Reads Document element + + + + + + + Closes this instance. + + + + + Gets and Sets the imagebytes + + + + + Gets and Sets CommentRange start id + + + + + Gets/Sets Rtf table type + + + + + Gets/Sets Rtf token type + + + + + This class contains constants used for Encryption Info parsing/serialization + in Excel 2010 SpreadsheetML format. + + + + + Represents the Salt Size attribute. + + + + + Represents the Salt Size attribute. + + + + + Represents the Block Size attribute. + + + + + Represents the KeyBits attribute. + + + + + Represents the HashSize attribute. + + + + + Represents the CipherAlgorithm attribute. + + + + + Represents the cipher Chaining used to encrypt the data is AES. + + + + + Represents the hashing algorithm used in the Encryption. + + + + + Represents the encrypted copy of the randomly generated value used when generating the encryption key. + + + + + Represents the encrypted copy of the hash value that is generated during the creation of the encryption key. + + + + + Represents the iterations count on the hash of the password. + + + + + Represents the password verification Hash input. + + + + + Represents the password verifcation hash value. + + + + + Represents the Intermediate key used to Encrypt and Decrypt the data. + + + + + Represents the Encryption tags namespace. + + + + + Represents the password encryption attribute tags namespace. + + + + + Represents the attributes used to encrypt and decrypt the data. + + + + + Represents the cryptographic attributes used to encrypt the data. + + + + + Represents the Data Integrity attributes used to help ensure + that the integrity of the encrypted data. + + + + + Represents the attributes used to generate the encrypting key. + + + + + Represents the attributes used to generate the encrypting keys. + + + + + Represents the attributes used to generate the encrypting key. + + + + + Represents the Prefix p. + + + + + Represents the Xmlns attribute + + + + + Represents the Uir attribute. + + + + + Represents the cryptographic attributes used to encrypt the data. + + + + + Represents a randomly generated Salt Value size. + + + + + Represents the block size used to encrypt each block of data. + + + + + Represents the Key size. + + + + + Represents the Compute Hash Size. + + + + + Represents the cipher algorithm used to encrypt the data + + + + + Represents the chaining mode to encrypt the data. + + + + + Represents that the hashing algorithm used to hash the data. + + + + + Represents a randomly generated value used when generating the encryption key + + + + + Parses the cryptographic attributes used to encrypt the data. + + XmlReader to read from. + + + + Serializes the cryptographic attributes used to encrypt the data. + + Writer to writes into. + + + + Represents a randomly generated value used when generating the encryption key + + + + + Represents the Data Integrity attributes used to help ensure + that the integrity of the encrypted data. + + + + + Represents the encrypted copy of the randomly generated value used when generating the encryption key. + + + + + Represents the encrypted copy of the hash value that is generated during the creation of the encryption key. + + + + + Parse Data Integrity attributes. + + XmlReader to Read from. + + + + Serializes the Data Integrity attributes. + + Writer to writes into. + + + + Represents the encrypted copy of the randomly generated value used when generating the encryption key. + + + + + Represents the encrypted copy of the hash value that is generated during the creation of the encryption key. + + + + + Represents the attributes used to generate the encrypting key. + + + + + Default Spin Count to iterations on the hash of the password. + + + + + Represents the Default hash size in bytes. + + + + + Represents the Default cipher used to encrypt the data is AES. + + + + + Represents the Default chaining mode used for encrypting. + + + + + Represents the Default hashing algorithm used in the Encryption. + + + + + Represents the default key length in bits. + + + + + Represents the SHA512 hashing algorithm used in the Encryption + + + + + Represents the iterations count on the hash of the password. + + + + + Represents a randomly generated Salt Value size. + + + + + Represents the block size used to encrypt each block of data. + + + + + Represents the Key size. + + + + + Represents the Compute Hash Size. + + + + + Represents the cipher algorithm used to encrypt the data + + + + + Represents the chaining mode to encrypt the data. + + + + + Represents that the hashing algorithm used to hash the data. + + + + + Represents a randomly generated value used when generating the encryption key + + + + + Represents the password verification Hash input. + + + + + Represents the password verifcation hash value. + + + + + Represents the Intermediate key used to Encrypt and Decrypt the data. + + + + + Parses the attributes which is used to generate the encrypting key. + + Xml Reader to read from. + + + + Serializes the attributes which used to generate the encrypting key. + + Xml Writer to write into. + + + + Represents the Compute Hash Size. + + + + + Represents the iterations count on the hash of the password. + + + + + Represents the block size used to encrypt each block of data. + + + + + Represents the Key size. + + + + + Represents a randomly generated value used when generating the encryption key + + + + + Represents the password verifcation hash value. + + + + + Represents the password verification Hash input. + + + + + Represents the Intermediate key used to Encrypt and Decrypt the data. + + + + + Represents the Hash Algorithm used to Encrypt and Decrypt the data. + + + + + This class used to decrypt data using Excel 2010 encryption with AES 128 + encryption algorithm with CBC Mode and SHA-1 hashing algorithm. + + + + + This class is responsible for decryption of Excel 2007 files. + + + + + Size of the decryption block. + + + + + Dataspace map. + + + + + Encryption info. + + + + + Compound storage that should be decrypted. + + + + + Array containing key data. + + + + + Decrypts internal storage storage. + + Decrypted stream. + + + + Prepares decryptor for actual decryption. + + Compound storage to get required data from. + + + + Checks whether storage contains encrypted data. + + Storage to check. + True if storage is encrypted. + + + + Checks whether password is correct. + + Password to check. + True if password verification succeeded. + + + + Verifies password. + + Password to check. + Verifier object. + Encryption key. + + + + Decrypts specified buffer. + + + + + + + + Extracts transform data from the storage. + + Storage to get data from. + + + + Extracts dataspace map from the storage. + + Storage to get data from. + + + + Extracts TransformInfo from the storage. + + Storage to get data from. + + + + Compound storage that should be decrypted. + + + + + Decrypts internal storage storage. + + Decrypted stream. + + + + Checks whether password is correct. + + Password to check. + True if password verification succeeded. + + + + Verifies password. + + Password to check. + Verifier object. + Encryption key. + + + + Get the Encryption/Decryption Key from the encrypted data. + + Encrypted key in byte array. + Password in byte array. + Salt Value in byte array. + The number of times to iterate the password hash when creating the key. + Represent the size of the key. + Key to encrypt and decrypt the Encrypted Package. + + + + Get the password verifier hash. + + Encrypted the verifier hash. + Password in byte array. + Salt Value in byte array. + The number of times to iterate the password hash when creating the key + Represent the size of the key. + Decrypted Verifier hash. + + + + Get the password verifier hash value. + + Encrypted the verifier hash. + Password in byte array. + Salt Value in byte array. + The number of times to iterate the password hash when creating the key + Represent the size of the key. + Decrypted Verifier hash value. + + + + Get the Data Integrity verifier HmacKey. + + Encrypted Hmac Key. + Key to Decrypt the Hmac key. + Salt Value in byte array. + Represents the hash size to compute. + Hmac Key. + + + + Get the Data Integiryt verifier HMac Value. + + Encrypted Hmac Value. + Key to Decrypt the Hmac key. + Salt Value in byte array. + Hmac Value. + + + + Ensures the Data Integrity of the Encrypted Package. + + Encrypted data. + Key to Decrypt the Hmac key. + Salt Value in byte array. + Hmac Key to Compute Hmac hash. + Hmac Value to Compare. + Hash Algorithm to hash the value + True, if the data is in original structure. + + + + This class used to encrypt data using Excel 2010 encryption with AES 128 + encryption algorithm with CBC Mode and SHA-1 hashing algorithm. + + + + + This class used to encrypt data using Excel 2007 encryption with AES 128 + encryption algorithm and SHA-1 hashing algorithm. + + + + + Key length. + + + + + Default version. + + + + + Default flags. + + + + + Encryption algorithm id (AES-128). + + + + + Hashing algorithm id (SHA-1). + + + + + Provider type. + + + + + Default CSP name. + + + + + Encrypts specified stream. + + Data to encrypt. + Password to use. + Root storage to put encrypted data into. + + + + Preparse data spaces structures inside specified storage. + + Storage to put DataSpaces inside. + + + + Serializes VersionInfo stream inside specified storage. + + Storage to serialize VersionInfo into. + + + + Serializes transformation info. + + Storage to serialize into. + + + + Serializes dataspace info. + + Storage to serialize into. + + + + Serializes DataSpaceMap stream. + + Storage to place stream into. + + + + Fills in EncryptionInfor record and stores it at appropriate stream. + + Root storage. + Encryption password. + Encryption key. + + + + Creates random salt. + + Desired salt length. + Array with random data. + + + + Encrypts specified buffer. + + Data to encrypt. + Encryption key. + Encrypted data. + + + + Encrypt specified stream. + + Stream to encrypt. + Encryption key. + Output stream. + + + + Default Segment Size to encrypt. + + + + + Excel 2010 Version identifier. + + + + + Version Flag. + + + + + Key to Encrypt the data. + + + + + Encrypts specified stream. + + Data to encrypt. + Password to use. + Root storage to put encrypted data into. + + + + Encrypt the Stream with the given Key. + + Stream data to encrypt. + Key to encrypt data. + Salt value in byte array. + + + + + Preparse data spaces structures inside specified storage. + + Storage to put DataSpaces inside. + + + + Creates the Key with the given password. + + Password in byte array. + Salt Value in byte array. + Iteration count to generate the key. + Intermediate Key to encrypt the data. + + + + Creates the Data Integrity Verifier Hash Input. + + Random values in byte array. + Password in byte array. + SaltValue in byte array. + Iteration count to generate the key. + DataIntegrity verifier hash input. + + + + Creates the Data Integrity Verifier Hash Value. + + Random values in byte array. + Password in byte array. + SaltValue in byte array. + Iteration count to generate the key. + DataIntegrity verifier hash Value. + + + + Creates the Key to Encrypt the data. + + Password in byte array. + Salt Value in byte array. + Block Key to Generate vector. + The number of times to iterate the password hash when creating the key. + + + + + + Fills in EncryptionInfo record and stores it at appropriate stream. + + Root storage. + Encryption password. + Encryption key. + + + + Fills in Data Integrity info record and stores it at appropriate stream. + + Encypted Package. + Key to Encrypt the Hmac Input and Value. + Salt value in byte array. + Represents the SHA1 hash size. + Represents the EncyptionInfo. + + + + This class contains utility methods used by Excel 2010 security implementation. + + + + + Represents the SHA1 Hash Algorithm. + + + + + Represents the SHA256 Hash Algorithm. + + + + + Represents the SH512 Hash Algorithm. + + + + + Encrypt the Data in AES-128 algorithm with CBC mode. + + Plain data to encrypt. + Key to Encrypt the data. + Vector to encrypt the data. + The number of bytes used to encrypt one block of data + + + + + Decrypt the data in AES-128 algorithm with CBC mode. + + + + + + + + + + + Creates the Key to Decrypt and Encrypt the Data. + + password in byte array. + Salt Value in bytes. + Block Key in bytes. + Loop count to compute Hash. + Creates the key with the size. + Hash Algorithm used. + + + + + Generate Vecotor with the block key with integer. + + Salt Value in byte array. + unsinged integer as block Key. + Hash Algorithm used. + Vector in byte array. + + + + Generates the Vector. + + Salt value in byte array. + Block key value in byte array. + Hash Algorithm used. + Vector in byte array. + + + + Compute SHA Hash according to the algorithm used. + + Input to compute hash. + Hash Algorithm used. + + + + + XOR the two byte array. + + First byte. + Second byte. + + + + + Tries to pad or Truncate the given byte array. + + Byte array to pad or Truncate based on the length. + Represents the limit of the array. + Value to pad upto the length. + + + + + Gets HashAlgorithm from the Algorithm name + + Algorithm used + + + + + Verify the Worksheet and Workbook proctected Password + + password as string + name of the algorithm + Salt value + Hash Value + number of spin count + + + + + This class used to Sort the Range. + + + + + Represents the sort of range. + + + + + Sorts the range based on the sort fields. + + + To sort the s in the collection sort method is used. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set sort range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether to perform case sensitive sort. + + + By default, the sorter is case insensitive. If similar texts with different casing are to be sorted then the sorter treats both the texts + same. But if we set IsCaseSensitive property to "true" then it sorts and arranges texts in lower case to upper case order. Here for example, + we set same texts twice with first letters vary in casing, then set IsCaseSensitive to "true" and sort. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Fruits"; + worksheet["A2"].Text = "banana"; + worksheet["A3"].Text = "Cherry"; + worksheet["A4"].Text = "Banana"; + worksheet["A5"].Text = "Apple"; + worksheet["A6"].Text = "cherry"; + worksheet["A7"].Text = "apple"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set Range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(0, SortOn.Values, OrderBy.Ascending); + + //Set case sensitive + sorter.IsCaseSensitive = true; + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether the range has header. + + + If HasHeader property is set to "true", then the first row within the sorter range is ignored and the same will be treated as column name. By default HasHeader is + set to "true". Here for example, we set HasHeader property to "false". So the sorter sorts all the rows within the given range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A2"].Text = "banana"; + worksheet["A3"].Text = "Cherry"; + worksheet["A4"].Text = "Banana"; + worksheet["A5"].Text = "Apple"; + worksheet["A6"].Text = "cherry"; + worksheet["A7"].Text = "apple"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set Range + sorter.SortRange = worksheet["A2:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(0, SortOn.Values, OrderBy.Ascending); + + //Set case sensitive + sorter.HasHeader = false; + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Represents the sort orientation. + + + In some cases data in worksheet may be given in left to right format instead of top to bottom. For this case sorter can be used to sort by + setting Orientation to . By default it is . Here for example, + we load data in rows instead of columns and use the sorter to sort the data. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["B1"].Text = "Alfreds Futterkiste"; + worksheet["C1"].Text = "Antonio Moreno Taqueria"; + worksheet["D1"].Text = "Around the Horn"; + worksheet["E1"].Text = "Bon app"; + worksheet["F1"].Text = "Eastern Connection"; + worksheet["G1"].Text = "Ernst Handel"; + worksheet["A2"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["C2"].Number = 5079.6; + worksheet["D2"].Number = 1267.5; + worksheet["E2"].Number = 1418; + worksheet["F2"].Number = 4728; + worksheet["G2"].Number = 943.89; + worksheet["A3"].Text = "Qtr2"; + worksheet["B3"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["D3"].Number = 1062.5; + worksheet["E3"].Number = 756; + worksheet["F3"].Number = 4547.92; + worksheet["G3"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set Range + sorter.SortRange = worksheet["A1:G3"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + + //Set orientation + sorter.Orientation = SortOrientation.LeftToRight; + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Represents the Collection. + + + is used to add, remove and get from collection. Here for example, we add + to collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set sort range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Represents the sort range. + + + The following code illustrates how to set range for sorter. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set sort range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Represents the algorithm to sort. + + + By default the alogrithm to perform sorting is . Here for example, we set + to Algorithm property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set Range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + + //Set algorithm + sorter.Algorithm = SortingAlgorithms.MergeSort; + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether to perform case sensitive sort. + + + + + Indicates whether the range has header. + + + + + Represents the sort orientation. + + + + + Represents the SortFields Collection. + + + + + Represents the sort range. + + + + + Represents the algorithm to sort. + + + + + Represents the parent object workbook. + + + + + Represents the parent object worksheet. + + + + + Represents the instance of the ISortingAlorithm type. + + + + + Represents the parent object. + + + + + Initialization. + + Represents the parent object. + + + + Sorts the range based on the sort fields. + + + + + Sorts the range with the given parameter. + + Column indexes to sort. + Represents the sort order. + Colors to sort by. + + + + Arranges the similar object based on the reference index. + + sorted data + + + + Gets the data from the range to sort. + + Range to sort. + Represents the column Data Type + Columns index to sort. + Data in object array to sort. + + + + Returns appopriate value for the range with empty values + + Value of the range + Sorting order + + + + + Gets the data from the range to sort in column wise. + + Range to sort. + Represents the row datatypes. + Row indexes to sort. + data in object array to sort. + + + + Gets the value based on the column type. + + Cell range to get the value. + Type of the column. + value based on the column type. + + + + Swaps the Range based on the List. + + Range to sort. + Represents the sorted data. + + + + Swaps the Range based on the List. + + Range to sort. + Represents the sorted data. + + + + Swaps the Range based on the List. + + Range to sort. + Represents the sorted data. + Start row to swap the range data. + + + + Swaps the Range based on the List. + + Range to sort. + Represents the sorted data. + Start row to swap the range data. + + + + Gets the cell type. + + Range to get the cell type. + Type of the cell. + + + + Updates the Sort Range for DataSorter + + Range to filter. + + + + Represents the instance of the ISortingAlorithm type. + + + + + Indicates whether to perform case sensitive sort. + + + + + Indicates whether the range has header. + + + + + Represents the sort orientation. + + + + + Represents the SortFields Collection. + + + + + Represents the sort range. + + + + + Represents the algorithm to sort. + + + + + Represents the worksheet of DataSorter. + + + + + This class used to sort the Data using the HeapSort algorithm. + + + + + Parent of the sorting classes. + + + + + Represents the Algorithm to be perform sorting. + + + + + Sorts the integer type data with the specified column index. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Float values with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Date type values with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the string type values with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the based on the types with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Integer type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Float type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Datea type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the string type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Range object to sort. + + + + + Data to sort. + + + + + + Represents the Column/Row Types. + + + + + Represents the sorting order of each column/Row. + + + + + Represents the current top position of Row/column with color. + + + + + Represents the current bottom position of the Row/Column with color. + + + + + Represents the colors to find. + + + + + Intialiazes the sorting algorithm atributes. + + Data to sort. + Type of the each column. + Sorting order of each column. + Colors to find. + + + + Sorts the data with the specified column index. + + Left index of the data. + Right index of the data to sort. + column index of the data. + + + + Extracts the single row from the Data. + + Index of the row to extract. + Row value in object array. + + + + Extracts the single colum form the data. + + Row index to extract. + Column values in object array. + + + + Swaps the row. + + first row index. + second row index. + + + + Swpas the array content. + + Left array content. + Right array content. + + + + Swaps the column content. + + First column Index. + Second column index. + + + + Swaps the column content. + + Left array content. + Right array content. + + + + Sorts the integer type data with the specified column index. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Float values with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Date type values with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the string type values with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the based on the types with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Integer type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Float type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Datea type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the string type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Represents the sortable data. + + + + + Range object to sort. + + + + + Initializes the Heap sorting attributes. + + Data to sort. + Represents the type of the column. + Sorting order of the column. + Colors to sort. + + + + Sorts the data using HeapSort Algorithm. + + Start index of the data. + End index of the data. + + + + Sorts the data based on the types. + + left index of the data. + Right data of the index. + column Index to sort. + + + + Creates the heap tree to sort. + + Represents the posiont of the heap. + length the data. + Sots based on this column. + + + + Sorts integer value using HeapSort. + + Represents the root element in the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Creates the heap tree to sort. + + Represents the posiont of the heap. + length the data. + Sots based on this column. + + + + Sorts float value using HeapSort. + + Represents the root element in the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Creates the Date Heap. + + Represents the posiont of the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Sorts the Date type value. + + Represents the root element in the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Creates the Heap with the string. + + Represents the posiont of the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Sorts the string type. + + Represents the root element in the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Creates the Float Heap in Descending order. + + Represents the posiont of the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Sorts the integer value in descending order. + + Represents the root element in the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Creates the Float Heap in Descending order. + + Represents the posiont of the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Sorts the Float value in descending order. + + Represents the root element in the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Create the Heap with the Date type in Descending order. + + Represents the posiont of the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Sorts the Date value in descending order. + + Represents the root element in the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Create the Heap with the String type in Descending order. + + Represents the posiont of the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Sorts the String value in descending order. + + Represents the root element in the heap. + Represents the length of the heap. + Represents the column index of the data to sort. + + + + Range object to sort. + + + + + This class used to sort the Data using the InsertionSort algorithm. + + + + + Sorts the int value in Ascending order. + + + + + + + + Sorts the Float value in Ascending order. + + + + + + + + Sort values in Ascending order. + + + + + + + + Sorts the int value in Ascending order. + + + + + + + + Sort Methods based on types. + + Represents the left index of the data. + Represents the right index of the data. + Sots based on this column. + + + + Sorts the Int values in Descending order. + + Represents the left index of the data. + Represents the right index of the data. + Sots based on this column. + + + + Sorts the float values in Descending order. + + Represents the left index of the data. + Represents the right index of the data. + Sots based on this column. + + + + Sorts the float values in Descending order. + + Represents the left index of the data. + Represents the right index of the data. + Sots based on this column. + + + + Sorts the float values in Descending order. + + Represents the left index of the data. + Represents the right index of the data. + Sots based on this column. + + + + Sorts the Data using InsertionSort Algorithm. + + Represents the left index of the data. + Represents the right index of the data. + + + + Range object to sort. + + + + + Represents category in the chart. + + + + + Represents category in the chart. + + + + + True if the user filters out category. otherwise False. + + + By default all the categories in the chart are shown because this property is set to "false". Here for example, we filter out + first category from the chart and it will not be shown in the chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart categories collection + IChartCategories categories = chart.Categories; + + //Get chart first category + IChartCategory category = categories[0]; + + //Filter out the first category + category.IsFiltered = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the category name. Read only. + + + The following code illustrates how to access the element from object and display its name. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart categories collection + IChartCategories categories = chart.Categories; + + //Get chart category by index + IChartCategory category = categories[1]; + + //Displaying the name of the category object + Console.WriteLine("Name of the second category is:" + category.Name); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + // Output will be + //Name of the second category is:Feb + + + + Gets the category label for the chart. Read only. + + + The following code illustrates how to access the from object and display its category labels address. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart categories collection + IChartCategories categories = chart.Categories; + + //Get chart second category + IChartCategory category = categories[1]; + + //Displaying the labels address of the category object + Console.WriteLine("Category labels address is:" + category.CategoryLabel.AddressLocal); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + // Output will be + // Category labels address is:A1:C1 + + + + Gets the category values. Read only. + + Returns the first series values of the chart category + + The following code illustrates how to access the from object and display its value address. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart categories collection + IChartCategories categories = chart.Categories; + + //Get chart second category + IChartCategory category = categories[1]; + + //Displaying the first series values of the category object + Console.WriteLine("Category value address is:" + category.Values.AddressLocal); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + // Output will be + // Category value address is:B2:B3 + + + + Represents a Boolean value indicating if the category filter is customized. + + + + + Initializes a new instance of class with the + specified application and parent objects. + + + + + + + Clone the chart category + + chart category object + + + + True if the user filters out a series. otherwise False. + + + + + Gets the category label for the chart. Read only. + + + + + Gets the category values. Read only. + + + + + Gets the category name. Read only. + + + + + Represents a collection of chart categories. + + + + + Represents a collection of chart categories. + + + + + Gets the number of elements in the collection. Read-only. + + + The following code illustrates how to get number of elements in the object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart categories collection + IChartCategories categories = chart.Categories; + + //Displaying the number of categories in the chart + Console.WriteLine("Number of categories in the chart is:" + categories.Count.ToString()); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + // Output will be + // Number of categories in the chart is:3 + + + + Gets a single category object with the specified index. + + + The following code illustrates how to access the element by index from the object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart categories collection + IChartCategories categories = chart.Categories; + + //Get chart category by index + IChartCategory category = categories[1]; + + //Displaying the name of the category object + Console.WriteLine("Name of the second category is:" + category.Name); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + // Output will be + //Name of the second category is:Feb + + + + Gets a single category object with the specified name. + + + The following code illustrates how to access the element by name from the object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart categories collection + IChartCategories categories = chart.Categories; + + //Get chart category by name + IChartCategory category = categories["Jan"]; + + //Checking whether the category is filtered + Console.WriteLine("Is Jan category is filtered:" + category.IsFiltered); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + // Output will be + // Is Jan category is filtered:False + + + + Initializes a new instance of class. + + Application object for the collection. + Parent object for the collection. + + + + Adds the specified series to this collection. + + Series that should be added to the collection. + The added serie. + + + + Removes the serie with the specified name from this collection. + + Name of the serie to be removed. + + + + Adds a new serie with the specified serie type and name to this collection. + + Name of the serie to be added. + Serie type for the serie. + The added Serie. + + + + Adds a new serie with the specified serie type to this collection. + + The Serie type to be added. + The added serie. + + + + Adds a new serie to this collection. + + The added serie. + + + + Performs additional operations before the Clear method. + + + + + Clone current instance. + + Parent object. + Returns cloned instance. + + + + Returns array of entered records. + + Si record index. + Returns array of entered records. + + + + Adds a new serie with the specified name to this collection. + + Name of the serie. + The added serie. + + + + Gets array by si index. + + Si index. + Returns array of arrays by si index. + + + + Adds a new serie with the specified range of category labels and category values to this collection. + + Category labels for the serie to be added. + Category values for the serie to be added. + The added serie. + + + + Gets a single category object with the specified index. + + + + + Gets a single category object with the specified name. + + + + + This class used to sort the data using MergeSort. + + + + + Initailize the sort data attributes. + + Represents the data to sort. + Represents the datatype of each column. + Represents the sort order. + Represents the color to sort. + + + + Sort based on their types. + + Represents the Data To Sort. + Represents the column index. + Sorted Data. + + + + Gets the specified range from the array. + + Array of data to get the range. + start index. + end index. + object array. + + + + Adds the source content to the destination array content from the start index. + + Destination array. + Source Array. + Start Index. + + + + Sort the data in Ascending order. + + Represents the array of data to sort. + Represents the column Index. + Sorted Data. + + + + Sort the data in Ascending order. + + Represents the array of data to sort. + Represents the column Index. + Sorted Data. + + + + Sort the data in Ascending order. + + Represents the array of data to sort. + Represents the column Index. + Sorted Data. + + + + Sort the data in Ascending order. + + Represents the array of data to sort. + Represents the column Index. + Sorted Data. + + + + Sort the data in Decending order. + + Represents the array of data to sort. + Represents the column Index. + Sorted Data. + + + + Sort the data in Decending order. + + Represents the array of data to sort. + Represents the column Index. + Sorted Data. + + + + Sort the data in Decending order. + + Represents the array of data to sort. + Represents the column Index. + Sorted Data. + + + + Sort the data in Decending order. + + Represents the array of data to sort. + Represents the column Index. + Sorted Data. + + + + Sort the data using MergeSort. + + Represents the left position of the data. + Represents the right psoition of the data. + + + + Range object to sort. + + + + + This class used to sort the data using QuickSort3. + + + + + Initailize the sort data attributes. + + Represents the data to sort. + Represents the datatype of each column. + Represents the sort order. + Represents the color to sort. + + + + Sorts the data in Ascending sort. + + Represents the left index of the data. + Represents the right index of the data. + Represents the column index of the data. + + + + Sorts the data in Ascending sort. + + Represents the left index of the data. + Represents the right index of the data. + Represents the column index of the data. + + + + Sorts the data in Ascending sort. + + Represents the left index of the data. + Represents the right index of the data. + Represents the column index of the data. + + + + Sorts the data in Ascending sort. + + Represents the left index of the data. + Represents the right index of the data. + Represents the column index of the data. + + + + Sorts the data in Decending sort. + + Represents the left index of the data. + Represents the right index of the data. + Represents the column index of the data. + + + + Sorts the data in Decending sort. + + Represents the left index of the data. + Represents the right index of the data. + Represents the column index of the data. + + + + Sorts the data in Decending sort. + + Represents the left index of the data. + Represents the right index of the data. + Represents the column index of the data. + + + + Sorts the data in Decending sort. + + Represents the left index of the data. + Represents the right index of the data. + Represents the column index of the data. + + + + Sorts the data with the specified column index using QuickSort3 + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the data using QuickSort algorithm. + + Represents the left index of the data. + Represents the right index of the data. + + + + Internal quicksort method that makes recursive calls. + Uses median-of-three partitioning and a cutoff of 10. + + An array of Comparable items. + low the left-most index of the subarray. + high the right-most index of the subarray. + + + + Method to swap to elements in an array. + + an array of objects.. + low the left-most index of the subarray. + high the right-most index of the subarray. + + + + Internal insertion sort routine for subarrays + + an array of objects.. + low the left-most index of the subarray. + high the right-most index of the subarray. + + + + Compares the number in string format as a number + + Current value + Comparing value + + + + + Compares two array objects. + + First Array Objects. + Second Array Objects. + + + + Range object to sort. + + + + + Represents the sort Field attributes. + + + + + Represents the sort field based on which sorting is performed. + + + + + Sets sorting priority. + + integer priority value. 0 represents high priority. + + To know more about sorting refer Data Sorting. + + + If more than one is used then we can set priority for a particular . The following code illustrates + how priority can be set for a . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Set colors + worksheet["C2:C3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["C4:C5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["C6:C7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set sort range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + ISortField sortField2 = sorter.SortFields.Add(2, SortOn.CellColor, OrderBy.Descending); + + //Set sortfiled color + sortField2.Color = System.Drawing.Color.Green; + + //Set priority + sortField2.SetPriority(0); + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Represents the column to be sorted on. + + + The following code illustrates how the the column to be sorted can be set using the Key property. Here for example, we set 2 to the Key property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Set colors + worksheet["C2:C3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["C4:C5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["C6:C7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set sort range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(0, SortOn.Values, OrderBy.Ascending); + + //Set sortfield properties + sortField.SortOn = SortOn.CellColor; + sortField.Order = OrderBy.Descending; + sortField.Key = 2; + sortField.Color = System.Drawing.Color.Green; + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Represents the sort by in the range. + + + To know more about sorting refer Data Sorting. + + Sorting can be done based on or or . Here for example, + we set to SortOn property to sort cells based on cell color. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Set colors + worksheet["C2:C3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["C4:C5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["C6:C7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set sort range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(0, SortOn.Values, OrderBy.Ascending); + + //Set sortfield properties + sortField.SortOn = SortOn.CellColor; + sortField.Order = OrderBy.Descending; + sortField.Key = 2; + sortField.Color = System.Drawing.Color.Green; + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Represents the sort order. + + + To know more about sorting refer Data Sorting. + + + Value set to Order property determines the sorting order. and are only applicable + if is set to or . We can either use or + if is set . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Set colors + worksheet["C2:C3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["C4:C5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["C6:C7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set sort range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(0, SortOn.Values, OrderBy.Ascending); + + //Set sortfield properties + sortField.SortOn = SortOn.CellColor; + sortField.Order = OrderBy.Descending; + sortField.Key = 2; + sortField.Color = System.Drawing.Color.Green; + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Represents the color to sort. Throws exception when SortOn type is Values. + + + To know more about sorting refer Data Sorting. + + + If property is set or , then the Color property should be + set. Here for example, we set green from to the Color property to sort the cells based on CellColor. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Set colors + worksheet["C2:C3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["C4:C5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["C6:C7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set sort range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(0, SortOn.Values, OrderBy.Ascending); + + //Set sortfield properties + sortField.SortOn = SortOn.CellColor; + sortField.Order = OrderBy.Descending; + sortField.Key = 2; + sortField.Color = System.Drawing.Color.Green; + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Represents the column to be sorted on. + + + + + Represents the sort by in the range. + + + + + Represents the sort order. + + + + + Represents the color to sort. Throws exception when SortOn type is Values. + + + + + Parent class object. + + + + + Initialize the sort field. + + + + + + Sets sorting priority. + + integer priority value. 0 represents high priority. + + + + Represents the column to be sorted on. + + + + + Represents the sort by in the range. + + + + + Represents the sort order. + + + + + Represents the color to sort. Throws exception when SortOn type is Values. + + + + + Represents the sort Field collection. + + + + + Represents the sort field collections based on which sorting is performed. + + + + + Adds the SortField in the collection. + + Column Index to sort the data. + To sort the data based on. + To order the sorted data. + Returns the Added . + + The Add method adds to the collection and returns it. The following code illustrates + how can be added to collection using Add method. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(0, SortOn.Values, OrderBy.Ascending); + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Removes the in the collection with the . + + Sort field Key to remove. + + The following code illustrates how a can be removed from collection by specfiying it's . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Set colors + worksheet["C2:C3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["C4:C5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["C6:C7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + ISortField sortField2 = sorter.SortFields.Add(2, SortOn.CellColor, OrderBy.Descending); + + //Remove sortfield + sorter.SortFields.Remove(2); + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Removes the specified from the collection. + + Sort Field to remove from the collection. + + The following code illustrates how a can be removed from collection by passing it as a + parameter. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Set colors + worksheet["C2:C3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["C4:C5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["C6:C7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + ISortField sortField2 = sorter.SortFields.Add(2, SortOn.CellColor, OrderBy.Descending); + + //Remove sortfield + sorter.SortFields.Remove(sortField2); + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Represents the field count. + + + To get the number of in the collection Count property can be used. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Set colors + worksheet["C2:C3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["C4:C5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["C6:C7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + ISortField sortField2 = sorter.SortFields.Add(2, SortOn.CellColor, OrderBy.Descending); + + //Perform sort + sorter.Sort(); + + //Check sortfield count + Console.WriteLine(sorter.SortFields.Count); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Returns single item from the collection. + + Gets the item based on the . + with the given . + + The following code illustrates how can be accessed from collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Set colors + worksheet["C2:C3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["C4:C5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["C6:C7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create sorter + IDataSort sorter = workbook.CreateDataSorter(); + + //Set range + sorter.SortRange = worksheet["A1:C7"]; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + ISortField sortField2 = sorter.SortFields.Add(2, SortOn.CellColor, OrderBy.Descending); + + //Set sortfiled color + sorter.SortFields[1].Color = System.Drawing.Color.Green; + + //Set priority + sorter.SortFields[1].SetPriority(0); + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Datasort.xlsx"); + workbook.Close(); + } + + + + + + Adds the SortField in the collection. + + Column Index to sort the data. + To sort the data based on. + To order the sorted data. + Added sort field. + + + + Removes the sortField in the collection. + + Sort Field to remove from the collection. + + + + Remvoes the Sort Field in the collection. + + Field index to remove. + + + + Remvoes the last Sort Field in the collection. + + Field index to remove. + + + + Sets the priority of the column to sort. + + + + + + + Finds the SortField by Key. + + Key to find. + index of the SortField. + + + + Finds the last SortField by Key. + + Key to find. + index of the SortField. + + + + Sort the data based on the style. + + + + + Initializes the Style sorting attributes. + + Data to sort. + Represents the type of the column. + Sorting order of the column. + Colors to sort. + + + + Sort the data based on specified column. + + + + + + + + Sort the data based on the Style. + + + + + + + + Sorts the data based on cell color. + + Left index of the data. + Right index of the data. + Column index of the data to sort. + + + + Compares the color. + + First color object. + Second color object. + + + + + Sorts by cell color and align bottom. + + + + + + + + Moves the Style to top. + + source index. + Moves to destination index. + + + + Moves the Style to top. + + source index. + Moves to destination index. + + + + Sorts the integer type data with the specified column index. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Float values with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Date type values with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the string type values with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the based on the types with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Integer type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Float type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the Datea type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + Sorts the string type values in Descending order with the specified column. + + Represents the start index of the data. + Represents the end index of the data. + Reprsents the columnindex of the data. + + + + This class represents the marker attributes. + + + + + + Represents the header Names of the Property. + + + + + Represents the number format of the property. + + + + + Indicates whether to exclude the property or not. + + + + + Initializes a new instance of the class. + + Name of the header. + + + + Initializes a new instance of the class with specified exclude option. + + if set to true [exclude]. + + + + Initializes a new instance of the class with specified exclude option, header name and number format values. + + Indicates whether to exclude the property. + Name of the header. + The number format of the property. + + + + Initializes a new instance of the class with specified exclude option and number format value. + + Indicates whether to exclude the property. + The number format. + + + + Initializes a new instance of the class with specified header name and number format values. + + Name of the header. + The number format of the property. + + + + Indicates whether to exclude the property or not. + + + + + Represents the header Names of the Property. + + + + + Represents the number format of the property. + + + + + XLSB data holder. + + + + + Name of the zip item with content types description. + + + + + Name of the directory with relations. + + + + + Extension for relations file. + + + + + Path to the top relations. + + + + + Xml files extension. + + + + + Relations default extension. + + + + + Binary item extension. + + + + + Default name of the workbook part. + + + + + Default name of the CustomXml Parts + + + + + Default name of the shared strings part. + + + + + Default name of the styles part name. + + + + + Default name of the themes part name. + + + + + Path format for the worksheet part. + + + + + Default name of the extended properties part. + + + + + Default name of the core properties part. + + + + + Default name of the custom properties part. + + + + + Format for relation id generation. + + + + + The number format indexes that are always serialized. + + + + + Workbook + + + + + Top-level relations. + + + + + Workbook-level relations. + + + + + Specifies style relation id. + + + + + Specifies shares string relation id. + + + + + ZipArchive + + + + + Dictionary which is used to identify content type and stores default types. + Key - file extension (string), Value - content type (string). + + + + + Dictionary which is used to identify content type and stores type overrides. + Key - part name, Value - content type (string). + + + + + Items that must be removed after parsing complete. + + + + + Excel 2007 parser. + + + + + Shared strings part name. + + + + + Styles part name. + + + + + Cell formats. + + + + + Initialize XlsbDataHolder + + + + + Initialize XlsbDataHolder + + Workbook + Archive + + + + Parse xlsb document + + Theme colors + Stream + + + + Parses sheet. + + stream to get data from. + Sheet to parse. + Absolute path to the parent worksheet item. + This stream will receive xml text starting just + after "worksheet" tag to "col" or "sheetData" tag. + This stream contains conditional formatting. + List with new style indexes (index - old + style index, value - new one). + Dictionary with archive items to remove after parsing. + + + + Parses sheet views. + + Stream to get data from. + Worksheet to place extracted data into. + + + + Parses sheet format properties. + + Stream to get data from. + Worksheet to put data. + + + + Extracts sheet data from reader and insets it into worksheet. + + Stream to get data from. + Worksheet to put data into. + List with new style indexes (index - old style index, value - new one). + + + + Parses rows from the document. + + Stream to get data from. + Worksheet to put data. + List with new style indexes (index - old style index, value - new one). + + + + Parses cells from the document. + + Stream to get data. + Worksheet to put data. + Row index. + List with new style indexes. + + + + Parses column collection from the stream. + + Stream to get data. + Worksheet to put data. + List with new style indexes + + + + Parses column from the column collection. + + Stream to get data. + Worksheet to put data. + List with new style indexes + + + + Parses workbook theme colors. + + Theme colors. + + + + Parse worksheets from the archive. + + Shared string index. + + + + Parses shared strings table. + + XmlReader to get data from. + Dictionary with updated string indexes. + + + + Parses string item. + + XmlReader to get data from. + Added string index. + + + + Parse the record length + + Stream to get data + Return the record position + + + + Returns single zip item based on the relation and parent path. + + Relation that points to the archive item. + Path to the parent item. + Path to the desired item. + Requested zip item. + + + + Parse styles. + + Style document stream. + + + + + Parses style from the stream. + + Stream to get data from. + XF Indexes list. + + + + + Parse cell styles. + + Stream to get data from. + Named style indexes. + + + + + Extracts cell formats from specified Stream. + + Stream to get data from. + List with updated font indexes, index - font index + in the file, value - font index in our document (we can change indexes during parsing). + List with extracted fill objects. + List with extracted borders. + List with updated parent indexes, index - xfId in + the xml document, value - xf index in our internal collection. + List with indexes of created extended formats. + + + + Extracts named styles from specified Stream. + + Stream to get data from. + List with updated font indexes, index - font index + in the file, value - font index in our document (we can change indexes during parsing). + List with extracted fill objects. + List with extracted borders. + List with indexes of created extended formats. + + + + Extracts single extended format from the Stream. + + Stream to get data from. + List with updated font indexes, index - font index + in the file, value - font index in our document (we can change indexes during parsing). + List with extracted fill objects. + List with extracted borders. + List with updated parent indexes. + Created ExtendedFormat object. + + + + Extracts border objects from Stream. + + Stream to get data from. + List with new borders indexes. + + + + Parse border properties. + + Stream to get data from. + Border collection. + + + + Parse fill collection. + + Stream to get data. + List of Fill + + + + Parse fill properties. + + Stream to get data. + + + + Parse font collection. + + Stream to get data. + List of font indexes. + + + + Extracts font object from specified Stream. + + stream to read font data from. + List to add new font index into. + + + + Parse number format collection. + + Stream to read data. + + + + + Extracts single number format entry from specified Stream. + + Stream to read data. + + + + Parse Workbook part. + + Stream to read data. + Relation collection. + Xlsb data holder. + Workbook path. + + + + Parse Named range. + + Stream to read data. + + + + Parse external reference. + + Stream to read data. + + + + Parse sheet options. + + Stream to read data. + Relation collection. + File Data holder + WorkbookPath + + + + Parses sheet entry from workbook item. + + Stream to extract data from. + Workook's relations collection. + FileDataHolder that stores document data. + Absolute path in zip archive to the parent workbook. + + + + Parses all document properties. + + + + + Parses archive item by content type. Removes relation for this item and the item itself. + + Content type. + + + + Returns XmlReader for corresponding content type. + + Content type. + Name of the item that has specified content type. + Item name. + + + + Tries to find path to the item by content type. + + Content type to locate. + First occurrence of the item with specified content type. + + + + Tries to find path to the item by content type inside default types. + + Content type to locate. + First occurrence of the item with specified content type. + + + + Tries to find path to the item by content type inside overridden types. + + Content type to locate. + First occurrence of the item with specified content type. + + + + Gets relations. + + Item name to get corresponding relation. + Extracted relation + + + + Parser color object + + Input stream + Color object + + + + Serializes color + + Stream + Color object + + + + Serialize Workbook. + + file name + Workbook + Excel save type + + + + Save document + + File name + Excel + + + + Empty archive + + + + + Save document in Xlsb format. + + Stream to write data. + + + + Save document + + + + + Saves top level relation in zip. + + + + + Save content types. + + + + + Saves all document properties. + + + + + Saves archive item, adds corresponding record into content type and relation collections. + + Part name value. + Content type value. + Relation type value. + + + + Saves archive item by part name into zip archive item. + + Item part name. + + + + Fills default content types. + + + + + Save workbook. + + + + + Serializes relations collection. + + Name of the parent + Represents relations + + + + Save shared strings. + + + + + Serialize string item. + + Stream to write data. + string + + + + Save styles. + + XFIndexes + + + + Serialize cell styles + + Stream to write data. + Cell styles. + + + + Serialize cell style. + + Stream to write data. + Style + XFIndexes. + + + + Serialize CellXFs collection. + + Stream to write data. + Fill Indexes + Border Indexes + Parent XF indexes. + + + + + Serialize Cell Xf collection. + + Stream to write data. + Fill indexes. + Border indexes. + + + + + Serialize Extended format. + + Stream to write data. + Fill indexes. + Border indexes. + Extended format. + Indicates whether it is cell style xf + + + + Serialize borders. + + Stream to write data. + + + + + Serialize border collection. + + Stream to write data. + Border collection. + + + + Serialize border. + + Stream to write data. + Border + + + + Serialize Fill collection. + + Stream to write data. + + + + + Serialize fill. + + Stream to write data. + Fill Impl + + + + Serialize font collection. + + Stream to write data. + + + + Serializes number formats collection into XmlWriter. + + XmlWriter to serialize into. + + + + Serialize number format. + + Stream to write data. + Format record. + + + + Serialize Font. + + Stream to write data. + Font + + + + Save worksheets. + + List of style indexes. + Relations + + + + Save worksheet data. + + Worksheet + Archive item name + List of styles + Relations. + + + + Serialize columns. + + Stream to write data. + Styles + Worksheet + + + + + Serialize column. + + Stream to write data. + Column record. + Styles + Default width + Worksheet + + + + + Updates archive item + + Worksheet to add + Worksheet name to add + + + + Serialize sheet data. + + Stream to write data. + Worksheet + Style indexes. + + + + Serialize row. + + Stream to write data. + Row storage + Cell records. + Row index + Style indexes. + + + + Read specific bit value. + + Byte value. + Bit position. + + + + + Read specific bits value. + + Byte value to which to read bit. + starting bit position. + starting bit position. + + + + Write specific bits value. + + Byte value to which to write bit. + Value + starting bit position. + starting bit position. + + + + Write specific bit value. + + Byte value to which to write bit. + Value + Bit position. + + + + + Serialize cell. + + Stream to write data. + Biff record. + Row storage enumerator + Cell records. + List of styles. + + + + Serialize simple formula. + + Stream to write data. + Formula record. + Cell type. + Rowstorage enumerator. + Row index. + Columnn index + Style index + + + + Save workbook.bin + + + + + Serializes named ranges into specified writer. + + XmlWriter to save named ranges into. + + + + Serialize named range. + + Stream to write data. + NameImpl + + + + Gets the index of the local sheet. + + The sheet. + + + + + Serialize document into stream. + + Stream to write data. + Workbook + + + + Generates free sheetId. + + Extracted sheet id. + + + + Archive items to be removed. + + + + + XF indexes. + + + + + Gets Excel 2007 parser. + + + + + Workbook + + + + + Begin workbook record. + + + + + Worksheets collection begin record. + + + + + WorksheetRecord + + + + + Worksheet collection end record. + + + + + Named range + + + + + Workbook end record. + + + + + Begin worksheet record. + + + + + Sheet properties + + + + + Sheet Dimension + + + + + Sheet views begin + + + + + Sheet view begin + + + + + Active cell record. + + + + + Sheet view end. + + + + + Sheet views end. + + + + + Columns begin + + + + + Column record. + + + + + Columns End. + + + + + Begin sheet data record. + + + + + Row record + + + + + Blank record. + + + + + Number record. + + + + + Error + + + + + Boolean record. + + + + + Double + + + + + Label + + + + + String record + + + + + Formula number record. + + + + + Formula string record. + + + + + Formula boolean record. + + + + + Error formula record. + + + + + End Worksheet record. + + + + + End Worksheet record. + + + + + Begin shared strings table record. + + + + + End shared strings table record. + + + + + String record + + + + + Begin style sheet record. + + + + + Begin number format collection record. + + + + + Number format record. + + + + + End number format collection. + + + + + Begin font collection record. + + + + + Font record + + + + + End font collection record. + + + + + Begin fill collection record. + + + + + Fill record. + + + + + End fill collection record. + + + + + Begin border collection record. + + + + + Border record. + + + + + End border collection record. + + + + + Begin CellStyleXfs collection record. + + + + + Cell style XF record. + + + + + End CellStyleXfs collection record. + + + + + Begin CellXfs collection record. + + + + + End CellXfs collection record. + + + + + Begin Cell styles collection record. + + + + + Cell style record. + + + + + End Cell styles collection record. + + + + + End style sheet record. + + + + + Drawing Record + + + + + The begin record defines the start of a block of records for a (Graphing) + data object. This record is matched with a corresponding EndRecord. + + + + + + + + + + + Summary description for IBiffStorage. + + + + + Size of the required storage space. Read-only. + + + + + Save record data to stream. + + Writer that will receive record data. + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the record. + If writer is NULL. + + If m_iLength of internal record data array is less than zero. + + + + + Returns type code of the biff storage. Read-only. + + + + + Returns code of the biff storage. Read-only. + + + + + Indicates whether data array is required by this record. + + + + + Indicates record position in stream. This is a utility member of class and + is used only in the serialization process. Does not influence the data. + + + + + Default size of the inner collections. + + + + + Maximum size of a record. + + + + + Maximum size of a record with header. + + + + + Size of the records header. + + + + + Number of bits in byte. + + + + + Number of bits in short. + + + + + Number of bits in int. + + + + + Used to optimize reflection typed extracting. + TBiffRecord - to - ReflectionCachePair + + + + + + + + + + Skips begin - end block and sub blocks. + + Record storage. + Position in storage. + Returns index after skipping. + + + + Code of the Biff record. + + + + + Length of the Biff record data. + + + + + Indicates whether m_data array need to be Infilled before usage. + + + + + Gets value with all bits that do not correspond + to the specified mask to zero. + + Unsigned Int16 value. + Bit mask. + + Value with all bits that do not correspond + to the specified mask to zero. + + + + + Sets value with all bits that correspond to the specified + mask of zero to the same values as in the value. + + Variable that bits of which will be set. + Bit mask. + Value from which bit values will be taken. + + + + Gets value with all bits that do not correspond + to the specified mask to zero. + + Unsigned Int32 value. + Bit mask. + + Value with all bits that do not correspond + to the specified mask to zero. + + + + + Sets value with all bits that correspond to the specified + mask to zero to the same values as in value. + + Variable that bits of which will be set. + Bit mask. + Value from which bit values will be taken. + + + + Default constructor, gets code value using reflection and attributes. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Read / initialize constructor. + + BinaryReader from which record data should be read. + Size of the read item. + + When specified reader is NULL. + + + + + Reserved for record's internal data array iReserve bytes. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Read from stream record data. + + Stream with record data. + Object that provides access to the data. + Object that should be used to parse encrypted records. + Temporary buffer needed for some operations. + Size of the record data. + If reader is NULL. + + If stream is not big enough for data (end of stream + reached and all data was not read). + + + If record code is zero. + + + + + Save record data to stream. + + Writer that will receive record data. + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the record. + If writer is NULL. + + If m_iLength of internal record data array is less than zero. + + + + + Method which updates the fields of record which contain stream offset + or other data. This method must be called before save operation. + + Array with all records. + + When not overridden in descendant class. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Array that contains record's data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + Returns size of the required storage space. + + Excel version. + Size of the required storage space. + + + + Checks offset and length of the array. + + Array to check. + Start offset. + Length of the data. + + + + Get array of bytes from internal record data. + + + Offset of first byte of data to get. + Length of required array. + Array of bytes from internal record data. + + If offset is less than zero or more than internal record data array size + or length is less than zero or more than internal record data array size + or length plus offset is more than internal record data array size. + + + + + Gets single byte from internal record data using GetBytes. + + Source byte array. + Offset of byte to get. + Single byte from internal record data. + + + + Gets ushort from internal record data using GetBytes. + + Source byte array. + Offset in bytes of ushort to get. + Ushort from internal record data. + + + + Gets short from internal record data using GetBytes. + + Source byte array. + Offset in bytes of short to get. + Short from internal record. + + + + Gets int from internal record data using GetBytes. + + Source byte array. + Offset in bytes of int to get. + Int from internal record. + + + + Gets uint from internal record data using GetBytes. + + Source byte array. + Offset in bytes of uint to get. + Uint from internal record data. + + + + Gets long from internal record data using GetBytes. + + Source byte array. + Offset in bytes of long to get. + Long from internal record data. + + + + Gets ulong from internal record data using GetBytes. + + Source byte array. + Offset in bytes of ulong to get. + Ulong from internal record data. + + + + Gets float from internal record data using GetBytes. + + Source byte array. + Offset in bytes of float to get. + Float from internal record data. + + + + Gets double from internal record data using GetBytes. + + Source byte array. + Offset in bytes of double to get. + Double from internal record data. + + + + Gets single bit from internal record data using GetBytes. + + Source byte array. + Offset of the byte that contains needed bit. + Position of bit in the byte. + True if specified bit is set to 1; otherwise False. + + bitPos argument should be not less than zero and not more than 7. + + + + + Gets single bit from internal record data using GetBytes. + + Source memory block. + Offset of the byte that contains needed bit. + Position of bit in the byte. + True if specified bit is set to 1; otherwise False. + + bitPos argument should be not less than zero and not more than 7. + + + + + Gets string from internal record data using GetBytes, + and it increases the offset by string size in bytes. + + Source byte array. + Offset of starting byte. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes + and it increases offset by string size in bytes. + + Source byte array. + Offset of starting byte. + Length of the string. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes. + + Source byte array. + Offset of starting byte. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes. + + Source byte array. + Offset of starting byte. + Length of the string. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes. + + Source byte array. + Offset of starting byte. + Length of the string. + Gets bytes count that this string occupies in the data array. + Flags that represent is bytes count available. + Retrieved string. + + + + Detect type of string and extracts it. + + Source byte array. + Record data offset. + Position of next object. + Length of string record. + Array of rich formatting values. + Array of unknown FarEast data. + Extracted string. + + + + Gets TAddr structure from internal record data. + + Source byte array. + Offset in bytes of TAddr structure to get. + Retrieved TAddr structure. + + + + Extract the Reverse-Polish Notation formula from the data array. + + Source byte array. + Offset to the RPN data. + Length of the data. + Extracted RPN data. + + + + Searches for the next break. + + List of breaks. + Number of elements in the list. + Current break position. + Start index in the array. + Next break. + + + + Sets ushort in internal record data array using SetBytes method. + + Byte array list. + Offset to the required value. + New value for the specified ushort. + + + + Sets one bit in specified byte in internal record data array. + + Array where byte is located.. + Offset of the byte in the data array. + Bit position in the byte. + Value of bit. + + If bitPos is less than zero or more than 7. + + + + + Sets short in internal record data array using SetBytes method. + + Array where value should be placed located. + Offset to the required value. + New value for the specified short. + + + + Sets int in internal record data array using SetBytes method. + + Array where value should be placed located. + Offset to the required value. + New value for the specified int. + + + + Sets uint in internal record data array using SetBytes method. + + Array where value should be placed located. + Offset to the required value. + New value for the specified uint. + + + + Sets double in internal record data array using SetBytes method. + + Array where value should be placed. + Offset to the required value. + New value for the specified double. + + + + Sets string in internal record data array using SetBytes method + without string length, updates offset parameter (adds string length). + + Array where value should be placed located. + Offset to the string. + Value of the string. + + + + Sets string in internal record data array using SetBytes method. + The String length is saved in one byte. + + Array where value should be placed located. + Offset to the string. + Value of the string. + + + + Sets bytes in internal record data array values. + + Buffer to copy bytes into. + Offset in internal record data array to start from. + Array of bytes to set. + Position in value array to the data that will be set. + Length of the data. + If value array is NULL. + + If pos or length would be less than zero or their sum would be more + than size of value array. + + + If internal record data array is too small for receiving value array + and AutoGrowData is False. + + + + + Sets one bit in specified ushort. + + Offset of the byte in the internal record data array. + Value of bit. + Bit position in the byte. + + If bitPos is less than zero or more than 7. + + + + + Sets one bit in specified uint. + + Offset of the byte in the internal record data array. + Value of bit. + Bit position in the byte. + + If bitPos is less than zero or more than 7. + + + + + Return size in bytes for string with 16-bit length field. + + String to measure. + Indicates whether string should be compressed or not. + Size in bytes for string with 16-bit length field. + + + + Clears data. + + + + + Compares two Biff records. + + Biff record that should be compared with this Biff record. + True if this instance and extFormat contain the same data. + + + + Copies data from the current Biff record to the specified Biff record. + + Biff record that will receive data from the current record. + + When this record and parameter have different types. + + + + + Checked typeCode. + + TypeCode to check. + + + + + + + + + + + + + + + + + + + + + + + Sets record code. + + Code to set. + + + + Clone current Record. + + Returns memberwise clone on current object. + + + + Combines several byte arrays into one. + + Length of combined array. + List that contains byte arrays to combine. + Combined array. + + + + + + + + + + + + + + Copies string data into array of bytes without string length field. + + Destination array. + Offset to the string. + Value of the string. + Size of the string in bytes. + + + + Sets string in internal record data array using SetBytes method. + The String length is saved in two bytes + + Destination array. + Offset to the string. + Value of the string. + + + + Returns value of the single bit from byte. + + Byte to get bit value from. + Bit index. + Value of the single bit from byte. + + + + Returns value of the single bit from byte. + + Int16 to get bit value from. + Bit index. + Value of the single bit from byte. + + + + Returns value of the single bit from byte. + + UInt16 to get bit value from. + Bit index. + Value of the single bit from byte. + + + + Returns value of the single bit from byte. + + Byte to get bit value from. + Bit index. + Value of the single bit from byte. + + + + Returns value of the single bit from UInt32. + + UInt32 to get bit value from. + Bit index. + Value of the single bit from byte. + + + + Sets one bit in specified Int32. + + Int32 to set bit. + Bit position in the byte + Value of bit + + If bitPos is less than zero or more than 7 + + Value after + + + + Reads data array from another data array. + + Source array. + Source offset. + Destination array. + Updated source offset. + + + + Read-only. Will get record type if known; + otherwise it will get TBIFFRecord.Unknown. + + + + + Read-only. Returns integer value which is the unique identifier + of Biff record. + + + + + Gets / sets length of internal data array. + + + + + Read-only. Returns record data. + + + + + If True, the array will automatically grow when the offset limit + is reached. This is required when the real record size is not known for an + Infill operation. Will throw exception on buffer offset overrun + when set to False. Default value is False. + + + + + Indicates record position in stream. This is a utility member of class and + is used only in the serialization process. Does not influence the data. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Maximum memory size for internal buffer. + + + + + Indicates whether record needs to infill internal data array. + + + + + Indicates whether record needs internal data array + or if it can be cleaned. Read-only. + + + + + Indicates whether record allows shorter data. Read-only. + + + + + Indicates whether record need decoding when file is encoded or not. Read-only. + + + + + Returns offset in the data array where encoded/decoded data should start. Read-only. + + + + + + + + + + Minimum size of the record. + + + + + + A bit that specifies whether the containing record specifies a range of cells. + It MUST be one of the following. + 0 - The containing record does not specify a range of cells. + 1 - The containing record specifies a range of cells. + + + + + A bit that specifies whether to alert the user of possible problems when saving the file. + + + + + Range of cells associated with the containing record. + + + + + Type of the conditional formatting: + + 01H = Compare with current cell value + (the comparison specified below is used) + + 02H = Evaluate a formula (condition is met + if formula evaluates to a value not equal to 0) + + 03H = Color scale + 04H = Data bar + 05H = Filter + 06H = Icon set + + + + + Comparison operator: + 00H = No comparison (only valid for formula type, see above) + 01H = Between + 02H = Not between + 03H = Equal + 04H = Not equal + 05H = Greater than + 06H = Less than + 07H = Greater or equal + 08H = Less or equal + + + + + Size of the formula data for first value or formula. + + + + + Size of the formula data for second value or formula + (sz2, used for second part of �Between� and �Not between� + comparison, this field is 0 for other comparisons). + + + + + Formula data for first value or formula (RPN token array without size field): + + + + + Formula data for second value or formula (RPN token array without size field): + + + + + + + + + + + + + + + An integer that specifies the length of the formula. + + + + + Formula data (RPN token array without size field): + + + + + + + + + + An integer that specifies the size of the structure in bytes. + If greater than zero, it MUST be the total byte count of dfxn and xfext. Otherwise it MUST be zero. + + + + + Size of the Extended Properties. + + + + + Set of properties applied to the XF format + + + + + A bit that specifies whether, when a cell fulfills the condition corresponding to this rule, + the lower priority conditional formatting rules that apply to this cell are evaluated. + + + + + An integer that specifies the priority of the rule. + Rules that apply to the same cell are evaluated in increasing order of ipriority. + + + + + An integer that specifies the template from which the rule was created. + + 0x0000 Cell value + 0x0001 Formula + 0x0002 Color scale formatting + 0x0003 Data bar formatting + 0x0004 Icon set formatting + 0x0005 Filter + 0x0007 Unique values + 0x0008 Contains text + 0x0009 Contains blanks + 0x000A Contains no blanks + 0x000B Contains errors + 0x000C Contains no errors + 0x000F Today + 0x0010 Tomorrow + 0x0011 Yesterday + 0x0012 Last 7 days + 0x0013 Last month + 0x0014 Next month + 0x0015 This week + 0x0016 Next week + 0x0017 Last week + 0x0018 This month + 0x0019 Above average + 0x001A Below Average + 0x001B Duplicate values + 0x001D Above or equal to average + 0x001E Below or equal to average + + + + + An integer that specifies the size of the rgbTemplate Parmeters field in bytes. + + + + + CFEx Default parameter. + + + + + Reserved. + + + + + DXFN structure. + + + + + CFEx filter template parameter. + + + + + CFEx Text template parameter. + + + + + CFEx Date template parameter. + + + + + CFEx Average template parameter. + + + + + Data bar. + + + + + Icon set. + + + + + Color scale. + + + + + Check whtether the record is parsed. + + + + + Default constructor + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Parse structure of template parameter. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Serves as a hash function for a particular type, suitable for use in + hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + An integer that specifies the template from which the rule was created. + + + + + Comparison operator: + 00H = No comparison (only valid for formula type, see above) + 01H = Between + 02H = Not between + 04H = Not equal + 05H = Greater than + 06H = Less than + 03H = Equal + 07H = Greater or equal + 08H = Less or equal + + + + + Size of the formula data for first value or formula. Read-only. + + + + + Size of the formula data for second value or formula + (sz2, used for second part of "Between" and "Not between" + comparison, this field is 0 for other comparisons). Read-only. + + + + + Parsed first formula string. + + + + + Parsed second formula string. + + + + + Returns bytes of the first formula. Read-only. + + + + + Returns bytes of the second formula. Read-only. + + + + + Parsed formula string. + + + + + Returns bytes of the formula. Read-only. + + + + + A bit that specifies whether, when a cell fulfills the condition corresponding to this rule, + the lower priority conditional formatting rules that apply to this cell are evaluated. + + + + + An integer that specifies the priority of the rule. + + + + + An integer that specifies the template from which the rule was created. + 0x0000 Cell value + 0x0001 Formula + 0x0002 Color scale formatting + 0x0003 Data bar formatting + 0x0004 Icon set formatting + 0x0005 Filter + 0x0007 Unique values + 0x0008 Contains text + 0x0009 Contains blanks + 0x000A Contains no blanks + 0x000B Contains errors + 0x000C Contains no errors + 0x000F Today + 0x0010 Tomorrow + 0x0011 Yesterday + 0x0012 Last 7 days + 0x0013 Last month + 0x0014 Next month + 0x0015 This week + 0x0016 Next week + 0x0017 Last week + 0x0018 This month + 0x0019 Above average + 0x001A Below Average + 0x001B Duplicate values + 0x001D Above or equal to average + 0x001E Below or equal to average + + + + + Color Scale implementation class. + + + + + Data var. + + + + + Icon set. + + + + + True if the record parsed. + + + + + CF12 Color Scale class. + + + + + CF12 Data bar class. + + + + + CF12 Icon set class. + + + + + CF12 Top10 class. + + + + + CF12 Above Average class. + + + + + Set of properties applied to the XF format. + + + + + Color scale. + + + + + Minimum size of the structure. + + + + + Undefined. + + + + + Interpolation point count. + + + + + Gradient point count. + + + + + Minimum or the maximum of the interpolation curve is used instead of the cell value. + + + + + Color scale formatting applies to the background of the cells. + + + + + clamp and background. + + + + + List of Conditional format interpolation curve. + + + + + List of Conditional format gradient curve. + + + + + Default constructor. + + + + + Copy color scale. + + + + + Parse structure of template parameter. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Calculate Num value. + + + + + Update criteria. + + + + + Convert Color object to unsigned integer. + + + + + Convert unsigned integer to Color object. + + + + + Convert ARGB to RGBA. + + + + + Convert ARGB to RGBA. + + + + + Interpolation curve. + + + + + Gradient Item. + + + + + Gets the Default Record Size + + + + + Gets the ColorScale + + + + + Data bar. + + + + + Minimum size of the structure. + + + + + Undefined. + + + + + Specifies whether the data bars are drawn starting from the right of the cell. + + + + + Specifies whether the numerical value of the cell appears in the cell along with the data bar. + + + + + Minimum percent length of data bar. + + + + + Maximum percent length of data bar. + + + + + Type of color. + + + + + Color value. + + + + + Tint and shade. + + + + + CFVO structure. + + + + + CFVO structure. + + + + + Default constructor. + + + + + Copy data bar. + + + + + Convert ARGB to RGBA. + + + + + Parse structure of template parameter. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Convert Color object to unsigned integer. + + + + + Convert unsigned integer to Color object. + + + + + Convert ARGB to RGBA. + + + + + Type of color. + + + + + Color value. + + + + + Tint and shade. + + + + + Min CFVO. + + + + + Max CFVO. + + + + + Data bar implementation class. + + + + + Icon set. + + + + + Minimum size of the structure. + + + + + Undefined. + + + + + Specifies the number of items in the icon set.. + + + + + integer that specifies the icon set that represents the cell values. + + + + + Specifies whether only the icon will be displayed in the sheet and that the cell value will be hidden. + + + + + specifies whether the order of the icons in the set is reversed. + + + + + List of CF icon MultiState. + + + + + Default constructor. + + + + + Copy IconSet. + + + + + Parse structure of template parameter. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Calucate IsIconOnly and reverse order byte. + + + + + Size of the required storage space. Read-only. + + + + + Update Icon Set from IIconSet. + + + + + Update criteria. + + + + + Specifies the icon set that represents the cell values. + + + + + List of CF icon MultiState. + + + + + Default minimum structure size. + + + + + Data bar implementation class. + + + + + Conditional Formatting Value Object (CFVO). + + + + + Minimum size of the structure. + + + + + Specifies how the CFVO value is determined. + + + + + Specifies length of the formula. + + + + + Formula data (RPN token array without size field): + + + + + + + + + + Specifies a static value used to calculate the CFVO value. + + + + + Gets or sets the formula value in Ref3DPtg type. + + + + + Default constructor. + + + + + Parse structure of template parameter. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + CFVO type. + + + + + Size of the formula data. Read-only. + + + + + Parsed formula string. + + + + + Returns bytes of the formula. Read-only. + + + + + CFVO type. + + + + + CFVO value. + + + + + Gets or sets the formula value in Ref3DPtg type. + + + + + Specifies one control point in the interpolation curve. + + + + + Minimum size of the structure. + + + + + Specifies the numerical value of this control point. + + + + + CFVO. + + + + + Default constructor. + + + + + Parse structure of template parameter. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Specifies the numerical value of this control point. + + + + + CFVO. + + + + + Specifies one control point in the gradient curve. + + + + + The numerical value of the control point. + + + + + Type of color. + + + + + Color value. + + + + + Tint and shade. + + + + + Default constructor. + + + + + Parse structure of template parameter. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + The numerical value of the control point. + + + + + Type of color. + + + + + Color value. + + + + + Tint and shade. + + + + + Specifies the threshold value associated with an icon. + + + + + Minimum size of the structure. + + + + + cfvo. + + + + + Whether cell value equal to threshold. + + + + + Undefined. + + + + + Default constructor. + + + + + Parse structure of template parameter. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + CFVO. + + + + + Whether cell value equal to threshold. + + + + + The begin record defines the start of a block of records for a (Graphing) + data object. This record is matched with a corresponding EndRecord. + + + + + The begin record defines the start of a block of records for a (Graphing) + data object. This record is matched with a corresponding EndRecord. + + + + + Minimum size of the record. + + + + + Size of the fixed part. + + + + + Subitem size. + + + + + Need to redraw the conditional format ON status. + + + + + Need to redraw the conditional format OFF status. + + + + + Number of following CF records. + + + + + 1 = Conditionally formatted cells need recalculation or redraw. + + + + + Index of the record. + + + + + Cell range address of the range enclosing all + conditionally formatted ranges. + + + + + Number of conditionally formatted cells. + + + + + Cell range address list of all conditionally formatted ranges. + + + + + Check whether the rule parsed. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserves for record's internal data array iReserve bytes. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Extracts list of cells from the internal data array. + + Data provider to extract cell list from. + Position of the list in the internal data array. + + + + Size of the required storage space. Read-only. + + + + + Adds cell to the cells list. + + Cell to add to the list. + + + + Clone current record. + + Returns clone of the current object. + + + + Number of following CF records. + + + + + 1 = Conditionally formatted cells need recalculation or redraw. + + + + + Index of this record. + + + + + Cell range address of the range enclosing all + conditionally formatted ranges. + + + + + Number of conditionally formatted cells. Read-only. + + + + + Returns list with all conditionally formatted ranges. Read-only. + + + + + Read-only. Minimum possible size of the record. + + + + + Check whether the rule is parsed or not. + + + + + Minimum size of the record. + + + + + Size of the record If the record follow CF12. + + + + + CF12 record. + + + + + Header of this record. + + + + + Specifies whether the containing record specifies a range of cells. + + + + + Specifies whether to alert the user of possible problems when saving the file. + + + + + Cell range address of the range enclosing all + conditionally formatted ranges. + + + + + A boolean that specifies the type of rule this record extends. + Must be one of the following. + 0 - This record extends a rule specified by a CF record and MUST NOT be followed by a CF12 record. + 1 - This record extends a rule specified by a CF12 record and MUST be followed by the CF12 record it extends. + + + + + An integer that specifies which CondFMTRecord record is being extended. + + + + + An integer that specifies a zero based index of CF Record. + + + + + Comparison operator: + 00H = No comparison (only valid for formula type, see above) + 01H = Between + 02H = Not between + 03H = Equal + 04H = Not equal + 05H = Greater than + 06H = Less than + 07H = Greater or equal + 08H = Less or equal + + + + + An integer that specifies the template from which the rule was created. + 0x0000 Cell value + 0x0001 Formula + 0x0002 Color scale formatting + 0x0003 Data bar formatting + 0x0004 Icon set formatting + 0x0005 Filter + 0x0007 Unique values + 0x0008 Contains text + 0x0009 Contains blanks + 0x000A Contains no blanks + 0x000B Contains errors + 0x000C Contains no errors + 0x000F Today + 0x0010 Tomorrow + 0x0011 Yesterday + 0x0012 Last 7 days + 0x0013 Last month + 0x0014 Next month + 0x0015 This week + 0x0016 Next week + 0x0017 Last week + 0x0018 This month + 0x0019 Above average + 0x001A Below Average + 0x001B Duplicate values + 0x001D Above or equal to average + 0x001E Below or equal to average + + + + + An integer that specifies the priority of the rule. + Rules that apply to the same cell are evaluated in increasing order of ipriority. + + + + + A byte that specify the active condition and stop Iftrue option. + + + + + A Boolean that specifies whether cell formatting data is part of this record extension. + Must be one of the following + 0 - No formatting data in this record extension. + 1 - Formatting data is part of this record extension. + + + + + An integer that specifies the size of the structure in bytes. + If greater than zero, it MUST be the total byte count of dfxn and xfext. Otherwise it MUST be zero. + + + + + Size of the Extended Properties. + + + + + Set of properties applied to the XF format + + + + + An integer that specifies the size of the rgbTemplate Parmeters field in bytes. + + + + + Reserved. + + + + + CFEx Default parameter. + + + + + DXFN Structure. + + + + + CFEx filter template parameter. + + + + + CFEx Text template parameter. + + + + + CFEx Date template parameter. + + + + + CFEx Average template parameter. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserves for record's internal data array iReserve bytes. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Parse structure of template parameter. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Serves as a hash function for a particular type, suitable for use in + hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + Clone current Record. + + Returns memberwise clone on current object. + + + + Cell range address of the range enclosing all + conditionally formatted ranges. + + + + + A boolean that specifies the type of rule this record extends. + + + + + An integer that specifies which CondFmt record is being extended. + + + + + An integer that specifies a zero based index of CF Record. + + + + + Comparison operator: + 00H = No comparison (only valid for formula type, see above) + 01H = Between + 02H = Not between + 04H = Not equal + 05H = Greater than + 06H = Less than + 03H = Equal + 07H = Greater or equal + 08H = Less or equal + + + + + An integer that specifies the template from which the rule was created. + 0x0000 Cell value + 0x0001 Formula + 0x0002 Color scale formatting + 0x0003 Data bar formatting + 0x0004 Icon set formatting + 0x0005 Filter + 0x0007 Unique values + 0x0008 Contains text + 0x0009 Contains blanks + 0x000A Contains no blanks + 0x000B Contains errors + 0x000C Contains no errors + 0x000F Today + 0x0010 Tomorrow + 0x0011 Yesterday + 0x0012 Last 7 days + 0x0013 Last month + 0x0014 Next month + 0x0015 This week + 0x0016 Next week + 0x0017 Last week + 0x0018 This month + 0x0019 Above average + 0x001A Below Average + 0x001B Duplicate values + 0x001D Above or equal to average + 0x001E Below or equal to average + + + + + An integer that specifies the priority of the rule. + + + + + A bit that specifies whether, when a cell fulfills the condition corresponding to this rule, + the lower priority conditional formatting rules that apply to this cell are evaluated. + + + + + A Boolean that specifies whether cell formatting data is part of this record extension. + + + + + An integer that specifies the size of the structure in bytes. + + + + + Properties count. + + + + + Set of properties applied to the XF format. + + + + + Read-only. Maximum possible size of the record. + + + + + Check whether the rule is parsed or not. + + + + + Gets/Sets CF12 record. + + + + + CF12 Top10 class. + + + + + CF12 Above Average class. + + + + + Represents CFEx Filter Parameter + + + + + Specifies whether the top or bottom items are displayed with the conditional formatting. + + + + + Specifies whether a percentage of the top or bottom items are displayed with the conditional formatting, + or whether a set number of the top or bottom items are displayed with the conditional formatting. + + + + + Specifies how many values are displayed with the conditional formatting. + + + + + Top10 implementation. + + + + + Initializes CFEx Filter Parameter + + + + + Copy Filter. + + + + + Clone current Record. + + Returns memberwise clone on current object. + + + + Serves as a hash function for a particular type, suitable for use in + hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Top or bottom items are displayed with rule. + + + + + Percentage of the top or bottom items are displayed with the rule. + + + + + Specifies how many values are displayed with the rule. + + + + + Top10 implementation. + + + + + CFEx Text Template Parameter + + + + + Specifies the type of text rule. + + + + + Initializes CFEx Template Parameter + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Type of text rule. + + + + + CFEx Date Template Parameter + + + + + Specifies the type of date comparison. + + + + + Initializes CFEx Date Template Parameter + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Type of date comparison operator. + + + + + CFEx Average Template Parameter + + + + + Specifies the number of standard deviations above or below the average for the rule. + + + + + Above Average implementation. + + + + + Initializes CFEx Average Template Parameter + + + + + Copy Average Template Parameters. + + Specifies the conditional formatting rule type. + + + + Clone current Record. + + Returns memberwise clone on current object. + + + + Serves as a hash function for a particular type, suitable for use in + hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Number of standard deviations of average. + + + + + Above Average implementation. + + + + + Represents DXFN + + + + + Size of the first block of reserved bytes in the font block. + + + + + Size of the second block of reserved bytes in the font block. + + + + + Size of the third block of reserved bytes in the font block. + + + + + Mask for font posture bit. + + + + + Mask for font cancellation (strikethrough) bit. + + + + + Mask for font style modification bit. + + + + + Mask for font cancellation modification bit. + + + + + Mask for left border line style bits. + + + + + Mask for right border line style bits. + + + + + Mask for top border line style bits. + + + + + Mask for bottom border line style bits. + + + + + Mask for left border color bits. + + + + + Mask for right border color bits. + + + + + Mask for top border color bits. + + + + + Mask for bottom border color bits. + + + + + Start bit of left border color bits. + + + + + Start bit of right border color bits. + + + + + Start bit of top border color bits. + + + + + Start bit of bottom border color bits. + + + + + Mask for fill pattern bits. + + + + + Mask for pattern color bits. + + + + + Mask for pattern backcolor bits. + + + + + Start bit of fill pattern bits. + + + + + Start bit of fill pattern back color bits. + + + + + Size of the font block. + + + + + Size of the border block. + + + + + Size of the pattern block. + + + + + Size of the number format block. + + + + + Default color index. + + + + + Option flags + + + + + Not used + + + + + False if left border style and color are modified. + + + + + False if right border style and color are modified. + + + + + False if top border style and color are modified. + + + + + False if bottom border style and color are modified. + + + + + False if pattern style is modified. + + + + + False if pattern color is modified. + + + + + False if pattern background color is modified. + + + + + False if the number format is modified. + + + + + True if record contains number format. + + + + + True if record contains font formatting block. + + + + + True if record contains border formatting block. + + + + + True if record contains pattern formatting block. + + + + + True if record contains the user defined number format. + + + + + Font height. + + + + + Font options. + + + + + Font weight (100-1000, only if font - style = 0). + Standard values are 0190H (400) for normal text + and 02BCH (700) for bold text. + + + + + Escapement type (only if font - esc = 0): + 0000H = None; 0001H = Superscript; 0002H = Subscript + + + + + Underline type (only if font - underl = 0): + 00H = None + 01H = Single + 02H = Double + 21H = Single accounting + 22H = Double accounting + + + + + Font color index or FFFFFFFFH to preserve the cell font color: + + + + + Option flags for modified font attributes: + + + + + 0 = Escapement type modified + + + + + 0 = Underline type modified: + + + + + Border line styles: + + + + + Border line colour indexes: + + + + + Fill pattern style: + + + + + Fill pattern color indexes: + + + + + Unused + + + + + Unsigned integer that specifies the identifier of the number format. + + + + + Unsigned integer that specifies the size of the user defined number format. + + + + + Unsigned integer that specifies character count of the number format string. + + + + + Boolean that specifies whether the characters are in double byte character or not. + + + + + Number format string value. + + + + + Constructor. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Parses font block if it is present in the conditional format. + + Object that provides access to the data. + + Offset to the font block data in the internal data array. + + + + + Parses border block if it is present in the conditional format. + + Object that provides access to the data. + + Offset to the border block data in the internal data array. + + + + + Parses pattern block if it is present in the conditional format. + + Object that provides access to the data. + + Offset to the pattern block data in the internal data array. + + + + + Parses number format block if it is present in the conditional format. + + Object that provides access to the data. + + Offset to the number format block data in the internal data array. + + + + + Parses user defined number format block if it is present in the conditional format. + + Object that provides access to the data. + + Offset to the number format block data in the internal data array. + + + + + Writes font block into internal data array + if it is present in the conditional format. + + Object that provides access to the data. + + Offset where font block should be written. + + + + + Writes border block into internal data array + if it is present in the conditional format. + + Object that provides access to the data. + + Offset where border block should be written. + + + + + Writes pattern block into internal data array + if it is present in the conditional format. + + Object that provides access to the data. + + Offset where pattern block should be written. + + + + + Writes number format block into internal data array + if it is present in the conditional format. + + Object that provides access to the data. + + Offset where number format block should be written. + + + + + Writes number format block into internal data array + if it is present in the conditional format. + + Object that provides access to the data. + + Offset where number format block should be written. + + + + + Size of the required storage space. Read-only. + + + + + Serves as a hash function for a particular type, suitable for use in + hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + Size of the record. + + + + + Specifies the future record. + + + + + Specifies the zoom value in percentage for layout view. + + + + + Specifies whether sheet is in page layout view. + + + + + Specifies whether application displays 'Ruler' + + + + + Specifies whether the margins between pages are hidden in the Page Layout view. + + + + + Default constructor + + + + + Parse the pagelayout view. + + + + + Serialize the page layout view. + + + + + Size of the required storage space. Read-only. + + + + + Specified the zoom value in percentage for layout view. + + + + + Secifies whether sheet is in page layout view. + + + + + Specifies whether the margins between pages are hidden in the Page Layout view. + + + + + Specifies whether application displays 'Ruler' + + + + + This record specifies the plot area layout information for attached label + + + + + Correct record size. + + + + + Specifies the future record type header + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + If the checksum is incorrect, the layout information specified in this record must be ignored + + + + + + A boolean value indicating whether the inner plot area is the layout target. + + + + + Gets or sets xTL value + + + + + Gets or sets yTL value + + + + + Gets or sets xBR value + + + + + Gets or sets yBR value + + + + + Gets or sets WX Layout Mode + + + + + Gets or sets WY Layout Mode + + + + + Gets or sets WWidth Layout Mode + + + + + Gets or sets WHeight Layout Mode + + + + + Gets or sets the value of X + + + + + Gets or sets the value of Y + + + + + Gets or sets the value of Dx + + + + + Gets or sets the value of Dy + + + + + This record specifies the layout information for attached label + + + + + Correct record size. + + + + + Specifies the future record type header + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + If the checksum is incorrect, the layout information specified in this record must be ignored + + + + + + Gets or sets WX Layout Mode + + + + + Gets or sets WY Layout Mode + + + + + Gets or sets WWidth Layout Mode + + + + + Gets or sets WHeight Layout Mode + + + + + Gets or sets X value + + + + + Gets or sets Y value + + + + + Gets or sets Dx value + + + + + Gets or sets Dy value + + + + + Specifies the automatic layout type of the legend. + Used to only to store the information on parsed document + + + + + Specifies the Header structure of this record + + + + + Specifies wheather the workbook checks the Compability of earlier version + + + + + Specifies wheather the workbook checks the Compability of earlier version + + + + + The begin record defines the start of a block of records for a (Graphing) + data object. This record is matched with a corresponding EndRecord. + + + + + Minimum size of the record. + + + + + Subitem size. + + + + + Need to redraw the conditional format ON status. + + + + + Need to redraw the conditional format OFF status. + + + + + Future Header + + + + + Future header attribute. + + + + + Cell range address of the range enclosing all + conditionally formatted ranges. + + + + + Number of following CF12 records. + + + + + 1 = Conditionally formatted cells need recalculation or redraw. + + + + + Index of condFMT12 record + + + + + Number of conditionally formatted cells. + + + + + Cell range address list of all conditionally formatted ranges. + + + + + Check whether the rule parsed. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserves for record's internal data array iReserve bytes. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Extracts list of cells from the internal data array. + + Data provider to extract cell list from. + Position of the list in the internal data array. + + + + Size of the required storage space. Read-only. + + + + + Adds cell to the cells list. + + Cell to add to the list. + + + + Clone current record. + + Returns clone of the current object. + + + + Number of following CF12 records. + + + + + 1 = Conditionally formatted cells need recalculation or redraw. + + + + + Index of the record. + + + + + Bounds of the set of cells to which the rules are applied. + + + + + Number of conditionally formatted cells. Read-only. + + + + + Returns list with all conditionally formatted ranges. Read-only. + + + + + Check whether the rule is parsed or not. + + + + + Specifies the default width for columns that have no specific width set. + + + + + Correct size of the record. + + + + + Column width in characters, using the width of the zero character + with default font (first font record in the file). + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Column width in characters, using the width of the zero character + with default font (first font record in the file). + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record specifies the number of XF records contained in this file and that contains a checksum of the data in those records. + This record MUST exist if and only if there are XFExt records in the file. + + + + + Header of this record + + + + + Specifies the number of XF records + + + + + Specifies the Checksum of the record + This checksum is used to detect whether the XF records in the file were modified by an + application that does not support the formatting feature extensions in XFExt records. + + + + + current parent workbook + + + + + Default constructor + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Get the size + + + + + Serves as a hash function for a particular type, suitable for use + in hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + Clone current Record. + + Returns memberwise clone on current object. + + + + Specifies the number of XF records + + + + + CRC checksum + + + + + Represents Extended XF Record + + + + + Start length of Extended XF Record + + + + + Header of this record + + + + + Specifies the index of XF record which is extended + + + + + Property count + + + + + Set of properties applied to the XF format + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for the record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Initialize the variables + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Get the size + + + + + Serves as a hash function for a particular type, suitable for use + in hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + Compares with Extended XF format record. + + Param to compare. + Returns compare results. + + + + Copies data from the current Biff record to the specified Biff record. + + Biff record that will receive data from the current record. + + + + Copies data from the current ExtendedXF record to the specified + ExtendedXF record. + + ExtendedXF record that will receive data from + the current record. + + + + Clone current Record. + + Returns memberwise clone on current object. + + + + + + + + + Specifies the index of XF record which is extended + + + + + Properties count + + + + + Set of properties applied to the XF format + + + + + Represents Extended Property + + + + + Maximum tint value. + + + + + Type of the Extended property + + + + + Size of the Extended property + + + + + Type of the stored color. + + + + + Color value. + + + + + Tint and shade. + + + + + Reserved. + + + + + Font Scheme. + + + + + Text indentation level. + + + + + Gradient type. + + + + + Gradient angle. + + + + + Left coordinate of the inner rectangle. + + + + + Right coordinate of the inner rectangle. + + + + + Top coordinate of the inner rectangle. + + + + + Bottom coordinate of the inner rectangle. + + + + + No. of items in the gradstops. + + + + + Gradient color value. + + + + + Gradient position. + + + + + Gradient tint. + + + + + List of gradient stops. + + + + + Default constructor + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Parse Full Color + + + + + + + + + Serialize Full Color + + + + + + + + + Parse the gradient. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + Serialize the gradient. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Type of the Extended property + + + + + Size of the color Record + + + + + Color type + + + + + Color value + + + + + Tint value + + + + + Reserved must be ignored. + + + + + Font Sheme. + + + + + Text Indentation level. + + + + + Set of gradstops. + + + + + Represenst Gradient Stops + + + + + Type of the stored color. + + + + + Gradient color value. + + + + + Gradient position. + + + + + Gradient tint. + + + + + Default constructor + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + This structure specifies a future record type header. + + + + + Type of the following data: + + + + + Option Attribute Flags + + + + + Type of the following data: + + + + + Describes single pivot field group in the pivot table. + + + + + Represents the pivot field group in pivot field. + + + + + + Gets or sets the start date for pivot field grouping. + + The following code illustrates how to get pivot field group and use it for date time grouping. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Input.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:C8"]); + + //Create "PivotTable1" with the cache at the specified range + IPivotTable pivotTable = worksheet.PivotTables.Add("PivotTable1", worksheet["A1"], cache); + + //Get the pivot group field from pivot field. + IPivotFieldGroup fieldGroup = pivotTable.Fields[0].FieldGroup; + + //Set the pivot field group start date. + fieldGroup.StartDate = new DateTime(2023,5,20); + + workbook.SaveAs("Output.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the end date for pivot field grouping. + + The following code illustrates how to get pivot field group and use it for date time grouping. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Input.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:C8"]); + + //Create "PivotTable1" with the cache at the specified range + IPivotTable pivotTable = worksheet.PivotTables.Add("PivotTable1", worksheet["A1"], cache); + + //Get the pivot group field from pivot field. + IPivotFieldGroup fieldGroup = pivotTable.Fields[0].FieldGroup; + + //Set the pivot field group end date. + fieldGroup.EndDate = new DateTime(2023,10,3); + + workbook.SaveAs("Output.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the grouping interval for pivot field group.This property only applicable for PivotFieldGroupType days. + + The following code illustrates how to get pivot field group and use it for date time grouping. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Input.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:C8"]); + + //Create "PivotTable1" with the cache at the specified range + IPivotTable pivotTable = worksheet.PivotTables.Add("PivotTable1", worksheet["A1"], cache); + + //Get the pivot group field from pivot field. + IPivotFieldGroup fieldGroup = pivotTable.Fields[0].FieldGroup; + + //To add date-time groups. + fieldGroup.GroupBy = PivotFieldGroupType.Days; + + //sets the group interval for days. Only when the field is grouped on days. + fieldGroup.GroupInterval = 3; + + workbook.SaveAs("Output.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Represents the PivotCacheFieldImpl Object + + + + + Represents the range grouping properties. + + + + + Represents the discrete range grouping properties. + + + + + Represents wheather the fieldGroup contains the date time + + + + + Represents wheather the fieldGroup contains the number + + + + + Specifies the parent index of this field + + + + + Represents wheather the fieldGroup contains the missing attribute + + + + + Represents the grouping is enabled or not. + + + + + Initializes new instance of pivot field group with the specified parent field index. + + Base field for the group. + Parent field index of the group. + + + + Initializes new instance of pivot field group. + + Base field for the group. + + + + Add values into pivot range group names + + + + + + Fills the discrete group with the specified property indexes and group names. + + Field indexes. + Field group names. + + + + Groups the pivot field on the specified group type. + + + + + + Adds a new cache field and creates a field group of the specified grouping type. + + The pivot cache to add the field to. + The cache field to be added. + The pivot cache field associated with the new cache field. + The grouping type for the new cache field. + A list of items to associate with the new cache field. + The newly created cache field object with the specified pivot field grouping type. + + + + Creates a new pivot cache field with the specified grouping type and updates the PivotItemOptions for associated items. + + The pivot table to which the field is added. + The pivot cache field to create or modify. + The grouping type for the field. + A list of items to associate with the field. + The PivotItemOptions to apply to the items. + + + + Adds a cache field to the pivot field list based on the axis type of the parent field and updated the field orders. + + The pivot table where the field is being added. + The cache field to be added. + The pivot item options associated with the cache field. + The list of pivot field group types. + The index at which the field should be added. + The number of items to add for the cache field. + + + + Reorders related date-time field groups for a specific cache field within a pivot table's axes. + + The pivot table in which the reordering is performed. + The index of the cache field requiring reordering. + + + + Checks whether the list contains any pivot field group type greater than the specified group type. + + The list of pivot field group types to check. + The pivot field group type to compare against. + True if there is a pivot field group type in the list greater than the specified group type; otherwise, false. + + + + Removes specified date time grouping from the field group type. + + The pivot field group type from which specific time intervals will be removed. + + + + Checks if the specified grouping type should be removed from the field list or removed from the PivotCacheField and updates it accordingly. + + The pivot table where the operation is performed. + A dictionary containing field indices and their associated grouping types. + The grouping type to be checked and potentially removed. + The index of the cache field. + The index of the field to be removed. + A boolean indicating whether to order the elements. + + + + Removes a specific grouping field from the pivot table's field list and associated data structures. + + The pivot table from which the field is removed. + The grouping type of the field to be removed. + A dictionary containing field indices and their associated grouping types. + The index of the cache field. + The index of the last field to be removed. + + + + Gets or sets the grouping is enabled or not. + + + + + Gets or sets the index of the parent field. + + + + + Represents the index of the PivotCacheField. Read-only. + + + + + Gets or sets the base of this field. + + + + + Gets the collection of range grouping properties. Read-only. + + + + + Gets or sets the start date for pivot field grouping. + + + + + Gets or sets the end date for pivot field grouping. + + + + + Gets or sets the order of the first pivot field item in the pivot field group. + + + + + Gets or sets the order of the last pivot field item in the pivot field group. + + + + + Gets or sets the pivot field group type for the pivot field group. + + + + + Gets or sets the grouping interval for pivot field group. + + + + + Gets the collection of pivot range group names in the field group. Read-only. + + + + + Gets the collection of pivot discrete group names in the field group. Read-only. + + + + + Gets or sets the collection of items indexes in a field group. + + + + + True if the field group is a Dircrete group. False otherwise. Read-only. + + + + + Gets or set a Boolean value that indicates whether the application uses the source data to + set the ending range value. + + + + + Gets or sets a Boolean value that indicates whether we use source data to set the beginning + range value. + + + + + Gets or sets a Boolean value indicating wheather the fieldGroup contains the date time. + + + + + Gets or sets a Boolean value indicating wheather the fieldGroup contains number. + + + + + Gets or sets a Boolean value indicating wheather the fieldGroup contains missing attribute. + + + + + Represents the Grouping of Field with the range + + + + + Represents the collection of items in a field group. + + + + + Specifies a boolean value that indicates whether the application uses the source data to + set the ending range value. + + + + + Specifies a boolean value that indicates whether we use source data to set the beginning + range value. + + + + + Specifies the ending value for date grouping if autoEnd is false. + + + + + Specifies the ending value for numeric grouping if autoEnd is false. + + + + + Specifies the grouping the field item by + + + + + Specifies the grouping interval for numeric range grouping. Specifies the number of days + to group by in date range grouping. + + + + + Specifies the starting value for date grouping if autoStart is false. + + + + + Specifies the starting value for numeric grouping if autoStart is false. + + + + + Represents the collection of items in a field group. + + + + + Specifies a boolean value that indicates whether the application uses the source data to + set the ending range value. + + + + + Specifies a boolean value that indicates whether we use source data to set the beginning + range value. + + + + + Specifies the ending value for date grouping if autoEnd is false. + + + + + Specifies the ending value for numeric grouping if autoEnd is false. + + + + + Specifies the grouping the field item by + + + + + Specifies the grouping interval for numeric range grouping. Specifies the number of days + to group by in date range grouping. + + + + + Specifies the starting value for date grouping if autoStart is false. + + + + + Specifies the starting value for numeric grouping if autoStart is false. + + + + + Represents the collection of items in a field group. + + + + + Represents the collection of item indexes + + + + + Represents the collection of items in a field group. + + + + + Represents the collection of item indexes + + + + + Represents pivot area. + + + + + The region of the PivotTable to which this rule applies. + + + + + Flag indicating whether any indexes refer to fields or items in the Pivot cache and not the + view. + + + + + Flag indicating whether any indexes refer to fields or items in the Pivot cache and not the + view. + + + + + Flag indicating whether only the data values (in the data area of the view) for an item + selection are selected and does not include the item labels. + + + + + Index of the field that this selection rule refers to. + + + + + Position of the field within the axis to which this rule applies. + + + + + Flag indicating whether the column grand total is included. + + + + + Flag indicating whether the row grand total is included. + + + + + Flag indicating whether only the item labels for an item selection are selected and does + not include the data values (in the data area of the view). + + + + + A Reference that specifies a subset of the selection area. Points are relative to the top + left of the selection area. + + + + + Flag indicating whether the rule refers to an area that is in outline mode. + + + + + Indicates the type of selection rule. + + + + + Pivot Area references + + + + + Flag indicating whether the pivotArea is added for sorting. + + + + + Flag indicating whether the collapsed levels are subtotals in the pivot area. + + + + + Represent pivot area range address + + + + + Represent internal reference collection + + + + + Represents the parent pivot table. + + + + + Initializes the PivotArea + + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + Gets or sets the region of the PivotTable to which this rule applies. + + + + + Gets or sets a flag indicating whether any indexes refer to fields or items in the Pivot cache and not the + view. + + + + + Gets or sets a flag indicating whether any indexes refer to fields or items in the Pivot cache and not the + view. + + + + + Gets or sets a flag indicating whether only the data values (in the data area of the view) for an item + selection are selected and does not include the item labels. + + + + + Gets or sets the index of the field that this selection rule refers to. + + + + + Gets or sets the position of the field within the axis to which this rule applies. + + + + + Gets or sets a flag indicating whether the column grand total is included. + + + + + Gets or sets a flag indicating whether the row grand total is included. + + + + + Gets or sets a flag indicating whether only the item labels for an item selection are selected and does + not include the data values (in the data area of the view). + + + + + + Gets or sets a flag indicating whether the rule refers to an area that is in outline mode. + + + + + Gets or sets the type of the selection rule. + + + + + Pivot Area references + + + + + First Index of the Reference + + + + + Flag indicating whether the pivotArea is added for sorting. + + + + + Flag indicating whether the collapsed levels are subtotals in the pivot area. + + + + + Represent pivot area range address + + + + + Represent internal reference collection + + + + + Represents the parent pivot table. + + + + + Represents a set of selected fields and selected items within those fields + + + + + Represents the Subtotal type + + + + + Specifies a boolean value that indicates whether the item is referred to by position rather + than item index. + + + + + Specifies the number of item indexes in the collection of indexes + + + + + Specifies the index of the field to which this filter refers. A value of -2 indicates the 'data' + field. + + + + + Specifies a boolean value that indicates whether the item is referred to by a relative + reference rather than an absolute reference + + + + + Specifies a boolean value that indicates whether this field has selection. This attribute is + used when the PivotTable is in Outline view. + + + + + Represents the indexes of the selected fileds + + + + + Specifies a boolean value that indicates whether this field has subtotal. + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + Check whether two list values are eqaul or not. + + + + + + + + Represents the Subtotal type + + + + + Specifies a boolean value that indicates whether the item is referred to by position rather + than item index. + + + + + Specifies the number of item indexes in the collection of indexes + + + + + Specifies the index of the field to which this filter refers. A value of -2 indicates the 'data' + field. + + + + + Specifies a boolean value that indicates whether the item is referred to by a relative + reference rather than an absolute reference + + + + + Specifies a boolean value that indicates whether this field has selection. This attribute is + used when the PivotTable is in Outline view. + + + + + Represents the indexes of the selected fileds + + + + + First index in the indexes + + + + + Specifies a boolean value that indicates whether this field has subtotal. + + + + + Represents the conditional formatting defined in the PivotTable. + + + + + Specifies the priority of PivotTable conditional formatting rule + + + + + Specifies the scope of PivotTable conditional formatting rule. + + + + + This simple type defines the values for the Top N conditional formatting evaluation for the PivotTable + + + + + Area in which the conditional format applied + + + + + Represents a single item in PivotTable field. + + + + + Specifies boolean value that indicates whether the pivotItemOptions properties has true, defulat false. + + + + + Specifies a boolean value that indicates whether the approximate number of child items + for this item is greater than zero. + + + + + Specifies a boolean value that indicates whether this item has been expanded in the + PivotTable view. + + + + + Specifies a boolean value that indicates whether attribute hierarchies nested next to + each other on a PivotTable row or column will offer drilling "across" each other or not + + + + + Specifies a boolean value that indicates whether this item is a calculated member + + + + + Specifies a boolean value that indicates whether the item is hidden. + + + + + Specifies a boolean value that indicate whether the item has a missing value. + + + + + Specifies the user caption of the item. + + + + + Specifies a boolean value that indicates whether the item has a character value. + + + + + Specifies a boolean value that indicates whether the details are hidden for this item. + + + + + Specifies the type of the item. Value of 'default' indicates a grand total as the last row + item value + + + + + Initializes the pivot item options + + + + + Gets and sets a boolean value that indicates whether the pivotItemOptions properties has true, defulat false. + + + + + Gets or sets a Boolean value that indicates whether the pivot filed item has child items. + + + + + Gets or sets a Boolean value indicating whether this item is expanded in the + PivotTable view. + + + + + Gets or sets a Boolean value that indicates whether attribute hierarchies nested next to + each other on a PivotTable row or column will offer drilling "across" each other or not. + + + + + Gets or sets a Boolean value indicating whether this item is a calculated item. + + + + + True if the item is hidden. False Otherwise. + + + + + True if the item has a missing value. False otherwise. + + + + + Gets or sets the user caption of the item. + + + + + True if the item has a character value. False Otherwise. + + + + + Gets or sets a Boolean value that indicates whether the details for this item are hidden. + + + + + Gets or sets the type of the item. Value of 'default' indicates a grand total as the last row + item value. + + + + + This class is repsonsible for parse pivot cache part + + + + + Default regular expression options. + + + + + Parse pivot cache definition. + + XmlReader to parse from + Cache to parse. + Current workbook. + path of the parent + Relation id to the pivot cache records. + + + + Creates the Cache Record Reader from the relation part + + corresponding pivot cache record id + parent path + workbook of the pivot cache + relations collection of the pivot cache records + XmlReader of the Pivot cache record + + + + Parse cache source. + + XmlReader to Parse from. + Cache to parse. + Parent book of the cache + relation collection of the cache source + + + + Parsing the consolidation source of the pivottable + + + + + + + + + Parses the pivot cache worksheet source + + XmlReader for parse + cache to preserve the data + parent book of the cache + relation collection of the worksheet source + + + + Gets the table named range matching the given string. + + The string to be searched in table named ranges. + The table containg the named ranges. + The workbook object. + The table named range that matches with given string. + + + + Parses the pivot cache external worksheet source + + XmlReader for parse + cache to preserve the data + parent book of the cache + relation collection of the worksheet source + + + + Parse cache fields. + + XmlReader to parse from. + Fields collection. + + + + Parse cache Cache Field. + + XmlReader to parse from. + Field to serialize. + + + + Parse the Pivot Cache Field values + + XmlReader to parse from. + Field to Pares shared items + + + + Parse pivot cache definition. + + XmlReader to parse from. + Cache to Parse. + + + + Parse Cache Record Rows + + XmlReader to parse + cache to parse + Rows Count + + + + Parse cache single row from the records + + XmlReader to parse + cache to parse the records + current row index to parse + parsed row records + + + + Rule describing a PivotTable selection. + + XmlReader to parse + Pivot Area to parse + + + + Parsses the Pivot Area selection reference + + Xml Readers to read tags + pivot area to parse References + + + + Get internal reference from parent. + + Parent internal reference. + Reference count. + Collection of internal reference list. + + + + Get internal reference from parent. + + Parent internal reference. + Collection of internal reference. + + + + Parse Pivot Area Reference + + Xml Reader to read tags + Pivot Area reference + + + + Parse the pivot cache extension + + Xml Reader to read tags. + Pivot cache to parse. + + + + Parse Pivot cache hiearachy + + Xml Reader to read tags. + Pivot cache to parse. + + + + Parse Pivot Key Performance Indicators (KPIs) defined in the OLAP. + + Xml Reader to read tags. + Pivot cache to parse. + + + + Parse PivotTable OLAP dimension collection. + + Xml Reader to read tags. + Pivot cache to parse. + + + + Parses the PivotTable OLAP measure group - Dimension maps + + Xml Reader to read tags. + Pivot cache to parse. + + + + Parses the PivotTable OLAP Dimension maps. + + Xml Reader to read tags. + Pivot cache to parse. + + + + Moves to attribute and parse int attribute + + XmlReader to parse from + attribute name to parse + parsed int value + + + + Moves to attribute and parse int attribute + + XmlReader to parse from + attribute name to parse + parsed int value + + + + Moves to attribute and parse bool value + + XmlReader to parse from + attribute to parse + bool value + + + + Moves to attribute and parse bool value + + XmlReader to parse from + attribute to parse + bool value + + + + Moves to attribute and parse string value + + XmlReader to parse from + attribute to parse + string value + + + + This class is repsonsible for parse hte pivot table part + + + + + Index of the data m_bRefreshOnLoad. + + + + + Parse Extern List of Pivot table Definition + + Xml reader to extract from. + + + + + Parse Extension of Pivot table Definition + + Xml reader to extract from + + + + + + Parse chart formats of the pivot chart that is associated with this PivotTable. + + Xml reader to extract from. + + + + + Parse the Pivot custom formats styles. + + + + + Parse the dxfs styles to store list. + + Return file data holder, used for parse the dxfs collection + + + + Parse pivot custom formats collection. + + Xml reader to extract from. + >PivotTable to serialize pivot custom formats for. + List of dxf in the workbook. + + + + Parse pivot custom format. + + Xml reader to extract from. + >PivotTable to serialize pivot custom formats for. + >Dxf id to be extracted. + + + + Parsing pivot filters of pivot tables + + + + + + + Parsing pivot filter of filter collections + + + + + + + Parsing autofilter of pivot table + + + + + + + Parsing filter column filter of pivot table filter + + + + + + + Parsing custom filter type of pivot table. + + + + + + + Parsing custom filter of custom filter collection of pivot filter. + + + + + + + Parsing filter column filter of pivot filter + + + + + + + Parsing Top 10 filter of pivot filter. + + + + + + + Parse dynamic filter. + + Reader to get data from. + Dynamic filter collection to put data into. + + + + Serializes pivot table location. + + XmlWriter to serialize location into. + Pivot table to serialize location for. + + + + Parse pivot fields. + + XmlReader to Parse fields from. + Pivot table to serialize fields for. + + + + Serializes single pivot m_bRefreshOnLoad. + + XmlWriter to serialize pivot m_bRefreshOnLoad into. + Field to serialize. + + + + Parse the extension list in pivot field + + XmlReader to parse from. + pivot field object. + + + + Parse the extension in the pivot field extension list. + + XmlReader to parse from. + pivot field object. + + + + Parse the attributes in the pivot field's extension + + XmlReader to parse from. + pivot field object. + + + + Parse the Sorting scope of the pivot field + + XmlReader to parse from. + pivot field object. + + + + Serializes subtotal value. + + XmlWriter to serialize into. + Subtotal type to serialize. + + + + Serializes data fields. + + XmlWriter to serialize fields into. + PivotTable to serialize data fields for. + + + + Parses the data Field of the pivot table + + XmlWriter to serialize data m_bRefreshOnLoad into. + Field to serialize. + + + + Parses the condition formats of the pivot table. + + XmlReader to parses from. + extract the pivot table . + + + + Parses the OLAP hierarchies associated with the PivotTable. + + XmlReader to parses from. + extract the pivot table . + + + + Parses references to OLAP hierarchies on the row axis of a PivotTable. + + XmlReader to parses from. + extract the pivot table . + + + + Parses references to OLAP hierarchies on the column axis of a PivotTable. + + XmlReader to parses from. + extract the pivot table . + + + + This class represents value-index pair and used to sort pivot m_bRefreshOnLoad values. + + + + + This structure specifies the clipboard format of the picture-type. + + + + + Base class for all obj subrecords. + + + + + Size of the header data. + + + + + Type of the subrecord. + + + + + Length of the subrecord's data. + + + + + Private constructor. To prevent creation without parameters. + + + + + Initializes new instance. + + Type of the subrecord. + + + + Initializes new instance. + + Type of the subrecord. + Length of the subrecord's data. + Array that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Serializes record's data. + + Provider to serialize into. + Offset to start serialization from. + + + + Size of the required storage space. Read-only. + + + + + Clones current objects. + + Returns instance of cloned object. + + + + Type of the subrecord. + + + + + Length of the subrecord's data. + + + + + Correct record size. + + + + + Represents the windows clipboard format of the data associated with the picture. + + + + + Internal data array. + + + + + Initializes new instance of subrecord. + + Type of the subrecord. + Length of the subrecord's data. + Buffer that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Clones current objects. + + + Returns instance of cloned object. + + + + + Size of the required storage space. Read-only. + + + + + Represents the windows clipboard format of the data associated with the picture. + + + + + ActiveX control Structure. + + + + + Correct record size. + + + + + Indicates whether this control is an ActiveX control. + + + + + Internal data array. + + + + + Initializes new instance of subrecord. + + Type of the subrecord. + Length of the subrecord's data. + Buffer that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Clones current objects. + + Returns instance of cloned object. + + + + Size of the required storage space. Read-only. + + + + + Indicates whether this control is an ActiveX control. + + + + + Vba project class + + + + + Vba Project constuctor. + + Parent + + + + Constructor + + Parent + Vba project root storage + + + + Parses the Vba Storage + + Vba storage + + + + Parse dir stream + + Vba root storage + + + + Parse Module Stream + + + + + + Parse Project stream + + Vba root storage + + + + Parses the designer module. + + Vba root storage + + + + Saves the Vba project into compound storage + + Vba root storage + + + + Serializes Vba project + + Vba root storage + + + + Creates Vba Project stream + + Root storage + + + + Creates Dir stream + + + + + Creates module stream + + + + + Creates project stream. + + Root storage + + + + Creates project wm stream + + Root storage + + + + Serialize designer storages. + + Root storage + + + + Specifies the Parent for the Vba project + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to 0 #825600;8520f #ffa800;18350f #825600;28180f #ffa800;38011f #825600;47186f #ffa800;57016f #825600;1 #ffa800. + + + + + Looks up a localized string similar to 0 #ccf;11796f #9cf;23593f #96f;39977f #c9f;53740f #9cf;1 #ccf. + + + + + Looks up a localized string similar to 0 white;10486f #1f1f1f;11796f white;27525f #636363;34734f #cfcfcf;43254f #cfcfcf;49807f #1f1f1f;51773f white;1 #7f7f7f. + + + + + Looks up a localized string similar to 0 #cbcbcb;8520f #5f5f5f;13763f #5f5f5f;41288f white;43909f #b2b2b2;45220f #292929;53740f #777;1 #eaeaea. + + + + + Looks up a localized string similar to 0 #5e9eff;26214f #85c2ff;45875f #c4d6eb;1 #ffebfa. + + + + + Looks up a localized string similar to 0 #fc9fcb;8520f #f8b049;13763f #f8b049;41288f #fee7f2;43909f #f952a0;45220f #c50849;53740f #b43e85;1 #f8b049. + + + + + Looks up a localized string similar to 0 #000082;19661f #66008f;42598f #ba0066;58982f red;1 #ff8200. + + + + + Looks up a localized string similar to 0 #fff200;29491f #ff7a00;45875f #ff0300;1 #4d0808. + + + + + Looks up a localized string similar to 0 #8488c4;34734f #d4deff;54395f #d4deff;1 #96ab94. + + + + + Looks up a localized string similar to 0 #e6dcac;7864f #e6d78a;19661f #c7ac4c;29491f #e6d78a;50463f #c7ac4c;1 #e6dcac. + + + + + Looks up a localized string similar to 0 #fbe4ae;8520f #bd922a;13763f #bd922a;41288f #fbe4ae;43909f #bd922a;45220f #835e17;53740f #a28949;1 #fae3b7. + + + + + Looks up a localized string similar to 0 #dcebf5;5243f #83a7c3;8520f #768fb9;13763f #83a7c3;34079f white;36700f #9c6563;38011f #80302d;46531f #c0524e;61604f #ebdad4;1 #55261c. + + + + + Looks up a localized string similar to 0 black;13107f #000040;.5 #400040;.75 #8f0040;58982f #f27300;1 #ffbf00. + + + + + Looks up a localized string similar to 0 #d6b19c;19661f #d49e6c;45875f #a65528;1 #663012. + + + + + Looks up a localized string similar to 0 #ddebcf;.5 #9cb86e;1 #156b13. + + + + + Looks up a localized string similar to 0 black;26214f #0a128c;45875f #181cc7;57672f #7005d4;1 #8c3d91. + + + + + Looks up a localized string similar to 0 #03d4a8;.25 #21d6e0;.75 #0087e6;1 #005cbf. + + + + + Looks up a localized string similar to 0 #ffefd1;42598f #f0ebd5;1 #d1c39f. + + + + + Looks up a localized string similar to 0 #39f;10486f #0cc;30802f #99f;39322f #2e6792;46531f #33c;53084f #1170ff;1 #069. + + + + + Looks up a localized string similar to 0 #a603ab;13763f #0819fb;22938f #1a8d48;34079f yellow;47841f #ee3f17;57672f #e81766;1 #a603ab. + + + + + Looks up a localized string similar to 0 #f39;.25 #f63;.5 yellow;.75 #01a78f;1 #36f. + + + + + Looks up a localized string similar to 0 #000082;8520f #0047ff;18350f #000082;28180f #0047ff;38011f #000082;47186f #0047ff;57016f #000082;1 #0047ff. + + + + + Looks up a localized string similar to 0 white;4588f #e6e6e6;20972f #7d8496;30802f #e6e6e6;55706f #7d8496;1 #e6e6e6. + + + + + Looks up a localized string similar to 0 #fbeac7;11796f #fee7f2;23593f #fac77d;39977f #fba97d;53740f #fbd49c;1 #fee7f2. + + + + + FormulaInfo maintains information on a single formula object. + + + + + A property that gets/sets the text of the initial formula. + + + + + A property that gets/sets the last computed value of this formula. + + + + + A property that gets/sets the formula as a parsed string. + + + + + Event delegate for ExternalFormulaEventArgs event. + + The CalcEngine. + The for this event. + + + + The event args for the ExternalFormulaEventArgs event, which is raised whenever the CalcEngine calculate external reference formula. + + + + + Event delegate for ExternalFormulaEventArgs event. + + The CalcEngine. + The for this event. + + + + The event args for the ExternalFormulaEventArgs event, which is raised whenever the CalcEngine is trying to get external worksheet from external reference formula. + + + + + Event delegate for ExternalFormulaEventArgs event. + + The CalcEngine. + The for this event. + + + + The event args for the ExternalFormulaEventArgs event, which is raised whenever the CalcEngine is trying to get external named range address from external reference formula. + + + + + Event delegate for the FormulaParsing event + + + + + Used by the event, FormulaParsingEventArgs holds a reference + to the string that is to be parsed. The FormulaParsing event allows the listener to preprocess + the string that is being parsed. + + + Please note that this event may be raised more than once as a string is parsed. + + Here is code snippets that show how to tell a engine to also treat any text in a formula cell + that begins with a minus(-) or a plus(+) as formulas. The default behavior is to treat only text beginning + with equal(=) as formulas. + + //subscribe to the event before any formulas are loaded into the grid... + Engine.FormulaParsing += new FormulaParsingEventHandler(Engine_FormulaParsing); + + //Here is the handler code that adds an = if necessary so any string beginning with +, - or = + //is treated as a formula. + void Engine_FormulaParsing(object sender, FormulaParsingEventArgs e) + { + //allow cells starting with + and - to be treated as formula cells. + if (e.Text.StartsWith("-")) + e.Text = "=" + e.Text; + else if (e.Text.StartsWith("+")) + e.Text = "=" + e.Text.Substring(1); + } + + + + + + Holds a reference to the string that is to be parsed.. + + The formula that is to be parsed. + + + + Default constructor. + + + + + A property that gets/sets the formula about to be parsed. + + + + + Event delegate for UnknownFunction event. + + The CalcEngine. + The for this event. + + + + The event args for the UnknownFunction event which is raised whenever the CalcEngine encounters a function + that is does not know. + + + + + Gets the name of the unknown function. + + + + + Gets the location of the missing function. + + + + + Event delegate for UpdateNamedRange event. + + The CalcEngine. + The for this event. + + + + The event args for the UpdateNamedRange event, which is raised whenever the CalcEngine calculate the intersection range of two named range . + + + + + Represents the method that will handle FormulaComputed event. + + Source of this event. + An instance of that contains the event data. + + + + Represents a class which holds the properties of FormulaComputed event. + + + + + Initializes a new instance of the FormulaComputedEventArgs class. + + Currently calculated formula. + The CalculatedValue for the formula. + The currently calculating cell address. + Returns true if the currently calculating formula is interior formula;else false. + + + + Gets the currently calculated formula name. + + + + + Gets or sets the value for the calculated formula. + + + + + Gets the currently calculated formula's cell reference. + + + + + Gets the value whether the currently calculated formula is interior formula or not. + + Returns true if the currently calculated formula is interior formula;else false. + + + + Gets the value whether to handle the calculation of the formula. + + To handle the calculation of the formula. + + + + The CustomComparer class provides a mechanism for comparing two strings based on a custom comparison logic. + It implements the interface to allow sorting or ordering operations on collections + of strings using the specified comparison logic. + + + This class is particularly useful when you need to perform custom sorting or ordering of strings in a collection, + such as a list or array. The comparison logic is provided via a delegate, which + allows flexibility in defining how two strings should be compared. + + + + + Initializes a new instance of the class with the specified comparison logic. + + A delegate that defines the logic for comparing two strings. + + + + Compares two strings and returns a value indicating whether one is less than, equal to, or greater than the other. + + The first string to compare. + The second string to compare. + + A signed integer that indicates the relative values of and : + + Less than zero: is less than . + Zero: equals . + Greater than zero: is greater than . + + + + + + Encapsulates the properties that are needed to support multiple families of crossed-referenced grids. + This class is for internal use only. + + + + + Holds mapping from parent object to sheet token. + + + + + Holds mapping from sheet token to parent object. + + + + + Holds mapping from parent object to sheet name. + + + + + Holds mapping from sheet name to parent object. + + + + + A class that allows you to quickly add calculation support for controls on a form, or usercontrol. + + + To use CalcQuick, you instantiate an instance of the class. Then just by indexing the + class object with string names to identify a formula object, you can have calculation support + in your form. Alternatively, you can add a collection of Control-derived objects and the + CalcQuick object will bind the Control.Text property allowing you to use the Control/Name property + to reference other controls in a formula. + + + Here is code that uses three TextBoxes, the first showing a value for an angle in degrees, + and the other two displaying the sine and cosine of this angle. In this code, the calculations + are done on the click of a button: + + CalcQuick calculator = null; + private void AngleForm_Load(object sender, System.EventArgs e) + { + //TextBox Angle = new TextBox(); + this.Angle.Name = "Angle"; + this.Angle.Text = "30"; + //cosTB = new TextBox(); + this.cosTB.Name = "cosTB"; + this.cosTB.Text = "= cos([Angle] * pi() / 180) "; + //sinTB = new TextBox(); + this.sinTB.Name = "sinTB"; + this.sinTB.Text = "= sin([Angle] * pi() / 180) "; + // Instantiate the CalcQuick object: + this.calculator = new CalcQuick(); + } + // Perform a manual calculation: + private void ComputeButton_Click(object sender, System.EventArgs e) + { + // Let the calculator know the values/formulas + // by using an indexer on the calculator object. + // Here we are using the TextBox.Name as the indexer key + // provided to the calculator object. This is not required. + // The only restriction for the indexer key values is that they + // be unique nonempty strings: + this.calculator["Angle"] = this.Angle.Text; + this.calculator["cosTB"] = this.cosTB.Text; + this.calculator["sinTB"] = this.sinTB.Text; + // Mark the calculator dirty: + this.calculator.SetDirty(); + // Now as the values are retrieved from the calculator, they + // will be the newly calculated values: + this.cosTB.Text = this.calculator["cosTB"]; + this.sinTB.Text = this.calculator["sinTB"]; + } + + + Dim calculator As CalcQuick = Nothing + Private Sub AngleForm_Load(sender As Object, e As System.EventArgs) + 'TextBox Angle = new TextBox(); + Me.Angle.Name = "Angle" + Me.Angle.Text = "30" + 'cosTB = new TextBox(); + Me.cosTB.Name = "cosTB" + Me.cosTB.Text = "= cos([Angle] * pi() / 180) " + + 'sinTB = new TextBox(); + Me.sinTB.Name = "sinTB" + Me.sinTB.Text = "= sin([Angle] * pi() / 180) " + + 'Instantiate the CalcQuick object: + Me.calculator = New CalcQuick() + End Sub 'AngleForm_Load + + 'Perform a manual calculation: + Private Sub ComputeButton_Click(sender As Object, e As System.EventArgs) + 'Let the calculator know the values/formulas + 'by using an indexer on the calculator object. + 'Here we are using the TextBox.Name as the indexer key + 'provided to the calculator object. This is not required. + 'The only restriction for the indexer key values is that they + 'be unique nonempty strings: + Me.calculator("Angle") = Me.Angle.Text + Me.calculator("cosTB") = Me.cosTB.Text + Me.calculator("sinTB") = Me.sinTB.Text + + 'Mark the calculator dirty: + Me.calculator.SetDirty() + + 'Now as the values are retrieved from the calculator, they + 'will be the newly calculated values: + Me.cosTB.Text = Me.calculator("cosTB") + Me.sinTB.Text = Me.calculator("sinTB") + End Sub 'ComputeButton_Click + + Here is code that uses the same three TextBoxes as above, but this time + the code is set up to automatically compute things as you change the + value in the Angle TextBox. There is no longer a need for a button handler + to trigger setting / getting values. + + CalcQuick calculator = null; + + private void AngleForm_Load(object sender, System.EventArgs e) + { + //TextBox Angle = new TextBox(); + this.Angle.Name = "Angle"; + this.Angle.Text = "30"; + + //cosTB = new TextBox(); + this.cosTB.Name = "cosTB"; + this.cosTB.Text = "= cos([Angle] * pi() / 180) "; + + //sinTB = new TextBox(); + this.sinTB.Name = "sinTB"; + this.sinTB.Text = "= sin([Angle] * pi() / 180) "; + + // Instantiate the CalcQuick object: + this.calculator = new CalcQuick(); + } + + // Perform a manual calculation: + private void ComputeButton_Click(object sender, System.EventArgs e) + { + // Let the calculator know the values/formulas + // by using an indexer on the calculator object. + // Here we are using the TextBox.Name as the indexer key + // provided to the calculator object. This is not required. + // The only restriction for the indexer key values is that they + // be unique nonempty strings: + this.calculator["Angle"] = this.Angle.Text; + this.calculator["cosTB"] = this.cosTB.Text; + this.calculator["sinTB"] = this.sinTB.Text; + + // Mark the calculator dirty: + this.calculator.SetDirty(); + + // Now as the values are retrieved from the calculator, they + // will be the newly calculated values: + this.cosTB.Text = this.calculator["cosTB"]; + this.sinTB.Text = this.calculator["sinTB"]; + } + + + Dim calculator As CalcQuick = Nothing + + Private Sub AngleForm_Load(sender As Object, e As System.EventArgs) + 'TextBox Angle = new TextBox(); + Me.Angle.Name = "Angle" + Me.Angle.Text = "30" + + 'cosTB = new TextBox(); + Me.cosTB.Name = "cosTB" + Me.cosTB.Text = "= cos([Angle] * pi() / 180) " + + 'sinTB = new TextBox(); + Me.sinTB.Name = "sinTB" + Me.sinTB.Text = "= sin([Angle] * pi() / 180) " + + 'Instantiate the CalcQuick object: + Me.calculator = New CalcQuick() + End Sub 'AngleForm_Load + + 'Perform a manual calculation: + Private Sub ComputeButton_Click(sender As Object, e As System.EventArgs) + 'Let the calculator know the values/formulas + 'by using an indexer on the calculator object. + 'Here we are using the TextBox.Name as the indexer key + 'provided to the calculator object. This is not required. + 'The only restriction for the indexer key values is that they + 'be unique nonempty strings: + Me.calculator("Angle") = Me.Angle.Text + Me.calculator("cosTB") = Me.cosTB.Text + Me.calculator("sinTB") = Me.sinTB.Text + + 'Mark the calculator dirty: + Me.calculator.SetDirty() + + 'Now as the values are retrieved from the calculator, they + 'will be the newly calculated values: + Me.cosTB.Text = Me.calculator("cosTB") + Me.sinTB.Text = Me.calculator("sinTB") + End Sub 'ComputeButton_Click + + + + + + Returns the value as false + + + + + Default constructor: + + Use this constructor when you want to have + several CalcQuick objects that access the same + static members of the CalcEngine. + + + + + Constructor that resets the CalcEngine object. + + + Indicates whether the static members of the CalcEngine class will be cleared. + + + + A method to reset all the keys registered with CalcQuickBase object. + + + + + Creates the object used by this CalQuick object. + + Returns an instance of a CalcEngine object. + You can override this method and return a derived CalcEngine object use + by the derived CalcQuick object. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + A method that parses and computes a well-formed algebraic expression passed in. + + The text of the formula. + The computed value. + You would use this method if you have a formula string which + contains only constants or library function references. Such formulas + do not depend upon other values. If you have registered a variable through + an indexer, then that variable can be used in a formula expression passed into this + method. This method will return the Exception text if an exception is thrown + during the computation. + + + + + A method that returns the formula string associated with the key passed in from a FormulaInfo object. + + The Hashtable key associated with the FormulaInfo object. + The formula string may be the empty string if no formula is stored with this key. + + + + A method to get the value of the cell referred. For internal CalcQuick use only. + + Row index. + Column index. + (row, col) data. + + CalcQuick does not expose a (row, col) data access model. + But since CalcEngine requires such a model, CalcQuick uses + a row, col access model internally, but only exposes the + formula Key model to access values. + + + + + Initializes any structures needed by this instance. + + + Indicates whether the static members of the CalcEngine class will be cleared. + + + + A method that parses and computes a well-formed algebraic expression passed in. + + The text of the formula. + The computed value. + You would use this method if you have a formula string which + contains only constants or library function references. Such formulas + do not depend upon other values. If you have registered a variable through + an indexer, then that variable can be used in a formula expression passed into this + method. + + + + + A method that recompute any formulas stored in the CalcQuick instance. + + + This method only has is used when AutoCalc is False. It loops through + all FormulaInfo objects stored in the CalcQuick object and recomputes + any formulas. + + + + + A method to force all calculations to be performed the next time the CalcQuick object is + accessed with an indexer requesting the value. + + + Each FormulaInfo object contained in the CalcQuick instance + has a calculation index that is checked any time the computed value is needed. If this index + is current, no calculation is done, and the last computed value is returned. If this index + is not current, the calculation is redone before the value is returned. Calling this method + guarantees that no FormulaInfo object's calculation indexes will be current. + + + + + A method to set value to the specified cell. For internal CalcQuick use only. + + + + + Loops through and updates all formula items that depend + on the FormulaInfo object pointed to by the key. + + Identifies FormulaInfo object that triggered the update. + + + + A method that wires the ParentObject after the CalcQuick object is created. For internal CalcQuick use only. + + + + + Get the idex of the first row in UsedRange + + index of first row + + + + get the index of the last row in UsedRange + + index of last row + + + + This API supports the .NET Framework infrastructure and is not intended to be used directly from your code + + + + + + Gets the first column index. + + Index of first column + + + + Gets the last column index / column count. + + Index of last column + + + + This API supports the .NET Framework infrastructure and is not intended to be used directly from your code + + + + + + For internal CalcQuick use only. + + + + + Occurs when one of the FormulaInfo objects being + maintained by the CalcQuick instance has changed. + + + + + A property that gets/sets the auto calculation mode of the CalcQuick. + + + By default, the CalcQuick will not update other values when you change + a FormulaInfo object. By default, you explicitly call SetDirty() + of the CalcQuick instance to force calculations to be done the next time + they are required. Setting AutoCalc to True tells the CalcQuick to maintain + the dependency information necessary to automatically update + dependent formulas when values that affect these formulas change. + + + + + Gets or sets whether formulas should be checked for syntax during key substitutions. Default is true. + + + Prior to version 4.4, no syntax checking was performed during the initial parsing process of substituting + for keys (variable names enclosed in square brackets). This early syntax checking support has been added to + catch cases where a keys was not preceded (or followed) properly in the formula. This CheckKeys property + is available for backward compatibility. To maintain the exact parsing algorithm found in versions + prior to 4.4, set this property to false. + + + + + Maintains a set of modified flags indicating whether + any control has had a value changed. + + + + + Maintains a collection of FormulaInfo objects. + + + This Hashtable serves as the data store for the + CalcQuick instance. The keys are the strings used + to identify formulas and the values are FormulaInfo + objects that hold the information on each formula or value. + + + + + Determines whether the CalcEngine object of this CalcQuick should be disposed on disposing this object. + Default value is true. + + + + + A read-only property that gets the reference to the CalcEngine object being used by this CalcQuick instance. + + + + + A property that gets/sets character by which string starts with, are treated as + formulas when indexing a CalcQuick object. + + If you use the technique of indexing the CalcQuick object + to set a varaible value, then you indicate that the value should be a + formula by starting the string with this character. If you do not want + to require your formulas to start with this character, then you will not + be able to use the indexing technique. Instead, you will have to call + ParseAndCompute directly to handle formulas not starting with this + character. + + + + Maintains a mapping between the string key and the row + used in a CalcSheet to identify a FormulaInfo object. + + + + + Maintains a mapping between the string key and a + vector of numbers entered using a brace expression. + + + + + Maintains a mapping between the string key and the control + which is being used to identify a FormulaInfo object. + + + + + Maintains a mapping between the row used in a CalcSheet + and the string key used to identify a FormulaInfo object. + + + + + Gets / sets formula values for CalcQuick. + + The indexer used to identify the formula. + + Using an indexer on the CalcQuick instance is the primary method + of setting a value to be used in a CalcQuick object. The string + used as the indexer is the key that you use to reference this formula + value in other formulas used in this CalcQuick instance. + + + + + Gets / sets whether the CalcQuick should throw an exception when a circular calculation is encountered. + + If this property is True, the CalcQuick will throw an exception + when it detects a circular calculation. If ThrowCircularException is False, then + no exception is thrown and the calculation will loop recursively until Engine.MaximumRecursiveCalls + is exceeded. + + + + + An event handler that represents the method to handle the event. + + + This event is raised whenever an indexer is used on the CalcQuick object to assign + it a value or when a value is assigned as the result of a calculation being done. + + + + + Event argument class for the event. + + + + + The only constructor for QuickValueSetEventArgs. + + This is the object that is used as the key value in the Hashtable to + identify the formula information. It is also the string you use in formulas (enclosed in brackets) + to reference a formula from another formula. + New value being assigned. + Indicates the reason the event is being raised. See FormulaInfoSetAction. + + + + The reason the event was raised. + + + + + A property that gets/sets the Hashtable lookup object for the FormulaInfo object being changed. + + + + + A property that gets/sets the new value being set. + + + + + Flags the reason that quickValueSet was raised. + + When QuickValueSet event is raised, it passes an + argument of FormulaInfoSetAction to indicate what was being assigned + to the CalcQuick object using an indexer. + + + + A formula (string starting with FormulaCharacter) was assigned. + + + + + Something other than a formula was assigned. + + + + + A calculated value was assigned. + + + + + Typed Hashtable returning FormulaInfo objects. + + + + + Gets or sets the FormulaInfo with the specified obj. + + The key to identify the given FormulaInfo. + FormulaInfo + + + + CalcSheet represents a single worksheet in a workbook. + + + A CalcSheet plays the role of an Excel Worksheet. It maintains its own internal data object + to hold FormulaInfo objects used by the CalcEngine in its calculation work. The CalcSheet accesses + the raw data / formulas that you want to use in the calculations via the ICalcData interface. + + + + + Default constructor. + + + + + Constructor that initializes an internal object array to + hold data. + + Number of rows in the data object. + Number of columns in the data object. + + + + Constructor used during serialization. + + + + + Creates a CalcSheet from a delimited text file + created by WriteSheetToFile. + + The file name. + A CalcSheet instantiated with the file content. + + + + Supports serialization. + + Serialization information. + Describes source and destination of the given stream.. + + + + Returns the value at the row and column. + + One-based row index. + One based column index. + The cell value. + + + + Raises the CalculatedValueChanged event. + + Includes the row, col, and value of the change. + This event should be raised any time a value changes. + + + + Raises the ValueChanged event. + + Includes the row, col, and value of the change. + This event should be raised any time a value changes. + + + + Creates a CalcSheet object from the content of a StreamReader. + + The StreamReader. + The newly created CalcSheet object. + + + + A Virtual method to save the value through the ICalcData.SetValueRowCol implementation method + and raise the ValueChanged event. + + The row index, one-based. + The column index, one-based. + The value. + + + + A Virtual method to set a value at a given row and column. + + Value to be set. + One-based row index. + One-based column index. + + + + A Virtual method that can be used to handle subscribing to any base object events necessary for implementing the + ValueChanged event. + + For example, when implementing ICalcData on a DataGrid-derived object, + you need to know when something in the DataGrid changes so you can raise the + required ICalcData.ValueChanged event. In WireParentObject, the DataGrid can + subscribe to its DataSource's change event to handle this requirement. If the + DataSource is a DataTable, then the DataTable.ColumnChanged event can fulfill + the requirement. + + + + Get the idex of the first row in UsedRange + + index of first row + + + + get the index of the last row in UsedRange + + index of last row + + + + This API supports the .NET Framework infrastructure and is not intended to be used directly from your code + + + + + + Gets the first column index. + + Index of first column + + + + Gets the last column index / column count. + + Index of last column + + + + This API supports the .NET Framework infrastructure and is not intended to be used directly from your code + + + + + + Writes a delimited file. + + The output file name. + The static Delimiter member specifies the field delimiter. + Rows are delimited by Environment.NewLine characters. + This method serializes formulas instead of computed values. To + write a file containing computed values, use the WriteValuesToFile method. + + + + Writes this CalcSheet object to the given StreamWriter. + + The StreamWriter. + Indicates whether to serialize formulas (False) + or computed values (True). + + + + Writes this CalcSheet object with formulas serialized to the given StreamWriter. + + The StreamWriter. + + + + Serializes the data with computed values to a delimited + text file. + + The file name. + The static Delimiter member specifies the field delimiter. + Rows are delimited by Environment.NewLine characters. + This method serializes computed values instead of formulas. To + write a file containing formulas, use the WriteSheetToFile method. + + + + This event is raised in SetValueRowCol. + + + + + This event should be raised by the implementer of ICalcData whenever a value changes. + + + + + Gets / sets a flag that indicates whether to compute dependent values + as cells change. + + + + + A read-only property that gets the column count. + + + + + Gets / sets the field delimiter for the + WriteSheetToFile method. + + The default value is tab. + + + + A read-only property that gets the CalcEngine object used by this CalcSheet. + + + + + Enables or disables saving changes within the CalcSheet. + + + + + A property that gets / sets the name used to refer to this sheet. + + + + + A read-only property that gets the row count. + + + + + Gets / sets a value through the ICalcData.GetValueRowCol + and ICalcData.SetValueRowCol implementation methods. + + The row index. + The column index. + + + + Calls SecurityPermission.Demand to find out if SecurityPermission is available. + + True if SecurityPermission is available. + + + + CalcWorkbook holds a collection of objects. + + + + + ArrayList of strings holding the CalcSheets names. + + + + + Initializes a new instance of the CalcWorkbook class. + + The calc sheets. + Hashtable of key, value pairs for Namedrange values. + + + + Initializes a new from a serialization stream. + + An object that holds all the data needed to serialize or deserialize this instance. + Describes the source and destination of the serialized stream specified by info. + + + + A Virtual method to calculate all formulas in this workbook. + + + + + Removes all formulas in the given CalcSheet. + + The CalcSheet. + + + + Implements the ISerializable interface and returns the data needed to serialize the workbook. + + A SerializationInfo object containing the information required to serialize the cell model. + A StreamingContext object containing the source and destination of the serialized stream. + + + + A method that gets the integer ID of a CalcSheet. + + The CalcSheet name. + The integer ID. + + + + Creates a CalcWorkbook from a file written using WriteSSS. + + Pathname of the file. + A CalcWorkbook object. + + + + Writes a tab-delimited file holding the Workbook information. + + The pathname of the file to be written. + + + + Gets or sets an Arraylist of CalcSheet objects used in this workbook. + + + + + Array of CalcSheets objects used in this workbook. + + + + + Gets/Sets the CalcEngine object. + + + The setter only sets once, and only if InitCalcWorkbook has been called + with a zero CalcSheet count. + + + + + Number of CalcSheets in this workbook. + + + + + Gets / sets a CalcSheet object with the given name. + + The sheet name. + + + + Gets / sets a CalcSheet object with the given index. + + The sheet index. + + + + Wrapper ArrayList that holds a collection of CalcSheets. + + + + + Default constructor. + + + + + Creates an CalcSheetList instance owned by the given workbook with the given CalcSheet list. + + list of CalcSheets + The Workbook + + + + A method that adds a new CalcSheet. + + The CalcSheet to be added. + The index of the added CalcSheet. + + + + Not supported. + + + + + Not supported. + + + + + Returns the index for a CalcSheet. + + The name of the CalcSheet. + The index of the CalcSheet. + + + + A method that removes a CalcSheet. + + The CalcSheet to be removed. + + + + Removes a CalcSheet. + + The index of the CalcSheet to be removed. + + + + The CalcSheets in this collection. + + Returns a CalcSheet[]. + + + + Gets or sets the CalcSheet at the given index. + + The sheet index. + + + + Gets or sets the CalcSheet with a given name. + + The sheet name. + + + + + Contains utility methods for object cloning. + + + + + Clones int array. + + Array to clone + Returns cloned array. + + + + Clones ushort array. + + Array to clone. + Returns cloned array. + + + + Clones string array. + + Array to clone. + Returns cloned array. + + + + Clones object array. + + Array to clone. + Returns cloned array. + + + + Clones object that implements ICloneable interface. + + Object to clone. + A clone of the object. + + + + Clones byte array. + + Array to clone. + Return cloned array. + + + + Clone Dictionary. + + Dictionary to clone + Returns a copy of the Dictionary. + + + + Clone Dictionary. + + Dictionary to clone + Returns a copy of the Dictionary. + + + + Creates copy of the stream. + + Stream to copy. + Created stream. + + + + Summary description for DocumentPropertyImpl. + + + + + Represents single document property. + + + + + Indicates whether property is built-in. Read-only. + + + + + Returns property id for built-in properties. Read-only. + + + + + Returns property name. Read-only. + + + + + Gets / sets property value. + + + + + Gets / sets boolean value. + + + + + Gets / sets integer value. + + + + + Gets / sets 4-bytes signed integer value. + + + + + Gets / sets double value. + + + + + Gets / sets string value. + + + + + Gets / sets DateTime value. + + + + + Gets / sets TimeSpan value. + + + + + Returns or sets the source of a linked custom document property. Read/write String. + + + + + True if the value of the custom document property is linked to the content + of the container document. False if the value is static. Read/write Boolean. + + + + + Start index for Id2 PropVariant property. + + + + + Start year for FILETIME structure. + + + + + Property id. + + + + + Property name. + + + + + Property value. + + + + + Property type. + + + + + The source of a linked custom document property. Read/write String. + + + + + True if the value of the custom document property is linked to the content + of the container document. False if the value is static. Read/write Boolean. + + + + + Default constructor. + + + + + Initializes new instance of the class. + + Property name. + Property value. + + + + Initializes new instance of the class. + + Property id. + Property value. + + + + Initializes new instance of the document property. + + Variant that contains property data. + + Indicates whether property is from document summary or not (only for + built-int properties). + + + + Detects type of the string. + + String value to check. + Detected string type. + + + + Copies document property data into PropVariant. + + Destination object. + PropertyId for custom properties. + True if was able to fill variant; false otherwise. + + + + Converts propertyId into correct index. + + PropertyId to convert. + [out] Indicates whether this is document summary property of simply document property. + Correct property index. + + + + Tries to detect and set property type. + + + + + Sets value of LinkSource property. + + Variant that contains value to set. + + + + Saves property into IPropertyStorage. + + Storage to save into. + Property variant used as buffer. + Property id for custom properties. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Creates copy of the internal value. + + + + + Indicates whether property is built-in. Read-only. + + + + + Returns / sets property id for built-in properties. + + + + + Returns property name. Read-only. + + + + + Gets / sets property value. + + + + + Gets / sets boolean value. + + + + + Gets / sets integer value. + + + + + Gets / sets 4-bytes signed integer value. + + + + + Gets / sets double value. + + + + + Gets / sets string value. + + + + + Gets / sets DateTime value. + + + + + Gets / sets TimeSpan value. + + + + + Gets / sets Blob value. + + + + + Gets or sets clipboard data value. + + + + + Gets / sets array of strings. + + + + + Gets / sets array of objects. Supported object types are string and Int32. + + + + + Gets / sets document property type. + + + + + Returns or sets the source of a linked custom document property. Read/write String. + + + + + True if the value of the custom document property is linked to the content of the container document. False if the value is static. Read/write Boolean. + + + + + Internal name of the document property. + + + + + Property IDs for the SummaryInformation Property Set. + + + + + Title document property Id. + + + + + Subject document property Id. + + + + + Author document property Id. + + + + + Keywords document property Id. + + + + + Comments document property Id. + + + + + Template document property Id. + + + + + LastAuthor document property Id. + + + + + Revnumber document property Id. + + + + + EditTime document property Id. + + + + + LastPrinted document property Id. + + + + + CreationDate document property Id. + + + + + LastSaveDate document property Id. + + + + + PageCount document property Id. + + + + + WordCount document property Id. + + + + + CharCount document property Id. + + + + + Thumbnail document property Id. + + + + + ApplicationName document property Id. + + + + + Ssecurity document property Id. + + + + + Category Id. + + + + + Target format for presentation (35mm, printer, video, and so on) id. + + + + + ByteCount Id. + + + + + LineCount Id. + + + + + ParCount Id. + + + + + SlideCount Id. + + + + + NoteCount Id. + + + + + HiddenCount Id. + + + + + MmclipCount Id. + + + + + ScaleCrop property Id. + + + + + HeadingPair Id. + + + + + DocParts Id. + + + + + Manager Id. + + + + + Company Id. + + + + + LinksDirty Id. + + + + + The character count with space + + + + + Enumeration with all supported property types. + + + + + Indicates a Boolean value. + + + + + Indicates an integer value. + + + + + Indicates a 4-bytes signed integer value. + + + + + Indicates a 2-bytes signed interger value. + + + + + Indicates a 4-bytes unsigned interger value. + + + + + Indicates a wide string terminated by a null. + + + + + Indicates a string terminated by a null. + + + + + Indicates a FILETIME value. + + + + + Indicates length prefixed bytes. + + + + + Indicates a simple, counted array. + + + + + Indicates an object. + + + + + Indicates a double value. + + + + + Indicates an empty value. + + + + + Indicates null value. + + + + + Indicates clipboard data. + + + + + Indicates an array of strings. + + + + + Indicates an array of strings. + + + + + Indicates an array of objects. Supported types are string and integer values. + + + + + This interface represents stream in the compound file. + + + + + Name of the stream. + + + + + Initializes new instance of the compound stream object. + + Name of the stream. + + + + Copies stream content into another stream object. + + Stream to copy data into. + + + + Returns name of the stream. + + + + + This interface gives access to compound file functionality. + + + + + Flushes content into internal buffer. + + + + + Saves compound file into stream + + Stream to save data into. + + + + Saves compound file into file. + + Name of the file to save into. + + + + Returns root storage object for this file. + + + + + This interface represents storage object in the compound file. + + + + + Creates new stream inside this storage. + + Name of the stream to create. + Created stream object. + + + + Opens existing stream inside this storage. + + Name of the stream to open. + + + + + Removes existing stream from this storage. + + Name of the stream to remove. + + + + Determines whether storage contains specified stream. + + Name of the stream to check. + true if storage contains specified stream. + + + + Creates new substorage inside this one. + + Name of the storage to create. + Created storage object. + + + + Opens existing substorage inside this one. + + Name of the storage to open. + Created storage object. + + + + Removes exisiting substorage from this one. + + Name of the storage to remove. + + + + Determines whether this storage contains substorage with specified name. + + Name of the storage to check. + true if storage contains substorage with specified name. + + + + Commits changes. + + + + + Inserts copy of the storage and all subitems inside current storage. + + Storage to copy. + + + + Inserts copy of the stream inside current storage. + + Stream to copy. + + + + Returns all stream names that are placed inside this stream. + + + + + Returns all storage names that are placed inside this stream. + + + + + Returns name of the storage. + + + + + This exception should be thrown when lock or share violation has occured. + Usually this happens when user tries to create storage on file opened by somebody else. + + + + + Default message. + + + + + Message for exception message with record code. + + + + + Initializes a new instance of the class with default error message. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a NULL reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + Special wrapper class that allows users to control access to stream + and cache data. + + + + + Default buffer allocation size. + + + + + Underlying stream. Close sets _s to NULL. + + + + + Shared read / write buffer. Allocated on first use. + + + + + Read pointer within shared buffer. + + + + + Number of bytes read in buffer from _s. + + + + + Write pointer within shared buffer. + + + + + Length of internal buffer if it is allocated. + + + + + Stream position when the buffer is read. + + + + + Default constructor. Hidden to class users. + + + + + Initialize class by stream and DefaultBufferSize == 4096. + + Stream which our class must wrap. + + + + Initialize class by instance of stream and user defined cache size. + + Stream which our class must wrap. + User defined cache size. + Stream does not support Read and Write operations. + BufferSize is equal or less than zero. + + + + Reads data from the stream. If data is cached, the class will not call wrapped + stream and will simply return a copy of cached data. + + Output buffer. + Offset in output buffer where data from stream must be placed. + Count of bytes which class must return. + Quantity of read bytes. + + + + Reads a byte from the underlying stream. Returns an int (byte cast to an int) + or -1 if it is the end of the stream. + + Read byte. + + + + Writes portion of data into a wrapped stream. Data will be cached if it is possible. + It will then be saved to the wrapped stream on Flush. + + Array containing data. + Offset to the beginning of the portion of data. + Number of bytes in the portion of data. + + If array or stream is NULL. + + + If offset or count is less than zero. + + + If array does not contain the required element count. + + + + + Write one byte of information into stream. + + Value which must be written. + + If stream is NULL. + + + If can't write into stream. + + + + + On any Seek operation, data not written from cache will be + flushed to the wrapped stream. Using the Position property is better as + it is optimized for cache use. + + New offset of stream. + Start point of seek operation. + Current position. + + If stream is NULL. + + + If can't seek in the stream. + + + + + Saves all the data from cache and closes the stream. + + + + + Flushes data and resets the cache. + + + When stream is NULL. + + + + + The file is read in blocks, but a user could read 1 byte + from the buffer and write it. At that point, the Operating System's file + pointer is out of sync with the stream's position. Hence, all write + functions should call this function to preserve the position in the file. + + + + + Since Write is buffered, any time the buffer fills up + or the buffer switches to reading and there is dirty data + (_writePos > 0), this function must be called. + + + + + Sets length of wrapped stream. + + New length of stream. + + When value is less than zero. + + + When stream is NULL. + + + Cannot seek or cannot write into stream. + + + + + Indicates whether data can be read from the wrapped stream. + True if data can be read. + + Class instance was disposed. + + + + Indicates whether data can be written to wrapped stream. + + Class instance was disposed. + + + + Indicates whether the wrapped stream supports Seek operations. + + Class instance was disposed. + + + + Gets length of the wrapped stream. When this property is accessed, the data + that is not written to the stream is first flushed. + + Class instance was disposed. + + + + Gets the current position of stream. Position can be different from the value in wrapped + stream, because wrapped stream will point to the last byte of the + cached data. When this property is set, the data that is not written is flushed to the stream. + + Class instance was disposed. + Wrapped stream does not support seek operation. + + + + Get reference of stream wrapped by BufferStreamEx. + + + + + This is compound file implementation based on standard COM-objects. + + + + + Root storage. + + + + + Represents the locking bytes. + + + + + Default constructor. Creates native compound file in memory. + + + + + Creates new instance of the compound file based on the specified stream. + + Stream to extract data from. + + + + Creates new instance of the compound file based on the file name and open flags. + + Name of the file to parse. + Storage options. + + + + Flushes all internal buffers. + + + + + Cretes storage on ILockBytes. + + Created storage. + + + + Saves internal ILockBytes into stream. + + Stream to save into. + + + + Opens specified stream. + + Stream to open. + + + + Saves compound file into stream + + Stream to save data into. + + + + Saves compound file into file. + + Name of the file to save into. + + + + Frees all allocated resources. + + + + + Returns root storage object for this file. + + + + + Summary description for ILockBytes. + + + + + The ReadAt method reads a specified number of bytes + starting at a specified offset from the beginning of the byte array object. + + Specifies the starting point from the beginning + of the byte array for reading data. + Pointer to the buffer into which the byte array is read. + The size of this buffer is contained in cb. + Specifies the number of bytes of data to attempt to read + from the byte array. + Pointer to a ULONG where this method writes the actual + number of bytes read from the byte array. You can set this pointer to NULL + to indicate that you are not interested in this value. In this case, this + method does not provide the actual number of bytes that were read. + S_OK - Indicates that the specified number of bytes were read, or the + maximum number of bytes were read to the end of the byte array. + E_FAIL - Data could not be read from the byte array. + E_PENDING - Asynchronous Storage only: Part or all of the data to be + read is currently unavailable. + STG_E_ACCESSDENIED - The caller does not have permission to access the byte array. + STG_E_READFAULT - The number of bytes to be read does not equal the number of bytes + that were actually read + + + + The WriteAt method writes the specified number of bytes starting at a specified offset + from the beginning of the byte array. + + Specifies the starting point from + the beginning of the byte array for the data to be written. + Pointer to the buffer containing the data to be written. + Specifies the number of bytes of data to attempt to write into + the byte array. + Pointer to a location where this method specifies the + actual number of bytes written to the byte array. You can set this pointer to + NULL to indicate that you are not interested in this value. In this case, this + method does not provide the actual number of bytes written. + S_OK - Indicates that the specified number of bytes were written. + E_FAIL - A general failure occurred during the write operation. + E_PENDING - Asynchronous Storage only: Part or all of the data to be + written is currently unavailable. + STG_E_ACCESSDENIED - The caller does not have enough permissions for writing + this byte array. + STG_E_WRITEFAULT - The number of bytes to be written does not equal the number + of bytes that were actually written. + STG_E_MEDIUMFULL - The write operation was not completed because there is no + space left on the storage device. The actual number of bytes written is still + returned in pcbWritten. + + + + The Flush method ensures that any internal buffers maintained by the ILockBytes + implementation are written out to the underlying physical storage. + + S_OK - The flush operation was successful. + STG_E_ACCESSDENIED - The caller does not have permission to access the byte array. + STG_E_MEDIUMFULL - The flush operation is not completed because there is no space + left on the storage device. + E_FAIL - General failure writing data. + STG_E_TOOMANYFILESOPEN - Under certain circumstances, the Flush method executes + a download-and-closeto flush, which can lead to a return value of + STG_E_TOOMANYFILESOPEN if no file handles are available. + STG_E_INVALIDHANDLE - An underlying file has been prematurely closed, or the + correct floppy disk has been replaced by an invalid one. + + + + The SetSize method changes the size of the byte array. + + Specifies the new size of the byte array as a number of bytes. + S_OK - The size of the byte array was successfully changed. + STG_E_ACCESSDENIED - The caller does not have permission to access the byte array. + STG_E_MEDIUMFULL - The byte array size is not changed because there is no + space left on the storage device. + + + + The LockRegion method restricts access to a specified range of bytes in the byte array. + + Specifies the byte offset for the beginning of the range. + Specifies, in bytes, the length of the range to be restricted. + Specifies the type of restrictions being requested on + accessing the range. This parameter uses one of the values from the LOCKTYPE enumeration. + S_OK - The specified range of bytes was locked + STG_E_INVALIDFUNCTION - Locking is not supported at all or the specific type of lock + requested is not supported. + STG_E_ACCESSDENIED - Access denied because the caller has insufficient permission, + or another caller has the file open and locked. + STG_E_LOCKVIOLATION - Access denied because another caller has the file open and locked. + STG_E_INVALIDHANDLE - An underlying file has been prematurely closed, or the + correct floppy disk has been replaced by an invalid one + + + + The UnlockRegion method removes the access restriction on a previously + locked range of bytes. + + Specifies the byte offset for the beginning of the range. + Specifies, in bytes, the length of the range that is restricted. + Specifies the type of access restrictions previously + placed on the range. This parameter uses a value from the LOCKTYPE enumeration. + S_OK - The byte range was unlocked. + STG_E_INVALIDFUNCTION - Locking is not supported at all or the specific type + of lock requested is not supported. + STG_E_LOCKVIOLATION The requested unlock cannot be granted. + + + + + The Stat method retrieves a STATSTG structure containing information for + this byte array object. + + Pointer to a STATSTG structure in which this method + places information about this byte array object. The pointer is NULL if + an error occurs. + Specifies whether this method should supply the + pwcsName member of the STATSTG structure through values taken from the + STATFLAG enumeration. If the STATFLAG_NONAME is specified, the pwcsName + member of STATSTG is not supplied, thus saving a memory-allocation operation. + The other possible value, STATFLAG_DEFAULT, indicates that all members of the + STATSTG structure be supplied. + S_OK - The STATSTG structure was successfully returned at + the specified location. + E_OUTOFMEMORY - The STATSTG structure was not returned due to a lack of memory + for the name member in the structure. + STG_E_ACCESSDENIED - The STATSTG structure was not returned because the caller + did not have access to the byte array. + STG_E_INSUFFICIENTMEMORY - The STATSTG structure was not returned, due to + insufficient memory. + STG_E_INVALIDFLAG - The value for the grfStateFlag parameter is not valid. + STG_E_INVALIDPOINTER - The value for the pStatStg parameter is not valid. + + + + + Implementation of compound stream based on standard COM object. + + + + + + + + + + Stream position. + + + + + Initializes new instance of the stream object. + + COM stream to use. + Name of the stream. + + + + Reads a sequence of bytes from the current stream and advances the position + within the stream by the number of bytes read. + + An array of bytes. When this method returns, the buffer contains + the specified byte array with the values between offset and (offset + count - 1) + replaced by the bytes read from the current source. + The zero-based byte offset in buffer at which to begin storing + the data read from the current stream. + The maximum number of bytes to be read from the current stream. + The total number of bytes read into the buffer. This can be less + than the number of bytes requested if that many bytes are not currently + available, or zero (0) if the end of the stream has been reached. + + + + Writes a sequence of bytes to the current stream and advances the current position + within this stream by the number of bytes written. + + An array of bytes. This method copies length bytes from buffer to the current stream. + The zero-based byte offset in buffer at which to begin copying bytes to the current stream. + The number of bytes to be written to the current stream. + + + + Sets the position within the current stream. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + The new position within the current stream. + + + + Sets the length of the current stream. + + The desired length of the current stream in bytes. + + + + Clears all buffers for this stream and causes any buffered data to be + written to the underlying device. + + + + + Releases the unmanaged resources used by the Stream and optionally releases the managed resources. + + true to release both managed and unmanaged resources; + false to release only unmanaged resources. + + + + Checks whether offset and length can be fit inside specified buffer. + + Buffer to check. + Offset to check. + Length to check. + + + + Gets the length in bytes of the stream. + + + + + Gets or sets the position within the current stream. + + + + + Gets a value indicating whether the current stream supports reading. + + + + + Gets a value indicating whether the current stream supports writing. + + + + + Gets a value indicating whether the current stream supports seeking. + + + + + The STGTY enumeration values are used in the type member of the STATSTG + structure to indicate the type of the storage element. + + + + + Indicates that the storage element is a storage object. + + + + + Indicates that the storage element is a stream object. + + + + + Indicates that the storage element is a byte-array object. + + + + + Indicates that the storage element is a property storage object. + + + + + The STREAM_SEEK enumeration values specify the origin from which to + calculate the new seek-pointer location. + + + + + The new seek pointer is an offset relative to the beginning of + the stream. In this case, the dlibMove parameter is the new seek + position relative to the beginning of the stream. + + + + + The new seek pointer is an offset relative to the current seek + pointer location. In this case, the dlibMove parameter is the + signed displacement from the current seek position. + + + + + The new seek pointer is an offset relative to the end of the stream. + In this case, the dlibMove parameter is the new seek position + relative to the end of the stream. + + + + + The LOCKTYPE enumeration values indicate the type of locking requested + for the specified range of bytes. + + + + + If this lock is granted, the specified range of bytes can be opened + and read any number of times, but writing to the locked range is + prohibited except for the owner who granted this lock. + + + + + If this lock is granted, writing to the specified range of bytes is + prohibited except by the owner granted this lock. + + + + + If this lock is granted, no other LOCK_ONLYONCE lock can be obtained + on the range. Usually this lock type is an alias for some other lock + type. Thus, specific implementations can have additional behavior + associated with this lock type. + + + + + The STGM enumeration values are used in the IStorage, IStream, and + IPropertySetStorage interfaces. These elements are often combined + using an OR operator. + + + + + Indicates that the object is read-only, meaning that modifications + cannot be made. + + + + + STGM_WRITE lets you save changes to the object, but does not permit + access to its data. + + + + + STGM_READWRITE allows you to both access and modify an object's data. + + + + + Specifies that subsequent openings of the object are not denied read + or write access. If no flag from the sharing group is specified, + this flag is assumed. + + + + + Prevents others from subsequently opening the object in STGM_READ mode. + It is typically used on a root storage object. + + + + + Prevents others from subsequently opening the object for STGM_WRITE + or STGM_READWRITE access. + + + + + Prevents others from subsequently opening the object in any mode. In + transacted mode, sharing of STGM_SHARE_DENY_WRITE or STGM_SHARE_EXCLUSIVE + can significantly improve performance since they don't require snapshotting. + + + + + Opens the storage object with exclusive access to the most recently + committed version. + + + + + Indicates that an existing storage object or stream should be removed + before the new one replaces it. + + + + + Creates the new object while preserving existing data in a stream + named "Contents". + + + + + Causes the create operation to fail if an existing object with the + specified name exists. + + + + + In direct mode, each change to a storage or stream element is + written as it occurs. + + + + + In transacted mode, changes are buffered and written only if an + explicit commit operation is called. + + + + + In transacted mode, a temporary scratch file is usually used to + save modifications until the Commit method is called. + + + + + This flag is used when opening a storage object with STGM_TRANSACTED + and without STGM_SHARE_EXCLUSIVE or STGM_SHARE_DENY_WRITE. + + + + + STGM_SIMPLE is a mode that provides a much faster implementation of + a compound file in a limited, but frequently used case. + + + + + The STGM_DIRECT_SWMR supports direct mode for single-writer, + multireader file operations. + + + + + Indicates that the underlying file is to be automatically destroyed + when the root storage object is released. + + + + + The STGFMT enumeration values specify the format of a storage object + and are used in the StgCreateStorageEx and StgOpenStorageEx functions + in the STGFMT parameter. + + + + + Indicates that the file must be a compound file. + + + + + Indicates that the file must not be a compound file. + + + + + Indicates that the system will determine the file type and use the + appropriate structured storage or property set implementation. + + + + + Indicates that the file must be a compound file and is similar to + the STGFMT_STORAGE flag, but indicates that the compound-file form + of the compound-file implementation must be used. + + + + + Error code which StgOpenStorage method can return after execution. + + + + + Success code. + + + + + Filed. + + + + + Access Denied. + + + + + File already exists. + + + + + File could not be found. + + + + + There is insufficient memory available to complete operation. + + + + + Invalid flag error. + + + + + Unable to perform requested operation. + + + + + Attempted an operation on an invalid object. + + + + + The name is not valid. + + + + + Invalid pointer error. + + + + + A lock violation has occurred. + + + + + The compound file was not created with the STGM_SIMPLE flag. + + + + + The compound file was produced with a newer version of storage. + + + + + The compound file was produced with an incompatible version of storage. + + + + + The path could not be found. + + + + + A share violation has occurred. + + + + + There are insufficient resources to open another file. + + + + + The STGC enumeration constants specify the conditions for performing + the commit operation in the IStorage::Commit and IStream::Commit methods. + + + + + You can specify this condition with STGC_CONSOLIDATE or some + combination of the other three flags in this list of elements. + + + + + The commit operation can overwrite existing data to reduce overall + space requirements. + + + + + Prevents multiple users of a storage object from overwriting each + other's changes. + + + + + Commits the changes to a write-behind disk cache, but does not save + the cache to the disk. + + + + + Microsoft Windows 2000/XP: Indicates that a storage should be + consolidated after it is committed, resulting in a smaller file on disk. + + + + + Property IDs for the SummaryInformation Property Set. + + + + + Title Id. + + + + + Subject Id. + + + + + Author Id. + + + + + Keywords Id. + + + + + Comments Id. + + + + + Template Id. + + + + + LastAuthor Id. + + + + + Revnumber Id. + + + + + EditTime Id. + + + + + LastPrinted Id. + + + + + Create_dtm Id. + + + + + LastSave_dtm Id. + + + + + Pagecount Id. + + + + + Wordcount Id. + + + + + Charcount Id. + + + + + Thumbnail Id. + + + + + Appname Id. + + + + + Doc_security Id. + + + + + Property IDs for the DocSummaryInformation Property Set. + + + + + Category Id. + + + + + PresFormat Id. + + + + + ByteCount Id. + + + + + LineCount Id. + + + + + ParCount Id. + + + + + SlideCount Id. + + + + + NoteCount Id. + + + + + HiddenCount Id. + + + + + MmclipCount Id. + + + + + Scale Id. + + + + + HeadingPair Id. + + + + + DocParts Id. + + + + + Manager Id. + + + + + Company Id. + + + + + LinksDirty Id. + + + + + Reserved global Property IDs. + + + + + PID_DICTIONARY Id. + + + + + PID_CODEPAGE Id. + + + + + PID_FIRST_USABLE Id. + + + + + PID_FIRST_NAME_DEFAULT Id. + + + + + PID_LOCALE Id. + + + + + PID_MODIFY_TIME Id. + + + + + PID_SECURITY Id. + + + + + PID_BEHAVIOR Id. + + + + + PID_ILLEGAL Id. + + + + + PID_MIN_READONLY Id. + + + + + PID_MAX_READONLY Id. + + + + + PRSPEC property ids. + + + + + INVALID Id. + + + + + LPWSTR Id. + + + + + PROPID Id. + + + + + The STATSTG structure contains statistical information about an open storage, + stream, or byte-array object. + + + + + Pointer to a NULL-terminated Unicode string containing the name. + Space for this string is allocated by the method called and freed by the caller + + + + + Indicates the type of storage object. This is one of the + values from the STGTY enumeration. + + + + + Specifies the size in bytes of the stream or byte array. + + + + + Indicates the last modification time for this storage, stream, or byte array. + + + + + Indicates the creation time for this storage, stream, or byte array. + + + + + Indicates the last access time for this storage, stream or byte array. + + + + + Indicates the access mode specified when the object was opened. + This member is only valid in calls to Stat methods. + + + + + Indicates the types of region locking supported by the stream or byte array. + See the LOCKTYPE enumeration for the values available. + This member is not used for storage objects. + + + + + Indicates the class identifier for the storage object; set to CLSID_NULL for new storage objects. + This member is not used for streams or byte arrays. + + + + + Indicates the current state bits of the storage object; that is, the value most + recently set by the IStorage::SetStateBits method. + This member is not valid for streams or byte arrays. + + + + + Reserved for future use. + + + + + Structure that is used by STG API. + + + + + Structure that is used by STG API. + + + + + uint parameter. + + + + + uint parameter. + + + + + OLECHAR parameter. + + + + + Macros for parsing the OS Version of the Property Set Header. + + + + + Time in UTC when this property set was last accessed. + + + + + CLSID associated with this property set, specified when the property set was initially created + and possibly modified thereafter with IPropertyStorage::SetClass. If not set, the value will be CLSID_NULL. + + + + + Time in UTC when this property set was created. + + + + + Os vorsion. + + + + + FMTID of the current property set, specified when the property set was initially created. + + + + + Flag values of the property set, as specified in IPropertySetStorage::Create. + + + + + Time in Universal Coordinated Time (UTC) when the property set was last modified. + + + + + + The STATPROPSTG structure contains data about a single property in a property set. + This data is the property ID and type tag, and the optional string name that may be associated with the property. + + + + + A wide-character null-terminated Unicode string that contains the optional string name + associated with the property. May be NULL. + + + + + A 32-bit identifier that uniquely identifies the property within the property set. + All properties within property sets must have unique property identifiers. + + + + + The property type. + + + + + The PROPSPEC structure is used by many of the methods of IPropertyStorage to specify a + property either by its property identifier (ID) or the associated string name. + + + + + Indicates the union member used. This member can be one of the following values. + + + + + Specifies the value of the property ID. Use either this value or the following lpwstr, not both. + + + + + This enumeration is used in VARIANT, TYPEDESC, OLE property sets, and safe arrays. + + + + + Variable type is not specified. + + + + + Variable type is 4-byte signed INT. + + + + + Variable type is date. + + + + + Variable type is binary string. + + + + + Variable type is Boolean; True=-1, False=0. + + + + + Variable type is VARIANT FAR*. + + + + + Variable type is int. + + + + + Variable type is LPSTR. + + + + + Variable type is LPWSTR + + + + + Variable type is FILENAME string. + + + + + Variable type is binary VECTOR. + + + + + The IEnumSTATSTG interface enumerates an array of STATSTG structures. + These structures contain statistical data about open storage, stream, or byte array objects. + IEnumSTATSTG has the same methods as all enumerator interfaces: Next, Skip, Reset, and Clone. + + + + + The Next method retrieves a specified number of STATSTG structures, + that follow subsequently in the enumeration sequence. + If there are fewer than the requested number of STATSTG structures left + in the enumeration sequence, it retrieves the remaining STATSTG structures. + + The number of STATSTG structures requested. + An array of STATSTG structures returned. + The number of STATSTG structures retrieved in the rgelt parameter. + S_OK - The number of STATSTG structures returned equals the number + specified in the celt parameter. + S_FALSE - The number of STATSTG structures returned is less than the number + specified in the celt parameter. + + + + The Skip method skips a specified number of STATSTG structures in the enumeration sequence. + + The number of STATSTG structures to skip. + S_OK - The specified number of STATSTG structures were successfully skipped. + S_FALSE - The number of STATSTG structures skipped is less than the celt parameter. + + + + The Reset method resets the enumeration sequence to the beginning of the STATSTG structure array. + + S_OK - The enumeration sequence was successfully reset to the + beginning of the enumeration. + + + + The Clone method creates a new enumerator that contains the same enumeration state as + the current STATSTG structure enumerator. Using this method, a client can record a + particular point in the enumeration sequence and then return to that point at a later time. + The new enumerator supports the same IEnumSTATSTG interface. + + A pointer to the variable that receives the IEnumSTATSTG interface pointer. + If the method is unsuccessful, the value of the ppenum parameter is undefined. + E_INVALIDARG - The ppenum parameter is NULL. + E_OUTOFMEMORY - Insufficient memory. + E_UNEXPECTED - An unexpected exception occurred. + + + + For more information, refer to documentation on MSDN for interface with the same name. + + + + + Reads a specified number of bytes from the stream object into memory starting + at the current seek pointer. + + [out] Pointer to the buffer into which the stream data is read. + [in] Specifies the number of bytes of data to attempt to read + from the stream object. + [out] Pointer to a ULONG variable that receives the actual + number of bytes read from the stream object. You can set this pointer to NULL to + indicate that you are not interested in this value. In this case, this method + does not provide the actual number of bytes read. + + S_OK + Data was successfully read from the stream object. + S_FALSE + The data could not be read from the stream object. + E_PENDING + Asynchronous storage only: Part or all of the data to be read is currently unavailable. For more information, see IFillLockBytes and Asynchronous Storage. + STG_E_ACCESSDENIED + The caller does not have enough permissions for reading this stream object. + STG_E_INVALIDPOINTER + One of the pointer values is not valid. + STG_E_REVERTED + The object has been invalidated by a revert operation above it in the transaction tree. + + + + + Writes a specified number of bytes into the stream object starting at the + current seek pointer. + + [in] Pointer to the buffer containing the data that is to be + written to the stream. A valid pointer must be provided for this parameter even + when cb is zero. + [in] The number of bytes of data to attempt to write into the + stream. Can be zero. + [out] Pointer to a ULONG variable where this method + writes the actual number of bytes written to the stream object. The caller can + set this pointer to NULL, in which case this method does not provide the actual + number of bytes written. + + S_OK + The data was successfully written to the stream object. + E_PENDING + Asynchronous Storage only: Part or all of the data to be written is currently + unavailable. For more information, see IFillLockBytes and Asynchronous Storage. + STG_E_MEDIUMFULL + The write operation was not completed because there is no space left on the storage + device. + STG_E_ACCESSDENIED + The caller does not have enough permissions for writing to this stream object. + STG_E_CANTSAVE + Data cannot be written for reasons other than improper access or insufficient space. + STG_E_INVALIDPOINTER + One of the pointer values is not valid. The pv parameter must contain a valid pointer + even if cb is zero. + STG_E_REVERTED + The object has been invalidated by a revert operation above it in the transaction tree. + STG_E_WRITEFAULT + The write operation was not completed due to a disk error. This value is also returned + when this method attempts to write to a stream that was opened in simple mode (using + the STGM_SIMPLE flag). + + + + + Changes the seek pointer to a new location relative to the beginning of + the stream, the end of the stream, or the current seek pointer. + + [in] Displacement to be added to the location indicated by + the dwOrigin parameter. If dwOrigin is STREAM_SEEK_SET, this is interpreted as an + unsigned value rather than a signed value. + [in] Specifies the origin for the displacement specified in + dlibMove. The origin can be the beginning of the file, the current seek pointer, + or the end of the file. See the STREAM_SEEK enumeration for the values. + [out] Pointer to the location where this method writes + the value of the new seek pointer from the beginning of the stream. You can set this + pointer to NULL to indicate that you are not interested in this value. In this case, + this method does not provide the new seek pointer. + + S_OK + The seek pointer has been successfully adjusted. + E_PENDING + Asynchronous Storage only: Part or all of the stream's data is currently unavailable. + For more information, see IFillLockBytes and Asynchronous Storage. + STG_E_INVALIDPOINTER + Indicates that the [out] parameter plibNewPosition points to invalid memory, because + plibNewPosition is not read. + STG_E_INVALIDFUNCTION + The dwOrigin parameter contains an invalid value or the dlibMove parameter contains + a bad offset value. For example, the result of the seek pointer is a negative offset + value. + STG_E_REVERTED + The object has been invalidated by a revert operation above it in the transaction tree. + + + + + Changes the size of the stream object. + + [in] Specifies the new size of the stream as a number + of bytes. + + + + + Copies a specified number of bytes from the current seek pointer in the stream to + the current seek pointer in another stream. + + [in] Pointer to the destination stream. The stream pointed to + by pstm can be a new stream or a clone of the source stream. + [in] Specifies the number of bytes to copy from the source + stream. + [out] Pointer to the location where this method writes the + actual number of bytes read from the source. You can set this pointer to NULL to + indicate that you are not interested in this value. In this case, this method + does not provide the actual number of bytes read. + [out] Pointer to the location where this method writes + the actual number of bytes written to the destination. You can set this pointer + to NULL to indicate that you are not interested in this value. In this case, + this method does not provide the actual number of bytes written. + + + + + Ensures that any changes made to a stream object open in transacted mode + are reflected in the parent storage. If the stream object is open in direct + mode, IStream::Commit has no effect other than flushing all memory buffers + to the next-level storage object. The COM compound file implementation of + streams does not support opening streams in transacted mode. + + [in] Controls how the changes for the stream + object are committed. See the STGC enumeration for a definition of these + values. + + + + + Discards all changes that have been made to a transacted stream since the + last call to IStream::Commit. + + + + + + Restricts access to a specified range of bytes in the stream. Supporting + this functionality is optional since some file systems do not provide it. + + + + + + + + + Removes the access restriction on a range of bytes previously restricted + with IStream::LockRegion. + + + + + + + + + Retrieves the STATSTG structure for this stream. + + + + + + + + Creates a new stream object that references the same bytes as the original + stream but provides a separate seek pointer to those bytes. + + + + + + + Call the methods of IStorage to manage substorages or streams within the current storage. + This management includes creating, opening, or destroying substorages or streams, + as well as managing aspects such as time stamps, names, and so forth. + + + + + The CreateStream method creates and opens a stream object with the specified + name contained in this storage object. All elements within a storage objects, + both streams and other storage objects, are kept in the same name space. + + A pointer to a wide character null-terminated Unicode + string that contains the name of the newly created stream. The name can be used + later to open or reopen the stream. The name must not exceed 31 characters in + length, not including the string terminator. The 000 through 01f characters, + serving as the first character of the stream/storage name, are reserved for use by OLE. + This is a compound file restriction, not a structured storage restriction. + Specifies the access mode to use when opening the newly + created stream. For more information and descriptions of the possible values, + see STGM Constants. + Reserved for future use; must be zero. + Reserved for future use; must be zero. + On return, pointer to the location of the new IStream interface pointer. + This is only valid if the operation is successful. + When an error occurs, this parameter is set to NULL. + + S_OK - The new stream was successfully created. + E_PENDING - Asynchronous Storage only: Part or all of the + necessary data is currently unavailable. For more information, + see IFillLockBytes and Asynchronous Storage. + STG_E_ACCESSDENIED - Not enough permissions to create stream. + STG_E_FILEALREADYEXISTS - The name specified for the stream already exists in the storage + object and the grfMode parameter includes the value STGM_FAILIFTHERE. + STG_E_INSUFFICIENTMEMORY - The stream was not created due to a lack of memory. + STG_E_INVALIDFLAG - The value specified for the grfMode parameter is not a valid STGM Constants value. + STG_E_INVALIDFUNCTION - The specified combination of flags in the grfMode parameter is not supported; + for example, when this method is called without the STGM_SHARE_EXCLUSIVE flag. + STG_E_INVALIDNAME - Invalid value for pwcsName. + STG_E_INVALIDPOINTER - The pointer specified for the stream object was invalid. + STG_E_INVALIDPARAMETER - One of the parameters was invalid. + STG_E_REVERTED - The storage object has been invalidated by a revert operation + above it in the transaction tree. + STG_E_TOOMANYOPENFILES - The stream was not created because there are too many open files. + + + + + The OpenStream method opens an existing stream object within this storage + object in the specified access mode. + + A pointer to a wide character null-terminated Unicode + string that contains the name of the stream to open. The 000 through 01f + characters, serving as the first character of the stream/storage name, are + reserved for use by OLE. This is a compound file restriction, not a structured + storage restriction. + Reserved for future use; must be NULL. + Specifies the access mode to be assigned to the open stream. + For more information and descriptions of possible values, see STGM Constants. + Other modes you choose must at least specify STGM_SHARE_EXCLUSIVE when calling this + method in the compound file implementation. + Reserved for future use; must be zero. + A pointer to IStream pointer variable that receives the + interface pointer to the newly opened stream object. If an error occurs, *ppstm must be set to NULL. + + S_OK - The stream was successfully opened. + E_PENDING - Asynchronous Storage only: Part or all of the stream data is currently unavailable. + STG_E_ACCESSDENIED - Not enough permissions to open stream. + STG_E_FILENOTFOUND - The stream with specified name does not exist. + STG_E_INSUFFICIENTMEMORY - The stream was not opened due to a lack of memory. + STG_E_INVALIDFLAG - The value specified for the grfMode parameter is not a valid STGM Constants value. + STG_E_INVALIDFUNCTION - The specified combination of flags in the grfMode parameter is not supported; + for example, when this method is called without the STGM_SHARE_EXCLUSIVE flag. + STG_E_INVALIDNAME - Invalid value for pwcsName. + STG_E_INVALIDPOINTER - The pointer specified for the stream object was not valid. + STG_E_INVALIDPARAMETER - One of the parameters was not valid. + STG_E_REVERTED - The storage object has been invalidated by a revert operation above it in the transaction tree. + STG_E_TOOMANYOPENFILES - The stream was not opened because there are too many open files. + + + + + The CreateStorage method creates and opens a new storage object nested within this storage + object with the specified name in the specified access mode. + + A pointer to a wide character null-terminated Unicode string that + contains the name of the newly created storage object. The name can be used later to + reopen the storage object. The name must not exceed 31 characters in length, not + including the string terminator. The 000 through 01f characters, serving as the + first character of the stream/storage name, are reserved for use by OLE. This is a + compound file restriction, not a structured storage restriction. + A value that specifies the access mode to use when opening + the newly created storage object. For more information and a description of possible values + Reserved for future use; must be zero. + Reserved for future use; must be zero. + A pointer, when successful, to the location of the IStorage pointer to + the newly created storage object. This parameter is set to NULL if an error occurs. + + S_OK - The storage object was created successfully. + E_PENDING - Asynchronous Storage only: Part or all of the necessary data is currently unavailable. + STG_E_ACCESSDENIED - Not enough permissions to create storage object. + STG_E_FILEALREADYEXISTS - The name specified for the storage object already exists in the + storage object and the grfMode parameter includes the flag STGM_FAILIFTHERE. + STG_E_INSUFFICIENTMEMORY - The storage object was not created due to a lack of memory. + STG_E_INVALIDFLAG - The value specified for the grfMode parameter is not a valid STGM Constants value. + STG_E_INVALIDFUNCTION - The specified combination of flags in the grfMode parameter is not supported. + STG_E_INVALIDNAME - Not a valid value for pwcsName. + STG_E_INVALIDPOINTER - The pointer specified for the storage object was not valid. + STG_E_INVALIDPARAMETER - One of the parameters was not valid. + STG_E_REVERTED - The storage object has been invalidated by a revert operation above it in the transaction tree. + STG_E_TOOMANYOPENFILES - The storage object was not created because there are too many open files. + STG_S_CONVERTED - The existing stream with the specified name was replaced with a new storage object + containing a single stream called CONTENTS. The new storage object will be added. + + + + + The OpenStorage method opens an existing storage object with the specified name in the specified access mode. + + A pointer to a wide character null-terminated Unicode string that + contains the name of the storage object to open. The 000 through 01f characters, + serving as the first character of the stream/storage name, are reserved for use by + OLE. This is a compound file restriction, not a structured storage restriction. + It is ignored if pstgPriority is non-NULL. + Must be NULL. A non-NULL value will return STG_E_INVALIDPARAMETER. + Specifies the access mode to use when opening the storage object. + For descriptions of the possible values, see STGM Constants. + Other modes you choose must at least specify STGM_SHARE_EXCLUSIVE when calling this method. + Must be NULL. A non-NULL value will return STG_E_INVALIDPARAMETER. + Reserved for future use; must be zero. + When successful, pointer to the location of an IStorage pointer to + the opened storage object. This parameter is set to NULL if an error occurs. + + S_OK - The storage object was opened successfully. + E_PENDING - Asynchronous Storage only: Part or all of the storage's data is currently unavailable. + STG_E_ACCESSDENIED - Not enough permissions to open storage object. + STG_E_FILENOTFOUND - The storage object with the specified name does not exist. + STG_E_INSUFFICIENTMEMORY - The storage object was not opened due to a lack of memory. + STG_E_INVALIDFLAG - The value specified for the grfMode parameter is not a valid STGM Constants value. + STG_E_INVALIDFUNCTION - The specified combination of flags in the grfMode parameter is not supported. + STG_E_INVALIDNAME - Not a valid value for pwcsName. + STG_E_INVALIDPOINTER - The pointer specified for the storage object was not valid. + STG_E_INVALIDPARAMETER - One of the parameters was not valid. + STG_E_REVERTED - The storage object has been invalidated by a revert operation above it in the transaction tree. + STG_E_TOOMANYOPENFILES - The storage object was not created because there are too many open files. + STG_S_CONVERTED - The existing stream with the specified name was replaced with a new storage + object containing a single stream called CONTENTS. In direct mode, the new storage is + immediately written to disk. In transacted mode, the new storage is written to a + temporary storage in memory and later written to disk when it is committed. + + + + + The CopyTo method copies the entire contents of an open storage object to another storage object. + + The number of elements in the array pointed to by rgiidExclude. + If rgiidExclude is NULL, then ciidExclude is ignored. + An array of interface identifiers (IIDs) that either the caller + knows about and does not want copied or that the storage object does not support but whose + state the caller will later explicitly copy. + A string name block (refer to SNB) that specifies a block of storage + or stream objects that are not to be copied to the destination. These elements are not created + at the destination. If IID_IStorage is in the rgiidExclude array, this parameter is ignored. + This parameter may be NULL. + Pointer to the open storage object into which this storage object is to be copied. + + S_OK - The storage object was successfully copied. + E_PENDING - Asynchronous Storage only: Part or all of the data to be copied is currently unavailable. + STG_E_ACCESSDENIED - The destination storage object is a child of the source storage object. + STG_E_INSUFFICIENTMEMORY - The copy was not completed due to a lack of memory. + Otherwise - Error code. + + + + + The MoveElementTo method copies or moves a substorage or stream from this storage + object to another storage object. + + Pointer to a wide character null-terminated Unicode string + that contains the name of the element in this storage object to be moved or copied. + IStorage pointer to the destination storage object. + Pointer to a wide character null-terminated unicode string + that contains the new name for the element in its new storage object. + Specifies whether the operation should be a move (STGMOVE_MOVE) + or a copy (STGMOVE_COPY). See the STGMOVE enumeration. + S_OK - The storage object was successfully copied or moved. + Otherwise error code. + + + + + The Commit method ensures that any changes made to a storage object open in transacted + mode are reflected in the parent storage. + + Controls how the changes are committed to the storage object. + + S_OK - Changes to the storage object were successfully committed to the parent level. + If STGC_CONSOLIDATE was specified, the storage was successfully consolidated, + or the storage was already too compact to consolidate further + Otherwise error code. + + + + + The Revert method discards all changes that have been made to the storage object since the last commit operation. + + + S_OK - The revert operation was successful. + Otherwise error code. + + + + + The EnumElements method retrieves a pointer to an enumerator object that can be used + to enumerate the storage and stream objects contained within this storage object. + + Reserved for future use; must be zero. + Reserved for future use; must be zero. + Reserved for future use; must be zero. + Pointer to IEnumSTATSTG* pointer variable that receives the + interface pointer to the new enumerator object. + + S_OK - The enumerator object was successfully returned. + Otherwise error code. + + + + + The DestroyElement method removes the specified storage or stream from this storage object. + + Pointer to a wide character null-terminated Unicode string that + contains the name of the storage or stream to be removed. + + S_OK - The element was successfully removed. + Otherwise error code. + + + + + The RenameElement method renames the specified substorage or stream in this storage object. + + Pointer to a wide character null-terminated Unicode string that + contains the name of the substorage or stream to be changed. + Pointer to a wide character null-terminated unicode string that + contains the new name for the specified substorage or stream. + S_OK - The element was successfully renamed. + Otherwise error code. + + + + The SetElementTimes method sets the modification, access, and creation times of the + specified storage element, if the underlying file system supports this method. + + The name of the storage object element whose times are to be modified. + If NULL, the time is set on the root storage rather than one of its elements. + Either the new creation time for the element or NULL + if the creation time is not to be modified. + Either the new access time for the element or NULL if the + access time is not to be modified. + Either the new modification time for the element or NULL + if the modification time is not to be modified. + + S_OK - The time values were successfully set. + Otherwise error code. + + + + + The SetClass method assigns the specified class identifier (CLSID) to this storage object. + + The CLSID that is to be associated with the storage object. + S_OK - The CLSID was successfully assigned. + Otherwise error code. + + + + + The SetStateBits method stores up to 32 bits of state information in this storage object. + This method is reserved for future use. + + Specifies the new values of the bits to set. No legal values are + defined for these bits; they are all reserved for future use and must not be used by applications. + A binary mask indicating which bits in grfStateBits are significant in this call. + S_OK - The state information was successfully set. + Otherwise error code. + + + + + The Stat method retrieves the STATSTG structure for this open storage object. + + On return, pointer to a STATSTG structure where this + method places information about the open storage object. This parameter is NULL if an error occurs. + Specifies that some of the members in the STATSTG structure + are not returned, thus saving a memory allocation operation. + Values are taken from the STATFLAG enumeration. + + S_OK - The STATSTG structure was successfully returned at the specified location. + Otherwise error code. + + + + + The IEnumSTATPROPSETSTG interface iterates through an array of STATPROPSETSTG structures. + + + + + The Next method retrieves a specified number of STATPROPSETSTG structures that follow + subsequently in the enumeration sequence. + + The number of STATPROPSETSTG structures requested. + An array of STATPROPSETSTG structures returned. + The number of STATPROPSETSTG structures retrieved in the rgelt parameter. + + + + The Skip method skips a specified number of STATPROPSETSTG structures in the enumeration sequence. + + The number of STATPROPSETSTG structures to skip. + + + + The Reset method resets the enumeration sequence to the beginning of the STATPROPSETSTG structure array. + + + + + The Clone method creates an enumerator that contains the same enumeration state as the current + STATPROPSETSTG structure enumerator. Using this method, a client can record a particular point + in the enumeration sequence and then return to that point later. + + A pointer to the variable that receives the IEnumSTATPROPSETSTG interface pointer. + + + + The IEnumSTATPROPSTG interface iterates through an array of STATPROPSTG structures + + + + + The Next method retrieves a specified number of STATPROPSTG structures, that follow subsequently + in the enumeration sequence. + + The number of STATPROPSTG structures requested. + An array of STATPROPSTG structures returned. + The number of STATPROPSTG structures retrieved in the rgelt parameter. + + + + The Skip method skips the specified number of STATPROPSTG structures in the enumeration sequence. + + The number of STATPROPSTG structures to skip. + + + + The Reset method resets the enumeration sequence to the beginning of the STATPROPSTG structure array. + + + + + The Clone method creates an enumerator that contains the same enumeration state as the current + STATPROPSTG structure enumerator + + A pointer to the variable that receives the IEnumSTATPROPSTG interface pointer. + + + + + + + + + The vt + + + + + The int PTR + + + + + The byte value + + + + + The int value + + + + + The bool value + + + + + The file time + + + + + The double value + + + + + The short value + + + + + The int PTR2 + + + + + The IPropertyStorage interface manages the persistent properties of a single property set. + Persistent properties consist of information that can be stored persistently in a + property set, such as the summary information associated with a file. + + + + + The ReadMultiple method reads specified properties from the current property set. + + The numeric count of properties to be specified in the rgpspec array. + An array of PROPSPEC structures specifies which properties are read. + Properties can be specified either by a property ID or by an optional string name. + Caller-allocated array of a PROPVARIANT structure that, on return, + contains the values of the properties specified by the corresponding elements in the rgpspec array. + + + + The WriteMultiple method writes a specified group of properties to the current property set. + If a property with a specified name or property identifier already exists, it is replaced, + even when the old and new types for the property value are different. + + The number of properties set. The value of this parameter can be set to zero; + An array of the property IDs (PROPSPEC) to which properties are set. + An array (of size cpspec) of PROPVARIANT structures that contain the property values to be written. + The minimum value for the property IDs that the method must assign if the + rgpspec parameter specifies string-named properties for which no property IDs currently exist. + + + + The DeleteMultiple method deletes as many of the indicated properties as exist in this property set. + + The numerical count of properties to be deleted. The value of this parameter can + legally be set to zero, however that defeats the purpose of the method as no properties are thereby + deleted, regardless of the value set in rgpspec. + Properties to be deleted. A mixture of property identifiers and string-named + properties is permitted. There may be duplicates, and there is no requirement that properties be + specified in any order. + + + + The ReadPropertyNames method retrieves any existing string names for the specified property IDs. + + The number of elements on input of the array rgpropid. + The value of this parameter can be set to zero. + An array of property IDs for which names are to be retrieved. + A caller-allocated array of size cpropid of LPWSTR members. + On return, the implementation fills in this array. + + + + The WritePropertyNames method assigns string names to a specified array of property IDs in the current property set. + + The size on input of the array rgpropid. Can be zero. + However, making it zero causes this method to become non-operational. + An array of the property IDs for which names are to be set. + Array of new names to be assigned to the corresponding property + IDs in the rgpropid array. These names may not exceed 255 characters (not including the NULL terminator). + + + + The DeletePropertyNames method deletes specified string names from the current property set. + + The size on input of the array rgpropid. If 0, no property names are deleted. + Property identifiers for which string names are to be deleted. + + + + The IPropertyStorage::Commit method saves changes made to a property storage + object to the parent storage object. + + The flags that specify the conditions under which the commit is to be performed. + + + + The Revert method discards all changes to the named property set since it was last opened or + discards changes that were last committed to the property set. + + + + + The Enum method creates an enumerator object designed to enumerate data of type STATPROPSTG, + which contains information on the current property set. + + Pointer to IEnumSTATPROPSTG pointer variable that receives the interface + pointer to the new enumerator object. + + + + The SetTimes method sets the modification, access, and creation times of this property set, + if supported by the implementation. Not all implementations support all these time values. + + Pointer to the new creation time for the property set. May be NULL, + indicating that this time is not to be modified by this call. + Pointer to the new access time for the property set. May be NULL, + indicating that this time is not to be modified by this call. + Pointer to the new modification time for the property set. May be + NULL, indicating that this time is not to be modified by this call. + + + + The SetClass method assigns a new CLSID to the current property storage object, and + persistently stores the CLSID with the object. + + New CLSID to be associated with the property set. + + + + The Stat method retrieves information about the current open property set. + + Pointer to a STATPROPSETSTG structure, which contains + statistics about the current open property set. + + + + The IPropertySetStorage interface creates, opens, deletes, and enumerates property set + storages that support instances of the IPropertyStorage interface. + + + + + The Create method creates and opens a new property set in the property set storage object. + + The FMTID of the property set to be created. For information about + FMTIDs that are well-known and predefined in the Platform SDK, see Predefined Property Set + Format Identifiers. + A pointer to the initial class identifier CLSID for this property set. + May be NULL, in which case it is set to all zeroes. + The values from PROPSETFLAG Constants. + An access mode in which the newly created property set is to be opened, + taken from certain values of STGM_Constants, as described in the following Remarks section. + A pointer to the output variable that receives the IPropertyStorage interface pointer. + + + + The Open method opens a property set contained in the property set storage object. + + The format identifier (FMTID) of the property set to be opened. + For more information about well-known and predefined FMTIDs in the Platform SDK + The access mode in which the newly created property set is to be + opened. These flags are taken from STGM Constants. + A pointer to the IPropertyStorage pointer variable that receives + the interface pointer to the requested property storage subobject. + + + + The Delete method deletes one of the property sets contained in the property set storage object. + + FMTID of the property set to be deleted. + + + + The Enum method creates an enumerator object which contains information on the + property sets stored in this property set storage. + + Pointer to IEnumSTATPROPSETSTG pointer variable that + receives the interface pointer to the newly created enumerator object. + + + + Class provide access to STG API functions. + + + + + To prevent user from creation of this class instances. + + + + + StgOpenStorage opens an existing root storage object in the file system. You + can use this function to open compound files but you cannot use it to open + directories, files, or summary catalogs. Nested storage objects can only be + opened using their parents' IStorage::OpenStorage method. + + [in] Pointer to the path of the NULL-terminated + Unicode string file containing the storage object to open. This parameter + is ignored if the pstgPriority parameter is not NULL. + Most often NULL. If not NULL, this parameter is + used instead of the pwcsName parameter to specify the pointer to the + IStorage interface on the storage object to open. It points to a previous + opening of a root storage object, most often one that was opened in priority + mode. After the StgOpenStorage function returns, the storage object specified + in the pstgPriority parameter on function entry is not valid and can no + longer be used. Instead, use the storage object specified in the ppStgOpen + parameter. + Specifies the access mode to use to open the + storage object. + If not NULL, pointer to a block of elements in + the storage that are to be excluded as the storage object is opened. The + exclusion occurs regardless of whether a snapshot copy happens on the open. + May be NULL. + Indicates reserved for future use; must be zero. + [out] Pointer IStorage* pointer variable that receives + the interface pointer to the opened storage. + + S_OK + Indicates that the storage object was successfully opened. + STG_E_FILENOTFOUND + Indicates that the specified file does not exist. + STG_E_ACCESSDENIED + Access denied because the caller does not have enough permissions, or another caller + has the file open and locked. + STG_E_LOCKVIOLATION + Access denied because another caller has the file open and locked. + STG_E_SHAREVIOLATION + Access denied because another caller has the file open and locked. + STG_E_FILEALREADYEXISTS + Indicates that the file exists but is not a storage object. + STG_E_TOOMANYOPENFILES + Indicates that the storage object was not opened because there are too many open files. + STG_E_INSUFFICIENTMEMORY + Indicates that the storage object was not opened due to inadequate memory. + STG_E_INVALIDNAME + Indicates a non-valid name in the pwcsName parameter. + STG_E_INVALIDPOINTER + Indicates a non-valid pointer in one of the parameters: snbExclude, pwcsName, + pstgPriority, or ppStgOpen. + STG_E_INVALIDFLAG + Indicates a non-valid flag combination in the grfMode parameter. + STG_E_INVALIDFUNCTION + Indicates STGM_DELETEONRELEASE specified in the grfMode parameter. + STG_E_OLDFORMAT + Indicates that the storage object being opened was created by the Beta 1 storage + provider. This format is no longer supported. + STG_E_NOTSIMPLEFORMAT + Indicates that the STGM_SIMPLE flag was specified in the grfMode parameter and the + storage object being opened was not written in simple mode. + STG_E_OLDDLL + The DLL being used to open this storage object is a version of the DLL that is older + than the one used to create it. + STG_E_PATHNOTFOUND + Specified path does not exist. + STG_E_SHAREVIOLATION + Access denied because another caller has the file open and locked. + + + + + Opens an existing root storage object in the file system. You can use this function + to open compound files and regular files. To create a new file, use the + StgCreateStorageEx function. + + [in] Pointer to the path of the NULL-terminated Unicode + string file containing the storage object. This string size must not exceed + MAX_PATH characters. + [in] Specifies the access mode to open the new storage object. + For more information, see the STGM enumeration. If the caller specifies transacted + mode together with STGM_CREATE or STGM_CONVERT, the overwrite or conversion takes + place when the commit operation is called for the root storage. If IStorage::Commit + is not called for the root storage object, previous contents of the file will be + restored. STGM_CREATE and STGM_CONVERT cannot be combined with the STGM_NOSNAPSHOT + flag, because a snapshot copy is required when a file is overwritten or converted + in the transacted mode. + [in] Specifies the storage file format. For more information, + see the STGFMT enumeration. + [in] Depends on the value of the stgfmt parameter. + STGFMT_DOCFILE should be zero (0) or FILE_FLAG_NO_BUFFERING. + [in, out] Pointer to a STGOPTIONS structure that contains + information about the storage object being opened. The pStgOptions parameter is + valid only if the stgfmt parameter is set to STGFMT_DOCFILE. + [in] Reserved for future use; must be zero. + [in] Specifies the Guid of the interface pointer to return. + [out] Address of an interface pointer variable that + receives a pointer for an interface on the storage object being opened; contains + NULL if operation failed. + + S_OK + Indicates that the storage object was successfully opened. + STG_E_INVALIDPOINTER + Indicates a non-valid pointer in the ppObjectOpen parameter. + STG_E_INVALIDPARAMETER + Indicates a non-valid value for the grfAttrs, reserved1, reserved2, grfMode, or + stgfmt parameters. Can occur if the FILE_FLAG_NO_BUFFERING flag is specified for + grfAttrs but the sector size of the file is not an integer multiple of the + underlying disk's sector size. + E_NOINTERFACE + Indicates that the specified interface is not supported. + STG_E_INVALIDFLAG + Indicates a non-valid flag combination in the grfMode pointer (includes both + STGM_DELETEONRELEASE and STGM_CONVERT flags). + STG_E_INVALIDNAME + Indicates a non-valid name in the pwcsName parameter. + STG_E_INVALIDFUNCTION + Indicates that the grfMode is set to STGM_DELETEONRELEASE. + STG_E_LOCKVIOLATION + Access denied because another caller has the file open and locked. + STG_E_SHAREVIOLATION + Access denied because another caller has the file open and locked. + STG_E_UNIMPLEMENTEDFUNCTION + Indicates that the StgOpenStorageEx function is not implemented by the operating + system. In this case, use the StgOpenStorage function instead. + STG_E_INCOMPLETE + Indicates that the file could not be opened because it is on a high-latency device. + This can only occur if the parameter is IID_IPropertySetStorage, and the + stgfmt parameter is STGFMT_FILE. + STG_E_ACCESSDENIED + Indicates that the file could not be opened because the underlying storage device + does not allow such access to the current user. When opening the storage object + in transacted mode (STGM_TRANSACTED), this error may also indicate that a temporary + file could not be created in the temporary directory as specified by the + GetTempPath function. The GetTempPath function retrieves the path of the directory + designated for temporary files. + + + + + StgCreateDocfile creates a new compound file storage object using the COM-provided + compound file implementation for the IStorage interface. + + [in] Pointer to a NULL-terminated Unicode string name for the + compound file being created. It is passed uninterpreted to the file system. This can + be a relative name or NULL. If NULL, a temporary compound file is allocated with a + unique name. + [in] Specifies the access mode to use when opening the new + storage object. For more information, see the STGM enumeration. If the caller + specifies transacted mode together with STGM_CREATE or STGM_CONVERT, the overwrite + or conversion takes place when the commit operation is called for the root storage. + If IStorage::Commit is not called for the root storage object, previous contents of + the file will be restored. STGM_CREATE and STGM_CONVERT cannot be combined with + the STGM_NOSNAPSHOT flag, because a snapshot copy is required when a file is + overwritten or converted in the transacted mode. + [in] Reserved for future use; must be zero. + [out] Pointer to the location of the IStorage pointer to + the new storage object. + + S_OK - Indicates that the compound file was successfully created. + STG_E_ACCESSDENIED - Access denied because the caller does not have enough permissions + or another caller has the file open and locked. + STG_E_FILEALREADYEXISTS + Indicates that the compound file already exists and grfMode is set to STGM_FAILIFTHERE. + STG_E_INSUFFICIENTMEMORY + Indicates that the compound file was not created due to inadequate memory. + STG_E_INVALIDFLAG + Indicates a non-valid flag combination in the grfMode parameter. + STG_E_INVALIDNAME + Indicates a non-valid name in the pwcsName parameter. + STG_E_INVALIDPOINTER + Indicates a non-valid pointer in the pwcsName parameter or the ppStgOpen parameter. + STG_E_LOCKVIOLATION + Access denied because another caller has the file open and locked. + STG_E_SHAREVIOLATION + Access denied because another caller has the file open and locked. + STG_E_TOOMANYOPENFILES + Indicates that the compound file was not created due to a lack of file handles. + STG_S_CONVERTED + Indicates that the specified file was successfully converted to storage format. + + + + + The StgCreatePropSetStg function creates a property set storage object from a specified storage object. + + Pointer to the storage object that contains or is to + contain one or more property sets. + Reserved for future use; must be zero. + Pointer to IPropertySetStorage* pointer variable that receives the + interface pointer to the property-set storage object. + S_OK - The property set storage object was successfully created. + + + + The StgCreatePropSetStg function creates a property set storage object from a specified storage object. + + Pointer to the storage object that contains or is to + contain one or more property sets. + Reserved for future use; must be zero. + Pointer to IPropertySetStorage* pointer variable that receives the + interface pointer to the property-set storage object. + S_OK - The property set storage object was successfully created. + + + + The CreateILockBytesOnHGlobal function creates a byte array object, using global memory + as the physical device, which is intended to be the compound file foundation. + + The memory handle allocated by the GlobalAlloc function. + A flag that specifies whether the underlying handle for + this byte array object should be automatically freed when the object is released. + The address of ILockBytes pointer variable that receives the interface + pointer to the new byte array object. + S_OK - The byte array object was created successfully. + + + + The StgCreateDocfileOnILockBytes function creates and opens a new compound file + storage object on top of a byte-array object provided by the caller. + + A pointer to the ILockBytes interface on the underlying + byte-array object on which to create a compound file. + Specifies the access mode to use when opening the new compound file. + For more information, see STGM Constants. + Reserved for future use; must be zero. + A pointer to the location of the IStorage pointer on the new storage object. + + S_OK - Indicates that the compound file was successfully created. + Otherwise error code. + + + + + The StgOpenStorageOnILockBytes function opens an existing storage object that does not reside in a + disk file, but instead has an underlying byte array provided by the caller. + + ILockBytes pointer to the underlying byte array object that contains the + storage object to be opened. + Most often NULL. If not NULL, this parameter is used instead of the + plkbyt parameter to specify the storage object to open. In this case, it points to the IStorage + interface on a previously opened root storage object, most often one that was opened in priority mode. + Specifies the access mode to use to open the storage object. + Can be NULL. If not NULL, this parameter points to a block of elements in this + storage that are to be excluded as the storage object is opened. This exclusion occurs independently of + whether a snapshot copy happens on the open. + Indicates reserved for future use; must be zero. + Points to the location of an IStorage pointer to the opened storage on successful return. + S_OK - The storage object was successfully opened. + Otherwise error code. + + + + + The GlobalAlloc function allocates the specified number of bytes from the heap. + Windows memory management does not provide a separate local heap and global heap. + + Memory allocation attributes. + Number of bytes to allocate. + + If the function succeeds, the return value is a handle to the newly + allocated memory object. If the function fails, the return value is NULL. + To get extended error information, call GetLastError. + + + + + + + + + + + + + + + + + + + + + Flags for GlobalAlloc function. + + + + + Allocates fixed memory. The return value is a pointer. + + + + + Allocates movable memory. Memory blocks are never moved in physical memory, + but they can be moved within the default heap. + + + + + Initializes memory contents to zero. + + + + + NO Discard memory. + + + + + Storage API wrapper classes provide access to storage data from .NET code. + + + + + Open storage in read-only mode. + + + + + Open storage stream in read-only mode. + + + + + Create a new stream in storage. + + + + + Open storage or stream in ReadWrite mode. + + + + + Default buffer size for stream copying. + + + + + Options to open storage in read-only mode. Used to open already opened file. + + + + + Reference in COM interface which provides access to stream in storage. + + + + + Reference in COM interface which provide access to storage. + + + + + True if class was disposed; otherwise False. + + + + + True if stream supports read operation; otherwise False. + + + + + True stream supports write operation; otherwise False. + + + + + True if stream supports seek operation; otherwise False. + + + + + True if stream opened in Transaction mode and on Flush method call + class must commit transaction; otherwise False. + + + + + Length of stream data. + + + + + List of streams names provided by storage. + + + + + List of storage names found in current storage. + + + + + File name of storage. + + + + + Stream name. + + + + + Sub-storage name opened by class. + + + + + Storage Mode: Open or Create. + + + + + Stream Mode: Open or Create. + + + + + Current stream position, used for optimization. Allows users + to skip Seek operations if required. + + + + + Represents the locking bytes. + + + + + Closes the stream. + + + + + Commit changes. + + + + + Commit changes. + + Commit code. + + When commit operation fails. + + + + + Discards all changes that have been made to the storage object + since the last commit operation. + + + + + Seek in stream. + + New offset. + Start point for Seek operation. + Current position. + + When seek operation fails. + + + + + Set stream length. + + New stream length + + When SetLength operation fails. + + + + + Read data from stream. + + Output stream. + Offset in output buffer. + Quantity of bytes to read. + Quantity of read bytes. + + When buffer is NULL. + + + When offset or count is less than zero. + + + When there are not enough items in the buffer. + + + When Read operation fails. + + + + + Write data to stream. + + Buffer with data. + Offset in input buffer from which data started. + Quantity of bytes which must be written. + + When buffer is NULL. + + + When offset or count is less than zero. + + + When there are not enough items in the buffer + or stream is in Read-only mode. + + + When Write operation fails. + + + + + To prevent class creation by default constructor. + + + + + Open storage/compound file. + + File name of storage. + Mode which must be used for open operation. + + When fileName is NULL. + + + Couldn't open the storage + + + + + Open storage and one stream of it. + + File name of storage. + Flags that are used for storage open. + Stream name. + Flags which used for stream in storage open. + + + + Open storage and its stream in Read-only mode. + + File name. + Stream name. + + + + Open storage in Read-only mode but do not open stream. To open + special stream, use OpenStream methods. + + Storage file name. + + + + Inherit stream storage and opens its stream in Read-only mode. + + Storage of stream. + Stream name to open. + + + + Inherit stream storage and opensits streams with the user specified flags. + + Storage to inherit. + Stream name. + Stream open flags. + + + + Open or create stream specified by user name. + + Inherited storage. + Stream name. + True to create stream; otherwise open. + + + + Inherit storage and open or create in it stream with spcified user name + + Inherited storage. + Stream name. + Stream open / create flags. + True to create stream; otherwise open. + + + + Create a new instance of StgStream. + + Base stream. + Flags for create stream. + + + + Create a new instance of StgStream by defoult flag. + + Base stream. + + + + Dispose stream. Close stream, release references on COM interfaces, and + free resources. + + + + + Open stream in Read-only mode. + + Stream name. + + + + Open stream from storage with specified flags. + + Stream name. + Stream open flags. + + When streamName is NULL. + + + When the specified stream could not be found in the storage. + + + When it was not possible to open the stream. + + + + + Opens sub storage. + + Storage name to open. + Returns stream of opened storage. + + + + Opens sub storage. + + Storage name to open. + Open flags. + Returns stream of opened storage. + + + + Creates sub storage. + + Storage name to Create. + Returns stream of opened storage. + + + + Creates sub storage. + + Storage name for create. + Create flags. + Returns stream for created storage. + + + + Create stream in opened storage with specified name. + + Stream name. + + + + Create stream in storage with specified name and flags. + + Stream name. + Stream flags. + + When its not possible to create stream. + + + + + Saves internal ILockBytes into stream. + + Stream to save into. + + + + Searches for stream name in the streams array ignoring case. + + Stream name to locate. + Name of the stream in the storage. + + + + Indicates whether storage contains required stream. + + Stream to search. + True if stream was found. + + + + Indicates whether storage contains required substorage. + + Storage to search. + True if stream was found. + + + + Removes the specified storage or stream from this storage object. + + Name of the storage or stream to be removed. + + 0 - The element was successfully removed. + Otherwise error code. + + + + + Copies one storage into another. + + Source stream. + Destination stream. + + + + Method to create new storage and return StgStream class for it. + + Storage file name. + Reference on instance which knows how to work with it. + + When compound file couldn't be created. + + + + + Cretes storage on ILockBytes. + + Created storage. + + + + Check storage availability. + + + If storage is NULL. + + + + + Check stream availability. + + + When stream is NULL. + + + + + Calculate stream length. + + Returns length of currently open stream. + + + + Returns list of streams stored in storage. + + List of stream names. + + When elements of the storage couldn't be enumerated . + + + When it is possible to get IEnumSTATSTG interface reference from storage. + + + + + Return list of sub-storages found in current storage. + + List of found storages. + + + + Calculates subItems names. + + + + + Adds data. + + Item to add. + Collection to add. + + + + Adds data as stream type. + + Item to add. + Collection where adding is. + + + + Adds data as all type. + + Item to add. + Collection where adding is. + + + + Calculates subItems. + + SubItem event handler. + User data. + + + + Indicates if stream supports Read operation. Read-only. + + + + + Indicates if stream supports Seek operation. Read-only. + + + + + Indicates if stream supports Write operation. Read-only. + + + + + Indicates if stream is opened in Transaction mode. Read-only. + + + + + Length of stream. Read-only. + + + + + Gets / sets current position of stream. + + + + + Gets list of stream names found in storage. Read-only. + + + + + Gets the array of string thet is a storages. + + + + + Reference in COM interface which provide access to storage. + + + + + Reference in COM interface which provide access to stream in storage. + + + + + Get name of stream opened by the class. + + + + + Get name of sub storage opened by the class. + + + + + Gets the IlockBytes interface that represen the locked bytes. + + + + + Gets the file name. + + + + + Delegate that represents subItem name event. + + + + + Compound storage implementation based on standard COM-object. + + + + + Default storage name. Used for root storage, others should assign some other value. + + + + + + + + + + Collection with storage names. + + + + + Collection with stream names. + + + + + Name of the storage. + + + + + Calculates subItems names. + + + + + Adds data. + + Item to add. + Collection to add. + + + + Adds data as stream type. + + Item to add. + Collection where adding is. + + + + Adds data as all type. + + Item to add. + Collection where adding is. + + + + Calculates subItems. + + SubItem event handler. + User data. + + + + Initializes new instance of the class. + + Name of the file to open. + Storage options. + + + + Initializes new instance of the storage. + + Root substorage. + + + + Initializes new instance of te storage. + + Root substorage. + Name of the storage. + + + + Destructor. + + + + + Creates new stream inside this storage. + + Name of the stream to create. + Created stream object. + + + + Opens existing stream inside this storage. + + Name of the stream to open. + + + + + Removes existing stream from this storage. + + Name of the stream to remove. + + + + Determines whether storage contains specified stream. + + Name of the stream to check. + true if storage contains specified stream. + + + + Creates new substorage inside this one. + + Name of the storage to create. + Created storage object. + + + + Opens existing substorage inside this one. + + Name of the storage to open. + Created storage object. + + + + Removes exisiting substorage from this one. + + Name of the storage to remove. + + + + Determines whether this storage contains substorage with specified name. + + Name of the storage to check. + true if storage contains substorage with specified name. + + + + Commits changes. + + + + + Inserts copy of the storage and all subitems inside current storage. + + Storage to copy. + + + + Inserts copy of the stream inside current storage. + + Stream to copy. + + + + + + + + + Returns internal COM storage. This property will be removed after implementing + some document properties reading. + + + + + Returns all stream names that are placed inside this stream. + + + + + Returns all storage names that are placed inside this stream. + + + + + Returns name of the storage. + + + + + Delegate that represents subItem name event. + + + + + The PropVariant is used for defining the type tag and + the value of a property in a property set. + + + + + Represents the property data. + + + + + Sets property value. + + Value to set. + Type of the property to set. + + + + Gets property value. + + + + + Sets type of the variant. Write-only. + + + + + Name of the property. + + + + + Gets property id. + + + + + Offset to the type of the PropVariant. + + + + + Offset to the first int of the data. + + + + + Size of the integer. + + + + + Mask to get type of property or each element of the arrya (if property contains an array). + + + + + Bit mask for lower int value. + + + + + Bit mask for higher int value. + + + + + Number of bits in every integer value. + + + + + Difference in ticks of FILETIME and DateTime. + + + + + Bit mask for LinkToContent property of the DocumentProperty class. + + + + + Size of the native windows PROPVARIANT structure. + + + + + Offset to the second int of the data. + + + + + Array of IntPtr that should be freed on dispose using Marshal.FreeCoTaskMem. + + + + + Array of IntPtr that should be freed on dispose using Marshal.FreeHGlobal. + + + + + Pointer to the PropVariant. + + + + + Specifies a property by its property identifier (ID). + + + + + Array of PropVariants that will be disposed in Dispose method. + + + + + If True, then memory for the structure was allocated by + this class and should be freed on Dispose; + otherwise, memory was not allocated by this class and should not be freed. + + + + + Default constructor. + + + + + Creates PropVariant with data pointed by ptr. + + + + + + Reads data from IPropertyStorage. + + Property description. + IPropertyStorage to read data from. + Indicates whether property is built-in or not. + + + + Returns array of strings. + + + + + Converts IntPtr to the string. + + Value to convert. + Converted string. + + + + Parses not unicode string. + + Pointer to the sring to parse. + + + + + Returns an array of objects. + + + + + Fills PropVariant with array of strings. + + + + + Fills PropVariant with array of objects. + + + + + Sets Blob property value. + + Value to set. + + + + Sets property name. + + Name to set. + + + + Sets property value. + + Value to set. + Type of the property to set. + + + + Frees all allocated resources. + + + + + Frees resuources allocated for property name storage. + + + + + + + + + + + Writes variant to the property storage. + + + Property storage that will receive PropVariant value. + + + + + Reads information from the storage. + + Property information. + Storage to read from. + Indicates whether property is built-in. + + + + Reads information from the storage. + + Storage to read from. + Indicates whether property is built-in. + + + + Performs tasks associated with freeing, releasing, + or resetting unmanaged resources. + + + + + Finilizer. + + + + + Gets or sets the int16. + + The int16. + + + + Fills PropVariant with integer value. + + + + + Fills PropVariant with integer value. + + + + + Gets / sets PropVariant memory. + + + + + ID of the property that will be written into property storage. + + + + + Same as PropId. + + + + + Fills PropVariant with FILETIME value. + + + + + Fills PropVariant with bool value. + + + + + Fills PropVariant with string value. + + + + + Fills PropVariant with string value. + + + + + Fills PropVariant with FILETIME value. + + + + + Fills PropVariant with double value. + + + + + Gets / sets property name. + + + + + Returns value of the property. Read-only. + + + + + Indicates whether it is property or just link to source of some property. Read-only. + + + + + Returns id of the parent property. Read-only. + + + + + Gets property id. + + + + + Sets first integer value of the variant. Write-only. + + + + + Sets second integer value of the variant. Write-only. + + + + + Sets type of the variant. Write-only. + + + + + Represents the clipboard data. + + + + + Clipboard format. + + + + + Clipboard data. + + + + + Createas copy of the current object. + + A copy of the current object. + + + + Saves clipboard data into stream. + + Stream to write data into. + Size of the written data. + + + + Extracts data from the stream. + + Stream to get data from. + + + + .Net compound file implementation. + + + + + Name of the root entry. + + + + + Source stream. + + + + + File header. + + + + + + + + + + + + + + + + + + + + Root storage. + + + + + Short stream. + + + + + Stream containing items described by minifat. + + + + + MiniFAT. + + + + + Indicates whether substreams should maintain their own stream or should write + directly into the file's stream. + + + + + + + + + + Writes directory structure into file. + + Destination path. + Directory to write. + + + + Writes storage to specified path + + Destination path. + Storage to write. + + + + Writes stream into file + + Destination path. + Stream name. + Parent storage object. + + + + Default constructor. + + + + + Default constructor. + + + + + Default constructor. + + + + + + + + + + + Initializes internal variables. + + + + + + + + + + + + + + + + + + + + + Sets stream data for directory entry. + + Directory entry to update stream data for. + Stream to set. + + + + Sets entrie's long stream. + + Entry to update data for. + Data to set. + + + + Sets entrie's short stream. + + Entry to update data for. + Data to set. + + + + Writes stream data into compound file main stream + + Main stream to write into. + Start sector to write. + Stream to write. + Fat object. + + + + Here we have to allocate required sectors number. + + Entry to allocate sectors for. + Number of already allocated sectors. + Number of required sectors. + FAT object. + + + + Allocates sectors. + + Start sector in the chain. + Number of already allocated sectors. + Number of required sectors. + Fat object. + Start sector of the added chain. + + + + Gets offset to the sector. + + Zero-based sector index. + Sector shift (2^sectorShift = sector size). + Offset to the required sector. + + + + Gets offset to the sector. + + Zero-based sector index. + Sector shift (2^sectorShift = sector size). + Size of the header. + Offset to the required sector. + + + + Checks whether stream header belongs to compound file. + + Stream to check. + True if stream probably contains compound file data. + + + + Allocates new directory entry. + + Name of the stream. + Entry type. + Created directory entry. + + + + Marks item as free. + + Directory entry to be removed/freed. + + + + Reads data from internal stream. + + Entry to read data from. + Position inside entry stream. + Buffer that will cotain read data. + Size of the data to read. + Number of actually read bytes. + + + + Writes data into internal stream. + + Entry to write data into. + Position inside entry stream. + Buffer containing data to write. + Offset inside buffer to the data to write. + Size of the data to write. + + + + Saves compound file into stream. + + Stream to save data into. + + + + Writes internal stream into specified one. + + Destination stream to write into. + + + + Saves mini stream data. + + + + + Serializes directory entries. + + + + + Saves compound file into file. + + Name of the file to save into. + + + + Performs application-defined tasks associated with freeing, + releasing, or resetting unmanaged resources. + + + + + + + + + + + + + + + Returns root storage. + + + + + + + + + + + + + + + Returns base stream. Read-only. + + + + + Gets or sets value indicating whether substreams should maintain their own stream + or should write directly into the file's stream. + + + + + Returns root storage object for this file. + + + + + This is exception thrown when experiencing problems with compound file. + + + + + Default exception message. + + + + + Default constructor. + + + + + Initializes new instance of the exception. + + Exception message. + + + + + + + + + RBTree with child elements. + + + + + + + + + + Initializes new instance of the storage. + + Parent file. + Name of the new storage. + Index to the directory entry that stores storage information. + + + + Initializes new instance of the storage. + + Parent compound file object. + Entry that describes current storage. + + + + + + + + + + Creates new stream. + + Name of the stream to create. + Created stream. + + + + Opens stream. + + Name of the stream to open. + Opened stream or null if there is no such stream. + + + + Removes stream from the storage, if it contains stream with such name. + + Stream name to delete. + + + + Checks whether storage contains stream with specified name. + + Name of the stream to check. + True if storage has stream with such name; false otherwise. + + + + Opens existing storage. + + Name of the storage to open. + Opened storage item or null if it was impossible to open it. + + + + Removes substorage from existing storage. + + Name of the storage to remove. + + + + + + + + + Checks whether this storage contains substorage with specified name. + + Name to check. + True if there is such storage; false otherwise. + + + + + + + + + Returns directory entry id that corresponds to the specified node. + + + + + + + Returns name of the storage. + + + + + Returns directory entry for this stream. + + + + + .Net implementation of the compound stream. + + + + + Parent file item. + + + + + Directory entry of this stream. + + + + + Stream with data. If it is null, then data hasn't been read yet or stream is closed. + + + + + Initializes new instance of the stream. + + Parent file object. + Entry that describes this stream item. + + + + + + + + + Reads a sequence of bytes from the current stream and advances the position + within the stream by the number of bytes read. + + An array of bytes. When this method returns, the buffer + contains the specified byte array with the values between offset and + (offset + count - 1) replaced by the bytes read from the current source. + The zero-based byte offset in buffer at which to begin + storing the data read from the current stream. + The maximum number of bytes to be read from the current stream. + The total number of bytes read into the buffer. This can be less than + the number of bytes requested if that many bytes are not currently available, + or zero (0) if the end of the stream has been reached. + + + + writes a sequence of bytes to the current stream and advances the current + position within this stream by the number of bytes written. + + An array of bytes. This method copies count bytes + from buffer to the current stream. + The zero-based byte offset in buffer at which to + begin copying bytes to the current stream. + The number of bytes to be written to the current stream. + + + + Sets the position within the current stream. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference + point used to obtain the new position. + The new position within the current stream. + + + + Sets the length of the current stream. + + The desired length of the current stream in bytes. + + + + Causes any buffered data to be written to the underlying compound file. + + + + + Releases the unmanaged resources used by the Stream and optionally releases the managed resources. + + true to release both managed and unmanaged resources; + false to release only unmanaged resources. + + + + Returns directory entry for this stream. + + + + + Gets the length in bytes of the stream. Read-only. + + + + + Gets or sets the position within the current stream. + + + + + Gets a value indicating whether the current stream supports reading. + + + + + Gets a value indicating whether the current stream supports seeking. + + + + + Gets a value indicating whether the current stream supports writing. + + + + + This is wrapper over compound stream object. Simply redirects all calls to it + with one exception - it doesn't dispose underlying stream object. + + + + + Wrapped stream object. + + + + + Initializes new instance of the wrapper. + + Object to wrap. + + + + Causes any buffered data to be written to the underlying compound file. + + + + + Reads a sequence of bytes from the current stream and advances the position + within the stream by the number of bytes read. + + An array of bytes. When this method returns, the buffer + contains the specified byte array with the values between offset and + (offset + count - 1) replaced by the bytes read from the current source. + The zero-based byte offset in buffer at which to begin + storing the data read from the current stream. + The maximum number of bytes to be read from the current stream. + The total number of bytes read into the buffer. This can be less than + the number of bytes requested if that many bytes are not currently available, + or zero (0) if the end of the stream has been reached. + + + + Sets the position within the current stream. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference + point used to obtain the new position. + The new position within the current stream. + + + + Sets the length of the current stream. + + The desired length of the current stream in bytes. + + + + writes a sequence of bytes to the current stream and advances the current + position within this stream by the number of bytes written. + + An array of bytes. This method copies count bytes + from buffer to the current stream. + The zero-based byte offset in buffer at which to + begin copying bytes to the current stream. + The number of bytes to be written to the current stream. + + + + + + + + + + Gets a value indicating whether the current stream supports reading. + + + + + Gets a value indicating whether the current stream supports seeking. + + + + + Gets a value indicating whether the current stream supports writing. + + + + + Gets the length in bytes of the stream. Read-only. + + + + + Gets or sets the position within the current stream. + + + + + Number of items in the file header. + + + + + List of all fat sector ids. + + + + + List with used Dif sectors. + + + + + Default constructor. + + + + + + + + + + + + Adds required number of DIF sectors. + + Number of sectors to add. + FAT object. + + + + + + + + + This class represents directory structure in the compound file. + + + + + List of directory entries. + + + + + Default constructor. + + + + + Initializes new instance of the directory. + + Data to parse. + + + + Searches for empty entry index. + + Index of the first empty directory entry. + + + + Adds new entry to the collection or replaces existing empty entry with this one. + + Entry to add. + + + + Saves directory entries into specified stream. + + Stream to save directory into. + + + + Returns list of directory entries. + + + + + Represents single directory entry in the compound file. + + + + + Size of a single directory entry. + + + + + Size of the stream name field. + + + + + Entry name. + + + + + Entry type. + + + + + Entry "color" in red-black tree. + + + + + Id of the left-sibling. + + + + + Id of the right-sibling. + + + + + Id of the child acting as the root of all the children of thes element (if entry type if Storage). + + + + + Storage CLSID. + + + + + User flags of this storage. + + + + + Create time-stamp for a storage. + + + + + Modify time-stamp for a storage. + + + + + Starting stream sector. + + + + + Stream size. + + + + + Reserved. Must be zero. + + + + + Entry id. + + + + + Last sector id. + + + + + Initializes new instance of the entry. + + Name of the new entry. + Type of the new entry. + Id of the new entry. + + + + Initializes new instance of the entry. + + Data of the new entry. + Offset to the entry data. + Entry id. + + + + Writes directory entry data inside specified stream. + + Stream to write data into. + + + + Entry name. + + + + + Entry type. + + + + + Entry "color" in red-black tree. + + + + + Id of the left-sibling. + + + + + Id of the right-sibling. + + + + + Id of the child acting as the root of all the children of thes element (if entry type if Storage). + + + + + Storage CLSID. + + + + + User flags of this storage. + + + + + Create time-stamp for a storage. + + + + + Modify time-stamp for a storage. + + + + + Starting stream sector. + + + + + Stream size. + + + + + Reserved. Must be zero. + + + + + Returns entry id. Read-only. + + + + + Possible entry types. + + + + + Invalid entry. + + + + + Entry is storage. + + + + + Entry is stream. + + + + + Root entry. + + + + + Document properties enumerator. + + + + + Offset to the first section. + + + + + List of all sections. + + + + + Default constructor. + + + + + Initializes new instance of the enumerator. + + Stream to parse. + + + + Extracts sections data from the stream. + + + + + + Extracts header information from the stream. + + + + + + Saves all sections into stream. + + Stream to save sections into. + + + + Extracts header information from the stream. + + + + + + Saves collection into stream. + + + + + + Returns list lf all sections. + + + + + This class represents FAT object in the compound file. + + + + + + + + + + List with free sectors. + + + + + Sector size. + + + + + + + + + + Default constructor. + + + + + Default constructor. + + + + + Initializes new instance of the fat. + + Parent compound file object. + Stream to extract fat from. + DIF object to help in parsing + File header object. + + + + Gets data of the compound file substream. + + Stream with compound file data. + First sector of the stream to get. + Parent compound file object. + + + + + Gets index of the next sector in the chain. + + Index of the current sector in the chain. + Next sector in the chain. + + + + Closes sectors chain by marking all those sectors as free starting from specified one. + + + + + + Enlarges existing sectors chain. + + Last sector in the chain that requires enlargment. + Number of sectors to add. + Index of the chain start (used when chain wasn't created before). + + + + Frees specified sector. + + Sector to free. + + + + Allocates required number of new sectors. + + Start sector index. + Number of sectors to allocate. + First sector in the new part of the chain. + + + + Allocates required number of free sectors. + + Start sector index (this value points to the last used sector after this operation). + Number of sectors to allocate. + First sector in the new part of the chain + + + + Saves fat data into stream. + + Stream to write fat data into. + DIF object to update after writing. + File header. + + + + Allocates required number of fat sectors. + + Number of sectors that must be allocated. + DIF structure that contains info about fat sectors sequence. + + + + Fills single fat sector. + + Index in the fat to start writing from. + Sector to fill. + First item that wasn't saved inside sector. + + + + Allocates new sector of the specified sector type. + + Sector type to allocate. + Allocated sector index. + + + + Adds single sector to the stream. + + Index of the added sector. + + + + Writes fat data directly into a stream. + + Stream to write data into. + Size of the sector to use for writing. + + + + Evaluates sector offset. + + Zero-based sector index to evaluate offset for. + Offset to the sector start. + + + + Evaluates number of sectors in the sector chain starting from the specified sector. + + Starting sector of the entry to enumerate. + Number of sectros in the sector chain. + + + + Sector size. + + + + + This class represents compound file header. + + + + + Size of the header. + + + + + Signature size. + + + + + Default (and the only supported) signature. + + + + + File signature. + + + + + Class id. + + + + + Minor version of the format. + + + + + Major version of the dll/format. + + + + + Byte order, 0xFFFE for Intel byte-ordering. + + + + + Size of sectors in power-of-two (typically 9). + + + + + Size of mini-sectors in power-of-two (typically 6). + + + + + Reserved, must be zero. + + + + + Reserved, must be zero. + + + + + Reserved, must be zero. + + + + + Number of sectors in the FAT chain. + + + + + First sector in the directory chain. + + + + + Signature used for transactioning, must be zero. + + + + + Maximum size for mini-streams. Typically 4096 bytes. + + + + + First sector in the mini-FAT chain. + + + + + Number of sectors in the mini-FAT chain. + + + + + First sector in the DIF chain. + + + + + Number of sectors in the DIF chain. + + + + + First 109 fat sectors. + + + + + Default constructor. + + + + + Initializes new instance of the file header and extracts data from the stream. + + Stream to extract header data from. + + + + Saves header into specified stream. + + Stream to write header into. + + + + Checks whether starting bytes of the stream are the same as signature of the compound file. + + Stream to check. + True if stream contains required signature. + + + + Checks whether signature is supported. + + + + + Checks whether signature is supported. + + Data to compare with default signature. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Size of the sector. Read-only. + + + + + Minor version of the format. + + + + + Major version of the dll/format. + + + + + Byte order, 0xFFFE for Intel byte-ordering. + + + + + Size of sectors in power-of-two (typically 9). + + + + + Size of mini-sectors in power-of-two (typically 6). + + + + + Reserved, must be zero. + + + + + Reserved, must be zero. + + + + + Reserved, must be zero. + + + + + Number of sectors in the FAT chain. + + + + + First sector in the directory chain. + + + + + Signature used for transactioning, must be zero. + + + + + Maximum size for mini-streams. Typically 4096 bytes. + + + + + First sector in the mini-FAT chain. + + + + + Number of sectors in the mini-FAT chain. + + + + + First sector in the DIF chain. + + + + + Number of sectors in the DIF chain. + + + + + First 109 fat sectors. + + + + + This comparer is used to compare item names inside storage. + + + + + Compares two objects and returns a value indicating whether one is less + than, equal to, or greater than the other. + + The first object to compare. + The second object to compare. + + Less than zero if x is less than y. + Zero if x equals y. + Greater than zero if x is greater than y. + + + + + Compares two objects and returns a value indicating whether one is less + than, equal to, or greater than the other. + + The first object to compare. + The second object to compare. + + Less than zero if x is less than y. + Zero if x equals y. + Greater than zero if x is greater than y. + + + + + Suitable Node colors used for 2-3-4 nodes detection. + + + + + Red color of node. + + + + + Black color of node. + + + + + Node class used for proper storing of data in the Map Collection. + + + + + Reference on left branch. + + + + + Reference on right branch. + + + + + Reference on parent branch. + + + + + Color of node branch. + + + + + Is current node Nil element or not? + + + + + Key part of stored in node data. + + + + + Value part of stored in node data. + + + + + Create red colored Tree node. + + Reference on left branch. + Reference on parent branch. + Refernce on right branch. + Key value of node. + Value part of node. + + + + Main constructor of class. + + Reference on left branch. + Reference on parent branch. + Refernce on right branch. + Key value of node. + Value part of node. + Color of node. + + + + Reference on left branch. + + + + + Reference on right branch. + + + + + Reference on parent branch. + + + + + Color of node branch. + + + + + Is current node Nil element or not? + + + + + Key part of stored in node data. + + + + + Value part of stored in node data. + + + + + Is current node set to red color? + + + + + Is current node set to black color? + + + + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + Create collection with specified comparer for Key values. + + Comparer for key values. + + + + Create Empty node for collection. + + + + + Clear collection. + + + + + Add item into collection. + + Key part. + Value. + + + + Check whether collection contains specified key. + + True if node with specified key is found; otherwise False. + Key for check. + + + + Remove from collection item with specified key. + + Key to identify item. + + + + TODO: place correct comment here + + + TODO: place correct comment here + + + + + Get minimum value for specified branch. + + Branch start node. + Reference on minimum value node. + + + + Get maximum value for specified branch. + + Branch start node. + Reference on maximum value node. + + + + Go to to next item in collection. + + Start node. + Reference on next item in collection or this.Empty if nothing found. + + + + Get previous item from collection. + + Start node. + Rererence on previous item in collection. + + + + Find node in collection by key value (search in lower side). + + Key of node to find. + Reference on found node, otherwise this.Empty value. + + + + Find node in collection by key value (search in upper side). + + Key of node to find. + Reference on found node, otherwise this.Empty value. + + + + Rotate branch into left side. + + Branch start node. + + + + Rotate branch into right side. + + Branch start node. + + + + Erase node from collection. + + Item to erase. + + + + Insert item into collection. + + Add into left side of tree or right. + Node for placement. + Key part of node. + Value part of node. + + + + Returns enumerator. + + Returns enumerator of current interface. + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + Bit mask for LinkToContent property of the DocumentProperty class. + + + + + Initializes new isntance of the PropertyData. + + + + + Initializes new instance of the property data. + + Id for the new property.. + + + + Extracts property data from the stream. + + Stream to get data from. + + + + Extracts property data from the stream. + + Stream to get data from. + + + + Determines whether [is valid property]. + + + + + + Extracts vector data from the stream. + + + + + + + + Extracts vector data from the stream. + + + + + + + + Creates array of the specified type. + + Item type. + Number of elements in the array. + Created array object. + + + + Extracts single value from the stream. + + + + + + + + + Extracts single value from the stream. + + + + + + + + + Gets DateTime object data from the stream. + + Stream to get data from. + Buffer used to extract blob parts. + Extracted DateTime data. + + + + Gets blob data from the stream. + + Stream to get blob data from. + Buffer used to extract blob parts. + Blob data. + + + + Gets clipboard data from the stream. + + Stream to get data from. + Buffer that can be used to extract clipboard data parts. + Clipboard data. + + + + Gets object value from the stream. + + Stream to get data from. + Maximum size of the data to extract. + Extracted object. + + + + Gets object value from the stream. + + Stream to get data from. + Maximum size of the data to extract. + Extracted object. + + + + Writes object into the stream. + + Stream to write data into. + Object to write. + Size of the written data. + + + + Writes property data into the stream. + + Stream to write data into. + Number of written bytes. + + + + Serializes names dictionary. + + Stream to serialize into. + Dictionary to serialize. + Size of the serialized data. + + + + Serializes vector data. + + + + + + + + Serializes single value into the stream. + + Stream to serialize into. + Value to serialize. + Value type. + Size of the written data. + + + + Serializes blob data. + + Stream to write blob into. + Blob value to write. + Size of the written data. + + + + Sets property value. + + Value to set. + Type of the property to set. + + + + Indicates whether it is property or just link to source of some property. Read-only. + + + + + Returns id of the parent property. Read-only. + + + + + GEts or sets property id. + + + + + Offset to the section header. + + + + + Section id. + + + + + Section size. + + + + + Contains all section properties. + + + + + Code page of the section. + + + + + Initializes new instance of the section. + + + + + + + Extracts properties from the stream. + + Stream to get section from. + + + + Parses dictionary based on the internal variables value. + + Stream to get dictionary from. + Dictionary to fill if necessary. + + + + Parses property names. + + Stream to get property data from. + Information about dictionary placement inside stream. + Parsed dictionary. + + + + Parses special properties (they shouldn't be visible to user and they contain some information). + + + + + + + + + Parses property names based on previously stored internal information. + + Stream to get data from. + Parsed dictionary. + + + + Saves section into stream. + + Stream to save section into. + + + + Prepares property name dictionary. + + Dictionary with property names. Key - property id, value - property name. + + + + Offset to the section header. + + + + + Section id. + + + + + Section size. + + + + + Properties count. + + + + + Gets list of all properties. + + + + + Contains constants that defines all known sector types. + + + + + Represents the stream helper. + + + + + Size of the Int32 in bytes. + + + + + Size of the Int162 in bytes. + + + + + Size of the Double in bytes. + + + + + Reads Int16 value from the stream. + + Stream to get data from. + Temporary buffer to put extracted bytes into. + Extracted Int32 value. + + + + Reads Int32 value from the stream. + + Stream to get data from. + Temporary buffer to put extracted bytes into. + Extracted Int32 value. + + + + Reads Double value from the stream. + + Stream to get data from. + Temporary buffer to put extracted bytes into. + Extracted Double value. + + + + Writes Int16 value from the stream. + + Stream to get data from. + Value to write. + Size of the written data. + + + + Writes Int32 value from the stream. + + Stream to write data into. + Value to write. + Size of the written data. + + + + Reads Double value from the stream. + + Stream to get data from. + Temporary buffer to put extracted bytes into. + Extracted Double value. + + + + Gets ASCII string from the stream starting from the current position. + + Stream to get data from. + Approximate string size. + Extracted string. + + + + Gets ASCII string from the stream starting from the current position. + + Stream to get data from. + Approximate string size. + Extracted string. + + + + Extracts unicode string from the stream. + + + + + + + + Gets ASCII string from the stream starting from the current position. + + Stream to get data from. + Approximate string size. + Extracted string. + + + + Writes unicode string into steram. + + Stream to write data into. + Value to write. + Size of the written data in bytes. + + + + Writes string into stream using specified encoding. + + Stream to write data into. + Value to write. + Encoding to use. + Size of the written data in bytes. + + + + Adds padding if necessary. + + + + + + + Removes last zero character from the string if it is present. + + Value to check. + String after removal. + + + + This is wrapper over compound stream object. Simply redirects all calls to it + with one exception - it doesn't dispose underlying stream object. + + + + + Wrapped storage object. + + + + + Initializes new instance of the wrapper. + + Object to wrap. + + + + Frees all allocated resources. + + + + + Creates new stream inside this storage. + + Name of the stream to create. + Created stream object. + + + + Opens existing stream inside this storage. + + Name of the stream to open. + + + + + Removes existing stream from this storage. + + Name of the stream to remove. + + + + Determines whether storage contains specified stream. + + Name of the stream to check. + true if storage contains specified stream. + + + + Creates new substorage inside this one. + + Name of the storage to create. + Created storage object. + + + + Opens existing substorage inside this one. + + Name of the storage to open. + Created storage object. + + + + Removes exisiting substorage from this one. + + Name of the storage to remove. + + + + Determines whether this storage contains substorage with specified name. + + Name of the storage to check. + true if storage contains substorage with specified name. + + + + Commits changes. + + + + + Returns all stream names that are placed inside this stream. + + + + + Returns all storage names that are placed inside this stream. + + + + + Returns name of the storage. + + + + + Returns directory entry for this stream. + + + + + .Net implementation of the compound stream. + + + + + Stream position. + + + + + Initializes new instance of the stream. + + Parent file object. + Entry that describes this stream item. + + + + + + + + + Reads a sequence of bytes from the current stream and advances the position + within the stream by the number of bytes read. + + An array of bytes. When this method returns, the buffer + contains the specified byte array with the values between offset and + (offset + count - 1) replaced by the bytes read from the current source. + The zero-based byte offset in buffer at which to begin + storing the data read from the current stream. + The maximum number of bytes to be read from the current stream. + The total number of bytes read into the buffer. This can be less than + the number of bytes requested if that many bytes are not currently available, + or zero (0) if the end of the stream has been reached. + + + + writes a sequence of bytes to the current stream and advances the current + position within this stream by the number of bytes written. + + An array of bytes. This method copies count bytes + from buffer to the current stream. + The zero-based byte offset in buffer at which to + begin copying bytes to the current stream. + The number of bytes to be written to the current stream. + + + + Sets the position within the current stream. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference + point used to obtain the new position. + The new position within the current stream. + + + + Sets the length of the current stream. + + The desired length of the current stream in bytes. + + + + Causes any buffered data to be written to the underlying compound file. + + + + + Gets the length in bytes of the stream. Read-only. + + + + + Gets or sets the position within the current stream. + + + + + Creates ODS converter with the workbook. + + The workbook to be converted to ODS format. + + + + Convert XlsIO fonts to ODF fonts. + + + + + Converts given XLS/XLSX file to ODS. + + Name of the output file. + + + + Converts given XLS/XLSX file to ODS. + + Name of the output file. + + + + Maps fonts, cell styles, page setup and master styles between XLS/XLSX and ODS formats. + + + + + Converts XlsIO styles to ODF styles and serializes the same. + + + + + Converts and serializes inline styles to ODF styles. + + + + + Converts sheet properties. + + + + + + + Maps fonts, inline styles and sheet data between XLS/XLSX and ODS formats. + + + + + Converts number formats to ODF styles. + + + + + Converts named styles to ODF styles. + + The ODF styles collection. + + + + + Convert single style to ODF style. + + The format record for a single style. + The ODF style to be populated. + + + + + Populated ODF styles with paragraph properties. + + + + + + + Maps XlsIO text alignment to ODF text alignment. + + value. + Equivalent value. + + + + Maps XlsIO text alignment to ODF text alignment. + + value. + Equivalent value. + + + + Maps XlsIO style name to default ODF style name. + + + The modified ODF style name. + + + + Converts XlsIO column style to ODF table column style. + + The column info record. + The ODF table column. + The ODF style collection. + The ODF table column mapped with style name. + + + + Converts XlsIO row style to ODF table row style. + + The row storage record. + The ODF table row. + The ODF style collection. + The ODF table column populated with row style. + + + + Converts XlsIO sheet to ODF table style. + + The worksheet to be converted. + The ODF tabe to be populated. + The ODF style collection. + + + + + Populates ODF table column properties. + + The column record. + Populated table column properties of ODF table column style. + + + + Populates ODF table row properties. + + The row storage record. + Populated table row properties of ODF table row style. + + + + Populates table cell properties in ODF table cell style. + + The format record. + The ODF table cell style to be populated. + + + + Populates text properties in ODF table cell style. + + The format record. + The ODF table cell style to be populated. + + + + Maps XlsIO underline style to ODF underline style of type . + + The text properties of single ODF table cell. + Undreline style of type . + + + + Maps page layout styles and master page styles. + + + + + Populates page layout properties in ODF page layout style. + + The page setup class. + The ODF page layout. + + + + Gets ODF column styles from XlsIO column collection. + + The worksheet in which the columns are present. + The equivalent ODF table. + The ODF style collection. + + + + COnverts XlsIO sheet data to ODF table content. + + The ODF style collection to include row and column styles. + + + + Gets ODS comment from XlsIO comment object. + + The sheet in which the comment is present. + The comment to be converted. + The table cell in which the comment is to be set. + The style collection of the sheet to hold the comment styles. + + + + Gets content style for the comment. + + The comment shape for which style is to be extracted. + The style object for the comment shape. + + + + Adds a span of specified text and style to the specified paragraph. + + The span text. + The sapn style. + Paragraph to which the span is to be added. + + + + Maps graphic fill properties between XlsIO and ODS. + + Fill type in XlsIO. + Fill type in ODS. + + + + Gets style for span elements in the comment text. + + Font index of the span. + Default font for the comemnt text. + + + + + Populate ODF styles with paragraph properties. + + + + + + + Gets cell type of ODF cell. + + The cell index of XlsIO range. + The ODF table cell. + The worksheet in which the range is present. + The cell collection. + The row in which the cell is present. + + + + Loads default ODF row style. + + The ODF style collection. + The worksheet to populate default ODF row style. + + + + Loads default ODF column style. + + The ODF style collection. + The worksheet to populate default ODF column style. + + + + Serializes populated ODF tables. + + Collection of ODF tables. + + + + Gets ODF table cell style name. + + The cell position. + The ODF style collection. + The oDF table cell. + + + + Populates page layout properties in ODF page layout style. + + The page setup class. + The ODF page layout. + + + + Populates header footer styles in ODF page layout. + + The page setup class. + The ODF page layout. + + + + Populates ODF master page from page setup. + + The page setup class. + The ODF page layout. + + + + Populates header footer in master page. + + The page setup class. + The ODF page layout. + + + + Populates ODF border line styles. + + The ODF border. + Border line style of type . + ODF border line style of type + + + + Updates the used range considering comments. + + Represents the worksheet. + The updated used range's last column. + + + + Dispose the ExcelToODSConverter. + + + + + Generate default name. + + Start string. + Collection with names. + Returns new name. + + + + Field type is not Specifies. + + + + + Specifies Addins. + + + + + Offset subsequent text within a line to the left, right, up or down. + + + + + Prompt the user for text to assign to a bookmark. + + + + + The name of the document's author from Summary Info. + + + + + Insert an automatic number. + + + + + Insert an automatic number in legal format. + + + + + Insert an automatic number in outline format. + + + + + Insert an AutoText entry. + + + + + Insert text based on style. + + + + + Insert a delivery point barcode. + + + + + The comments from Summary Info. + + + + + Compares two values. + + + + + The date the document was created. + + + + + Specifies data. + + + + + Insert data from an external database. + + + + + Specified Today`s Date. + + + + + Specified Type as FieldDDE. + + + + + Specified Type as FieldDDEAuto. + + + + + Insert the value of the property. + + + + + Insert the value of the document variable. + + + + + The total document editing time. + + + + + Specifies OLE embedded object. + + + + + Specified Empty Field. + + + + + Specifies Field Expression. + + + + + The document's name. + + + + + The size on disk of the active document. + + + + + Prompt the user for text to insert in the document. + + + + + Specifies FieldType as FootnoteRef. + + + + + Specifies Check box control. + + + + + Specifies Drop Down box control. + + + + + Specifies Text control. + + + + + Calculates the result of an expression. + + + + + Specifies FieldGlossary. + + + + + Specifies GoToButton control. + + + + + Specifies HTMLActiveX control. + + + + + Specifies Hyperlink control. + + + + + Evaluate arguments conditionally. + + + + + Specifies FieldType as Import. + + + + + Specifies FieldType as Export. + + + + + Insert a picture from a file. + + + + + Insert text from a file. + + + + + Create an index. + + + + + Mark an index entry. + + + + + Data from Summary Info. + + + + + The keywords from Summary Info. + + + + + Name of user who last saved the document. + + + + + Linked OLE2 object. + + + + + Insert an element in a list. + + + + + Run a macro. + + + + + Insert a mail merge field. + + + + + The number of the current merge record. + + + + + Merge record sequence number. + + + + + Go to the next record in a mail merge. + + + + + Conditionally go to the next record in a mail merge. + + + + + Insert the number of a footnote or endnote. + + + + + The number of characters in the document. + + + + + The number of pages in the document. + + + + + The number of words in the document. + + + + + Represents an ActiveX control such as a command button etc. + + + + + Insert the number of the current page. + + + + + Insert the number of the page containing the specified bookmark. + + + + + Download commands to a printer. + + + + + The date the document was last printed. + + + + + Stores data for documents converted from other file formats. + + + + + Insert literal text. + + + + + Insert the text marked by a bookmark. + + + + + Create an index, table of contents, table of figures, and/or table of authorities by using multiple documents. + + + + + Insert the number of times the document has been saved. + + + + + The date the document was last saved. + + + + + Insert the number of the current section. + + + + + Insert the total number of pages in the section. + + + + + Insert an automatic sequence number. + + + + + Assign new text to a bookmark. + + + + + Conditionally skip a record in a mail merge. + + + + + Insert the text from a like-style paragraph. + + + + + The document's subject from Summary Info. + + + + + The document's Subscriber from Summary Info. + + + + + Insert a special character + + + + + The name of the template attached to the document. + + + + + The current time. + + + + + The document's title from Summary Info. + + + + + Create a table of authorities. + + + + + Make a table of authorities entry. + + + + + Create a table of contents. + + + + + Make a table of contents entry. + + + + + Address from Tools Options User Info. + + + + + Initials form Tools Options User Info. + + + + + Name from Tools Options User Info. + + + + + Specifies FieldType as Shape. + + + + + Specifies FieldType as BIDIOUTLINE. + + + + + Specifies AddressBlock + + + + + Specifies FieldType as Unknown. + + + + + Tab stop leader + + + + + No leader. + + + + + Dotted leader. + + + + + Hyphenated leader. + + + + + Single line leader. + + + + + Heavy line leader. + + + + + Specifies paragraph text is aligned to the left. + + + + + Specifies paragraph text is aligned to the center. + + + + + Specifies paragraph text is aligned to the right. + + + + + Specifies paragraph text is aligned to both left and right. + + + + + Specifies paragraph characters are distributed to fill the entire width of the paragraph. + + + + + Specifies paragraph uses medium-length Kashida, if the language is Arabic. In other languages, paragraph text is justified with a medium character compression ratio. + + + + + Specifies paragraph uses longer length Kashida, if the language is Arabic. In other languages, paragraph text is justified with a high character compression ratio. + + + + + Specifies paragraph uses small length Kashida, if the language is Arabic. In other languages, paragraph text is justified with a high character compression ratio. + + + + + Specifies paragraph text is justified with Thai distributed justification, if the language is Thai. In other languages, text is justified with a low character compression ratio. + + + + + Specifies the text wrap style. + + + + + In line with text. + + + + + Top and bottom. + + + + + Wraps text around the shape. Line continuation is on the opposite side of the shape. + + + + + Places shape in front of text. + + + + + Tight. + + + + + Through. + + + + + Places shape behind text. + + + + + Represents the caption angle type. + + + + + Fixed caption angle type. + + + + + Free caption angle type. + + + + + Represents the caption escape direction. + + + + + Horizontal caption escape direction. + + + + + Vertical caption escape direction. + + + + + Auto caption escape direction. + + + + + Represents the caption type. + + + + + Straight line caption type. + + + + + Angled line caption type. + + + + + Angled connector line caption type. + + + + + Represents the color mode. + + + + + Greyscale color mode. + + + + + Mono color mode. + + + + + Watermark color mode. + + + + + Represents the draw aspect. + + + + + Content draw aspect. + + + + + Thumbnail draw aspect. + + + + + Icon draw aspect. + + + + + Print view draw aspect. + + + + + Represents drawing fill type. + + + + + No fill. + + + + + Solid fill. + + + + + Bitmap fill. + + + + + Gradient fill. + + + + + Hatch fill. + + + + + Represents reference point for image. + + + + + Top left. + + + + + Top. + + + + + Top right. + + + + + Left. + + + + + Center. + + + + + Right. + + + + + Bottom left. + + + + + Bottom. + + + + + Bottom right. + + + + + Represents measure align type. + + + + + Autmatic measure align. + + + + + Left outside measure align. + + + + + Inside measure align. + + + + + Right outside measure align. + + + + + Represents vertical measure align. + + + + + Automatic vertical measure align. + + + + + Above vertical measure align. + + + + + Below vertical measure align. + + + + + Center vertical measure align. + + + + + Represents shadow. + + + + + Visible shadow. + + + + + Hidden shadow. + + + + + Represents stroke. + + + + + No stroke. + + + + + Dash stroke. + + + + + Solid stroke. + + + + + Represents stroke line join. + + + + + Miter join. + + + + + Round join. + + + + + Bevel join. + + + + + Middle join. + + + + + No join. + + + + + Inherited join. + + + + + Represents text area horizontal alignment. + + + + + Left align. + + + + + Center align. + + + + + Right align. + + + + + Justify. + + + + + Represents text area vertical alignment. + + + + + Top align. + + + + + Middle align. + + + + + Bottom align. + + + + + Justify. + + + + + Represents measure units. + + + + + Auto. + + + + + Millimeter (mm). + + + + + Centimeter (cm). + + + + + Meter (m). + + + + + Kilometer (km). + + + + + Point (pt). + + + + + Pica (pc). + + + + + Inch (inch). + + + + + Feet (ft). + + + + + Mile (mi). + + + + + Represents how fill property paints the shape. + + + + + if the result is zero then the point is outside the path. Otherwise, it is inside. + + + + + If this number is odd, the point is inside; if even, the point is outside. + + + + + Represents the shape to be used at the end of open subpaths when they are stroked. + + + + + Butt shape. + + + + + Square shape. + + + + + Round shape. + + + + + Closing the instance + + + + + Gets/Sets the Continuous section Textbody first item + + + + + Gets/Sets the Continuous section Textbody last item + + + + + Gets/Sets the section style name for the OTextbodyItem + + + + + Gets/Sets the list level number for the Paragraph + + + + + Gets the HeaderFooterContent child items + + + + + Gets or sets the name of the object. + + + + + Gets the Even page footer + + + + + Gets the First page header content + + + + + Gets the First page footer content + + + + + Collection of all the styles in the workbook. + + + + + Adds specified style into this collection. + + Style that must be added. + + + + Collection of all the styles in the workbook. + + + + + Adds specified style into this collection. + + Style that must be added. + + + + Adds specified style into this collection. + + Style that must be added. + + + + Gets/Sets the current page layout columns count + + + + + Gets/Sets the current page layout columns gap + + + + + Collection of all the styles in the workbook. + + + + + Adds specified style into this collection. + + Style that must be added. + + + + First visible character. + + + + + Chars with codes less than 0x20 which are allowed to be used inside xml strings. + + + + + Saves the document to ODS format. + + + + + + Serializes doument manifest which specifies the files in the arhive. + + + + + Serializes the mimetype value. + + + + + Serializes meta data file. + + + + + Checks whether specified string is hexadecimal number. + + + + + + + + This class holds the name of the Syncfusion.XlsIO.Base assembly and provides a helper + routine that helps with resolving types when loading a serialization stream and when + the framework probes for assemblies by reflection. + + + + + The full name of this assembly without version information: "Syncfusion.XlsIO" + + + + + A reference to the for the XlsIO assembly. + + + + + The root namespace of this assembly. Used internally for locating resources within the assembly. + + + + + This delegate helps with resolving types and can be used as a eventhandler + for a event. + + The source of the event. + The event data with information about the type. + A reference to the assembly where the type is located. + + Use this handler when reading back types from a serialization stread + saved with an earlier version of this assembly. + + + + public static GridModel LoadSoap(Stream s) + { + try + { + AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(GridAssembly.AssemblyResolver); + SoapFormatter b = new SoapFormatter(); + b.AssemblyFormat = FormatterAssemblyStyle.Simple; + GridModel t = b.Deserialize(s) as GridModel; + t.Modified = false; + return t; + } + finally + { + AppDomain.CurrentDomain.AssemblyResolve -= new ResolveEventHandler(GridAssembly.AssemblyResolver); + } + } + + + + + + This class gives access to the XlsIO IApplication interface. + + + + + Storage of XlsIO Application object which provides an IApplication interface + + + + + Indicates if the class was disposed. + TRUE - If the class was disposed, otherwise FALSE + + + + + TRUE - Throw exception when object is disposed and it's data was + not saved, otherwise FALSE + + + + + Default constructor. + + + + + Destructor. + + + + + Releases all resources used by this XlsIO object. + + + Thrown when ThrowNotSavedOnDestoy property is set to TRUE and XlsIO + object data was not saved. + + + + + Checks whether license is valid. + + + + + Interface to the XlsIO Application which gives + access to all supported functions. + + + + + Dispose will throw an ExcelWorkbookNotSavedException when the workbook is not saved + and this property is set to TRUE. Default value is FALSE. + + + + + Checks whether security permission can be granted. Read-only. + + + + + Exception that will be thrown when the user tries to dispose XlsIO + application without saving it. + + + + + + Creates new ExcelWorkbookNotSavedException. + + Text that showed after rising. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a null reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + Represents config xls class. + + + + + + Creates xls config object. + + + + + Gets Copyright string. Read-only. + + + + + Specifies the display format for a property. + + + + + Initializes a new instance of the class using the display format. + + The display format. + + + + Get or set the number format for data. + + + + The display format. + + + + + Class used for format parsing. + + + + + Constant Exponential symbol + + + + + constant Hash Symbol + + + + + List with all known format tokens. + + + + + Regular expression for checking if specified switch argument present in numberformat. + + + + + Initializes a new instance of the FormatParserImpl class. + + Represents current application. + Represents parent object. + + + + Parses format string. + + String to parse. + Collection with parsed tokens. + + + + Class used for Format Section. + + + + + Return this value when element wasn't found. + + + + + Thousand separator. + + + + + Minus sign. + + + + + Default round off digit. + + + + + Default fraction token. + + + + + Maximum month token length. + + + + + Table for token type detection. Value in TokenType arrays must be sorted. + + + + + Break tokens when locating hour token. + + + + + Break tokens when locating second token. + + + + + Possible digit tokens in the millisecond token. + + + + + Date Tokens + + + + + Time Tokens + + + + + Array of tokens. + + + + + Indicates whether format is prepared. + + + + + Position of decimal separator. + + + + + Position of E/E+ or E- signs in format string. + + + + + Last digit. + + + + + Indicates whether there are groups after last digit. + + + + + Number of digits in decimal fraction part. + + + + + Number of digits in integer part of number. + + + + + Number of digits after scientific(E) sign. + + + + + Position where fraction sign '/' was met for the first time. + + + + + Indicates whether number format contains fraction sign. + + + + + Start of the fraction numerator group. + + + + + End of the fraction denumerator group. + + + + + Length of the denumerator. + + + + + + Fixed base value in fraction format. + + + + + + End position of the decimal value. + + + + + Condition token. + + + + + Culture token. Used to display values. + + + + + Section format type. + + + + + Indicates whether we digits must be grouped. + + + + + Indicates whether more than one decimal point was met in the format string. + + + + + Indicates whether we should use system + + + + + Indicates whether we should use system Time settings + + + + + Indicates whether the milli second format having the value + + + + + Initializes a new instance of the FormatSection class. + + Represents current application. + Represents parent object. + + + + Initializes a new instance of the FormatSection class based on array of tokens. + + Represents current application. + Represents parent object. + Array of section's tokens. + + + + Prepares format if necessary. + + + + + Checks whether digits must be grouped. + + True if digits must be grouped, otherwise returns false. + + + + Prepares tokens and sets iternal position pointers. + + + + + Prepares insignificant digits that are present in decimal fraction part of this section. + + + + + Searches for corresponding hour token. + + Start index to search. + Corresponding hour token. + + + + Applies format to the value. + + Value to apply format to. + String representation of the value. + + + + Applies format to the value. + + Value to apply format to. + String representation of the value. + + + + Applies format to the value. + + + + + Applies format to the value. + + Value to apply format to. + Indicates whether to show reserved symbols. + String representation of the value. + + + + Applies format to the value. + + Value to apply format to. + Indicates whether to show reserved symbols. + Current cell + String representation of the value. + + + + Apply round off the given number based column width. + + string value. + Current cell + round off the number based on column width. + + + + Gets fraction base value from the number format string. + + The fraction base value. + + + + Updated denominator string format in fraction number format. + + The denominator string to be manipulated. + The manipulated denominator string. + + + + The string is formatted based on number of fraction digits. + + The string to be formatted to fraction. + The formatted string. + + + + Round the input value and avoid double imprecision calculation in core + + the fraction part + the decimal part + the value indicates the numer of fraction digits + the rounded value + + + + Applies format to the value. + + Value to apply format to. + Indicates whether to show reserved symbols. + String representation of the value. + + + + Assigns position to the variable and checks if it wasn't assigned + before (throws ForamtException if it was). + + Variable to assign. + Current position. + + + + Applies part of the format tokens to the value. + + Value to apply format to. + Indicates whether to show reserved symbols. + Start format token. + End format token. + Indicates whether token index should be increased after each step. + String representation of the value. + + + + Applies part of the format tokens to the value. + + Value to apply format to. + Indicates whether to show reserved symbols. + Start format token. + End format token. + Indicates whether token index should be increased after each step. + Indicates whether to group digit tokens. + Indicates whether we should add negative sign before first digit token. + String representation of the value. + + + + Applies thousand separator for exponential formats. + + Exponential string + Exponential string that have thousand separator + + + + Applies digit token to the value. + + Represents a digit token to apply. + Digit index. + Represents Start index of the range. + Represents Value to apply digit token to. + Represents digit counter. + Represents the StringBuilder to add value to. + Boolean value indicating direction of the apply cycle. + Boolean value indicating whether we should show hidden symbols. + Boolean value indicating whether digits are grouped. + Value of the digit count. + + + + Applies digit token to the value. + + Digit index. + Represents start index. + Represents digit counter. + Represents result of token string. + Represents the StringBuilder to add value to. + Boolean value indicating direction of the apply cycle. + Boolean value indicating whether digits are grouped. + Number of digits. + + + + Adds value to a StringBuilder. + + The StringBuilder to add value to. + Indicates whether we should call append method or insert. + Value to add. + + + + Checks whether iPos is inside range of correct values. + + End token index. + Indicates whether position is increasing each cycle. + Current position. + Value indicating whether iPos in inside of range of valid values. + + + + Locates last digit of the decimal fraction. + + Value of last decimal digit. + + + + Locates last group symbols. + + Start index to search. + Value indicating whether groups are present after last decimal digit. + + + + Applies last groups tokens. + + Value to apply to. + Indicates whether to show hidden symbols (reserved place). + + + + Prepares value for format application. + + Value to apply to. + Indicates whether to show hidden symbols (reserved place). + + + + Calculates number of fraction digits. + + Number of fraction digits. + + + + Calculates number of digits in the integer part of format string. + + Number of digits in the integer part of format string. + + + + Calculates number of digits in the specified range. + + Start index of the range. + End index of the range. + Number of digits in the specified range. + + + + Searches for block of digits that correspond to the fraction. + + + + + Searches for start of the group of digits. + + Start position to search. + Direction of the search: true - from left to right, false - from right to left. + Position of the start of the group. + + + + Indicates whether range contains any digits. + + Start range index. + End range index. + Value indicating whether range contains any digits. + + + + Indicates whether range contains any significant digits. + + Start range index. + End range index. + Value indicating whether range contains any digits. + + + + Checks whether value value meets the condition. + + Value to check. + True if value meets the condition; otherwise returns False. + + + + Tries to detect format type. + + + + + Checks whether section contains only specified token types. + + Array with possible tokens. + Value indicating whether the section contains only specified token types. + + + + Check whether this token is really minute token and substitutes it by Month if necessary. + + Token index to check. + + + + Searches for required time token. + + Start token index. + Types of tokens that could stop search process. + Indicates whether we have to increase token index on each iteration. + Types of token to search. + Index of the found token or -1 if token was not found. + + + + Sets to all second tokens. + + + + + Indicates whether type of specified token is in the array of tokens. + + Array of tokens to check. + Token type to locate. + True if token type is in the array of possible tokens. + + + + Splits value into integer and decimal parts. + + Value to split. + Return fraction value. + Integer value. + + + + Rounds value. + + Represents value to be rounded. + Rounded Value. + + + + Creates a new object that is a copy of the current instance. + + Represents parent object. + A new object that is a copy of this instance. + + + + Indicate whether the format string in time format + + + + + Indicate whether the format string in date format + + + + + Returns single token from the section. Read-only. + + + + + Gets the number of tokens in the section. + + + + + Gets a value indicating whether section contains condition. Read-only. + + + + + Gets the section type. + + + + + Gets the culture used for conversion. Read-only. + + + + + Gets a value indicating whether number format contains fraction sign. Read-only. + + + + + Gets a value indicating whether section contains E/E+ or E- signs in format string. + + + + + Gets or Set the boolean if milli second format having the value. + + + + + Gets a value indicating whether thousand separator is present in number format. Read-only. + + + + + Gets the number of digits after "." sign. Read-only. + + + + + Gets the number of digits after scientific(E) sign. Read-only. + + + + + Class used for Section Collection. + + + + + Two many sections error message. + + + + + Maximum number of sections in "conditional mode". + + + + + Maximum number of secionts in "non-conditional mode"; + + + + + Index of section with positive number format. + + + + + Index of section with negative number format. + + + + + Index of section with positive number format. + + + + + Index of section with positive number format. + + + + + Indicates whether format contains conditions. + + + + + Initializes a new instance of the FormatSectionCollection class to prevent creation without arguments. + + Represents current application. + Represents parent object. + + + + Initializes a new instance of the FormatSectionCollection class. + + Represents current application. + Represents parent object. + List to parse. + + + + Returns format type for a specified value. + + Value to get format type for. + Format type for the specified value. + + + + Returns format type for a specified value. + + Value to get format type for. + Format type for the specified value. + + + + Splits array of tokens by SectionSeparator. + + List to parse. + + + + Applies format to the value. + + Value to apply format to. + Indicates whether to show reserved symbols. + String representation of the value. + + + + Applies format to the value. + + Value to apply format to. + Indicates whether to show reserved symbols. + Current cell + String representation of the value. + + + + Applies format to the value. + + Value to apply format to. + Indicates whether to show reserved symbols. + String representation of the value. + + + + Returns section for formatting with specified index. + + Section index. + Format section that should be to the value. + + + + Returns section that corresponds to the specified value. + + Value to search section for. + If section is found then returns it, otherwise returns Null. + + + + Searches for section that should be used for zero number formatting. + + Section that should be used for zero number formatting. + + + + Returns text section. + + Text format section. + + + + Indicate whether the format string in time format + + + + + Indicate whether the format string in date format + + + + + Creates a new object that is a copy of the current instance. + + Represents parent object. + A new object that is a copy of this instance. + + + + This class is used to apply conditional formatting to the cells. + + + + + This object is used to evaluate formula. + + + + + Object that is used to compare two string objects. + + + + + CF applied range. + + + + + Conditional format rectangle collection. + + + + + Indicates whether the worksheet calculation is enabled or not. + + + + + Difference between current cell column and first range column. + + + + + Difference between current cell row and first range row. + + + + + First range from conditional format applied multi range. + + + + + Differnece between first range row and least row for conditional format using multi range. + + + + + Contains calculated values for the conditional format formulas. + + + + + Contains formulas for the conditional formats. + + + + + Contains cell index for top10 conditional format. + + + + + Contains cell index and cell values for top10 and AboveAverage conditional formatting. + + + + + Contains average and standard deviation of AboveAverage conditional formatting range. + + + + + Represent the minimum value of conditional format applied range. + + + + + Represent the maximum value of conditional format applied range. + + + + + Indicates whether the conditional format applied range have negative value or not. + + + + + Indicates whether the color scale conditional format color has applied or not. + + + + + CF applied range. + + CF range + + + + Setting conditional format rectangle collection. + + CF range + + + + Applies cf to the specified cell and format if necessary. + + Cell to check condition for. + ExtendedFormat to apply to. + Modified extended format or null if no modifications required. + + + + Applies cf number format to the specified cell and format if necessary. + + Cell to check condition for. + ExtendedFormat to apply to. + Modified extended format or null if no modifications required. + + + + Applies cf to the specified cell and format if necessary with improved performance. + + + + + Check and applies condition if necessary. + + Format to check and apply. + Cell to check condition for. + ExtendedFormat to apply to. + Modified extended format or null if no modifications required. + + + + Update the conditional format range. + + Conditional format applied range rectange top. + Conditional format applied range rectange left. + Conditional format applied range rectange bottom. + Conditional format applied range rectange right. + Worksheet used range last row. + Worksheet used range last colum + Last row in conditional format applied range. + Last column in conditional format applied range + + + + Checks and applies condition if value is Duplicate or Unique. + + Format to check and apply. + Cell to check condition for. + ExtendedFormat to apply to. + Modified extended format or null if no modifications required. + + + + Checks and applies condition if value is Duplicate or Unique. + + Format to check and apply. + Cell to check condition for. + return the boolean value is true.cell is duplicate otherwise cell is unique + + + + Checks and applies condition if condition type is Value. + + Format to check and apply. + Cell to check condition for. + ExtendedFormat to apply to. + Modified extended format or null if no modifications required. + + + + Checks whether cell value is between value1 and value2. + + Cell to check. + The first value to compare. + The second value to compare. + True if cell value is between value1 and value2. + + + + Checks whether cell value is equal to value. + + Cell to check. + Value to check. + True if cell value is equal to value. + + + + Checks whether cell value is greater than value. + + Cell to check. + Value to check. + True if cell value is greater than value. + + + + Checks whether cell value is greater than or equal to value. + + Cell to check. + Value to check. + True if cell value is greater than or equal to value. + + + + Checks whether cell value is less than value. + + Cell to check. + Value to check. + True if cell value is less than value. + + + + Checks whether cell value is less than or equal to value. + + Cell to check. + Value to check. + True if cell value is greater than or equal to value. + + + + Checks whether cell value is not between value1 and value2. + + Cell to check. + The first value to compare. + The second value to compare. + True if cell value is not between value1 and value2. + + + + Checks whether cell value is not equal to value. + + Cell to check. + Value to check. + True if cell value is not equal to value. + + + + Compares cell value and specified value. + + Cell to check. + Value to check. + Int.MinValue if was unable to compare, 0 if equal, 1 if greater, -1 if less. + + + + Checks and applies condition if condition type is Formula. + + Format to check and apply. + Cell to check condition for. + ExtendedFormat to apply to. + Modified extended format or null if no modifications required. + + + + Checks and applies condition if condition type is Formula. + + Format to check and apply. + Cell to check condition for. + ExtendedFormat to apply to. + Conditional format first formula + Modified extended format or null if no modifications required. + + + + Update the conditional format formula. + + Conditional format + Current cell + ExtendedFormat + Formula string + updated formula string + + + + Checks if the contional format formula has error Ptg. + + Array of Ptgs from parsed formula + True if the array has an error Ptg. Otherwise False. + + + + Checks and applies condition if condition type is SpecificText. + + Format to check and apply. + Cell to check condition for. + ExtendedFormat to apply to. + Modified extended format or null if no modifications required. + + + + Checks if the cell contains the specified text + + The cell to which conditional format is applied + The text to be compared with the cell's text + True if the cell contains the specified text + + + + Checks if the cell does not contain the specified text + + The cell in which conditional format is applied + The text to be compared with the cell's text + True if the cell does not contain the specified text + + + + Checks if the cell has text beginning with the specified text + + The cell in which conditional format is applied + The text to be compared with the cell's text + True if the cell's text begins with the specified text + + + + Checks if the cell has text ending with the specified text + + The cell in which conditional format is applied + The text to be compared with the cell's text + + + + + Checks and applies condition if value is in Top10 list. + + Format to check and apply. + Cell to check condition for. + ExtendedFormat to apply to. + Modified extended format or null if no modifications required. + + + + Checks and applies condition if value is in AboveAverage. + + Format to check and apply. + Cell to check condition for. + ExtendedFormat to apply to. + Modified extended format or null if no modifications required. + + + + Check and apply condition for time period conditional format. + + Format to check and apply. + Cell to check condition for + ExtendedFormat to apply to + Modified extended format or null if no modifications required. + + + + Get all cell values for Top10 and AboveAverage CF rule. + + Format to check and apply. + Cell to check condition for. + + + + Extract the Top10 cells from entire range. + + Format to check and apply. + Cell to check condition for. + + + + Computes and returns the Standard Deviation of the given cell values. + + The array containing the cell values. + The standard deviation of the given cell values. + + + + Computes and returns the Average of the given cell values. + + The array containing the cell values. + The Average of given cell values. + + + + Computes and returns Variance of the given values. + + The array containing the cell values. + The Average cell values. + The variance of the given cell values. + + + + Applies condition settings to specified Extended format. + + Condition to apply. + ExtendedFormat to apply settings to. + + + + + Applies condition settings to specified Extended format. + + Icon name to be set for the format. + IconSet to be set for te format. + IconId to be set for the format. + ExtendedFormat to apply settings to. + True if only icon is displayed for the format. False otherwise. + The updated extended format. + + + + Updates font settings. + + Conditional format to get settings from. + Extended format to update. + + + + Updates font settings. + + Conditional format to get settings from. + Extended format to update. + + + + Update fill settings. + + Conditional format to get settings from. + Extended format to update. + + + + Updates pattern color if necessary. + + Conditional format to get settings from. + Extended format to update. + + + + Updates background color if necessary. + + Conditional format to get settings from. + Extended format to update. + + + + Updates font color if necessary. + + Conditional format to get settings from. + Extended format to update. + + + + Updates pattern format if necessary. + + Conditional format to get settings from. + Extended format to update. + + + + Updates font format if necessary. + + Conditional format to get settings from. + Extended format to update. + + + + Updates border format if necessary. + + Conditional format to get settings from. + Extended format to update. + + + + Gets the image for icon sets. + + Represents current cell. + Represents the Icon Set object. + Icon Sets format range. + Extended format of the cell. + + + + Maps custom icon name with id to the icon set image. + + ustom icon name folowwed by id. + The icon set image. + + + + Checks for invalid conditional type for icon sets. + + Condition value for an icon criteria. + True if the icon set has highest/lowest conditional value type. False otherwise. + + + + Get the condition value and check the operator of condition. + + Current cell. + Icon Set condition. + Icon set format range. + If true, the operator is greaterThan, else greater than equalto. + + + + Get the conditional value for different format types for conditional formats. + + Indicates the current cell. + Conditional value for conditional format objects (IconSets). + Indicates the selected range for conditional format. + Returns the value if present in the condition object. Otherwise returns 0. + Returns true if value present in the condition object otherwise returns false. + + + + Gets the minimum value from the selected range for conditional formats. + + urrent cell. + Indicates the selected range. + Returns the minimum value. + + + + Gets the maximum value from the selected range for conditional formats. + + Current cell. + Indicates the selected range. + Returns the maximum value. + + + + Gets the image of icon from the resources. + + Name of the condiitonal format icon. + + + + + Check and apply conditional formatting if as Color scale. + + Represents current cell. + Represents the Color Scale Set object. + Color scale format range. + Extended format of the cell. + + + + Get the condition value and check the operator of condition. + + Current cell. + Icon Set condition. + Icon set format range. + If true, the operator is greaterThan, else greater than equalto. + + + + Get the conditional value for different format types for conditional formats. + + Indicates the current cell. + Conditional value for conditional format objects. + Indicates the selected range for conditional format. + Returns the value if present in the condition object. Otherwise returns 0. + Returns true if value present in the condition object otherwise returns false. + + + + Applies condition settings to specified Extended format. + + Color to apply. + ExtendedFormat to apply settings to. + The updated extended format. + + + + Blend the colors based on the calculated percentage values + + Percentage increase + Indicates the start color + Indicates the end color + Color + + + + Determine the value of colorRGB in the range + + Indicates the start color + Indicates the end color + Fraction value + Color + + + + Determine the single value of color RGB. + + Start color value of R or G or B + End color value of R or G or B + Fraction value + value of R 0r G or B + + + + Gets the image for Databar + + Represents current cell. + Represents the databar object. + Databar Sets format range. + Extended format of the cell. + + + + Get the condition value and check the operator of condition. + + Current cell. + Icon Set condition. + Icon set format range. + If true, the operator is greaterThan, else greater than equalto. + + + + Get the conditional value for different format types for conditional formats. + + Indicates the current cell. + Conditional value for conditional format objects (IconSets). + Indicates the selected range for conditional format. + Returns the value if present in the condition object. Otherwise returns 0. + Returns true if value present in the condition object otherwise returns false. + + + + Get or Set the indicates whether the color scale conditional format color has applied or not. + + + + + Get or Set the indicate whether the conditional format applied range have negative value or not. + + + + + Get or Set the minimum value for conditional format applied range. + + + + + Get or Set the maximum value for conditional format applied range. + + + + + Contains calculated values for the conditional format formulas. + + + + + Indicates whether the worksheet calculation is enabled or not. + + + + + Gets and sets the difference between first range row and least row for conditional format using multi range. + + + + + Gets and sets the conditional format using multirange. + + + + + Gets and sets the difference between current cell column and first range column value. + + + + + Gets and sets the difference between current cell row and first range row value. + + + + + Contains cell index for top10 conditional format. + + + + + Contains cell index for top10 conditional format. + + + + + Contains average and standard deviation of AboveAverage conditional formatting range. + + + + + Represents worksheet's OptionButton collection. + + + + + This interface represents OptionButton collection inside single worksheet. + + + + + Adds new to the collection. + + One-based row index of the top-left corner of the new item. + One-based column index of the top-left corner of the new item. + Height in pixels of the new item. + Width in pixels of the new item. + Newly added item. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option button + IOptionButtonShape optionButton = worksheet.OptionButtons.AddOptionButton(1, 1, 20, 100); + + //Set text + optionButton.Text = "Option"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds a width default dimension + + OptionButton Shape + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option button + IOptionButtonShape optionButton = worksheet.OptionButtons.AddOptionButton(); + + //Set dimensions + optionButton.Top = 1; + optionButton.Left = 1; + optionButton.Width = 100; + optionButton.Height = 20; + + //Set text + optionButton.Text = "Option"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds a with default size. + + One-based row index of the top-left corner of the new item. + One-based column index of the top-left corner of the new item. + Returns options button. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option button + IOptionButtonShape optionButton = worksheet.OptionButtons.AddOptionButton(1, 1); + + //Set dimensions + optionButton.Width = 100; + optionButton.Height = 20; + + //Set text + optionButton.Text = "Option"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Returns number of in the collection. + + + The following code illustrates how to access the Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option button + worksheet.OptionButtons.AddOptionButton(1, 1, 20, 100); + worksheet.OptionButtons.AddOptionButton(5, 5, 20, 100); + + //Get count + Console.Write(worksheet.OptionButtons.Count); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Returns single from the collection. + + Item's index to get. + Single item from the collection. + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option button + worksheet.OptionButtons.AddOptionButton(1, 1, 20, 100); + + //Set text + worksheet.OptionButtons[0].Text = "Option"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets single from the collection. + + Name of the item to get. + Single item from the collection. + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option button + worksheet.OptionButtons.AddOptionButton(1, 1, 20, 100); + + //Set text + worksheet.OptionButtons[0].Name = "OptionButton1"; + + //Get width + Console.Write(worksheet.OptionButtons["OptionButton1"].Width); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //100 + + + + + + Average width + + + + + Average height + + + + + Parent worksheet. + + + + + Initializes new instance of the collection. + + Application object for the new instance. + Parent object for the new instance. + + + + Adds new item to the collection. + + OptionButton to add. + + + + Adds default event. + + OptionButton to add event. + + + + Raise when the check state changed + + OptionButton + event object + + + + Raise when the Linkeed cell changed + + OptionButton + event object + + + + Prepares option button for serialization. We should change the option button + checked status based on the group. + + + + + Get the Option Button collection based on the groups. + + Collection of option buttons. + + + + Adds new OptionButton to the collection. + + Top row for the new shape. + Left column for the new shape. + Height in pixels of the new shape. + Width in pixels of the new shape. + Newly created TextBox object. + + + + Adds Option button default Dimension + + returns option button shape + + + + Adds the Shape with default size + + Top row for the new shape. + Left column for the new shape + + + + + Returns single item from the collection. + + Index of the item to get. + Single item from the collection. + + + + Gets single item from the collection. + + Name of the item to get. + Single item from the collection. + + + + Represnts the implementation of custom xml part + + + + + Represent the custom xml part in excel + + + + + Deletes the object. + + A CustomXmlPart cloned object. + + + + Returns the index number of the object within the collection of similar + objects. Read-only Long. + + + + + Returns or sets the name of the object. Read / write String. + + + + + Returns or sets the name of the object, in the language of the user. + Read / write String for Name. + + + + + Parent workbook for this object. + + + + + Parent worksheet for this object. + + + + + Index of the Name object in the Workbook's CustomXml Parts collection. + + + + + Creates new CustomXml object. + + Application object for the new CustomXml object. + Parent object for the new CustomXml object. + Name of the new Customxml object. + Current index. + + + + Creates new CustomXml object. + + Application object for the new CustomXml object. + Parent object for the new CustomXml object. + Name of the new CustomXml object. + Current index. + Indicates whether CustomXml object is local. + + + + Creates a new CustomXml object. + + Application object for the new CustomXml object. + Parent object for the new CustomXml object. + + + + Creates a new CustomXml object. + + Application object for the new CustomXml object. + Parent object for the new CustomXml object. + Name of the new CustomXml object. + Schemas to be added + Range that will be associated with the specified name. + + + + + + Creates a new CustomXml object. + + Application object for the new CustomXml object. + Parent object for the new CustomXml object. + Name of the new CustomXml object. + Xml Data in byte Array + + + + Creates a new CustomXmlPart object. + + Application object for the new CustomXmlPart object. + Parent object for the new CustomXmlPart object. + ID of the new CustomXmlPart object. + schemas of the customxml data + + + + + + Creates a new customxml object. + + Application object for the new customxml object. + Parent object for the new customxml object. + ID of the new customxml object. + Xml Data in byte array + + + + + + Dispose + + + + + create new clone object + + + + + Sets index of the named range and raise event. + + New index. + + + + Sets index of the named range. + + New index. + Indicates whether events should be raised. + + + + Sets parent workbook and worksheet. + + + When parent workbook or worksheet cannot be found. + + + + + XmlData in Byte array + + + + + Unique ID for Xml Data + + + + + Xml Schemas collection for CustomXml data + + + + + Represents the inplementation of custom xml part collection + + + + + Represents custom xml part collection in excel. + + + + + Defines a new name. + + Name for the new Name object. + Returns a Name object. + + + + Defines a new name. + + ID for the new Name object. + Returns a Name object. + + + + + Defines a new name. + + Name object to add. + + + + Removes the element at the specified index of the collection. + + The zero-based index of the element to remove. + + + + Checks whether the Name object is present in the collection or not + + Name object to check whether it is present or not. + A custom xml part collection cloned object. + + + + Checks whether the Name object is present in the collection or not + + Name object to check whether it is present or not. + A custom xml part for the corresponding ID. + + + + Returns the number of objects in the collection. Read-only Long. + + + + + Returns the parent object for the specified object. + + + + + Dictionary with CustomXml data, key - property name/id, value - property value. + + + + + Parent workbook for the collection. + + + + + Parent workbook for the collection. + + + + + Default constructor. + + + + + Creates new instance of clone object + + + + + Returns CustomXmlPart for corresponding id + + + + + Removes specified name from the collection. + + Name of the object to remove. + + + + Clear all items in the collections + + + + + Adds new CustomXmlpart to the collections + + + + + Cretes new CustomXmlParts through specified arugments + + + + + Creates new instance of CusomXmlPart from ID + + + + + Adds into list and hashtable, for local named ranges. + + Name to add. + Indicates is adds in global names hash. + + + + Performs additional processes after inserting a new element into the collection. + + The zero-based index at which to insert value. + The new value of the element at the index. + + + + Sets parent workbook value. + + + When parent workbook cannot be found. + + + + + Removes specified name from the collection. + + Name of the object to remove. + + + + CustomXmlPart Count + + + + + Retruns CustomXmlPart at corresponding index positions + + + + + Represents the collection count + + + + + Represents the custom xml schema collection + + + + + A collection of all the Name objects in the application or + workbook. Each Name object represents a defined name for a + range of cells. + + + + + Defines a new name. + + Name for the new Name object. + Returns a Name object. + + + + Defines a new name. + + Name for the new Name object. + Range that will be associated with the name. + + + + Defines a new name. + + Name object to add. + A custom xml schema collection cloned object. + + + + Defines a new name. + + Name object to add. + Index of the corresponding value in custom xml schema collection. + + + + Removes Name object from the collection. + + Name of the object to remove from the collection. + + + + Removes the element at the specified index of the collection. + + The zero-based index of the element to remove. + + + + Returns the number of objects in the collection. Read-only Long. + + + + + Returns a single Name object from a Names collection. + + + + + Adds the value into collection + + + + + + Clears the items in collection + + + + + Defines a new name. + + + + + + Gets the index of value + + + + + + + Removes the item from collection + + + + + + Removes the item at specified index in the collection + + + + + + Gets the Enumerator + + + + + + Gets the count of xml schema items + + + + + Gets or sets the item in specified index + + + + + + + Represents the meta properties implementation + + + + + Represents meta properties in excel + + + + + Checks whether the Name object is present in the collection or not + + Name object to check whether it is present or not. + Returns corresponding meta property based on internal name + + + + Gets the Metaproperty of the corresponding index from the collection. + + + + + + + Returns number of elements in the collection. Read-only. + + + + + Returns Xml Schema + + + + + Returns Xml Schema + + + + /// + Returns Xml Schema + + + + + Creates new empty collection. + + Application object for the collection. + Parent object for the new collection. + + + + Triggered when new items are added to collection + + + + + Checks whether collection contains named range. + + Name of the named range to search. + True if collection contains such named range; otherwise returns False. + + + + Checks whether collection contains named range. + + Name of the named range to search. + True if collection contains such named range; otherwise returns False. + + + + ItemName + + + + + ItemName + + + + + SchemaXml + + + + + Represents the meta property implementation + + + + + Represents a defined name for a range of cells. Names can be + either built-in names such as Database, Print_Area, and + Auto_Open or custom names. + + + + + Gets or sets value for the meta property. + + + + + Gets the name of the meta property. + + + + + Gets or sets the value of meta property + + + + + Gets or sets the name of meta property + + + + + Represents chart shadow object + + + + + Represents shadow in the chart + + + + + Customs the outer shadow styles. + + Value from . + Transparency of the Shadow accepts the values between(0-100). + Size of the Shadow accepts the values between(0-200). + Blur level of the Shadow accepts the values between(0-100). + Angle or Direction of the Shadow accepts the values between(0-359). + Distance of the Shadow accepts the values between(0-200). + if set to true [custom shadow style]. + + To know more about charts refer this link. + + The following code illustrates how to use the CustomShadowStyles method with . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Customs the outer shadow styles + chart.ChartArea.Shadow.CustomShadowStyles(Excel2007ChartPresetsOuter.OffsetBottom, 70, 90, 71, 50, 60, true); + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Customs the inner shadow styles. + + Value from . + Transparency of the Shadow accepts the values between(0-100). + Blur level of the Shadow accepts the values between(0-100). + Angle or Direction of the Shadow accepts the values between(0-359). + Distance of the Shadow accepts the values between(0-200). + if set to true [custom shadow style]. + + To know more about charts refer this link. + + The following code illustrates how to use the CustomShadowStyles method with . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Customs the inner shadow styles + chart.ChartArea.Shadow.CustomShadowStyles(Excel2007ChartPresetsInner.InsideCenter, 70, 71, 50, 60, true); + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Customs the perspective shadow styles. + + Value from . + Transparency of the Shadow accepts the values between(0-100). + Size of the Shadow accepts the values between(0-200). + Blur level of the Shadow accepts the values between(0-100). + Angle or Direction of the Shadow accepts the values between(0-359). + Distance of the Shadow accepts the values between(0-200). + if set to true [i custom shadow style]. + + To know more about charts refer this link. + + The following code illustrates how to use the CustomShadowStyles method with . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Customs the perspective shadow styles + chart.ChartArea.Shadow.CustomShadowStyles(Excel2007ChartPresetsPrespective.Below, 70, 90, 71, 50, 60, true); + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the shadow outer presets. + + The shadow outer presets. + + To know more about charts refer this link. + + The following code illustrates the use of ShadowOuterPresets property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the shadow outer presets + chart.ChartArea.Shadow.ShadowOuterPresets = Excel2007ChartPresetsOuter.OffsetBottom; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the shadow inner presets. + + The shadow inner presets. + + To know more about charts refer this link. + + The following code illustrates the use of ShadowInnerPresets property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the shadow inner presets + chart.ChartArea.Shadow.ShadowInnerPresets = Excel2007ChartPresetsInner.InsideDiagonalTopLeft; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the shadow prespective presets. + + The shadow prespective presets. + + To know more about charts refer this link. + + The following code illustrates the use of ShadowPrespectivePresets property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the shadow prespective presets + chart.ChartArea.Shadow.ShadowPrespectivePresets = Excel2007ChartPresetsPrespective.Below; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating whether this instance has custom shadow style. + + + true if this instance has custom shadow style; otherwise, false. + + + To know more about charts refer this link. + + The following code illustrates the use of HasCustomShadowStyle property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //True value indicating whether this instance has custom shadow style. + chart.ChartArea.Shadow.CustomShadowStyles(Excel2007ChartPresetsInner.InsideCenter, 70, 71, 50, 60, true); + bool hasCustomShadow = chart.ChartArea.Shadow.HasCustomShadowStyle; + if(hasCustomShadow) + { + //your code here + } + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the transparency of Shadow. + + The transparency. + + To know more about charts refer this link. + + The following code illustrates the use of Transparency property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the transparency of Shadow + chart.ChartArea.Shadow.Transparency = 50; + chart.ChartArea.Shadow.ShadowPrespectivePresets = Excel2007ChartPresetsPrespective.Below; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the size of Shadow. + + The size. + + To know more about charts refer this link. + + The following code illustrates the use of Size property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the size of Shadow + chart.ChartArea.Shadow.Size = 111; + chart.ChartArea.Shadow.ShadowPrespectivePresets = Excel2007ChartPresetsPrespective.Below; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the blur of Shadow. + + The blur. + + To know more about charts refer this link. + + The following code illustrates the use of Blur property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the blur of Shadow + chart.ChartArea.Shadow.Blur = 42; + chart.ChartArea.Shadow.ShadowPrespectivePresets = Excel2007ChartPresetsPrespective.Below; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the angle of Shadow. + + The angle. + + To know more about charts refer this link. + + The following code illustrates the use of Angle property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the angle of Shadow + chart.ChartArea.Shadow.Angle = 120; + chart.ChartArea.Shadow.ShadowPrespectivePresets = Excel2007ChartPresetsPrespective.Below; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the distance of Shadow. + + The distance. + + To know more about charts refer this link. + + The following code illustrates the use of Distance property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the distance of Shadow. + chart.ChartArea.Shadow.Distance = 86; + chart.ChartArea.Shadow.ShadowPrespectivePresets = Excel2007ChartPresetsPrespective.Below; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the color of the shadow. + + The color of the shadow. + + To know more about charts refer this link. + + The following code illustrates the use of ShadowColor property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the blur of Shadow + chart.ChartArea.Shadow.ShadowColor = System.Drawing.Color.Red; + chart.ChartArea.Shadow.ShadowPrespectivePresets = Excel2007ChartPresetsPrespective.Below; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Class used for Shadowformat Implementation + + + + + Object of WorkbookImpl + + + + + Indicates whether customshadowstyle is set or not + + + + + Represents the Transparency of the Shadow,the values are between(0-100) + + + + + Represents the Size of the Shadow,the values are between(0-200) + + + + + Represents the Blurradius of the Shadow,the values are between(0-100) + + + + + Object of ChartMarkerFormatRecord to get Shadow color + + + + + Represents the Direction of the Shadow,the values are between(0-359) + + + + + Represents the Distance of the Shadow,the values are between(0-200) + + + + + Represents the Shadow Color + + + + + Represents the indicate whether shadow properties has changed or not. + + + + + Creates the shadow and sets its Application and Parent + properties to specified values. + + Application object for the shadow. + Parent object for the shadow. + + + + Initializes the colors. + + + + + Shadows the color changed. + + + + + Searches for all necessary parent objects. + + + + + Represents if chart serie data format is formatted + + + + + Set the group shape property value to all the inner shapes. + + Property value to set. + Property name. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + + A new object that is a copy of this instance. + + + + + Clone current Record. + + Parent object. + Returns clone of current object. + + + + Customs the outer shadow styles. + + + + + + + + + + + Customs the inner shadow styles. + + + + + + + + + + Customs the perspective shadow styles. + + + + + + + + + + + Represents the stream for preserving the glow information. + + + + + Specifies the radius of blur to apply to the edges of the shape. + + + + + Gets the shadow format. + + The shadow format. + + + + Get or set the indicate whether shadow properties has changed or not. + + + + + Gets or sets the shadow outer presets. + + The shadow outer presets. + + + + Gets or sets the shadow inner presets. + + The shadow inner presets. + + + + Gets or sets a value indicating whether this instance has custom shadow style. + + + true if this instance has custom shadow style; otherwise, false. + + + + + Gets or sets the shadow prespective presets. + + The shadow prespective presets. + + + + Gets or sets the transparency of Shadow. + + The transparency. + + + + Gets or sets the size of Shadow. + + The size. + + + + Gets or sets the blur of Shadow. + + The blur. + + + + Gets or sets the angle of Shadow. + + The angle. + + + + Gets or sets the shadow color + + + + + Gets or sets the distance of Shadow. + + The distance. + + + + Gets / Sets the stream value to the glow member. + + + + + Gets / Sets the Soft Edge Radius member value. + + + + + This class represents option button form control. + + + + + This is base class for text box shapes such as TextBox and Comment. + + + + + Represents default formatting run size. + + + + + Value of text direction property. + + + + + Horizontal alignment of the text. + + + + + Vertical alignment of the text. + + + + + Text rotation. + + + + + Indicates whether comment text is locked. + + + + + Comment text. + + + + + Length of text. + + + + + Length of formatting runs. + + + + + Shape filling color. + + + + + Represents the RTFReader + + + + + Represents worksheet + + + + + Color Object. + + + + + Represents the text contains default horizontal alignment + + + + + Initializes new instance of the class. + + Application object for the new item. + Parent object for the new item. + + + + Extracts comment from MsofbtSpContainer. + + Application object for the current object. + Parent object for the current object. + Container that represents comment. + Parse options. + + + + Creates a clone of the current shape. + + New parent for the shape object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Indicates whether we should add created + shape into all necessary parent collections. + A copy of the current shape. + + + + Sets text to the specified TextWithFormat value. + + RTF text to set. + + + + Creates ClientTextBox record corresponding to this shape. + + Parent record for ClientTextBox. + Extracted Textbox record. + + + + Creates ClientTextBox record corresponding to this shape. + + Parent record for ClientTextBox. + Extracted Textbox record. + + + + dds continue records that stores text formatting of the comment shape. + + Record to put formatting into. + Record that stores text settings. + + + + Adds continue records that stores text of the comment shape. + + MsofbtClientTextBox record that stores comment settings. + + + + Parses TextObjectRecord. + + Record to parse. + If textObject is NULL. + + + + Parses two continue records. First contains text, second is formatting runs. + + Comment text. + Comment formatting runs. + Parse options. + + When textRecord or formattingRecord is NULL. + + + + + Serializes formatting runs. + + Array that contains formatting runs in binary format. + + + + Converts short form of formatting runs into long form. + + Formatting runs to convert. + Long for of formatting runs. + + + + Initializes variables. + + + + + Parses ClientTextBox record. + + Record to parse. + Parse options. + + + + Copies data from another comment shape. + + Text shape to copy from. + Dictionary with new font indexes. + + + + Creates default shape options. + + Record containing default options. + + + + Serializes text direction. + + MsofbtOPT record to which text ID will be added. + + If options argument is NULL. + + + + + Serializes comment's options. + + Parent record for options. + All options in MsofbtOPT record. + + + + Parses all unknown for ShapeImpl records. + + Record to parse. + Parse options. + + + + Dispose TextBoxShape + + + + + Horizontal alignment of the text. + + + + + Represents the text contains default horizontal alignment + + + + + Vertical alignment of the text. + + + + + Text rotation. + + + + + Indicates whether comment text is locked. + + + + + Comment text. + + + + + Gets or sets text box text. + + + + + Gets inner rich text string object. Read-only. + + + + + Shape filling color. + + + + + Gets or sets the unknown body properties + + + + + Color Object. + + + + + This interface represents TextBox form control shape. + + + + + This interface represents TextBox form control shape. + + + + + This interface represents TextBox form control. + + + + + Horizontal alignment of the text. + + + By default is set to HAlignment. Here for example, we set + to HAlignment property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBox textbox = worksheet.TextBoxes.AddTextBox(5, 5, 40, 100); + + //Set text + textbox.Text = "Text"; + + //Set alignment + textbox.HAlignment = ExcelCommentHAlign.Left; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Vertical alignment of the text. + + + By default is set to VAlignment. Here for example, we set + to HAlignment property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBox textbox = worksheet.TextBoxes.AddTextBox(5, 5, 200, 100); + + //Set text + textbox.Text = "Text"; + + //Set alignment + textbox.VAlignment = ExcelCommentVAlign.Center; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Text rotation. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBox textbox = worksheet.TextBoxes.AddTextBox(5, 5, 200, 100); + + //Set text + textbox.Text = "Text"; + + //Set rotation + textbox.TextRotation = ExcelTextRotation.Clockwise; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether comment text is locked. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBox textbox = worksheet.TextBoxes.AddTextBox(5, 5, 40, 100); + + //Set text + textbox.Text = "Text"; + + //Set locked + textbox.IsTextLocked = false; + + //Set sheet protection + worksheet.Protect("", ExcelSheetProtection.All); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Text of the comment. Read-only. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBox textbox = worksheet.TextBoxes.AddTextBox(5, 5, 20, 100); + + //Set rich text + IRichTextString richText = textbox.RichText; + + //Set font + IFont font = workbook.CreateFont(); + font.Color = ExcelKnownColors.Red; + + //Set text + richText.Text = "Text"; + + //Apply format + richText.SetFont(0, 3, font); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Text of the comment. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBox textbox = worksheet.TextBoxes.AddTextBox(5, 5, 40, 100); + + //Set text + textbox.Text = "Text"; + + //Set alignment + textbox.HAlignment = ExcelCommentHAlign.Center; + textbox.VAlignment = ExcelCommentVAlign.Center; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether option button is checked. + + + By default, is set to CheckState property. Here for example, we add two + and set to CheckState. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option buttons + IOptionButtonShape optionButton1 = worksheet.OptionButtons.AddOptionButton(); + IOptionButtonShape optionButton2 = worksheet.OptionButtons.AddOptionButton(); + + //Set text + optionButton1.Text = "Option1"; + optionButton2.Text = "Option2"; + + //Set dimensions + optionButton1.Left = 60; + optionButton1.Top = 40; + optionButton1.Width = 100; + optionButton1.Height = 30; + + optionButton2.Left = 160; + optionButton2.Top = 40; + optionButton2.Width = 100; + optionButton2.Height = 30; + + //Set linked cell + optionButton1.LinkedCell = worksheet["$C$7"]; + + //Set state + optionButton1.CheckState = ExcelCheckState.Checked; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether option button is first button. Read Only + + + The following code illustrates how to access IsFirstButton property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option buttons + IOptionButtonShape optionButton1 = worksheet.OptionButtons.AddOptionButton(); + IOptionButtonShape optionButton2 = worksheet.OptionButtons.AddOptionButton(); + + //Set text + optionButton1.Text = "Option1"; + optionButton2.Text = "Option2"; + + //Set dimensions + optionButton1.Left = 60; + optionButton1.Top = 40; + optionButton1.Width = 100; + optionButton1.Height = 30; + + optionButton2.Left = 160; + optionButton2.Top = 40; + optionButton2.Width = 100; + optionButton2.Height = 30; + + //Set linked cell + optionButton1.LinkedCell = worksheet["$C$7"]; + + //Set state + optionButton1.CheckState = ExcelCheckState.Checked; + + //Check IsFirstButton + Console.WriteLine(optionButton1.IsFirstButton); + Console.WriteLine(optionButton2.IsFirstButton); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + //False + + + + + + Gets or sets value indicating whether 3D shadow is present. + + + The following code illustrates how to set Display3DShading property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option buttons + IOptionButtonShape optionButton1 = worksheet.OptionButtons.AddOptionButton(); + IOptionButtonShape optionButton2 = worksheet.OptionButtons.AddOptionButton(); + + //Set text + optionButton1.Text = "Option1"; + optionButton2.Text = "Option2"; + + //Set dimensions + optionButton1.Left = 60; + optionButton1.Top = 40; + optionButton1.Width = 100; + optionButton1.Height = 30; + + optionButton2.Left = 160; + optionButton2.Top = 40; + optionButton2.Width = 100; + optionButton2.Height = 30; + + //Set linked cell + optionButton1.LinkedCell = worksheet["$C$7"]; + + //Set state + optionButton1.CheckState = ExcelCheckState.Checked; + + //Set 3D Shading + optionButton1.Display3DShading = true; + optionButton2.Display3DShading = true; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Indicates the cell in which the option button points to + + + The following code illustrates how to set LinkedCell for . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option buttons + IOptionButtonShape optionButton1 = worksheet.OptionButtons.AddOptionButton(); + IOptionButtonShape optionButton2 = worksheet.OptionButtons.AddOptionButton(); + + //Set text + optionButton1.Text = "Option1"; + optionButton2.Text = "Option2"; + + //Set dimensions + optionButton1.Left = 60; + optionButton1.Top = 40; + optionButton1.Width = 100; + optionButton1.Height = 30; + + optionButton2.Left = 160; + optionButton2.Top = 40; + optionButton2.Width = 100; + optionButton2.Height = 30; + + //Set linked cell + optionButton1.LinkedCell = worksheet["$C$7"]; + + //Set state + optionButton1.CheckState = ExcelCheckState.Checked; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Correct shape instance. + + + + + Correct shape version. + + + + + Static variable to represent a linked cell value + + + + + Static variable to represent index of objects + + + + + Indicates whether option button is checked. + + + + + Stores formula link value. + + + + + Indicates whether option button is firstbutton. + + + + + Indicates whether option button is firstbutton. + + + + + Indicates whether option button is firstbutton. + + + + + Indicates whether the event invokes are not + + + + + Represents the Option button index. + + + + + Initialize new instance of the text box shape. + + Application object for the new shape. + Parent object for the new shape. + + + + Initializes new instance of the option button shape. + + Application object for the new shape. + Parent object for the new shape. + Shape's container. + Parsing options. + + + + Initializes new instance of the option button shape. + + Application object for the new shape. + Parent object for the new shape. + Shape's container. + Parsing options. + + + + Initializes shape items. + + + + + This method is called inside of PrepareForSerialization to make shape-dependent preparations. + + + + + Serializes current shape. + + Container that will receive this comment. + + + + Finds the Sub records of option button + + + + + + + + Serializes comment's options. + + Parent record for options. + All options in MsofbtOPT record. + + + + Creates default options. + + MsofbtOPT record + + + + Parses client data record. + + Record to parse. + Parse options. + + + + Creates a clone of the current shape. + + New parent for the shape object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Indicates whether we should add created + shape into all necessary parent collections. + A copy of the current shape. + + + + Raise when Check state Changed + + + + + Invoke Event + + + + + Represents the Option button index. + + + + + Represents the Next Button in the Group. + + + + + Get object that represents the hyperlink for the shape. + + + + + Horizontal alignment of the text. + + + + + Vertical alignment of the text. + + + + + Text rotation. + + + + + Rich Text + + + + + Indicates whether check box is checked. + + + + + Gets or sets formula link value. + + + + + indicates whether the option button is first button in the group + + + + + Gets or sets value indicating whether 3D shadow is present. + + + + + Raise when Linked Cell Value Changed + + + + + ThreeD format implementation + + + + + Represents the three-dimensional chart format. + + + + + Gets or sets the bevel top. The bevel top property value from . + + The bevel top. + + To know more about charts refer this link. + + The following code illustrates the use of BevelTop property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the bevel top value + chart.ChartArea.ThreeD.BevelTop = Excel2007ChartBevelProperties.Slope; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the bevel bottom. The bevel bottom property value from . + + The bevel bottom. + + To know more about charts refer this link. + + The following code illustrates the use of BevelBottom property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Column_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.IsSeriesInRows = false; + + //sets the bevel bottom value + chart.Series[0].SerieFormat.ThreeD.BevelBottom = Excel2007ChartBevelProperties.Convex; + chart.Series[0].SerieFormat.ThreeD.BevelBottomHeight = 16; + chart.Series[0].SerieFormat.ThreeD.BevelBottomWidth = 7; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the material. The material property value from . + + The material. + + To know more about charts refer this link. + + The following code illustrates the use of Material property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the material value + chart.ChartArea.ThreeD.Material = Excel2007ChartMaterialProperties.TranslucentPowder; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the lighting. The lighting property value from . + + The lighting. + + To know more about charts refer this link. + + The following code illustrates the use of Lighting property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the lighting value + chart.ChartArea.ThreeD.Lighting = Excel2007ChartLightingProperties.Sunrise; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the bevel top height. This property used to adjust the height of property. + + The bevel top height. + + To know more about charts refer this link. + + The following code illustrates the use of BevelTopHeight property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.ChartArea.ThreeD.BevelTop = Excel2007ChartBevelProperties.Slope; + + //sets the bevel top height value + chart.ChartArea.ThreeD.BevelTopHeight = 16; + chart.ChartArea.ThreeD.BevelTopWidth = 7; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the bevel top width. This property used to adjust the width of property. + + The bevel top width. + + To know more about charts refer this link. + + The following code illustrates the use of BevelTopWidth property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.ChartArea.ThreeD.BevelTop = Excel2007ChartBevelProperties.Slope; + + //sets the bevel top width value + chart.ChartArea.ThreeD.BevelTopWidth = 7; + chart.ChartArea.ThreeD.BevelTopHeight = 16; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the bevel bottom height. This property used to adjust the height of property. + + The bevel bottom height. + + To know more about charts refer this link. + + The following code illustrates the use of BevelBottomHeight property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Column_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.IsSeriesInRows = false; + chart.Series[0].SerieFormat.ThreeD.BevelBottom = Excel2007ChartBevelProperties.Convex; + + //sets the bevel bottom height value + chart.Series[0].SerieFormat.ThreeD.BevelBottomHeight = 16; + chart.Series[0].SerieFormat.ThreeD.BevelBottomWidth = 7; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the bevel bottom width. This property used to adjust the width of property. + + The bevel bottom width. + + To know more about charts refer this link. + + The following code illustrates the use of BevelBottomWidth property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Column_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.IsSeriesInRows = false; + chart.Series[0].SerieFormat.ThreeD.BevelBottom = Excel2007ChartBevelProperties.Convex; + + //sets the bevel bottom width value + chart.Series[0].SerieFormat.ThreeD.BevelBottomWidth = 7; + chart.Series[0].SerieFormat.ThreeD.BevelBottomHeight = 16; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Class used for Shadowformat Implementation + + + + + Bevel top height value + + + + + Bevel top width value + + + + + Bevel bottom height value + + + + + Bevel bottom width value + + + + + byte value used as flag and boolean property for the values + + + + + Represents whether shape properties changed or not + + + + + Creates the shadow and sets its Application and Parent + properties to specified values. + Intialize the ShadowData object + + Application object for the shadow. + Parent object for the shadow. + + + + Searches for all necessary parent objects. + + + + + Returns the chart material type. + + + + + + Represents if chart serie data format is formatted + + + + + Set the group shape property value to all the inner shapes. + + Property value to set. + Property name. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + + A new object that is a copy of this instance. + + + + + Clone current Record. + + Parent object. + Returns clone of current object. + + + + Represents whether shape properties are changed or not + + + + + Gets or sets the bevel top. + + The bevel top. + + + + Gets or sets the bevel bottom. + + The bevel bottom. + + + + Gets or sets the material. + + The material. + + + + Gets or sets the lighting. + + The lighting. + + + + Get or Set BevelT height + + Integer Number + The value ranges from 0 to 1584 + + + + Get or Set BevelB height + + Integer Number + The value ranges from 0 to 1584 + + + + Get or Set BevelT Width + + Integer Number + The value ranges from 0 to 1584 + + + + Get or Set BevelB height + + Integer Number + The value ranges from 0 to 1584 + + + + Indicates whether the 3D setting is default or not. + + returns true if 3D setiing is default otherwise fasle. + + + + Boolean value indicates whether the bevel top width set or not. + + + + + Boolean value indicates whether the bevel top height set or not. + + + + + Boolean value indicates whether the bevel bottom width set or not. + + + + + Boolean value indicates whether the bevel bottom height set or not. + + + + + Boolean value indicates whether the bevel bottom set or not. + + + + + Boolean value indicates whether the bevel top set or not. + + + + s + Boolean value indicates whether the material set or not. + + + + + Represents worksheet's textbox collection. + + + + + This interface represents CheckBoxes collection inside single worksheet. + + + + + Adds new to the collection. + + One-based row index of the top-left corner of the new item. + One-based column index of the top-left corner of the new item. + Height in pixels of the new item. + Width in pixels of the new item. + Newly added item. + + The following code illustrates how to Add a object to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + ICheckBoxShape checkbox = worksheet.CheckBoxes.AddCheckBox(1, 1, 20, 100); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Returns number of objects in the collection. + + + The following code illustrates how to access Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + worksheet.CheckBoxes.AddCheckBox(1, 1, 20, 100); + worksheet.CheckBoxes.AddCheckBox(5, 5, 20, 100); + + //Check count + Console.Write(worksheet.CheckBoxes.Count); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Returns single from the collection. + + Item's index to get. + Single item from the collection. + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + worksheet.CheckBoxes.AddCheckBox(1, 1, 20, 100); + worksheet.CheckBoxes.AddCheckBox(5, 5, 20, 100); + + //Set name + worksheet.CheckBoxes[0].Name = "CheckBox1"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets single from the collection. + + Name of the item to get. + Single item from the collection. + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + worksheet.CheckBoxes.AddCheckBox(1, 1, 20, 100); + + //Set name + worksheet.CheckBoxes[0].Name = "CheckBox1"; + + //Get width + Console.Write(worksheet.CheckBoxes["CheckBox1"].Width); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //100 + + + + + + Parent worksheet. + + + + + Initializes new instance of the collection. + + Application object for the new instance. + Parent object for the new instance. + + + + Adds new item to the collection. + + Checkbox to add. + + + + Adds new textbox to the collection. + + Top row for the new shape. + Left column for the new shape. + Height in pixels of the new shape. + Width in pixels of the new shape. + Newly created TextBox object. + + + + Returns single item from the collection. + + Index of the item to get. + Single item from the collection. + + + + Gets single item from the collection. + + Name of the item to get. + Single item from the collection. + + + + This class represents collection of all combo box inside single worksheet. + + + + + This interface represents collection of all combo box inside single worksheet. + + + + + Adds new to the collection. + + One-based row index of the top-left corner of the new item. + One-based column index of the top-left corner of the new item. + Height in pixels of the new item. + Width in pixels of the new item. + Newly added item. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + IComboBoxShape combobox = worksheet.ComboBoxes.AddComboBox(1, 1, 20, 100); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Returns number of in the collection. + + + The following code illustrates how to access Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + IComboBoxShape combobox1 = worksheet.ComboBoxes.AddComboBox(1, 1, 20, 100); + IComboBoxShape combobox2 = worksheet.ComboBoxes.AddComboBox(5, 5, 20, 100); + + //Get count + Console.Write(worksheet.ComboBoxes.Count); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Returns single from the collection. + + Item's index to get. + Single item from the collection. + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + worksheet.ComboBoxes.AddComboBox(1, 1, 20, 100); + worksheet.ComboBoxes.AddComboBox(5, 5, 20, 100); + + //Set name + worksheet.ComboBoxes[0].Name = "ComboBox1"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets single item from the collection. + + Name of the item to get. + Single item from the collection. + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + worksheet.ComboBoxes.AddComboBox(1, 1, 20, 100); + + //Set name + worksheet.ComboBoxes[0].Name = "ComboBox1"; + + //Get width + Console.Write(worksheet.ComboBoxes["ComboBox1"].Width); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //100 + + + + + + Parent worksheet. + + + + + Adds new item to the collection. + + One-based row index of the top-left corner of the new item. + One-based column index of the top-left corner of the new item. + Height in pixels of the new item. + Width in pixels of the new item. + Newly added item. + + + + Initializes new instance of the collection. + + Application object for the new collection. + Parent object for the new collection. + + + + Adds new item to the collection. + + Combobox to add. + + + + Gets single item from the collection. + + Name of the item to get. + Single item from the collection. + + + + Contains a condition and the formatting attributes + applied to the cell, if the condition is met. + Used for multiple-cells range. + + + + + Represents data validation for a worksheet range. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IDataValidation validation = sheet.Range["A3"].EntireColumn.DataValidation; + validation.BeginUpdate(); + validation.DataRange = sheet.Range["D1:D56"]; + validation.IsEmptyCellAllowed = true; + validation.IsListInFormula = false; + validation.EndUpdate(); + + + + + + Gets or sets the title of the prompt box. The prompt box title can be edit based on the validation. + + + To know more about PromptBoxTitle property refer this link. + + The following code illustrates the use of PromptBoxTitle property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["C3"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C1"].Text = "Data Validation List in C3"; + worksheet.Range["C1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation dataValidation = worksheet.Range["C3"].DataValidation; + dataValidation.ListOfValues = new string[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; + dataValidation.PromptBoxTitle = "Sample"; // Title of PromptBox + dataValidation.PromptBoxText = "Data validation for list"; + dataValidation.ShowPromptBox = true; + dataValidation.PromptBoxHPosition = 25; + dataValidation.PromptBoxVPosition = 30; + dataValidation.IsPromptBoxPositionFixed = true; + dataValidation.IsPromptBoxVisible = true; + dataValidation.IsListInFormula = true; + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the text in the prompt box. The prompt box text can be edit based on the validation. + + + To know more about PromptBoxText property refer this link. + + The following code illustrates the use of PromptBoxText property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["C3"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C1"].Text = "Data Validation List in C3"; + worksheet.Range["C1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation dataValidation = worksheet.Range["C3"].DataValidation; + dataValidation.ListOfValues = new string[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; + dataValidation.PromptBoxTitle = "Sample"; + dataValidation.PromptBoxText = "Data validation for list"; // Text of PromptBox + dataValidation.ShowPromptBox = true; + dataValidation.PromptBoxHPosition = 25; + dataValidation.PromptBoxVPosition = 30; + dataValidation.IsPromptBoxPositionFixed = true; + dataValidation.IsPromptBoxVisible = true; + dataValidation.IsListInFormula = true; + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the title of the error dialog. The errorbox title can be edit based on validation or user's needs. + + + To know more about ErrorBoxTitle property refer this link. + + The following code illustrates the use of ErrorBoxTitle property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["E2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["A1"].Text = "Text Vaidation"; + worksheet.Range["C1"].Text = "Time Vaidation"; + worksheet.Range["E1"].Text = "Number Vaidation"; + worksheet.Range["A1"].AutofitColumns(); + worksheet.Range["C1"].AutofitColumns(); + worksheet.Range["E1"].AutofitColumns(); + + // Data validation for text length + IDataValidation dataValidation = worksheet.Range["A2"].DataValidation; + dataValidation.AllowType = ExcelDataType.TextLength; + dataValidation.CompareOperator = ExcelDataValidationComparisonOperator.GreaterOrEqual; + dataValidation.FirstFormula = "5"; + dataValidation.ShowErrorBox = true; + dataValidation.ErrorBoxText = "Text length should be greater than or equal to 5"; + dataValidation.ErrorBoxTitle = "ERROR"; //Error box title for text length validation + dataValidation.ErrorStyle = ExcelErrorStyle.Warning; + + // Date Validation for Time + IDataValidation dataValidation2 = worksheet.Range["C2"].DataValidation; + dataValidation2.AllowType = ExcelDataType.Time; + dataValidation2.CompareOperator = ExcelDataValidationComparisonOperator.Between; + dataValidation2.FirstFormula = "10:00"; + dataValidation2.SecondFormula = "12:00"; + dataValidation2.ShowErrorBox = false; + dataValidation2.ErrorBoxText = "Time between 10:00 and 12:00 'o Clock"; + dataValidation2.ErrorBoxTitle = "Alert"; //Error box title for time validation + dataValidation2.ErrorStyle = ExcelErrorStyle.Info; + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the error message in the error dialog. The user being alerted whenever enters an invalid data. The errorbox text can be edit based on the validation. + + + The data validation error message will be shown whenever the user enters invalid data. To know more about ErrorBoxText property refer this link. + + The following code illustrates the use of ErrorBoxText property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["E2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["A1"].Text = "Text Vaidation"; + worksheet.Range["C1"].Text = "Time Vaidation"; + worksheet.Range["E1"].Text = "Number Vaidation"; + worksheet.Range["A1"].AutofitColumns(); + worksheet.Range["C1"].AutofitColumns(); + worksheet.Range["E1"].AutofitColumns(); + + // Data validation for text length + IDataValidation dataValidation = worksheet.Range["A2"].DataValidation; + dataValidation.AllowType = ExcelDataType.TextLength; + dataValidation.CompareOperator = ExcelDataValidationComparisonOperator.GreaterOrEqual; + dataValidation.FirstFormula = "5"; + dataValidation.ShowErrorBox = true; + dataValidation.ErrorBoxText = "Text length should be greater than or equal to 5"; //Error message for text length validation + dataValidation.ErrorBoxTitle = "ERROR"; + dataValidation.ErrorStyle = ExcelErrorStyle.Warning; + + // Date Validation for Time + IDataValidation dataValidation2 = worksheet.Range["C2"].DataValidation; + dataValidation2.AllowType = ExcelDataType.Time; + dataValidation2.CompareOperator = ExcelDataValidationComparisonOperator.Between; + dataValidation2.FirstFormula = "10:00"; + dataValidation2.SecondFormula = "12:00"; + dataValidation2.ShowErrorBox = false; + dataValidation2.ErrorBoxText = "Time between 10:00 and 12:00 'o Clock"; //Error message for time validation + dataValidation2.ErrorBoxTitle = "ERROR"; + dataValidation2.ErrorStyle = ExcelErrorStyle.Info; + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the value or expression associated with the data validation. Firstformula must important to validate data in CompareOperator property. + + + This can be a constant value, a string value, a cell reference, or a formula. To know more about FirstFormula property refer this link. + + The following code illustrates the use of FirstFormula property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["E2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["A1"].Text = "Text Vaidation"; + worksheet.Range["C1"].Text = "Time Vaidation"; + worksheet.Range["E1"].Text = "Number Vaidation"; + worksheet.Range["A1"].AutofitColumns(); + worksheet.Range["C1"].AutofitColumns(); + worksheet.Range["E1"].AutofitColumns(); + + // Data validation for text length + IDataValidation dataValidation = worksheet.Range["A2"].DataValidation; + dataValidation.AllowType = ExcelDataType.TextLength; + dataValidation.CompareOperator = ExcelDataValidationComparisonOperator.GreaterOrEqual; + dataValidation.FirstFormula = "5"; //DataValidation Value for First Formula + + // Date Validation for Time + IDataValidation dataValidation2 = worksheet.Range["C2"].DataValidation; + dataValidation2.AllowType = ExcelDataType.Time; + dataValidation2.CompareOperator = ExcelDataValidationComparisonOperator.Between; + dataValidation2.FirstFormula = "10:00"; //DataValidation Value for First Formula + dataValidation2.SecondFormula = "12:00"; + + //Data validation for number + IDataValidation dataValidation3 = worksheet.Range["E2"].DataValidation; + dataValidation3.AllowType = ExcelDataType.Integer; + dataValidation3.CompareOperator = ExcelDataValidationComparisonOperator.NotBetween; + dataValidation3.FirstFormula = "0"; //DataValidation Value for First Formula + dataValidation3.SecondFormula = "10"; + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the first formula's DateTime value. FirstDateTime must important to validate data in CompareOperator property. + + + Value of the property must be a DateTime. To know more about FirstDateTime property refer this link. + + The following code illustrates the use of FirstDateTime property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["E1"].Text = "Enter the Date in E3"; + worksheet.Range["E1"].AutofitColumns(); + worksheet.Range["E3"].CellStyle.Color = System.Drawing.Color.LightGray; + + // DataValidation in Worksheet Range + IDataValidation dateValidation = worksheet.Range["E3"].DataValidation; + dateValidation.AllowType = ExcelDataType.Date; + dateValidation.CompareOperator = ExcelDataValidationComparisonOperator.Between; + dateValidation.FirstDateTime = new DateTime(2003, 5, 10); // FirstDateTime Formula sample value. + dateValidation.SecondDateTime = new DateTime(2004, 5, 10); + dateValidation.ShowErrorBox = true; + dateValidation.ErrorBoxText = "Enter Value between 10/5/2003 to 10/5/2004"; + dateValidation.ErrorBoxTitle = "ERROR"; + dateValidation.PromptBoxText = "Data validation for date"; + dateValidation.ShowPromptBox = true; + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the value or expression associated with the second part of the data validation. Second formula used only when CompareOperator have a value "Between"/"NotBetween"; + + + This can be a constant value, a string value, a cell reference, or a formula. The value must be greater than or equal to the value. To know more about SecondFormula property refer this link. + + The following code illustrates the use of SecondFormula property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["C2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["E2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C1"].Text = "Time Vaidation"; + worksheet.Range["E1"].Text = "Number Vaidation"; + worksheet.Range["C1"].AutofitColumns(); + worksheet.Range["E1"].AutofitColumns(); + + // Date Validation for Time + IDataValidation dataValidation2 = worksheet.Range["C2"].DataValidation; + dataValidation2.AllowType = ExcelDataType.Time; + dataValidation2.CompareOperator = ExcelDataValidationComparisonOperator.Between; + dataValidation2.FirstFormula = "10:00"; + dataValidation2.SecondFormula = "12:00"; //DataValidation Value for Second Formula + + //Data validation for number + IDataValidation dataValidation3 = worksheet.Range["E2"].DataValidation; + dataValidation3.AllowType = ExcelDataType.Integer; + dataValidation3.CompareOperator = ExcelDataValidationComparisonOperator.NotBetween; + dataValidation3.FirstFormula = "0"; + dataValidation3.SecondFormula = "10"; //DataValidation Value for Second Formula + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets second formula's DateTime value. SecondDateTime must important to validate data in CompareOperator property. + + + Value of the property must be a DateTime. To know more about SecondDateTime property refer this link. + + The following code illustrates the use of SecondDateTime property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["E1"].Text = "Enter the Date in E3"; + worksheet.Range["E1"].AutofitColumns(); + worksheet.Range["E3"].CellStyle.Color = System.Drawing.Color.LightGray; + + // DataValidation in Worksheet Range + IDataValidation dateValidation = worksheet.Range["E3"].DataValidation; + dateValidation.AllowType = ExcelDataType.Date; + dateValidation.CompareOperator = ExcelDataValidationComparisonOperator.Between; + dateValidation.FirstDateTime = new DateTime(2003, 5, 10); + dateValidation.SecondDateTime = new DateTime(2004, 5, 10); // SecondDateTime Formula sample value. + dateValidation.ShowErrorBox = true; + dateValidation.ErrorBoxText = "Enter Value between 10/5/2003 to 10/5/2004"; + dateValidation.ErrorBoxTitle = "ERROR"; + dateValidation.PromptBoxText = "Data validation for date"; + dateValidation.ShowPromptBox = true; + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the data type validation for a range. AllowType is allows the data with restricted Datatypes or Rules using enumeration. + + + Specifies the type of validation test to be performed in conjunction with values. To know more about AllowType property refer this link. + + The following code illustrates the use of AllowType property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["E2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["A1"].Text = "Text Vaidation"; + worksheet.Range["C1"].Text = "Time Vaidation"; + worksheet.Range["E1"].Text = "Number Vaidation"; + worksheet.Range["A1"].AutofitColumns(); + worksheet.Range["C1"].AutofitColumns(); + worksheet.Range["E1"].AutofitColumns(); + + // Data validation for text length + IDataValidation dataValidation = worksheet.Range["A2"].DataValidation; + dataValidation.AllowType = ExcelDataType.TextLength; // Allows the data with restricted Datatypes/Rules + dataValidation.CompareOperator = ExcelDataValidationComparisonOperator.GreaterOrEqual; + dataValidation.FirstFormula = "5"; + + // Date Validation for Time + IDataValidation dataValidation2 = worksheet.Range["C2"].DataValidation; + dataValidation2.AllowType = ExcelDataType.Time; // Allows the data with restricted Datatypes/Rules + dataValidation2.CompareOperator = ExcelDataValidationComparisonOperator.Between; + dataValidation2.FirstFormula = "10:00"; + dataValidation2.SecondFormula = "12:00"; + + //Data validation for number + IDataValidation dataValidation3 = worksheet.Range["E2"].DataValidation; + dataValidation3.AllowType = ExcelDataType.Integer; // Allows the data with restricted Datatypes/Rules + dataValidation3.CompareOperator = ExcelDataValidationComparisonOperator.NotBetween; + dataValidation3.FirstFormula = "0"; + dataValidation3.SecondFormula = "10"; + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the comparison operation to perform. CompareOperator for Data Validation works with enumeration and two formula values. + + + Comparison operator between Two formula values. To know more about CompareOperator property refer this link. + + The following code illustrates the use of CompareOperator property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["E2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["A1"].Text = "Text Vaidation"; + worksheet.Range["C1"].Text = "Time Vaidation"; + worksheet.Range["E1"].Text = "Number Vaidation"; + worksheet.Range["A1"].AutofitColumns(); + worksheet.Range["C1"].AutofitColumns(); + worksheet.Range["E1"].AutofitColumns(); + + // Data validation for text length + IDataValidation dataValidation = worksheet.Range["A2"].DataValidation; + dataValidation.AllowType = ExcelDataType.TextLength; + dataValidation.CompareOperator = ExcelDataValidationComparisonOperator.GreaterOrEqual; //Comparison operation for Data Validation + dataValidation.FirstFormula = "5"; + + // Date Validation for Time + IDataValidation dataValidation2 = worksheet.Range["C2"].DataValidation; + dataValidation2.AllowType = ExcelDataType.Time; + dataValidation2.CompareOperator = ExcelDataValidationComparisonOperator.Between; //Comparison operation for Data Validation + dataValidation2.FirstFormula = "10:00"; + dataValidation2.SecondFormula = "12:00"; + + //Data validation for number + IDataValidation dataValidation3 = worksheet.Range["E2"].DataValidation; + dataValidation3.AllowType = ExcelDataType.Integer; + dataValidation3.CompareOperator = ExcelDataValidationComparisonOperator.NotBetween; //Comparison operation for Data Validation + dataValidation3.FirstFormula = "0"; + dataValidation3.SecondFormula = "10"; + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + True if formula contains list of values. otherwise False. + + + Default value for IsListInFormula is false. Mostly the IsListInFormula property used for internal purpose. To know more about IsListInFormula property refer this link. + + The following code illustrates the use of IsListInFormula property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["C3"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C1"].Text = "Data Validation List in C3"; + worksheet.Range["C1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation dataValidation = worksheet.Range["C3"].DataValidation; + dataValidation.ListOfValues = new string[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; + + //True if dataValiadation's ListOfValues property has a value + if(dataValidation.IsListInFormula) + { + //Your code here + } + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + True if empty values are permitted by the range data validation. otherwise False. + + + To know more about IsEmptyCellAllowed property refer this link. + + The following code illustrates the use of IsEmptyCellAllowed property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["A1"].Text = "Select the Day in A2"; + worksheet.Range["A1"].AutofitColumns(); + worksheet.Range["D1"].Text = "Days in a Week"; + worksheet.Range["D2"].Text = "Monday"; + worksheet.Range["D3"].Text = "Tuesday"; + worksheet.Range["D4"].Text = "Wednesday"; + worksheet.Range["D5"].Text = "Thursday"; + worksheet.Range["D6"].Text = "Friday"; + worksheet.Range["D7"].Text = "Saturday"; + worksheet.Range["D8"].Text = "Sunday"; + worksheet.Range["D1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation validation = worksheet.Range["A2"].DataValidation; + validation.DataRange = worksheet.Range["D2:D8"]; + validation.IsEmptyCellAllowed = true; // Set true to allow Empty cells. + validation.IsSuppressDropDownArrow = false; + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + True if the drop down arrow is invisible. otherwise False. + + + To know more about IsSuppressDropDownArrow property refer this link. + + The following code illustrates the use of IsSuppressDropDownArrow property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["A1"].Text = "Select the Day in A2"; + worksheet.Range["A1"].AutofitColumns(); + worksheet.Range["D1"].Text = "Days in a Week"; + worksheet.Range["D2"].Text = "Monday"; + worksheet.Range["D3"].Text = "Tuesday"; + worksheet.Range["D4"].Text = "Wednesday"; + worksheet.Range["D5"].Text = "Thursday"; + worksheet.Range["D6"].Text = "Friday"; + worksheet.Range["D7"].Text = "Saturday"; + worksheet.Range["D8"].Text = "Sunday"; + worksheet.Range["D1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation validation = worksheet.Range["A2"].DataValidation; + validation.DataRange = worksheet.Range["D2:D8"]; + validation.IsEmptyCellAllowed = true; + validation.IsSuppressDropDownArrow = false; //True if the drop down arrow is invisible. + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + True if prompt box is shown. otherwise False. Default value is True. + + + PromptBox shows whenever you click the Datavalidation cell. To know more about ShowPromptBox property refer this link. + + The following code illustrates the use of ShowPromptBox property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["C3"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C1"].Text = "Data Validation List in C3"; + worksheet.Range["C1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation dataValidation = worksheet.Range["C3"].DataValidation; + dataValidation.ListOfValues = new string[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; + dataValidation.PromptBoxTitle = "Sample"; + dataValidation.PromptBoxText = "Data validation for list"; + dataValidation.ShowPromptBox = true; //True if prompt box is shown + dataValidation.PromptBoxHPosition = 25; + dataValidation.PromptBoxVPosition = 30; + dataValidation.IsPromptBoxPositionFixed = true; + dataValidation.IsPromptBoxVisible = true; + dataValidation.IsListInFormula = true; + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + True if error dialog is shown. otherwise False. Default value is True. + + + The data validation error message will be shown whenever the user enters invalid data. To know more about ShowErrorBox property refer this link. + + The following code illustrates the use of ShowErrorBox property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["E2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["A1"].Text = "Text Vaidation"; + worksheet.Range["C1"].Text = "Time Vaidation"; + worksheet.Range["E1"].Text = "Number Vaidation"; + worksheet.Range["A1"].AutofitColumns(); + worksheet.Range["C1"].AutofitColumns(); + worksheet.Range["E1"].AutofitColumns(); + + // Data validation for text length + IDataValidation dataValidation = worksheet.Range["A2"].DataValidation; + dataValidation.AllowType = ExcelDataType.TextLength; + dataValidation.CompareOperator = ExcelDataValidationComparisonOperator.GreaterOrEqual; + dataValidation.FirstFormula = "5"; + dataValidation.ShowErrorBox = true; //Value set as true. + dataValidation.ErrorBoxText = "Text length should be greater than or equal to 5"; + dataValidation.ErrorBoxTitle = "ERROR"; + dataValidation.ErrorStyle = ExcelErrorStyle.Warning; + + // Date Validation for Time + IDataValidation dataValidation2 = worksheet.Range["C2"].DataValidation; + dataValidation2.AllowType = ExcelDataType.Time; + dataValidation2.CompareOperator = ExcelDataValidationComparisonOperator.Between; + dataValidation2.FirstFormula = "10:00"; + dataValidation2.SecondFormula = "12:00"; + dataValidation2.ShowErrorBox = false; //Value set as false. + dataValidation2.ErrorBoxText = "Time between 10:00 and 12:00 'o Clock"; + dataValidation2.ErrorBoxTitle = "ERROR"; + dataValidation2.ErrorStyle = ExcelErrorStyle.Info; + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets Horizontal position of the prompt box. + + + Default value for PromptBoxHPosition is 0. Mostly the PromptBoxHPosition property used for internal purpose. To know more about PromptBoxHPosition property refer this link. + + The following code illustrates the use of PromptBoxHPosition property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["C3"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C1"].Text = "Data Validation List in C3"; + worksheet.Range["C1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation dataValidation = worksheet.Range["C3"].DataValidation; + dataValidation.ListOfValues = new string[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; + dataValidation.PromptBoxTitle = "Sample"; + dataValidation.PromptBoxText = "Data validation for list"; + dataValidation.ShowPromptBox = true; + dataValidation.PromptBoxHPosition = 25; // Set the promptBox horizontal position. + dataValidation.PromptBoxVPosition = 30; + dataValidation.IsPromptBoxPositionFixed = true; + dataValidation.IsPromptBoxVisible = true; + dataValidation.IsListInFormula = true; + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets Vertical position of the prompt box. + + + Default value for PromptBoxVPosition is 0. Mostly the PromptBoxVPosition property used for internal purpose. To know more about PromptBoxVPosition property refer this link. + + The following code illustrates the use of PromptBoxVPosition property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["C3"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C1"].Text = "Data Validation List in C3"; + worksheet.Range["C1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation dataValidation = worksheet.Range["C3"].DataValidation; + dataValidation.ListOfValues = new string[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; + dataValidation.PromptBoxTitle = "Sample"; + dataValidation.PromptBoxText = "Data validation for list"; + dataValidation.ShowPromptBox = true; + dataValidation.PromptBoxHPosition = 25; + dataValidation.PromptBoxVPosition = 30; // Set the promptBox vertical position. + dataValidation.IsPromptBoxPositionFixed = true; + dataValidation.IsPromptBoxVisible = true; + dataValidation.IsListInFormula = true; + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + True if prompt box is visible. otherwise False. + + + Default value for IsPromptBoxVisible is false. Mostly the IsPromptBoxVisible property used for internal purpose. To know more about IsPromptBoxVisible property refer this link. + + The following code illustrates the use of IsPromptBoxVisible property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["C3"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C1"].Text = "Data Validation List in C3"; + worksheet.Range["C1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation dataValidation = worksheet.Range["C3"].DataValidation; + dataValidation.ListOfValues = new string[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; + dataValidation.PromptBoxTitle = "Sample"; + dataValidation.PromptBoxText = "Data validation for list"; + dataValidation.ShowPromptBox = true; + dataValidation.PromptBoxHPosition = 25; + dataValidation.PromptBoxVPosition = 30; + dataValidation.IsPromptBoxPositionFixed = true; + dataValidation.IsPromptBoxVisible = true; //True if prompt box is visible + dataValidation.IsListInFormula = true; + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + True if prompt box position is fixed. otherwise False. + + + Default value for IsPromptBoxPositionFixed is false. Mostly the IsPromptBoxPositionFixed property used for internal purpose. To know more about IsPromptBoxPositionFixed property refer this link. + + The following code illustrates the use of IsPromptBoxPositionFixed property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["C3"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C1"].Text = "Data Validation List in C3"; + worksheet.Range["C1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation dataValidation = worksheet.Range["C3"].DataValidation; + dataValidation.ListOfValues = new string[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; + dataValidation.PromptBoxTitle = "Sample"; + dataValidation.PromptBoxText = "Data validation for list"; + dataValidation.ShowPromptBox = true; + dataValidation.PromptBoxHPosition = 25; + dataValidation.PromptBoxVPosition = 30; + dataValidation.IsPromptBoxPositionFixed = true; //True if prompt box position is fixed + dataValidation.IsPromptBoxVisible = true; + dataValidation.IsListInFormula = true; + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the type of error. Using enumeration we can change the Style/Type of an ErrorBox in ErrorStyle property. + + + To know more about ErrorStyle property refer this link. + + The following code illustrates the use of ErrorStyle property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["E2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["A1"].Text = "Text Vaidation"; + worksheet.Range["C1"].Text = "Time Vaidation"; + worksheet.Range["E1"].Text = "Number Vaidation"; + worksheet.Range["A1"].AutofitColumns(); + worksheet.Range["C1"].AutofitColumns(); + worksheet.Range["E1"].AutofitColumns(); + + // Data validation for text length + IDataValidation dataValidation = worksheet.Range["A2"].DataValidation; + dataValidation.AllowType = ExcelDataType.TextLength; + dataValidation.CompareOperator = ExcelDataValidationComparisonOperator.GreaterOrEqual; + dataValidation.FirstFormula = "5"; + dataValidation.ShowErrorBox = true; + dataValidation.ErrorBoxText = "Text length should be greater than or equal to 5"; + dataValidation.ErrorBoxTitle = "ERROR"; + dataValidation.ErrorStyle = ExcelErrorStyle.Warning; //Warning Type error box + + // Date Validation for Time + IDataValidation dataValidation2 = worksheet.Range["C2"].DataValidation; + dataValidation2.AllowType = ExcelDataType.Time; + dataValidation2.CompareOperator = ExcelDataValidationComparisonOperator.Between; + dataValidation2.FirstFormula = "10:00"; + dataValidation2.SecondFormula = "12:00"; + dataValidation2.ShowErrorBox = false; + dataValidation2.ErrorBoxText = "Time between 10:00 and 12:00 'o Clock"; + dataValidation2.ErrorBoxTitle = "Alert"; + dataValidation2.ErrorStyle = ExcelErrorStyle.Info; //Information Type error box + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets Array of possible values. The values of ListOfValues property must be in string format. + + + This property should be used when the values in the Data Validation list are entered manually. To know more about ListOfValues property refer this link. + + The following code illustrates the use of ListOfValues property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["C3"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["C1"].Text = "Data Validation List in C3"; + worksheet.Range["C1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation dataValidation = worksheet.Range["C3"].DataValidation; + // Sample list of values in string format + dataValidation.ListOfValues = new string[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; + dataValidation.PromptBoxTitle = "Sample"; + dataValidation.PromptBoxText = "Data validation for list"; + dataValidation.ShowPromptBox = true; + dataValidation.PromptBoxHPosition = 25; + dataValidation.PromptBoxVPosition = 30; + dataValidation.IsPromptBoxPositionFixed = true; + dataValidation.IsPromptBoxVisible = true; + dataValidation.IsListInFormula = true; + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the Range of possible values. The list of DataRange cell values are set as dropdown list of DataValidation Range. + + + In Output of an excel the list of DataRange cell values are in dropdown list of DataValidation Range. To know more about DataRange property refer this link. + + The following code illustrates the use of DataRange property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A2"].CellStyle.Color = System.Drawing.Color.LightGray; + worksheet.Range["A1"].Text = "Select the Day in A2"; + worksheet.Range["A1"].AutofitColumns(); + worksheet.Range["D1"].Text = "Days in a Week"; + worksheet.Range["D2"].Text = "Monday"; + worksheet.Range["D3"].Text = "Tuesday"; + worksheet.Range["D4"].Text = "Wednesday"; + worksheet.Range["D5"].Text = "Thursday"; + worksheet.Range["D6"].Text = "Friday"; + worksheet.Range["D7"].Text = "Saturday"; + worksheet.Range["D8"].Text = "Sunday"; + worksheet.Range["D1"].AutofitColumns(); + + // DataValidation in Worksheet Range + IDataValidation validation = worksheet.Range["A2"].DataValidation; + validation.DataRange = worksheet.Range["D2:D8"]; //DataRange for Data Validation + validation.IsEmptyCellAllowed = true; + validation.IsSuppressDropDownArrow = false; + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Holds first formula tokens. + + + + + Holds second formula tokens. + + + + + Parent range + + + + + List with cached data validation. + + + + + Initializes a new instance of class with specified parent range. + + Parent object for the format. + + + + Copies data validation settings from the first cell to the rest of the range. + + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Iterates through all cells. + + Method to call for each cell. + + + + Iterates through all data validations using cells. + + Method to call for each data validation. + Value to pass to the data validation method. + + + + Iterates through all cached data validation objects. + + Method to call for each data validation. + Value to pass to the data validation method. + + + + Sets PromptBoxTitle in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets PromptBoxText in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets ErrorBoxTitle in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets ErrorBoxText in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets FirstFormula in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets FirstDateTime in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets SecondFormula in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets SecondDateTime in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets AllowType in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets CompareOperator in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets IsListInFormula in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets IsEmptyCellAllowed in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets IsSuppressDropDownArrow in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets ShowPromptBox in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets ShowErrorBox in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets PromptBoxHPosition in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets PromptBoxVPosition in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets IsPromptBoxVisible in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets IsPromptBoxPositionFixed in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets ErrorStyle in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets ListOfValues in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets DataRange in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets FirstFormulaTokens in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Sets SecondFormulaTokens in the specified data validation. + + Data validation to set value for. + Value to set. + + + + Gets or sets the title of the prompt box. + + + + + Gets or sets the text in the prompt box. + + + + + Gets or sets the title of the error dialog. + + + + + Gets or sets the error message in the error dialog . + + + + + Gets or sets the value or expression associated with the data validation. + + + + + Gets or sets the first formula's DateTime value. + + + + + Gets or sets the value or expression associated with the second part of the data validation. + + + + + Gets or sets second formula's DateTime value. + + + + + Gets or sets the data type validation for a range. + + + + + Gets or sets the comparison operation to perform. + + + + + True if formula contains list of values. otherwise False. + + + + + True if empty values are permitted by the range data validation. otherwise False. + + + + + True if the drop down arrow is invisible. otherwise False. + + + + + True if prompt box is shown. otherwise False. Default value is True. + + + + + True if error dialog is shown. otherwise False. Default value is True. + + + + + Gets or sets Horizontal position of the prompt box. + + + + + Gets or sets Vertical position of the prompt box. + + + + + True if prompt box is visible. otherwise False. + + + + + True if prompt box position is fixed. otherwise False. + + + + + Gets or sets the type of error. + + + + + Gets or sets Array of possible values. + + + This property should be used when the values in the Data Validation list are entered manually. + + + + + Gets or sets the Range of possible values. + + + + + Application object for this object. + + + + + Parent object for this object. + + + + + + + + + + + + + + + Delegate specified method that receives cell's coordinates to process. + + One-based row index. + One-based column index. + + + + Method to process single data validation. + + Data validation object to process. + Additional value. + + + + Wrapper over class. + + + + + + + + + + Parent range. + + + + + Old DataValidationImpl. Should be not null between OnBeforeWrapperChange + and OnAfterWrapperChange. + + + + + Number variable + + + + + Initializes a new instance of the class. + + + + + This should be called before several updates to the object will take place. + + + Invoking this method improves the performance for large block of Data Validation. + + + + + This method should be called after several updates to the object took place. + + + Invoking this method improves the performance for large block of Data Validation. + + + + + + + + + + + + + + + + + + + + Gets or sets the title of the prompt box. + + + + + Gets or sets the text in the prompt box. + + + + + Gets or sets the title of the error dialog. + + + + + Gets or sets the error message in the error dialog . + + + + + Gets or sets the value or expression associated with the data validation. + + + + + Gets or sets the first formula's DateTime value. + + + + + Gets or sets the value or expression associated with the second part of the data validation. + + + + + Gets or sets second formula's DateTime value. + + + + + Gets or sets the data type validation for a range. + + + + + Gets or sets the comparison operation to perform. + + + + + True if formula contains list of values. otherwise False. + + + + + True if empty values are permitted by the range data validation. otherwise False. + + + + + True if the drop down arrow is invisible. otherwise False. + + + + + True if prompt box is shown. otherwise False. Default value is True. + + + + + True if error dialog is shown. otherwise False. Default value is True. + + + + + Gets or sets Horizontal position of the prompt box. + + + + + Gets or sets Vertical position of the prompt box. + + + + + True if prompt box is visible. otherwise False. + + + + + True if prompt box position is fixed. otherwise False. + + + + + Gets or sets the type of error. + + + + + Gets or sets Array of possible values. + + + This property should be used when the values in the Data Validation list are entered manually. + + + + + Gets or sets the Range of possible values. + + + + + Holds first formula tokens. + + + + + Holds second formula tokens. + + + + + Application object for this object. + + + + + Parent object for this object. + + + + + Helper class to perform excel to html conversion. + + + Excel To Html Conversion is not supported in WinRT, Windows Phone, Universal, Portable and Silverlight platforms. + + + + + Represents the object of Excel sheet conditional formatting . + + + + + Represents that the last cell of the row is not empty. + + + + + Represents internal CF list + + + + + Represents TableStyleRenderer class + + + + + Represents table border color list + + + + + Represents table font color list + + + + + Initializes a new instance of the class. + + + + + Converts the specified stream. + + The stream. + The book. + The output directory path. + The saveoption. + + + + Converts to the specified stream. + + The stream. + The book. + The saveoption. + + + + Converts the specified stream. + + The stream. + The sheet. + The output directory path. + The saveoption. + + + + Builds the main page. + + The book. + The directory. + The saveoption. + + + + Builds the scripts. + + The book. + + + + Builds the tab page. + + The book. + + + + Builds the tab page. + + The book. + The output directory path. + + + + Builds the styles. + + The sheet. + + + + Builds the common styles. + + XML Writer. + + + + Gets the common styles. + + XML Writer. + + + + Builds the styles. + + The book. + The save option. + The m_writer. + + + + Writes the document start. + + + + + Writes the document end. + + + + + Gets the styles. + + The sheet. + The save option. + + + + + Gets the script. + + The book. + + + + + Gets the script. + + The book. + + + + + Gets the styles. + + The sheet. + The save option. + + + + + Gets the style. + + Extended format. + Cell. + Has ConditionalFormats. + + + + + Modified the font family, If present some of font family + + Font family + + + + + Normalizes the color. + + The color. + + + + + Gets the border styles. + + The result. + The key no position. + + + + + Gets the border style from index. + + Cell borders. + Cell border index. + + + + + Gets the width of the border. + + The border. + + + + + Gets the dash style. + + The border. + + + + + Builds the borders. + + The result. + + + + + Gets the image styles. + + The sheet. + The builder. + + + + Gets the shape style. + + The shape. + Class id. + + + + Gets the column width for an excel worksheet + + The sheet. + Column index. + + + + + Gets the maximum width value + + The width collection. + + + + + Writes the content of the sheet. + + The sheet. + The output directory path. + The saveoption. + + + + Draw the converted Base64 value of the IconSet. + + Base64 value of the IconSet + Width of the cell. + Height of the cell. + Horizontal alignment of the value in the cell. + Style name created for the value in the cell. + + + + Gets the css class name. + + Cell. + Extented format. + Cell Merged. + Display text. + + + + To Find the HorizontalAlignment + + The migrant range. + + + + + To write the style in HTML conversion + + Migrant range + + + + Sets the Hyperlink for the cell. + + The cell value + + + + Returns the hyperlink. + + It's represent cell formula + + + + + Normalizes the string. + + The value. + The result. + The count. + Width of the columns. + The column number + The sheet. + The saveoption. + + + + Writes the width of the cell. + + The result. + The writer. + Width of the columns. + The column Number. + The row. + The sheet. + The saveoption. + + + + + Writes the image. + + The sheet. + The writer. + The output directory path. + The saveoption. + + + + Converts Chart to Image + + The Chart + + + + Converts Chart to Image Stream + + The Chart + + + + Writes the chart. + + The sheet. + The writer. + The output directory path. + The saveoption. + The Chart. + The imageName + + + + Gets the extension. + + The format. + + + + + Writes the image. + + The sheet. + The writer. + The output directory path. + The saveoption. + + + + Gets the name of the column. + + The i column. + + + + + Builds the HTML files. + + The book. + The output directory path. + The saveoption. + + + + Checking for the sheets have the charts and pictures and store in the collection + + + + + Get the shape style + + Input shape + boolean value indicates whether to calculate row offset or not + the shape style + + + + Calculate the offset value from row/column offset from input values + + Input shape where the offset to be calculated + the current row/column of the shape + the current offSetValue of the shape + the constant value respect to row or column + the calculated offset in the cell + + + + Write the charts and pictures in the worksheet, when they are not in used range + + the input worksheet + the output image path of the shapes + the HTML save options + + + + Write the charts and pictures in the worksheet in particular cell index + + the input cell index of the image + the input worksheet + the output image path of the shapes + the HTML save options + + + + Get the extended columns count respect to shapes in the sheet + + input worksheet + the extened columns count + + + + Check for the shapes in the merged regions if it ,write them + + the input worksheet + the merged cell infor object + the first row of the merged cell + the first column of the merged cell + the input path for shapes + the HTML save options + + + + Get the merged region offset for the shape + + the parent sheet + the start cell index of the worksheet + the shape row position + the shape column position + Boolean value indicates whether the offset from top or left + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Gets the XmlWriter settings. + + + + + Gets the writer. + + The writer. + + + + Gets the column width getter. + + + + + Represents the conversion mode. + + + + + Shape Information + + + + + Utility class for measuring the size of the string. + + + + + + + + + + object + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the image path. + + The image path. + + + + Gets or sets the input text mode + + Useful to convert sheet data based on either DisplayText or Value + + + + GetText enumeration + + + + + DisplayText + + + + + Value + + + + + Initialise stack for maintaining Html styles. + + + + + Represent format text. + + + + + Indicate preservation break for invalid styles or not. + + + + + Indicate the current tag is Span or not. + + + + + Loads the XHtml. + + The HTML tags. + + + + Remove unwanted quotes in html string. + + Html string + String + + + + Replace unwanted quotes in given HTML string + + HTml string + Regex + HTML string + + + + Prepares the HTML string. + + The HTML string. + + + + Replace constants by Unicode. + + The HTML tags. + + + + + + Replace HTML break tags have diffrent combination. + + The HTML tags. + + + + + Replace HTML Special Character's EntityNames by EntityNumbers. + + The HTML Tags. + + + + + Replace HTML Symbol's EntityNames by EntityNumbers. + + The HTML Tags. + + + + + Replace HTML Character's EntityNames by EntityNumbers. + + The HTML Tags. + + + + + Replace HTML Math Symbol's EntityNames by EntityNumbers. + + The HTML Tags. + + + + + Replace HTML Greek Letter's EntityNames by EntityNumbers. + + The HTML Tags. + + + + + Replace HTML Other EntityNames by EntityNumbers. + + The HTML Tags. + + + + + Insert HTML start element based on XHtml validation type. + + The HTML tags. + + + + + Parse the HTML tags. + + The HTML tags. + Rich-text range. + + + + Traverses the child nodes. + + The nodes. + Rich-text range. + Represent the Paragaraph tag. + + + + Parses the tags. + + The node. + Rich-text range. + + + + Appends the HTML text. + + The HTML tag. + Rich-text range. + + + + Check whether the tag is empty tag. + + The HTML tag. + + + + + Parse heading tag. + + Rich-text string range. + The HTML tag. + + + + Get color value. + + Get RGB values. + + + + + Get font name. + + Get font name. + + + + + Gets the attribute value. + + The HTML tag. + Name of the attribute. + + + + + Traverse text within the tag. + + The HTML tag. + Rich-text string range. + + + + Applies the formatting. + + Font style. + + + + Prese the hyperlink tag and attributes. + + Hyperlink tag. + Rich-text string range. + + + + Ensures the style. + + The HTML tag attributes. + + + + + Adds the style. + + + + + + Parses the style. + + Style attribute. + + + + Get foramt. + + Text format. + Attribute name. + Attribute values. + The HTML tag. + + + + Leaves the style. + + if the style is present, set to true. + + + + Gets the current format. + + The current format. + + + + Get or set indicate whether current tag is span + + + + + Creating Dictinary. + + + + + Initialize Dictinary. + + + + + Clones this instance. + + + + + + Checks whether dictionary contains the key. + + + + + + + Determines whether the specified property key has value. + + + + + + + Add key in dictionary. + + Key of text format. + Value. + + + + Set the values for the properties. + + Set key for text. + Set tha value for key + + + + Specifies text alignment + + + + + Specifies horizantal alignment + + + + + Specifies vertical alignment + + + + + Specifies display + + + + + Specifies superscript + + + + + Specifies subscript + + + + + Specifies bold format. + + + + + Specifies italic format. + + + + + Specifies underline format. + + + + + Specifies strike format. + + + + + Specifies font color of the text. + + + + + Specifies the font size. + + + + + Specifies the font family. + + + + + Specifies the back color. + + + + + Contains the font attributes (font name, font size, + color, and so on) for an object. + + + + + Summary description for IInternalExtendedFormat. + + + + + Contains the font attributes (font name, size, + color, and so on) for an object. + + + + + Returns object for this extended format. + + + The following code illustrates how to access Borders property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set border + style.Borders.Color = ExcelKnownColors.Blue; + style.Borders.LineStyle = ExcelLineStyle.Thick; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set border + format.Borders.Color = ExcelKnownColors.Red; + format.Borders.LineStyle = ExcelLineStyle.Thick; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets / Sets index of fill background color. Obsolete, will be removed in next release. + + + Use instead of this property. + + + + + Gets / Sets fill background color. Obsolete, will be removed in next release. + + + Use instead of this property. + + + + + Gets / Sets index of fill foreground color. Obsolete, will be removed in next release. + + + Use instead of this property. + + + + + Gets / Sets fill foreground color. Obsolete, will be removed in next release. + + + Use instead of this property. + + + + + Gets / Sets fill pattern. + + + By default fill pattern will be set to so patterns will not be visbile. Here for example, we set to + fill pattern. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set pattern + style.FillPattern = ExcelPattern.VerticalStripe; + + //Set pattern color + style.PatternColorIndex = ExcelKnownColors.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set pattern + format.FillPattern = ExcelPattern.VerticalStripe; + + //Set pattern color + format.PatternColorIndex = ExcelKnownColors.Red; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets object for this extended format. Read-only. + + + The following code illustrates how to access property and set to the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["E2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set font + IFont font = style.Font; + + //Set bold + font.Bold = true; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set font + IFont formatFont = format.Font; + + //Set bold + formatFont.Bold = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if formula is hidden. + + + This property will work only if the sheet proetction is enabled. + + + The following code illustrates how to set visibility for the formula applied to a cell. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load values + worksheet["B2"].Value = worksheet["C2"].Value = "10"; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["D2"].CellStyle = style; + + //Set formula + worksheet["D2"].Formula = "B2+C2"; + + //Set FormulaHidden + style.FormulaHidden = true; + + //Set locked + style.Locked = true; + + //Get extended format + IExtendedFormat format = worksheet["D3"].CellStyle; + + //Set formula + worksheet["D3"].Formula = "B2+C2"; + + //Set FormulaHidden + format.FormulaHidden = true; + + //Set locked + format.Locked = true; + + //Enable sheet protection + worksheet.Protect("", ExcelSheetProtection.All); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Horizontal alignment. + + + The following code illustrates how to set horizontal alignment to the data in the cell. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["E2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set alignment + style.HorizontalAlignment = ExcelHAlign.HAlignRight; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set alignment + format.HorizontalAlignment = ExcelHAlign.HAlignRight; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the style includes the AddIndent, HorizontalAlignment, + VerticalAlignment, WrapText, and Orientation properties. + Read / write Boolean. + + + The following code illustrates how to exclude alignment related settings for a specific object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["E2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set alignment + style.HorizontalAlignment = ExcelHAlign.HAlignRight; + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set include alignment + style.IncludeAlignment = false; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set alignment + format.HorizontalAlignment = ExcelHAlign.HAlignRight; + + //Set color + format.ColorIndex = ExcelKnownColors.Red; + + //Set include alignment + format.IncludeAlignment = false; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the includes the Color, ColorIndex, LineStyle, + and Weight border properties. Read / write Boolean. + + + The following code illustrates how to exclude related settings for a specific object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set border + style.Borders.Color = ExcelKnownColors.Blue; + style.Borders.LineStyle = ExcelLineStyle.Thick; + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set include border + style.IncludeBorder = false; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set border + format.Borders.Color = ExcelKnownColors.Red; + format.Borders.LineStyle = ExcelLineStyle.Thick; + + //Set color + format.ColorIndex = ExcelKnownColors.Blue; + + //Set include border + format.IncludeBorder = false; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the style includes the Background, Bold, Color, + ColorIndex, FontStyle, Italic, Name, OutlineFont, Shadow, + Size, Strikethrough, Subscript, Superscript, and Underline + font properties. Read / write Boolean. + + + The following code illustrates how to exclude related settings for a specific object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["E2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set font + IFont font = style.Font; + + //Set bold + font.Bold = true; + + //Set include font + style.IncludeFont = false; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set font + IFont formatFont = format.Font; + + //Set bold + formatFont.Bold = true; + + //Set include font + format.IncludeFont = false; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the includes the NumberFormat property. + Read / write Boolean. + + + The following code illustrates how to exclude NumberFormat for a specific object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set values + worksheet["C2"].Value = "1200.40"; + worksheet["E2"].Value = "1200.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set number format index + style.NumberFormat = "# ?/?"; + + //Set include number format + style.IncludeNumberFormat = false; + + //Set modified style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set number format index + format.NumberFormat = "# ?/?"; + + //Set include number format + format.IncludeNumberFormat = false; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the includes the Color, ColorIndex, + InvertIfNegative, Pattern, PatternColor, and PatternColorIndex + interior properties. Read / write Boolean. + + + The following code illustrates how to exclude pattern related settings for a specific object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["E2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set pattern and color + style.FillPattern = ExcelPattern.ThinHorizontalCrosshatch; + + //Set pattern color + style.PatternColorIndex = ExcelKnownColors.Blue; + + //Set include pattern + style.IncludePatterns = false; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set pattern and color + format.FillPattern = ExcelPattern.ThinHorizontalCrosshatch; + + //Set pattern color + format.PatternColorIndex = ExcelKnownColors.Blue; + + //Set include pattern + format.IncludePatterns = false; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the style includes the FormulaHidden and Locked protection + properties. Read / write Boolean. + + + The following code illustrates how to set IncludeProtection property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load values + worksheet["B2"].Value = "10"; + worksheet["C2"].Value = "20"; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["B2"].CellStyle = style; + + //Set locked + style.Locked = false; + + //Set IncludeProtection + style.IncludeProtection = false; + + //Get extended format + IExtendedFormat format = worksheet["C2"].CellStyle; + + //Set locked + format.Locked = false; + + //Set IncludeProtection + format.IncludeProtection = false; + + //Enable sheet protection + worksheet.Protect("", ExcelSheetProtection.All); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or set Indent level. + + + The following code illustrates how to set indent level for a . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["E2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set indent level + style.IndentLevel = 2; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set indent level + format.IndentLevel = 2; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + If true then first symbol in cell is apostrophe. + + + The following code illustrates how to access IsFirstSymbolApostrophe property of a . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set text + worksheet["C2"].Text = @"'12345"; + + //Access extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set text + worksheet["E2"].Text = @"'12345"; + + //Save + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + + //Open worksheet + IWorkbook book = application.Workbooks.Open("CellFormats.xls"); + IWorksheet sheet = book.Worksheets[0]; + + //Get style + IStyle customStyle = sheet["C2"].CellStyle; + + //Get extended format + IExtendedFormat extendedFormat = sheet["E2"].CellStyle; + + //Check first symbol is apostrophe or not + Console.Write(customStyle.IsFirstSymbolApostrophe); + Console.Write(extendedFormat.IsFirstSymbolApostrophe); + + //Save and dispose + book.SaveAs("CellFormats.xlsx"); + book.Close(); + Console.ReadKey(); + } + //Output will be + //True + //True + + + + + + True if cell is locked. + + + The following code illustrates how to set Locked for a . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load values + worksheet["B2"].Value = worksheet["C2"].Value = "10"; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["D2"].CellStyle = style; + + //Set formula + worksheet["D2"].Formula = "B2+C2"; + + //Set FormulaHidden + style.FormulaHidden = true; + + //Set locked + style.Locked = true; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set formula + worksheet["E2"].Formula = "B2+C2"; + + //Set FormulaHidden + format.FormulaHidden = true; + + //Set locked + format.Locked = true; + + //Enable sheet protection + worksheet.Protect("", ExcelSheetProtection.All); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + For far east languages. Supported only for format. Always 0 for US. + + + The following code illustrates how to set JustifyLast property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set style + IStyle style = worksheet["C2"].CellStyle; + + //Set justify last + style.JustifyLast = true; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set justify last + format.JustifyLast = true; + + //Save and Dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the number format code for the object. Read / write String. + + + To know more about number formats refer Apply Number Formats. + + + The following code illustrates how to set number format for the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + worksheet["E2"].Value = "1340.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format + style.NumberFormat = "#,##0.00_);[Red](#,##0.00)"; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set number format + format.NumberFormat = "#,##0.00_);[Red](#,##0.00)"; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets / Sets format index. + + + To know more about number formats refer Apply Number Formats. + + + By default, XlsIO holds 36 number format types that can be applied by just setting NumberFormatIndex. Here for example, we set number format in the 5th index + to apply. To get more customization we can use to set number formatting string. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + worksheet["E2"].Value = "1234.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format index + style.NumberFormatIndex = 5; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set number format index + format.NumberFormatIndex = 5; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the format code for the object as a string in the + language of the user. Read / write String. + + + The following code illustrates how to set NumberFormatLocal property of a . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + worksheet["E2"].Value = "1234.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format + style.NumberFormatLocal = "$###.##"; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set number format + format.NumberFormatLocal = "$###.##"; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns object that describes number format. Read-only. + + + The following code illustrates how to access using NumberFormatSettings property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + worksheet["E2"].Value = "1200.45"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format index + style.NumberFormat = "#,##0.00"; + + //Set number format settings + INumberFormat numberFormat = style.NumberFormatSettings; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set number format index + format.NumberFormat = "#,##0.00"; + + //Set number format settings + INumberFormat extendedNumberFormat = format.NumberFormatSettings; + + //Check number format decimal places + Console.WriteLine(numberFormat.DecimalPlaces); + Console.WriteLine(extendedNumberFormat.DecimalPlaces); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + //2 + + + + + + Text direction, the reading order for far east versions. + + + The following code illustrates how to set ReadingOrder property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set style + IStyle style = worksheet["C2"].CellStyle; + + //Set justify last + style.JustifyLast = true; + + //Set reading order + style.ReadingOrder = ExcelReadingOrderType.RightToLeft; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set justify last + format.JustifyLast = true; + + //Set reading order + format.ReadingOrder = ExcelReadingOrderType.RightToLeft; + + //Save and Dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Text rotation angle: + 0 Not rotated + 1-90 1 to 90 degrees counterclockwise + 91-180 1 to 90 degrees clockwise + 255 Letters are stacked top-to-bottom, but not rotated. + + Thrown when value is more than 0xFF. + + The following code illustrates how to set Rotation for . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["E2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set rotation + style.Rotation = 60; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set rotation + format.Rotation = 40; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True - shrink content to fit into cell. + + + The following code illustrates how to set ShrinkToFit property for . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add text + worksheet["C2"].Text = "This is a sample text"; + worksheet["E2"].Text = "This is a sample text"; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set shrink to fit + style.ShrinkToFit = true; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set shrink to fit + format.ShrinkToFit = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Vertical alignment. + + + By default is set to VerticalAlignment. Here for example, we set to + VerticalAlignment. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["C5"].Text = "Sample"; + + //Set row height + worksheet["C2"].RowHeight = 25; + worksheet["C5"].RowHeight = 25; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set alignment + style.VerticalAlignment = ExcelVAlign.VAlignCenter; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["C5"].CellStyle; + + //Set alignment + format.VerticalAlignment = ExcelVAlign.VAlignCenter; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True - Text is wrapped at right border. + + + To know more about text wrapping refer Apply Wrap Text. + + + The following code illustrates how to set WrapText property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "This is a Sample text"; + worksheet["C5"].Text = "This is a Sample text"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set wrap text + style.WrapText = true; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["C5"].CellStyle; + + //Set wrap text + format.WrapText = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the color of the interior pattern as an index into the current color palette. + + + The following code illustrates how to set a color from enumeration to the pattern of the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["E2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set pattern + style.FillPattern = ExcelPattern.VerticalStripe; + + //Set pattern color + style.PatternColorIndex = ExcelKnownColors.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set pattern + format.FillPattern = ExcelPattern.VerticalStripe; + + //Set pattern color + format.PatternColorIndex = ExcelKnownColors.Red; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the color of the interior pattern as a RGB Color value. + + + The following code illustrates how to set a RGB color to the pattern of the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["E2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set pattern + style.FillPattern = ExcelPattern.VerticalStripe; + + //Set pattern color + style.PatternColor = System.Drawing.Color.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set pattern + format.FillPattern = ExcelPattern.VerticalStripe; + + //Set pattern color + format.PatternColor = System.Drawing.Color.Red; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the color from enumeration to the . + + + The following code illsutrates how to set a color from enumeration to the ColorIndex property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set color + format.ColorIndex = ExcelKnownColors.Red; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the RGB color to cell. + + + The following code illustrates how to set RGB color to Color property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.Color = System.Drawing.Color.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set color + format.Color = System.Drawing.Color.Red; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets value indicating whether format was modified, compared to parent format. + + + The following code illustrates how to set IsModified property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set style + IStyle style = worksheet["C2"].CellStyle; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Check IsModified + Console.WriteLine(style.IsModified); + Console.WriteLine(format.IsModified); + + //Save and Dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + //False + + + + + + Returns true if the Cell has . + + + The following code ilustrats how to access HasBorder property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["E2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set border + style.Borders.Color = ExcelKnownColors.Blue; + style.Borders.LineStyle = ExcelLineStyle.Thick; + + //Set style + worksheet["C2"].CellStyle = style; + + //Get extended format + IExtendedFormat format = worksheet["E2"].CellStyle; + + //Set border + format.Borders.Color = ExcelKnownColors.Blue; + format.Borders.LineStyle = ExcelLineStyle.Thick; + + //Check border + Console.WriteLine(style.HasBorder); + Console.WriteLine(format.HasBorder); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + //True + + + + + + Starts updating process. + + + + + Ends updating process. + + + + + Get/set BottomBorder color. + + + + + Get/set TopBorder color. + + + + + Get/set LeftBorder color. + + + + + Get/set RightBorder color. + + + + + Get/set DiagonalUpBorder color. + + + + + Gets / sets line style of the left border. + + + + + Gets / sets line style of the right border. + + + + + Gets / sets line style of the top border. + + + + + Gets / sets line style of the bottom border. + + + + + Gets / sets line style of the diagonal border. + + + + + Gets / sets line style of the diagonal border. + + + + + Indicates whether DiagonalUp line is visible. + + + + + Indicates whether DiagonalDown line is visible. + + + + + Parent workbook. + + + + + Summary description for IXFIndex. + + + + + Gets format index in m_book.InnerFormats. + + + + + Parent index that indicates that extended format doesn't have any parent format. + + + + + Indicates that text is drawn from top to bottom. + + + + + Maximum tint value. + + + + + Weight of the bold font. + + + + + Weight of the normal font. + + + + + Conditional Formats applied flag + + + + + ExtendedFormatRecord that contains information about font and format indexes, + borders, colors, etc. + + + + + + Parent workbook. + + + + + Position of this format in m_book.InnerExtFormats. + + + + + ShapeFill implementation that contains gradient fill effects. + + + + + + + + + + + + + + + Represent the cell-border + + + + + Indicating whether cell has pivot button + + + + + Incidates the cell has vertical text. + + + + + Indicates if the extended format is used in the woekbook. + + + + + Conditional Format Priority + + + + + Indicates whether this extended format is created for pivot inline format. + + + + + Represents the data bar color + + + + + Represents the priority of data bar codnitional format. + + + + + This method should be called after any changes. + Sets Saved property of the parent workbook to False. + + + + + Copies all data from this XF into another. + + Format to copy into. + + + + Creates child format if this format is for named style and registers it in workbook. + + Child format. + + + + Creates child format if this format is for named style. + + Defines whether to register format in workbook. + Child format. + + + + Updates the include properties in current formats + + Parent index. + XF format record. + XF format recordS. + + + + + + + + + + + Synchronizes properties with parent record. + + + + + Copies borders from source format. + + Format to copy border settings from. + + + + Copies patterns from source format. + + Format to copy pattern settings from. + + + + Starts updating process. + + + + + Ends updating process. + + + + + Sets application and parent fields. + + Application object for the format. + Parent object for the format. + + + + Recovers ExtendedFormatImpl from the stream. + + Application object for the format. + Parent object for the format. + + Reader that contains ExtendedFormatRecord for + the new extended format. + + + + + Recovers ExtendedFormatImpl records from Biff Records array and position + of ExtendedFormatRecord in it. + + Application object for the XF. + Parent object for the XF. + Array of Biff Records. + Position of ExtendedFormatRecord. + + + + Recovers ExtendedFormatImpl records from Biff Records + List and position of ExtendedFormatRecord in it. + + Application object for the XF. + Parent object for the XF. + List of Biff Records. + Position of ExtendedFormatRecord in List. + + + + Gets information about extended format from specified format. + + Application object for the XF. + Parent object for the XF. + Format that contains all needed information. + + + + Gets information about extended format from specified format. + + Application object for the XF. + Parent object for the XF. + Format that contains all needed information. + + + + Searches for all necessary parent objects. + + + + + Recover from the stream. + + Reader with XF data. + + + + Recovers ExtendedFormat from array of Biff Records and position of + ExtendedFormatRecord in it. + + Array of Biff Records. + Position of ExtendedFormatRecord in the array. + + + + Parses ExtendedFormatRecord + + Record to parse. + + When font index in format record is larger than size + of the inner font collection of the parent workbook. + + + + + Parses ExtendedFormatRecord + + Record to parse. + + When font index in format record is larger than size + of the inner font collection of the parent workbook. + + + + + Updates values from parent format and initializes colors if necessary. + + + + + Updates values from current format. + + + + + Updates values from current format + + Source extended format record to copy from + + + + Initializes color objects. + + + + + Updates color field in the record. + + + + + Updates pattern color in the record. + + + + + Updates top border color in the record. + + + + + Updates bottom border color in the record. + + + + + Updates left border color in the record. + + + + + Updates right border color in the record. + + + + + Updates diagonal border color in the record. + + + + + Adds format records into records array. + + Array that will receive format information. + + + + Checks the record to see if everything is proper and corrects + it if necessary. + + + + + Adds Extended XF format records into records array. + + Array that will receive format information. + + + + Copy Colors. + + + + + Compares the current instance with another object of the same type. + + Object to compare with this instance. + + Less than zero - This instance is less than obj. + Zero - This instance is equal to obj. + Greater than zero - This instance is greater than obj. + + + + + + + + + + + + Compares formats without comparing indexes. + + Format to compare. + 0 if formats are equal. + + + + Serves as a hash function for a particular type, suitable for use + in hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + Determines whether two Object instances are equal. + + The Object to compare with the current Object. + + True if the specified Object is equal to the current Object; otherwise, False. + + + + + Copies one extended format into another. + + Destination format. + Source format. + Indicates whether we should change corresponding + Include... flag(s) after copying data. + + + + Copies alignment of one XFormat into another. + + Destination format. + Source format. + Indicates whether we should change corresponding + Include... flag(s) after copying data. + + + + Copies borders of one XFormat into another. + + Destination format. + Source format. + Indicates whether we should change corresponding + Include... flag(s) after copying data. + + + + Copies font of one XFormat into another. + + Destination format. + Source format. + Indicates whether we should change corresponding + Include... flag(s) after copying data. + + + + Copies number format of one XFormat into another. + + Destination format. + Source format. + Indicates whether we should change corresponding + Include... flag(s) after copying data. + + + + Copies patterns of one XFormat into another. + + Destination format. + Source format. + Indicates whether we should change corresponding + Include... flag(s) after copying data. + + + + Copies protection of one XFormat into another. + + Destination format. + Source format. + Indicates whether we should change corresponding + Include... flag(s) after copying data. + + + + Copies color settings from specified format object. + + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of the current instance. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of the current instance. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Clears the format + + + + + Checks the record for borders and updates hasBorder + + The record to be checked + + + + Get / set font index. + + + + + Gets format index in m_book.InnerFormats. + + + + + Get / set Format index. + + + + + Get / set fill pattern. + + + + + Get / set fill background color. + + + + + Get / set fill background color. + + + + + Get / set fill foreground color. + + + + + Get / set fill foreground color. + + + + + Horizontal alignment. + + + + + Indent level. + + + + + Indicates whether formula is hidden. + + + + + Indicates whether cell with this XF is locked. + + + + + For far east languages. Supported only for format. Always 0 for US. + + + + + Returns or sets the format code for the object. Read/write String. + + + + + Returns or sets the format code for the object as a string in the + language of the user. Read/write String. + + + + + Returns object that describes number format. Read-only. + + + + + True- Indicates that the contents are shrunk to fit into cell. + + + + + True - Indicates that text is wrapped at right border. + + + + + Vertical alignment. + + + + + Flag for horizontal and vertical alignment, text wrap, indentation, + orientation, rotation, and text direction. If False, the attribute + of parent style is used. + + + + + Flag for border lines. + If False, the attribute of parent style is used. + + + + + Flag for font. + If False, the attribute of parent style is used. + + + + + Flag for number format. + If False, the attribute of parent style is used. + + + + + Flag for background area style. + If False, the attribute of parent style is used. + + + + + Flag for cell protection (cell locked and formula hidden). + If False, the attribute of parent style is used. + + + + + Gets font object for this extended format. Read-only. + + + + + + + + + + If true then first symbol in cell is apostrophe. + + + + + Returns or sets the color of the interior pattern as an index into the current color palette. + + + + + Returns or sets the color of the interior pattern as an Color value. + + + + + Returns or sets the color of the interior pattern as an Color value. + + + + + Returns or sets the color of the interior. The color is specified as + an index value into the current color palette. + + + + + Returns or sets the cell shading color. + + + + + Returns or sets the cell shading color. + + + + + Gets value indicating whether format was modified, compared to parent format. + + + + + List of extended property. + + + + + Text direction, the reading order for far east versions. + + + + + Text rotation angle: + 0 Not rotated + 1-90 1 to 90 degrees counterclockwise + 91-180 1 to 90 degrees clockwise + 255 Letters are stacked top-to-bottom, but not rotated. + + + Thrown when value is more than 0xFF. + + + + + Incidates whether the cell is a vertical text + i.e. rotation of 255 degree is considered as vertical text + + + + + Type of the extended format. + + + + + Conditional Format priority + + + + + Gets or sets the data bar color. + + + + + Gets or sets the priority for data bar conditional format. + + + + + Conditional Format styles flag + + + + + Gets / sets gradient object. + + + + + Get / set index for this record in Workbook.InnerExtFormats collection. + + + + + Read-only. Returns ExtendedFormatRecord with + information about this format. + + + + + Read-only. Returns ExtendedXFormat with information about this format. + + + + + Index of the parent extended format. + + + + + Returns parent workbook. + + + + + Returns parent collection. Read-only. + + + + + Get/set BottomBorder color. + + + + + Get/set TopBorder color. + + + + + Get/set LeftBorder color. + + + + + Get/set RightBorder color. + + + + + Get/set DiagonalUpBorder color. + + + + + Gets / sets line style of the left border. + + + + + Gets / sets line style of the right border. + + + + + Gets / sets line style of the top border. + + + + + Gets / sets line style of the bottom border. + + + + + Gets / sets line style of the diagonal border. + + + + + Gets / sets line style of the diagonal border. + + + + + Indicates whether DiagonalUp line is visible. + + + + + Indicates whether DiagonalDown line is visible. + + + + + Indicates whether this format is child format. + + + + + Indicates whether color is default. Read-only. + + + + + Indicates whether pattern color is default. Read-only. + + + + + Returns record from parent format if possible, otherwise just returns format record. Read-only. + + + + + Returns parent format if possible, otherwise just returns this format. Read-only. + + + + + Gets number format object. + + + + + Gets or sets whether border is present + + + + + Indicating whether cell has pivot button + + + + + Indicates whether this extended format is created for pivot inline format. + + + + + + + + + + + + + + + Returns color of the top border. Read-only. + + + + + Returns color of the bottom border. Read-only. + + + + + Returns color of the left border. Read-only. + + + + + Returns color of the right border. Read-only. + + + + + Returns color of the diagonal border. Read-only. + + + + + Default data bar direction + + + + + Default data bar color. + + + + + Font settings. + + + + + Holds the Name of the applied IconSet. + + + + + Holds the id of the Icon from the applied Iconset. + + + + + Holds the Name of the applied IconSet. + + + + + Represents the icon set image. + + + + + True if only the icon is to be displayed. False otherwise. + + + + + Indicates DataBarPercent + + + + + Indicates data bar has gradient fill or not. + + + + + Represents the data bar cell value. + + + + + Represents the direction of the data bar. + + + + + Represents whether the data bar has extension list or not + + + + + Represents the GUID for the data bar extension list + + + + + Represents the border color of the data bar. + + + + + Represents whether the data bar has a border. + + + + + Returns or sets a Boolean value that specifies if the value in the cell + is displayed if the data bar conditional format is applied to the range. + + + + + Represents the axis color of the data bar. + + + + + Represents the negative border color of the data bar. + + + + + Represents the negative fill color of the data bar. + + + + + Represents whether the data bar has a negative bar color + that is different from the positive bar color. + + + + + Represents whether the data bar has a negative border color + that is different from the positive border color. + + + + + The color of the bars in a data bar conditional format. + + + + + Checkes wether the conditional format has databar in it. + + + + + Checkes wether the conditional format has iconset in it. + + + + + Repesents the minimum value in data bar conditional format. + + + + + Repesents the maximum value in data bar conditional format. + + + + + Initializes new instance of the format. + + Object to copy settings from. + + + + Updates icon set values in the new format. + + Extended format to be updated. + + + + Returns object that stores font settings. Read-only. + + + + + Property to access the Id of the Icon in the IconSet. + + + + + Property to access IconSetType applied. + + + + + Holds the IconName for internal processing. + + + + + Gets or sets the icon ste image. + + + + + Gets or sets the direction of the data bar. + + + + + Gets or sets the axis color of the data bar. + This element MUST exist if and only if axisPosition does not equal "none". + + + + + Gets or sets the minimum value of the data bar. + + + + + Returns or sets the boolean value if the conditional format contains databar. + + + + + Returns or sets the boolean value if the conditional format contains iconset. + + + + + Gets or sets the axis color of the data bar. + This element MUST exist if and only if axisPosition does not equal "none". + + + + + Gets or sets the negative border color of the data bar. + This element MUST exist if and only if negativeBarBorderColorSameAsPositive equals "false" and border equals "true". + + + + + Represents whether the data bar has a negative bar color + that is different from the positive bar color. + + + + + Represents whether the data bar has a negative border color + that is different from the positive border color. + + + + + Gest or sests the negative fill color of the data bar. + This element MUST exist if and only if negativeBarColorSameAsPositive equals "false". + + + + + Returns or sets a Boolean value that specifies if the value in the cell + is displayed if the data bar conditional format is applied to the range. + + + + + Gets or Sets the bool value if negative bar is present. + + + + + Gets or sets the border color of the data bar. + This element MUST exist if and only if border equals "true". + + + + + Gets whether the data bar has a border + + + + + Get/set DataBarPercent + + + + + Gets or sets databar has gradient fill or not. + + + + + Gets or sets databar cell value. + + + + + True if only the icon is to be displayed. False otherwise. + + + + + Bit converter + + + + + Double to int64 + + + + + + + int64 to double + + + + + + + This class contains some extensions to DateTime class. + + + + + This class contains some extension to the Color class in (SILVERLIGHT). + + + + + Contains black color. + + + + + Contains white color. + + + + + Contains empty color. + + + + + Contains red color. + + + + + Contains blue color. + + + + + Contains dark gray color. + + + + + Contains yellow color. + + + + + Contains cyan color. + + + + + Contains magenta color. + + + + + Contains gray color. + + + + + Chart foreground color. + + + + + Chart background color. + + + + + Chart neutral color. + + + + + Converts Int32 value into Color. + + Value to convert. + Converted value. + + + + Get the color from name + + + + + + + Represents the Math operation + + + + + Truncate the double value + + + + + + + Represents a cell, a row, a column, collection of cells or a 3-D Range. + + + + + Activates the cell. + + Returns the active cell. + + The following code illustrates how to activate a Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Activates 'F1' cell. + worksheet.Range["F1"].Activate(); + + workbook.SaveAs("Activate.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Activates the cell and its worksheet. + + True to set as top left cell. + Returns the active cell. + + The following code illustrates how to activate a Range with scroll flag. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Activates 'F1' cell. + worksheet.Range["F1"].Activate(true); + + workbook.SaveAs("Activate.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Groups the Range by row/column. + + + Represents to expand the group by rows/columns. + + Returns the Range after grouping. + + The following code illustrates how to group the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Group Rows + worksheet.Range["A4:A6"].Group(ExcelGroupBy.ByRows); + + //Group Columns + worksheet.Range["C1:F1"].Group(ExcelGroupBy.ByColumns); + + workbook.SaveAs("Grouping.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Groups the Range by row/column with collapse flag. + + + Represents to expand the group by rows/columns. + + Indicates whether group should be collapsed. + Returns the Range after grouping. + + The following code illustrates how to group the Range with collapse flag. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Group Rows + worksheet.Range["A1:A3"].Group(ExcelGroupBy.ByRows, true); + + //Group Columns + worksheet.Range["A1:B1"].Group(ExcelGroupBy.ByColumns, false); + + workbook.SaveAs("Grouping.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Creates subtotals for the Range. + + Column index based on which grouping should be done. + Represents a consolidation function to be applied. + List of column indexes on which subtotal is calculated. + + The following code illustrates how to subtotal the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set the range for subtotaling + IRange range = worksheet.Range["C3:G12"]; + + //Perform subtotals for the Range with every change in first column + //and subtotals to be included for specified list of columns + range.SubTotal(0, ConsolidationFunction.Sum, new int[] { 2, 3, 4 }); + + workbook.SaveAs("Subtotal.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Creates subtotals for the Range with the specified formatting flags. + + Column index based on which grouping should be done + Represents a consolidation function to be applied. + List of column indexes on which subtotal is calculated. + Indicates whether existing SubTotal must be replaced. + Indicates whether page break must be inserted. + Indicates whether SummaryBelowData to be shown + + The following code illustrates how to subtotal the Range with formats. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set the range for subtotaling + IRange range = worksheet.Range["C3:G12"]; + + //Perform subtotals for the range with every change in first column + //and subtotals to be included for specified list of columns + range.SubTotal(0, ConsolidationFunction.Sum, new int[] { 2, 3, 4 }, false, true, true); + + workbook.SaveAs("Subtotal.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Creates subtotals for the Range with multiple group by columns and the specified formatting flags. + + Column indexes based on which grouping is done. Given in the order of subtotal levels + Represents a consolidation function to be applied. + List of columns on which subtotal is calculated + Replaces Existing SubTotal + Inserts PageBreaks + SummaryBelowData to be shown + + The following code illustrates how to subtotal the Range with formats. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set the range for subtotaling + IRange range = worksheet.Range["C3:G12"]; + + //Perform subtotals for the range with every change in first column + //and subtotals to be included for specified list of columns + range.SubTotal( new int[] { 1, 2 }, ConsolidationFunction.Sum, new int[] { 2, 3, 4 }, false, true, true); + + workbook.SaveAs("Subtotal.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Returns sum of numeric cells in the range. + + + The following code illustrates how to find the sum of numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1:A3"].Value = "10"; + + //Returns Sum of numeric cells in the range. + double sum = worksheet.Range["A1:A3"].Sum(); + + workbook.SaveAs("Sum.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns sum of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + The following code illustrates how to find the sum of numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1:A3"].Value = "10"; + + //Returns Sum of numeric cells in the range. + double sum = worksheet.Range["A1:A3"].Sum(true); + + workbook.SaveAs("Sum.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns average of numeric cells in the range. + + + The following code illustrates how to find the average of numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1:A3"].Value = "10"; + + //Returns average of numeric cells in the range. + double average = worksheet.Range["A1:A3"].Average(); + + workbook.SaveAs("Average.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns average of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + The following code illustrates how to find the average of numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1:A3"].Value = "10"; + + //Returns average of numeric cells in the range. + double average = worksheet.Range["A1:A3"].Average(true); + + workbook.SaveAs("Average.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns minumum value from numeric cells in the range. + + + The following code illustrates how to find the minumum value from numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1"].Value = "10"; + worksheet.Range["A2"].Value = "20"; + worksheet.Range["A3"].Value = "30"; + + //Returns minumum value from Numeric cells in the given range. + double minimum = worksheet.Range["A1:A3"].Min(); + + workbook.SaveAs("Min.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns minumum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + The following code illustrates how to find the minumum value from numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1"].Value = "10"; + worksheet.Range["A2"].Value = "20"; + worksheet.Range["A3"].Value = "30"; + + //Returns minumum value from Numeric cells in the range. + double minimum = worksheet.Range["A1:A3"].Min(true); + + workbook.SaveAs("Min.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns maximum value from numeric cells in the range. + + + The following code illustrates how to find the maximum value from numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1"].Value = "10"; + worksheet.Range["A2"].Value = "20"; + worksheet.Range["A3"].Value = "30"; + + //Returns maximum value from numeric cells in the range. + double maximum = worksheet.Range["A1:A3"].Max(); + + workbook.SaveAs("Max.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns maximum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + The following code illustrates how to find the maximum value from numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1"].Value = "10"; + worksheet.Range["A2"].Value = "20"; + worksheet.Range["A3"].Value = "30"; + + //Returns maximum value from Numeric cells in the given range. + double maximum = worksheet.Range["A1:A3"].Max(); + + workbook.SaveAs("Max.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Trim the empty rows at top and bottom of the range, the empty columns at left and right of the range. + + Returns the range after trim. + /// + The following code illustrates how to Trim the empty rows at top and bottom of the range, the empty columns at left and right of the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["B1"].Value = "10"; + worksheet.Range["B2"].Value = "20"; + worksheet.Range["B3"].Value = "30"; + + //Returns the range after trim the given range. + IRange trim = worksheet.Range["A1:B3"].Trim(); + + workbook.SaveAs("Trim.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Combines the contents of the selected cells in a new larger cell. + + + To know more about merging refer Merging and Un-Merging Cells. + + + The following code illustrates how to merge the Range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "Merged cell"; + + //Merge cells + worksheet["A1:B1"].Merge(); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Combines the contents of the selected cells in a new larger cell with clear option flag. + + Clears the Merged cell. + + The following code illustrates how to merge the Range with clear option. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "Merged cell"; + worksheet["B1"].Text = "sample"; + + //Merge cells + worksheet["A1:B1"].Merge(true); + + //Unmerge cells + worksheet["A1:B1"].UnMerge(); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Ungroups the Range. + + Represents to expand the group by rows/columns. + Returns the Range after ungrouping. + + The following code illustrates how to ungroup the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Ungroup Rows + worksheet.Range["A1:A3"].Ungroup(ExcelGroupBy.ByRows); + + //Ungroup Columns + worksheet.Range["C1:F1"].Ungroup(ExcelGroupBy.ByColumns); + + workbook.SaveAs("Ungrouping.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Separates merged cells into individual cells. + + + To know more about merging refer Merging and Un-Merging Cells. + + + The following code illustrates how to UnMerge the merged cells. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "Merged cell"; + + //Merge cells + worksheet["A1:B1"].Merge(); + + //Unmerge cells + worksheet["A1:B1"].UnMerge(); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Keep rows and columns visible in the Range while the rest of the worksheet scrolls. + + + The following code illustrates how to freeze a pane in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Applying Freeze Pane to the sheet by specifying a cell. + sheet.Range["B2"].FreezePanes(); + + workbook.SaveAs("Freeze.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Clears content in the Range. + + + The following code illustrates how to clear the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Clears the Range �A4� . + sheet.Range["A4"].Clear(); + + workbook.SaveAs("ClearRange.xlsx"); + workbook.Version = ExcelVersion.Excel2013; + workbook.Close(); + excelEngine.Dispose(); + + + + + + Clears content and formats in the Range. + + True to clear format. + + The following code illustrates how to clear the Range with formats. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set border + worksheet["C2:D3"].BorderInside(); + + //Clear format + worksheet["C2:D3"].Clear(true); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Clears the Range with the specified . + + Represents the clear options. + + The following code illustrates how to clear the Range with clear options. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Clears the Range �A4� with its clear options. + sheet.Range["A4"].Clear(ExcelClearOptions.ClearAll); + + workbook.SaveAs("ClearRange.xlsx"); + workbook.Version = ExcelVersion.Excel2013; + workbook.Close(); + excelEngine.Dispose(); + + + + + + Clears the Range and shifts the cells Up or Left. + + Shifts the cells to the specified direction. + + The following code illustrates how to clear the Range with specified direction. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Clearing a Range �A4� with move options. + sheet.Range["A4"].Clear(ExcelMoveDirection.MoveLeft); + + workbook.SaveAs("ClearRange.xlsx"); + workbook.Version = ExcelVersion.Excel2013; + workbook.Close(); + excelEngine.Dispose(); + + + + + + Clears the Range with the specified and . + + Shifts the cells to the specified direction. + Copies the cells with the specified copy Range options. + + The following code illustrates how to clear the Range with specified direction and copy Range options. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Clearing a Range �A4� with copy Range and move options. + sheet.Range["A4"].Clear(ExcelMoveDirection.MoveLeft,ExcelCopyRangeOptions.All); + + workbook.SaveAs("ClearRange.xlsx"); + workbook.Version = ExcelVersion.Excel2013; + workbook.Close(); + excelEngine.Dispose(); + + + + + + Moves cells to the specified Range (without updating formulas). + + Represents the destination Range to move. + + The following code illustrates how to move the Range. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Moving a Range �A1� to �A5�. + IRange source = sheet.Range["A1"]; + IRange destination = sheet.Range["A5"]; + source.MoveTo(destination); + + workbook.Version = ExcelVersion.Excel2013; + workbook.SaveAs("MoveRange.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Copies the Range to the specified Range (without updating formulas). + + Represents the destination Range to copy. + Returns the copied Range. + + The following code illustrates how to copy the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Copying a Range �A1� to �A5�. + IRange source = sheet.Range["A1"]; + IRange destination = sheet.Range["A5"]; + source.CopyTo(destination); + + workbook.Version = ExcelVersion.Excel2013; + workbook.SaveAs("CopyRange.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Copies the Range to the specified destination Range with copy options. + + Represents the destination Range to copy. + Represents the copy Range options. + Returns the copied Range. + + The following code illustrates how to copy the Range with copy options. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Copying a Range �A1� to �A5�. + IRange source = sheet.Range["A1"]; + IRange destination = sheet.Range["A5"]; + source.CopyTo(destination, ExcelCopyRangeOptions.All); + workbook.Version = ExcelVersion.Excel2013; + workbook.SaveAs("CopyRange.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Copies the Range to the specified destination Range with copy options. + + Represents the destination Range to copy. + Represents if the pasteLinkOptions implement or not . + Returns the copied Range. + + The following code illustrates how to copy the Range with pasteLink options. + + ExcelEngine engine = new ExcelEngine(); + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IRange source = worksheet["A1:D5"]; + IRange destination = worksheet["E10"]; + // Copy range as link from source to destination + source.CopyTo(destination, true); + workbook.Version = ExcelVersion.Excel2013; + workbook.SaveAs("CopyRange.xlsx"); + workbook.Close(); + engine.Dispose(); + + + + + + Copies the Range to the specified destination Range with copy options and skip blanks option. + + Represents the destination Range to copy. + Represents the copy Range options. + Skip blank cells while copying the range from source to destination. + Returns the copied Range. + + This method can be used to prevent copying blank cells in the destination range. If "true", + then blank cells are not copied from source range. + + + The following code illustrates how to copy the Range with skip blanks option. + + using(ExcelEngine engine = new ExcelEngine()) + { + //Create worksheet + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load Data + worksheet["A1"].Value = "A"; + worksheet["A3"].Value = "B"; + worksheet["A5"].Value = "C"; + worksheet["A7"].Value = "D"; + worksheet["B1"].Value = "E"; + worksheet["B2"].Value = "F"; + worksheet["B4"].Value = "G"; + worksheet["B6"].Value = "H"; + + //Apply styles + worksheet["A1:A7"].CellStyle.ColorIndex = ExcelKnownColors.Yellow; + + //Skip blanks while copying + worksheet["A1:A7"].CopyTo(worksheet["B1"], ExcelCopyRangeOptions.All, true); + + workbook.SaveAs("SkipBlanks.xlsx"); + workbook.Close(); + } + + + + + + Returns intersection of the Range with specified Range. + + Range to be intersected. + Returns the intersection Range;if there is no intersection, NULL is returned. + + The following code illustrates how to perform intersectwith in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Merging cells + IRange range = worksheet.Range["A16:C16"]; + IRange commonRange = worksheet.Range["B16:D16"].IntersectWith(range); + workbook.SaveAs("Intersection.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Merges the range with specified range and returns merged range. + + Range to be merged with. + Returns a merged range; if the Range is unable to merge, null is returned. + + The following code illustrates how to check whether two ranges are mergable or not. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Merge + worksheet["A2:B2"].Merge(); + + //Get mergable range + IRange mergableRange = worksheet["A2"].MergeArea.MergeWith(worksheet["C2"]); + + //Check mergable Area + if (mergableRange != null) + Console.Write("Mergable!"); + else + Console.Write("Not Mergable!"); + + //Save and Dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Mergable! + + + + + + Changes the height of the rows in the range to achieve the best fit. + + + To know more about resizing rows and columns refer Auto-Fit Rows or Columns. + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, WP, Universal and UWP,Xamarin and NetStandard platforms only. + + The following code shows how to auto-size row height to its cell content. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Auto-fit rows + worksheet.Range["A2"].Text = "Fit the content to row"; + worksheet.Range["A2"].WrapText = true; + worksheet.Range["A2"].AutofitRows(); + + //Save and dispose + workbook.SaveAs("AutoFit.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Changes the width of the columns in the range to achieve the best fit. + + + To know more about resizing rows and columns refer Auto-Fit Rows or Columns. + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, WP, Universal and UWP,Xamarin and NetStandard platforms only. + + The following code shows how to auto-size row height to its cell content. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Auto-fit columns + worksheet.Range["B4"].Text = "Fit the content to column"; + worksheet.Range["B4"].AutofitColumns(); + + //Save and dispose + workbook.SaveAs("AutoFit.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Adds a comment. If the cell has threaded comment, returns null. + + Returns a comment shape. + + The following code illustrates how to insert Comments in the Range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + // Adding comments to a cell. + ICommentShape comment = sheet.Range["A1"].AddComment(); + comment.Text= "Comments"; + + // Add Rich Text Comments. + IRange range = sheet.Range["A6"]; + range.AddComment().RichText.Text = "RichText"; + IRichTextString rtf = range.Comment.RichText; + + // Formatting first 4 characters. + IFont redFont = workbook.CreateFont(); + redFont.Bold = true; + redFont.Color = ExcelKnownColors.Red; + rtf.SetFont(0, 3, redFont); + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + } + + + + + + Returns the first occurrence cell with the specified string value and . + + Value to found. + Flag that represent type of search. + Returns the first cell with a specified string value, or null if value was not found. + + The following code illustrates how to find the first occurrence of the specified string value in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with string + IRange result = sheet["A2:K100"].FindFirst("Simple text", ExcelFindType.Text); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence cell with the specified double value and . + + Value to found. + Flag that represent type of search. + Returns the first cell with a specified double value, or null if value was not found. + + The following code illustrates how to find the first occurrence of the specified double value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with number + IRange result = sheet["A2:K100"].FindFirst(100.32, ExcelFindType.Number); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence cell with the specified bool value. + + Value to be found. + Returns the first cell with a specified bool value, or null if value was not found. + + The following code illustrates how to find the first occurrence of the specified bool value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with bool + IRange result = sheet["A2:K100"].FindFirst(true); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence cell with the specified DateTime value. + + Value to be found. + Returns the first cell with a specified DateTime value, or null if value was not found. + + The following code illustrates how to find the first occurrence of the specified DateTime value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with DateTime + IRange result = sheet["A2:K100"].FindFirst(DateTime.Now); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence cell with the specified TimeSpan value. + + Value to be found. + Returns the first cell with a specified TimeSpan value, or null if value was not found. + + The following code illustrates how to find the first occurrence of the specified TimeSpan value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with TimeSpan + IRange result = sheet["A2:K100"].FindFirst(TimeSpan.MinValue); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells with a specified string value and . + + Value to be found. + Represents type of the value to be found. + Returns the cells with a specified string value, or null if value was not found. + + The following code illustrates how to find the cells with specified string value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find all with string + IRange[] results = sheet["A2:K100"].FindAll("Simple text", ExcelFindType.Text); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells with a specified double value and . + + Value to be found. + Represents type of the value to be found. + Returns the cells with a specified double value, or null if value was not found. + + The following code illustrates how to find the cells with specified double value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find All with number + IRange[] results = sheet["A2:K100"].FindAll(100.32, ExcelFindType.Number); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells with a specified bool value. + + Value to be found. + Returns the cells with a specified bool value, or null if value was not found. + + The following code illustrates how to find the cells with specified bool value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find all with bool + IRange[] results = sheet["A2:K100"].FindAll(true); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells with a specified DateTime value. + + Value to be found. + Returns the cells with a specified DateTime value, or null if value was not found. + + The following code illustrates how to find the cells with specified DateTime value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find all with DateTime + IRange[] results = sheet["A2:K100"].FindAll(DateTime.Now); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells with a specified TimeSpan value. + + Value to be found. + Returns the cells with a specified TimeSpan value, or null if value was not found. + + The following code illustrates how to find the cells with specified TimeSpan value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find All with Timespan + IRange[] results = sheet["A2:K100"].FindAll(TimeSpan.MinValue); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + The following code snippet illustrates how to replace the string with another string. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:A3"].Value = "Find"; + string oldValue = "Find"; + string newValue = "NewValue"; + sheet.Range["A1:A3"].Replace(oldValue, newValue); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified string value based on the given . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + The following code snippet illustrates how to replace the string with another string. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:A3"].Value = "Find"; + string oldValue = "Find"; + string newValue = "NewValue"; + sheet.Range["A1:A3"].Replace(oldValue, newValue, ExcelFindOptions.MatchCase); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + The following code snippet illustrates how to replace the string value with double. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:A3"].Value = "Ten"; + string oldValue = "Ten"; + sheet.Range["A1:A3"].Replace(oldValue,10.0); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified DateTime value. + + The string to be replaced. + The datetime value to replace all occurrences of oldValue. + The following code illustrates how to replace the string value with datetime. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:A3"].Value = "Find"; + string oldValue = "Find"; + DateTime dateTime = DateTime.Now; + sheet.Range["A1:A3"].Replace(oldValue,dateTime); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + The following code snippet illustrates how to replace the string with array of string values. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Value = "Find"; + string oldValue = "Find"; + string[] newValues = { "X values", "Y values" }; + sheet.Range["A1:A3"].Replace(oldValue, newValues, true); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + The following code snippet illustrates how to replace the string with array of int values. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Value = "Find"; + string oldValue = "Find"; + int[] newValues = { 1, 2 }; + sheet.Range["A1:A3"].Replace(oldValue, newValues, true); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + The following code snippet illustrates how to replace the string with array of double values. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Value = "Find"; + string oldValue = "Find"; + double[] newValues = { 1.00, 3.00 }; + sheet.Range["A1:A3"].Replace(oldValue, newValues, true); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified datatable. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + The following code snippet illustrates how to replace the string value with data table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Value = "AB2"; + //Create the data table + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("Dosage", typeof(int)); + table.Rows.Add(1); + // Replace the value with data table. + sheet.Range["A1:A3"].Replace("AB2", table, true); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified datacolumn. + + The string to be replaced. + DataColumn with new data. + Indicates whether field name must be shown. + + The following code snippet illustrates how to replace the string value with data column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Value = "AB2"; + //Create the data table + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("Dosage", typeof(int)); + table.Rows.Add(1); + System.Data.DataColumn dataColumn = table.Columns[0]; + // Replace the value with data column. + sheet.Range["A1:A3"].Replace("AB2", dataColumn, true); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Applies border around the Range. The default line style is . + + + The following code illustrates how to apply border around the Range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set border + worksheet["C2:D3"].BorderAround(); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Applies border around the Range with the specified . + + Represents border line style. + + The following code illustrates how to apply border around the Range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set border + worksheet["C2:D3"].BorderAround(ExcelLineStyle.Thick); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Applies border around the Range with the specified and . + + Represents border line style. + Represents border color. + + The following code illustrates how to apply border around the Range with color from structure. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set border + worksheet["C2:D3"].BorderAround(ExcelLineStyle.Thick, System.Drawing.Color.Red); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Applies border around the Range with the specified and . + + Represents border line style. + Represents border color. + + The following code illustrates how to apply border around the Range with . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set border + worksheet["C2:D3"].BorderAround(ExcelLineStyle.Thick, ExcelKnownColors.Red); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Applies border inside the Range. The default line style is . + + + The following code illustrates how to apply border inside the Range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set border + worksheet["C2:D3"].BorderInside(); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Applies border inside the Range with the specified . + + Represents border line style. + + The following code illustrates how to apply border inside the Range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set border + worksheet["C2:D3"].BorderInside(ExcelLineStyle.Thick); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Applies border inside the Range with the specified and . + + Represents border line style. + Represents border color. + + The following code illustrates how to apply border inside the Range with color from structure. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set border + worksheet["C2:D3"].BorderInside(ExcelLineStyle.Thick, System.Drawing.Color.Red); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Applies border inside the Range with the specified and . + + Represents border line style. + Represents border color. + + The following code illustrates how to apply border around the Range with ExcelKnownColors. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set border + worksheet["C2:D3"].BorderInside(ExcelLineStyle.Thick, ExcelKnownColors.Red); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Applies no border in the Range. + + + The following code illustrates how to remove borders in the Range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Set borders + IBorders borders = worksheet["C2"].Borders; + + //Set border color + borders[ExcelBordersIndex.EdgeTop].Color = ExcelKnownColors.Red; + borders[ExcelBordersIndex.EdgeBottom].Color = ExcelKnownColors.Blue; + + //Set line style + borders[ExcelBordersIndex.EdgeTop].LineStyle = ExcelLineStyle.Thick; + borders[ExcelBordersIndex.EdgeBottom].LineStyle = ExcelLineStyle.Thick; + + //Remove borders + worksheet["C2"].BorderNone(); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Collapses the group by rows/columns. + + + Represents to collapse the group by rows/columns. + + + The following code illustrates how to collapse the group in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Collapse group + worksheet.Range["A5:A15"].CollapseGroup(ExcelGroupBy.ByRows); + + workbook.SaveAs("CollapseGroup.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Expands the group by rows/columns. + + Represents to expand the group by rows/columns. + + The following code illustrates how to expand the group in the Range. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Expand group with flag set to expand parent + worksheet.Range["A5:A15"].ExpandGroup(ExcelGroupBy.ByRows); + + workbook.SaveAs("ExpandGroup.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Expands the group by row/column with collapse option. + + + Represents to expand the group by rows/columns. + + Represent the collapses options. + + The following code illustrates how to perform ExpandGroup in the Range with collapse option. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Expand group with flag set to expand parent + worksheet.Range["A5:A15"].ExpandGroup(ExcelGroupBy.ByRows, ExpandCollapseFlags.ExpandParent); + + workbook.SaveAs("ExpandGroup.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Gets the dependent cells which refer to other cells. + + Returns the dependent cells or null if value was not found. + The following code illustrates how to get the dependent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDependents(); + + string fileName = "Dependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the dependent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the dependents cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDependents(true); + + string fileName = "Dependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct dependent cells which refer to other cells. + + Returns the direct dependent cells or null if value was not found. + The following code illustrates how to get the direct dependent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDirectDependents(); + + string fileName = "Dependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the direct dependent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the direct dependents cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDirectDependents(true); + + string fileName = "Dependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the precedent cells which are referred by a formula in another cell. + + Returns the precedent cells or null if value was not found. + The following code illustrates how to get the precedent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetPrecedents(); + + string fileName = "Precedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the precedent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the precedent cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetPrecedents(true); + + string fileName = "Precedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Returns the direct precedent cells or null if value was not found. + The following code illustrates how to get the direct precedent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetPrecedents(); + + string fileName = "Precedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the direct precedent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the direct precedent cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetPrecedents(true); + + string fileName = "Precedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns an object that represents a range or cell that is offset from the specified range or cell. + + The number of rows (positive, negative, or 0 (zero)) by which the range is to be offset + + The number of columns (positive, negative, or 0 (zero)) by which the range is to be offset + + + Use the Offset method to access the cell range of the same size as the current range which is shifted by the specified number of rows and columns. + + Returns a range which is shifted by the specified number of rows and columns. + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IRange range = worksheet.Range[5,6]; + var offset = range.Offset(-3,-1); + var address2 = offset.AddressLocal; + workbook.SaveAs("output.xlsx"); + } + + + + + + Resizes the specified range a object that represents the resized range. + + The number of rows in the new range. + The number of columns in the new range. + + Use the Resize method to change the size of range by specified rows and columns from the current range. + + Returns the resized range. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IRange range = worksheet.Range[5,6]; + var resize = range.Resize(1000,2000); + var address = resize.AddressLocal; + workbook.SaveAs("output.xlsx"); + } + + + + + + Creates a threaded comment for the current cell with the specified text. + + Threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . If the cell already contains comment(note) then threaded comment cannot be inserted and returns null + + The threaded comment created by mapping with author name from built-in document properties + + + The following code illustrates how to add threaded comment with text. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment with text + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("sample text"); + + //Add threaded comment with text and creation time + DateTime date = new DateTime(2020, 11, 22, 2, 22, 23); + IThreadedComment threadedComment = worksheet["C1"].AddThreadedComment("Text", date); + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Creates a threaded comment for the current cell with the specified text and author. + + Threaded comment text + The author of the threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . If the cell already contains comment(note) then threaded comment cannot be inserted and returns null + + The following code illustrates how to add threaded comment with text and author. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment with text and author + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("sample text", "User"); + + //Add threaded comment with text, author and creation time + DateTime date = new DateTime(2020, 11, 22, 2, 22, 23); + IThreadedComment threadedComment = worksheet["C1"].AddThreadedComment("Text", "User", date); + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets the Range reference in macro language. Read-only. + + + The following code illustrates how to access Address property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + string address = sheet.Range[3, 4].Address; + + workbook.SaveAs("Address.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the Range reference in language of the user. Read-only. + + + The following code illustrates how to access AddressLocal property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + string address = sheet.Range[1, 2].AddressLocal; + + workbook.SaveAs("AddressLocal.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the Range reference along with its sheet name in format "'Sheet1'!$A$1". Read-only. + + + The following code illustrates how to access AddressGlobal property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[2]; + string address = sheet.Range[4, 3].AddressGlobal; + + workbook.SaveAs("AddressGlobal.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the Range reference along with sheet name using R1C1-style notation. Read-only. + + + The following code illustrates how to access AddressR1C1 property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + string address = sheet.Range[1, 1].AddressR1C1; + + workbook.SaveAs("AddressR1C1.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the Range reference using R1C1-style notation. Read-only. + + + The following code illustrates how to access AddressR1C1Local property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + string address = sheet.Range[1, 1].AddressR1C1Local; + + workbook.SaveAs("AddressR1C1Local.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets boolean value in the Range. + + + The following code illustrates how to set and access Boolean property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range[2, 4].Boolean = true; + bool boolean = sheet.Range[2, 4].Boolean; + + workbook.SaveAs("Boolean.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a collection that represents the borders of a style + in the Range. Read-only. + + Borders including a Range defined as part of a + conditional format will be returned. + + The following code illustrates how to access Borders property of the Range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Set borders + IBorders borders = worksheet["C2"].Borders; + + //Set border color + borders[ExcelBordersIndex.EdgeTop].Color = ExcelKnownColors.Red; + borders[ExcelBordersIndex.EdgeBottom].Color = ExcelKnownColors.Blue; + + //Set line style + borders[ExcelBordersIndex.EdgeTop].LineStyle = ExcelLineStyle.Thick; + borders[ExcelBordersIndex.EdgeBottom].LineStyle = ExcelLineStyle.Thick; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets a object that represents the cells in the Range. Read-only. + + + The following code illustrates how to access Cells property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange[] cells = sheet["A1:E8"].Cells; + foreach (IRange Range in cells) + { + // Do some manipulations + } + + workbook.SaveAs("Cells.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the column index of the first column in the Range which is a one based index. Read-only. + + + The following code illustrates how to access Column property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + int firstColumn = sheet["E1:R3"].Column; + + workbook.SaveAs("Column.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets column group level of the Range. Read-only. + + + -1 - not all column in the Range have same group level. + 0 - No grouping, + 1 - 7 - group level. + + + + + Gets or sets the width of all columns in the specified range, measured in points. + + + Gets Double.MinValue if the rows in the specified Range + aren't all the same width. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "This cell contains sample text"; + + //Set column width + worksheet["A1"].ColumnWidth = 25; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets the number of cells in the Range. Read-only. + + + + + Gets or sets DateTime value in the Range. + + + Gets DateTime.MinValue if not all cells in the Range have same DateTime value. + + + The following code illustrates how to set and access DateTime property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range[2, 4].DateTime = DateTime.Now; + DateTime dateTime = sheet.Range[2, 4].DateTime; + + workbook.SaveAs("DateTime.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets cell value with its number format. Read-only. + + While accessing DisplayText for Range of cells, it gets DisplayText of the first cell + If a range contains a formula, must be invoked to get the calculated value of the formula + + + The following code illustrates how to access DisplayText property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange range= sheet.Range[3, 1]; + range.Value = "1/1/2015"; + range.NumberFormat = "dd-MMM-yyyy"; + string displayText = range.DisplayText; + + workbook.SaveAs("DisplayText.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a object that represents the cell at the end of the Range. + + + + + Gets a object that represents the entire column (or + columns) in the Range. Read-only. + + + + + Gets a object that represents the entire row (or + rows) in the Range. Read-only. + + + + + Gets or sets error value in the Range. + + + + + Gets or sets the formula in A1-style notation and in + macro language for the Range. + + + + + Gets or sets sets the array formula of a range which can perform multiple calculations on one or more of the items in an array. + + + The following code illustrates how to set and access FormulaArray property of the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Assign array formula + sheet.Range["A1:D1"].FormulaArray = "{1,2,3,4}"; + + //Adding a named range for the range A1 to D1 + sheet.Names.Add("ArrayRange", sheet.Range["A1:D1"]); + + //Assign formula array with named range + sheet.Range["A2:D2"].FormulaArray = "ArrayRange+100"; + + string fileName = "FormulaArray.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the formula array for the Range, using R1C1-style notation. + + + + + Gets or sets a Boolean value indicating whether the formula will be hidden when the worksheet is protected. + + + True if the formula will be hidden when the worksheet is protected. + False if at least part of formula in the Range is not hidden. + + + + + Gets or sets formula DateTime value in the Range. + + + Gets DateTime.MinValue if not all cells in the Range have same FormulaDateTime value. + + + + + Gets or sets the formula for the Range, using R1C1-style notation. + + + + + Gets or sets the calculated value of the formula as a boolean. + + + + + Gets or sets the error value of the formula as a string. + + + + + Gets a Boolean value indicating whether Range has data validation. Read-only. + + If Range is not single cell, then gets true only if all cells have data validation. + + + + Gets a Boolean value indicating whether Range contains bool value. Read-only. + + + The following code illustrates how to set and access HasBoolean property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + //Assigning Value2 property of the Range + sheet["A3"].Value2 = false; + + // Checking Range types. + bool isboolean = sheet["A3"].HasBoolean; + + workbook.SaveAs("HasBoolean.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a Boolean value indicating whether Range contains DateTime value. Read-only. + + + The following code illustrates how to set and access HasDateTime property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + //Assigning Value2 property of the Range + sheet["A1"].Value2 = DateTime.Now; + + // Checking Range types. + bool isDateTime = sheet["A1"].HasDateTime; + + workbook.SaveAs("HasDateTime.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a Boolean value indicating whether Range contains formula. Read-only. + + True if all cells in the Range contain formulas; False if + at least one of the cells in the Range doesn't contain a formula. + + + + + Gets a Boolean value indicating whether Range contains array-entered formula. Read-only. + + + + + Gets a Boolean value indicating whether Range contains number. Read-only. + + + The following code illustrates how to set and access Value2 property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + //Assigning Value2 property of the Range + sheet["A2"].Value2 = 45; + + // Checking Range types. + bool isNumber = sheet["A2"].HasNumber; + + workbook.SaveAs("HasNumber.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a Boolean value indicating whether cell contains formatted rich text string. + + + The following code illustrates how to access HasRichText property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set rich text + IRichTextString richText = worksheet["C2"].RichText; + + //Set text + richText.Text = "Sample"; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set rich text font + richText.SetFont(0, 5, font); + + //Check HasRichText + Console.Write(worksheet["C2"].HasRichText); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Gets a Boolean value indicating whether Range contains string. Read-only. + + + + + Gets a Boolean value indicating whether Range has default style. False means default style. + Read-only. + + + The following code illustrates how to access HasStyle property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Check HasStyle + Console.Write(worksheet["C2"].HasStyle); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Gets or sets the horizontal alignment for the specified object. + + + By default is set to cells. Here for example, we set to align the + cell contents to right. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "Test"; + + //Set alignment + worksheet["A1"].HorizontalAlignment = ExcelHAlign.HAlignRight; + + //Set row height + worksheet["A1"].RowHeight = 30; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets hyperlinks in the Range. Read-only. + + + The following code illustrates how to access Borders property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + // Creating a Hyperlink for a Website. + IHyperLink hyperlink = sheet.HyperLinks.Add(sheet.Range["C5"]); + hyperlink.Type = ExcelHyperLinkType.Url; + hyperlink.Address = "http://www.syncfusion.com"; + hyperlink.ScreenTip = "To know more About SYNCFUSION PRODUCTS go through this link"; + + workbook.SaveAs("Hyperlinks.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the indent level for cell or Range. + + It can be from 0 to 15 for Excel 97-2003 and 250 for Excel 2007-2013. + + The following code illustrates how to set indent level for a . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Set indent level + worksheet["C2"].IndentLevel = 2; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets a Boolean value indicating whether the Range is blank. Read-only. + + + + + Gets a Boolean value indicating whether cell type is boolean. Read-only. + + + + + Gets a Boolean value indicating whether Range contains error value. Read-only. + + + + + Gets a Boolean value indicating whether Range is grouped by column. Read-only. + + + + + Gets a Boolean value indicating whether Range is grouped by row. Read-only. + + + + + Gets a Boolean value indicating whether cell is initialized. Read-only. + + + + + Gets the column index of the last column in the Range which is a one based index. Read-only. + + + + + Gets the row index of the last row in the Range which is a one based index. Read-only. + + + + + Gets or sets number value that is contained by Range. + + + When Range value is not a number. + + + + + Gets or sets format of cell which is similar to Style.NumberFormat property. + + + Gets NULL if all cells in the specified Range don't have the same number format. + + + The following code illustrates how to set NumberFormat property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C2"].Value = "3100.23"; + + //Set number format + worksheet["C2"].NumberFormat = "#,##0.##"; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets the row index of the first row in the Range which is a one based index. Read-only. + + + + + Gets row group level. Read-only. + + + -1 - Not all rows in the Range have same group level. + 0 - No grouping, + 1 - 7 - Group level. + + + + + Gets or sets the height of all the rows in the range, measured in points. + + + Gets Double.MinValue if the rows in the specified Range aren't all the same height. Maximum Row height can be 409 + value, minimum is zero. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "Test"; + + //Set alignment + worksheet["A1"].VerticalAlignment = ExcelVAlign.VAlignTop; + + //Set row height + worksheet["A1"].RowHeight = 30; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets an array of objects that represent the rows in the Range. Read only. + + + The following code illustrates how to access Columns property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange[] rows = sheet["A1:E8"].Rows; + foreach (IRange row in rows) + { + // Do some manipulations + } + + workbook.SaveAs("Rows.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets an array of objects that represent the columns in the Range. + Read only. + + + The following code illustrates how to access Columns property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange[] columns = sheet["A1:E8"].Columns; + foreach (IRange column in columns) + { + // Do some manipulations + } + + workbook.SaveAs("Columns.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a object that represents the style of the + Range. + + + To know more about setting styles refer Set Default Style for row/column. + + + The following code illustrates how to access using CellStyle property of the Range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("BorderStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets name of the object that represents style of the + Range. + + + The following code illustrates how to access CellStyleName property of the Range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Check Style name + Console.Write(worksheet["C2"].CellStyleName); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //CustomStyle + + + + + + Gets or sets string value of the Range. + + + + + Gets or sets time value of the Range. + + + + + Gets or sets the value of the Range. Does not support FormulaArray value. + + + + Sets different data types values as a string, + Value property parses the input string to determine its type which leads performance delay. + + + The only difference between the Value2 property and the Value property + is that the Value2 property does not use the Currency and Date data types. + Also, it does not support FormulaArray value. + + + + The following code illustrates how to set and access Value property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange range= sheet.Range[3, 1]; + range.Value = "1/1/2015"; + range.NumberFormat = "dd-MMM-yyyy"; + string displayText = range.DisplayText; + + workbook.SaveAs("Value.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the calculated value of a formula in the Range. Read-only. + + To compute a formula, it is mandatory to enable calculate engine by + invoking EnableSheetCalculations method of worksheet object. It is also recommend to disable + calculate engine once all formula are computed by invoking DisableSheetCalculations method of worksheet object + + Following code illustrates how to access a calculated value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx", ExcelOpenType.Automatic); + IWorksheet sheet = workbook.Worksheets[0]; + + //Initializes Calculate Engine to perform calculation + sheet.EnableSheetCalculations(); + + //Returns the calculated value of a formula using the most current inputs + string calculatedValue = sheet["C1"].CalculatedValue; + //Formula calculation is disabled for the sheet. + sheet.DisableSheetCalculations(); + + workbook.SaveAs("Formula.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the cell value. + + + + Sets different data types values as a object. + Value2 first checks whether the specified object has the type known for it (DateTime, TimeSpan, Double, Int). + If yes, then it uses the corresponding typed properties (DateTime, TimeSpan, and Number). + Otherwise, it calls Value property with String data type. + + + The only difference between the Value2 property and the Value property + is that the Value2 property does not use the Currency and Date data types. + Also, it does not support FormulaArray value. + + + + The following code illustrates how to set and access Value2 property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + //Assigning Value2 property of the Range + sheet["A1"].Value2 = DateTime.Now; + sheet["A2"].Value2 = 45; + sheet["A3"].Value2 = false; + + // Checking Range types. + bool isDateTime = sheet["A1"].HasDateTime; + bool isNumber = sheet["A2"].HasNumber; + bool isboolean = sheet["A3"].HasBoolean; + + workbook.SaveAs("Value2.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the vertical alignment of the Range. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "Test"; + + //Set alignment + worksheet["A1"].VerticalAlignment = ExcelVAlign.VAlignTop; + + //Set row height + worksheet["A1"].RowHeight = 30; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets the object in which belongs to the Range. Read-only. + + + + + Gets or sets cell range by row and column index. Row and column indexes are one-based. + + + + + Get cell Range. Row and column indexes are one-based. Read-only. + + + + + Gets cell Range. Read-only. + + + + + Gets cell Range with R1C1Notation flag. Read-only. + + + + + Gets the collection of conditional formats in the Range. + Read-only. + + + The following code illustrates how to set and access Value2 property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + // Applying conditional formatting to "A1" + IConditionalFormats condition = sheet.Range["A2"].ConditionalFormats; + IConditionalFormat condition1 = condition.AddCondition(); + + // Represents conditional format rule that the value in target Range should be between 10 and 20 + condition1.FormatType = ExcelCFType.CellValue; + condition1.Operator = ExcelComparisonOperator.Between; + condition1.FirstFormula = "10"; + condition1.SecondFormula = "20"; + sheet.Range["A1"].Text = "Enter a number between 10 and 20"; + + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + Gets a object that represents the data validation associated with the cell. Read-only. + + + The following code illustrates how to access DataValidation property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + //Data validation for number + IDataValidation validation = sheet.Range["A3"].DataValidation; + validation.AllowType = ExcelDataType.Integer; + + //Value between 0 to 10 + validation.CompareOperator = ExcelDataValidationComparisonOperator.Between; + validation.FirstFormula = "0"; + validation.SecondFormula = "10"; + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets string value evaluated by formula. + + + + + Gets or sets number value evaluated by formula. + + + + + Gets a Boolean value indicating whether Range has formula bool value. Read-only. + + + + + Gets a Boolean value indicating whether Range has formula error value. Read-only. + + + + + Gets a Boolean value indicating whether Range has formula value formatted as DateTime. Read-only. + + + + + Gets a Boolean value indicating whether Range has formula number value. Read-only. + + + + + Gets a Boolean value indicating whether Range has formula string value. Read-only. + + + + + Gets a object that represents the comment associated with the range. Read-only. + + + The following code illustrates how to insert Comments property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + // Adding comments to a cell. + sheet.Range["A1"].AddComment().Text = "Comments"; + + // Add Rich Text Comments. + IRange range = sheet.Range["A6"]; + range.AddComment().RichText.Text = "RichText"; + IRichTextString rtf = range.Comment.RichText; + + // Formatting first 4 characters. + IFont redFont = workbook.CreateFont(); + redFont.Bold = true; + redFont.Color = ExcelKnownColors.Red; + rtf.SetFont(0, 3, redFont); + + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the threaded comment associated with the cell. + + The object + + The following code illustrates how to access ThreadedComment property of IRange + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Access threaded comment from IRange + IThreadedComment threadedComment = worksheet["C2"].ThreadedComment; + + if(threadedComment != null) + string text = threadedComment.Text; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets string with rich text formatting in the Range. Read-only. + + + The following code illustrates how to set rich text formatting in the range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set rich text + IRichTextString richText = worksheet["C2"].RichText; + + //Set text + richText.Text = "Sample text"; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set rich text font + richText.SetFont(0, 5, font); + + //Set color + font.Color = ExcelKnownColors.Blue; + + //Set rich text font + richText.SetFont(6, 10, font); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets a Boolean value indicating whether Range is a part of merged Range. Read-only. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "Sample text in cell"; + + //Set merge + worksheet["A1:B1"].Merge(); + + //Check merge + Console.Write(worksheet["A1:B1"].IsMerged); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Gets a object that represents the merged Range to which the cell or Range belongs. Read-only. + + If the specified cell isn�t in a merged Range, this property gets NULL. + + The following code illustrates how to access MergeArea property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Merge + worksheet["C2:D3"].Merge(); + + //Check merge area + Console.Write(worksheet["C2"].MergeArea.AddressLocal); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //C2:D3 + + + + + + Gets or sets wrap text of the Range. + + While applying wraptext to rows/columns in Excel, autofit is done for rows/columns everytime when data is added. But in XlsIO, autofit of rows/columns are not done like Excel because of performance considerations. To achieve Excel behavior, the autofit can be invoked manually. + + The following code illustrates how to set WrapText property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "This cell contains sample text"; + + //Set wrap text + worksheet["A1"].WrapText = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets a Boolean value indicating whether Range has external formula. Read-only. + + + + + Gets or sets ignore error options for formula auditing. If not single cell gets concatenated flags. + + + + + Gets a Boolean value indicating whether all values in the Range are preserved as strings. + + + + + Gets or sets built in style in the Range. + + + The following code illustrates how to set BuiltInStyle to a range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Set built in style + worksheet["C2"].BuiltInStyle = BuiltInStyles.Accent3; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets HTML string. + + + + + Interface that contains method for to take native ptg. + + + + + Gets ptg of current range. + + Returns native ptg. + + + + Represents a combined Range. + + + + + Gets new address of range. + + Dictionary with Worksheet names. + String that sets as a worksheet name. + Returns string with new name. + + + + Clones current IRange. + + Parent object. + Dictionary with new names. + Parent workbook. + Returns clone of current instance. + + + + Clears conditional formats. + + + + + Returns array that contains information about range. + + Rectangles that describes range + + + + Returns number of rectangles returned by GetRectangles method. + + Number of rectangles returned by GetRectangles method. + + + + Number of cells in the range. Read-only. + + + + + Gets address global in the format required by Excel 2007. + + + + + Gets name of the parent worksheet. + + + + + Parent worksheet. + + + + + + + + + + + + + + + + + + + + Creates Subtotal for the corresponding ranges + + GroupBy + ConsolidationFunction + TotalList + + + + Creates SubTotal for the corresponding Ranges + + GroupByGroupBy + ConsolidationFunction + TotalList + Replace exisiting SubTotal + Insert PageBreaks + SummaryBelowData + + + + Creates SubTotal for the corresponding Ranges + + Columns to GroupBy + ConsolidationFunction + TotalList + Replace exisiting SubTotal + Insert PageBreaks + SummaryBelowData + + + + Returns sum of numeric cells in the range. + + + + + Returns sum of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns average of numeric cells in the range. + + + + + Returns average of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns minumum value from numeric cells in the range. + + + + + Returns minumum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns maximum value from numeric cells in the range. + + + + + Returns maximum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Trim the empty rows at top and bottom of the range, the empty columns at left and right of the range. + + Returns the range after trim. + + + + Copies the Range to the specified destination Range with copy options and skip blank option. + + Represents the destination Range to copy. + Represents the copy Range options. + Represents the skip blank cells in the source. + Returns the copied Range. + + + + Copies this range into another location using pasteLinkOptions. + + Destination range. + Check to implement the pasteLink option. + Method not implement error. + + + + Creates a threaded comment for the current cell with the specified text. + + Threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . + + + + Creates a threaded comment for the current cell with the specified text and author. + + Threaded comment text + The author of the threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . + + + + Replaces the string with the specified string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + + Replaces the string with the specified string value based on the given . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + + + + Replaces the string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + + + + Replaces the string with the specified DateTime value. + + The string to be replaced. + The datetime value to replace all occurrences of oldValue. + + + + Replaces the string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified datatable. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Replaces the string with the specified datacolumn. + + The string to be replaced. + DataColumn with new data. + Indicates whether field name must be shown. + + + + Gets the dependent cells which refer to other cells. + + Returns the dependent cells or null if value was not found. + + + + Gets the dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the dependent cells with a specified bool value or null if value was not found. + + + + Gets the precedent cells which are referred by a formula in another cell. + + Returns the precedent cells or null if value was not found. + + + + Gets the precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the precedent cells with a specified bool value or null if value was not found. + + + + Gets the direct dependent cells which refer to other cells. + + Returns the direct dependent cells or null if value was not found. + + + + Gets the direct dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the direct dependent cells with a specified bool value or null if value was not found. + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Returns the direct precedent cells or null if value was not found. + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the direct precedent cells with a specified bool value or null if value was not found. + + + + Returns a Range object that represents a range thats offset from the specified range. + + The number of rows (positive, negative, or 0 (zero)) by which the range is to be offset + The number of columns (positive, negative, or 0 (zero)) by which the range is to be offset + + + + + Resizes the specified range + + The number of rows in new range + The number of columns in new range + + + + + Initializes new instance of the class. + + Parent external worksheet. + First row. + First column. + + + + Initializes new instance of the class. + + Parent external worksheet. + First row. + First column. + Last row. + Last column. + + + + Returns an enumerator that iterates through the Range. + + + + + + Returns the calculated value of a formula using the most current inputs. + + + + + Get the threaded comment. + + + + + Gets address global in the format required by Excel 2007. + + + + + Gets name of the parent worksheet. + + + + + Gets or sets HTML string. + + + + + Gets or sets a value indicating whether this instance is num reference for chart axis. + + + true if this instance is num reference; otherwise, false. + + + + + Gets or sets a value indicating whether this instance is a string reference for chart axis. + + + true if this instance is string reference; otherwise, false. + + + + + Gets or sets a value indicating whether this instance is multi reference for chart axis. + + + true if this instance is multi reference; otherwise, false. + + + + + Get the conditional format formula values. + + Formula ptg array + Current worksheet + Formula + + + + + Check given tokens having forumula or not + + Formula ptg array + True, if given tokens is formula, false otherwise + + + + Represent the string value which are for LineStyle + + + + + + This class is responsible for shape id's reservation. + + + + + Size of the single id's segment. + + + + + Dictionary that contains information about reserved id's. + key - segment start + value - id of the collection that reserved current segment. + + + + + Dictionary that contains information about number of reserved id's. + key - segment start + value - number of reserved sectors. + + + + + Number of sectors (key) and first id (value) reserved by some collection. + + + + + Maximum reserved id. + + + + + Additional shapes. + + + + + Evaluates start of the segment containing specified id. + + Id to get segment start for. + + + + + Checks whether segment with specified it is already reserved. + + Id to check. + + + + + Checks whether segment with specified id is free. + + Id to check. + Number of segments to check. + True if all segments are free. + + + + Gets index of the collection which reserved specified id. + + Id to check. + Index of the collection which reserved id, or 0 if it is not reserved. + + + + Tries to reserve segment or segments containing specified ids for the specified collection. + + Start id to reserve. + Last id to reserve. + Collection owning those ids + True if reservation succeeded. + + + + Increases number of reserved shapes in the segment. + + Id that belongs to the segment to increase number for. + + + + Checks whether specified id range is reserved by specified shape collection. + + Start id to check. + End id to check. + Collection id to check. + True if all ids are reserved by the specified collection. + + + + Frees segment that contains specified id. + + Id used to detect segment start. + + + + Frees segments sequence if they belong to specified collection. + + Id to detect first segment. + Collection to free segments for. + + + + Frees all segments allocated by the collection. + + Collection id. + + + + Allocates specified number of segments. + + Ids count to allocate. + Collection id. + shapes. + Index to the first allocate id. + + + + Returns number of reserved ids by specified collection. + + Collection index. + Number of reserved ids. + + + + Gets number of reserved shapes inside specified sector. + + Id that belongs to the segment that is being investigated. + Number of reserved ids inside sector. + + + + Registers any number of additional shapes required by collection. + + Collection index. + Number of additional shapes to add. + + + + Gets number of additional shapes reserved by collection. + + Collection index. + Number of additional shapes. + + + + Gets maximum accessed shape id. + + + + + Abstract class which represents data structures. + + + + + Size of the File Character position. + + + + + Number of bytes in formatted disk page. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Reads the int16. + + The data array. + The offset. + + + + + Reads the int32. + + The data array. + The offset. + + + + + Reads the int64. + + The data array. + The offset. + + + + + Reads the int16. + + The data array. + The offset. + + + + + Reads the int32. + + The data array. + The offset. + + + + + Reads the array of bytes. + + The data array. + The length. + The offset. + + + + + Saves the specified int16 value in the data array. + + The arr data. + The offset. + + + + Saves the specified uint16 value in the data array. + + The arr data. + The offset. + + + + Saves the specified int32 value in the data array. + + The arr data. + The offset. + + + + Saves the specified int64 value in the data array. + + The destination. + The offset. + The value. + + + + Saves the specified uint32 value in the data array. + + The arr data. + The offset. + + + + Saves the bytes byte array. + + The destination array. + The offset. + The bytes. + + + + Gets the size of the structure. + + The length. + + + + Length of compObject stream + + + + + This MUST be a CompObjHeader structure. + + + + + This MUST be a LengthPrefixedAnsiString structure that contains a display + name of the linked object or embedded object + + + + + This MUST be a ClipboardFormatOrAnsiString structure that contains the + Clipboard Format of the linked object or embedded object. If the MarkerOrLength + field of the ClipboardFormatOrAnsiString structure contains a value other than + 0x00000000, 0xffffffff, or 0xfffffffe, the value MUST NOT be greater than 0x00000190. + Otherwise the CompObjStream structure is invalid + + + + + If present, this MUST be a LengthPrefixedAnsiString structure. If the Length field of + the LengthPrefixedAnsiString contains a value of 0 or a value that is greater than + 0x00000028, the remaining fields of the structure starting with the String field + of the LengthPrefixedAnsiString MUST be ignored on processing. + + + + + If this field is present and is NOT set to 0x71B239F4, + the remaining fields of the structure MUST be ignored on processing + + + + + This MUST be a LengthPrefixedUnicodeString structure that contains a display name + of the linked object or embedded object. + + + + + This MUST be a ClipboardFormatOrUnicodeString structure that contains a Clipboard + Format of the linked object or embedded object. If the MarkerOrLength field of the + ClipboardFormatOrUnicodeString structure contains a value other than 0x00000000, + 0xffffffff, or 0xfffffffe, the value MUST NOT be more than 0x00000190. Otherwise, + the CompObjStream structure is invalid + + + + + This MUST be a LengthPrefixedUnicodeString. The String field of the LengthPrefixedUnicodeString + can contain any arbitrary value and MUST be ignored on processing. + + + + + Initializes a new instance of the class. + + The comp stream. + + + + Initializes a default instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Saves data to STG stream. + + The STG stream. + + + + Writes the zero byte array. + + The stream. + Length of the byte. + + + + Writes the length prefixed string. + + The stream. + The data. + + + + Gets the size of the structure. + + The length. + + + + Gets the type of the object. + + The type of the object. + + + + Gets the type of the object. + + The type of the object. + + + + + + + + + This can be set to any arbitrary value and MUST be ignored on processing. + + + + + This can be set to any arbitrary value and MUST be ignored on processing. + + + + + This can be set to any arbitrary value and MUST be ignored on processing. + + + + + Initializes a new instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Saves to STG stream. + + The stream. + + + + Gets the size of the structure. + + The length. + + + + + + + + + + + + + + Initializes a new instance of the class. + + The comp stream. + + + + Initializes a default instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Saves the data to stream. + + The STG stream. + + + + Gets the size of the structure. + + The length. + + + + Represents the Ole Object implementation + + + + + Represent the Ole object shapes. + + + + + Gets or sets the location. + + The location. + + The following code illustrates how to set the Location property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add ole object + IOleObject oleObject = worksheet.OleObjects.Add("Shapes.xlsx", image, OleLinkType.Embed); + + //Set height and width + oleObject.Shape.Height = 150; + oleObject.Shape.Width = 150; + + //Set location + oleObject.Location = worksheet["C7"]; + + //Save and dispose + workbook.SaveAs("OLEObjects.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the size. + + The size. + + The following code illustrates how to access Size property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add ole object + IOleObject oleObject = worksheet.OleObjects.Add("Shapes.xlsx", image, OleLinkType.Embed); + + //Get image size + Console.WriteLine(oleObject.Size.Height); + Console.WriteLine(oleObject.Size.Width); + + //Save and dispose + workbook.SaveAs("OLEObjects.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //{Prints given image's height} + //{Prints given image's width} + + + + + + Gets or sets the picture. + + The picture. + + The following code illustrates how to access Picture property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add ole object + IOleObject oleObject = worksheet.OleObjects.Add("Shapes.xlsx", image, OleLinkType.Embed); + + //Get picture's height and width + Console.WriteLine(oleObject.Picture.Height); + Console.WriteLine(oleObject.Picture.Width); + + //Save and dispose + workbook.SaveAs("OLEObjects.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //{Given image's height} + //{Given image's width} + + + + + + Gets or sets picture shape object that defines look and position of the OleObject inside parent worksheet. + + + The following code illustrates how to set and of the by accessing Shapes property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add ole object + IOleObject oleObject = worksheet.OleObjects.Add("Shapes.xlsx", image, OleLinkType.Embed); + + //Set height and width + oleObject.Shape.HeightDouble = 150; + oleObject.Shape.WidthDouble = 150; + + //Save and dispose + workbook.SaveAs("OLEObjects.xlsx"); + workbook.Close(); + } + + + + + + Gets the name of an OLE object. + + + The following code illustrates how to access Name property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add ole object + IOleObject oleObject = worksheet.OleObjects.Add("Shapes.xlsx", image, OleLinkType.Embed); + + //Get name + Console.WriteLine(oleObject.Name); + + //Save and dispose + workbook.SaveAs("OLEObjects.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Picture0 + + + + + + Gets or sets a value indicating whether [display as icon]. + + true if [display as icon]; otherwise, false. + + The following code illustrates how to set DisplayAsIcon property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add ole object + IOleObject oleObject = worksheet.OleObjects.Add("Shapes.xlsx", image, OleLinkType.Embed); + + //Set display as icon + oleObject.DisplayAsIcon = true; + + //Save and dispose + workbook.SaveAs("OLEObjects.xlsx"); + workbook.Close(); + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + byte array represents the native data + + + + + byte array represents the file + + + + + compound object stream used to store the ole object data + + + + + Ole stream used to store ole object data + + + + + Object info stream used to store the ole object information + + + + + Dictionary collection used to store the location + + + + + boolean value indicates whether the oleobject is contains the stream + + + + + Stream used tp store the ole object streams + + + + + size value used to set the size of ole object icon + + + + + Boolean value indicates whether the icon is enabled or not. + + + + + Enum value represents the OleObject display behavior + + + + + Ole Object shape + + + + + stores the ole object shape id + + + + + Store the ole object fall back shape id + + + + + Store the default size value. + + + + + Store the move with cell value. + + + + + Store the size with cells value. + + + + + Store the object pr relation id. + + + + + the ole object type + + + + + Boolean value indicates whether the oleobject is stored in a stream + + + + + the parent worksheet object + + + + + Excel 2007 content type. + + + + + Excel 2007 relation type. + + + + + The ole object type about the embedded data + + + + + Ole object storage name + + + + + ole object type about the embedded data in string + + + + + ole object ole file name + + + + + ole object file name + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + file Path to be linked + The parent worksheet. + Type of the OLE link. + + + + Initializes a new instance of the class. + + Name of the file. + The image. + + + + Initializes a new instance of the class. + + Name of the file. + The image. + Type of the OLE link. + + + + Creates the Ole object + + + + + + + + OLEs from file. + + Name of the file. + The image. + + + + + OLEs from stream. + + The stream. + The image. + The extension. + + + + + Initializes a new instance of the class. + + The stream. + The image. + The extension. + + + + Gets the name of the stream file. + + The read value. + The extension. + + + + + Sets the file. + + Name of the file. + + + + + Extracts the OLE data. + + Name of the file. + + + + Copies the stream. + + The input. + The output. + + + + Checks the name of the file. + + Name of the file. + + + + Sets the OLE file. + + Name of the file. + Name of the storage. + + + + Sets the OLE file. + + Name of the file. + Name of the storage. + The file bytes. + + + + Creates the OLE obj container. + + The file path. + Name of the olestorage. + + + + Saves the specified object pool. + + The object pool. + The data path. + Name of the storage. + + + + + Creates the or get obj pool. + + The name. + + + + + Writes the OLE stream. + + The root STG. + The data path. + + + + Writes the obj info stream. + + The root STG. + + + + Gets the OLE container. + + + + + + Writes the comp obj stream. + + The root STG. + + + + Writes the package. + + The root STG. + The data path. + + + + Contains the stream. + + The stream names. + The name. + + + + + Gets index of external workbook referenced by this ole object. + + + + + + Gets and sets the fall back shapeId. + + + + + Gets and sets the default size value. + + + + + Gets and sets the move with cells value. + + + + + Gets and sets size with cell value. + + + + + Gets and sets the objectPr relation id + + + + + Gets or sets the location. + + The location. + + + + Gets or sets the size. + + The size. + + + + Gets or sets the picture. + + The picture. + + + + Gets or sets a value indicating whether [display as icon]. + + true if [display as icon]; otherwise, false. + + + + Gets or sets the type of the OLE. + + The type of the OLE. + + + + Gets or sets a value indicating whether this instance is stream. + + true if this instance is stream; otherwise, false. + + + + Gets or sets the index of the OLE sheet. + + The index of the OLE sheet. + + + + Gets or sets a value indicating whether this instance is container. + + + true if this instance is container; otherwise, false. + + + + + Gets or sets the container. + + The container. + + + + Gets or sets the file native data. + + The file native data. + + + + Gets or sets the type of the object. + + The type of the object. + + + + Gets the locate. + + The locate. + + + + Gets or sets the name of the file. + + The name of the file. + + + + Gets or sets the name of the storage. + + The name of the storage. + + + + Gets or sets the type of the OLE object. + + The type of the OLE object. + + + + Gets or sets the dv aspect. + + The dv aspect. + + + + Gets or sets the shape ID. + + The shape ID. + + + + Gets or sets the shape R id. + + The shape R id. + + + + Gets shape associated with this ole object. + + + + + Gets the name of an OLE object. + + + + + Gets or sets xlsx content type. + + + + + Gets or sets xlsx relation type. + + + + + Used to preserve OleObjects for add copy method + + + + + Set the Ole storage name + + + + + + Ole Storage name + + + + + Ole Storage Streams + + + + + Get the Ole storage stream names + + + + + Represents the Ole objects implementation + + + + + Represents the Ole objects shape collections. + + + + + Adds new ole object to the collection. + + File name. + File image. + Link type. + Returns a Ole object + + This method is not supported in UWP, ASP.NET Core and Xamarin. + + + The following code illustrates how to add an to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add ole object + IOleObject oleObject = worksheet.OleObjects.Add("Shapes.xlsx", image, OleLinkType.Embed); + + //Save and dispose + workbook.SaveAs("OLEObjects.xlsx"); + workbook.Close(); + } + + + + + + Store the Requries value in choice. + + + + + Parent worksheet. + + + + + Initializes new instance of the collection. + + Parent worksheet. + + + + Adds the specified OLE. + + The OLE. + + + + Adds new ole object to the collection. + + File name. + File image. + Link type. + + + + Sets the OLE object. + + The OLE. + + + + Gets and sets the requries value + + + + + Class performs converting string to OleObjectType enum and vice versa. + + + + + Converts the string to "OleObjectType" + + The OLE type STR. + + + + + Converts the string to "OleObjectType" + + The OLE type STR. + + + + + Gets the GUID for specified type of object. + + The type. + + + + + Gets the GUID for specified type of object. + + The type. + + + + + Gets the name of the OLE file. + + + + + + Gets the next file id. + + + + + + Adds the specified file name. + + Name of the file. + + + + Used to preserve OleObjects for add copy method + + + + + Collection of Ole storage + + + + + List of the names of Ole storages + + + + + List of the stream names of Ole Storages + + + + + + + + + + + + + + + + + + + + This MUST be set to 0x00000001 or 0x00000002. If this field has a value of 1, the OLEStream + structure MUST be for a linked object. If this field has a value of 0, then the OLEStream + structure MUST be for an embedded object. + + + + + This field contains an implementation-specific hint supplied by the application or by a + higher-level protocol that creates the data structure. The hint MAY be ignored on + processing of this data structure. + + + + + This MUST be set to 0x00000000. Otherwise, the OLEStream structure is invalid. + + + + + This MUST be set to the size, in bytes, of the ReservedMonikerStream field. + If this field has a value 0x00000000, the ReservedMonikerStream field MUST NOT be present. + + + + + This MUST be a MONIKERSTREAM structure that can contain any arbitrary value + and MUST be ignored on processing. + + + + + This MUST be set to the size, in bytes, of the RelativeSourceMonikerStream field. + If this field has a value 0x00000000, the RelativeSourceMonikerStream field MUST NOT be present. + + + + + This MUST be a MONIKERSTREAM structure that specifies the relative path to the linked object. + + + + + This MUST be set to the size, in bytes, of the AbsoluteSourceMonikerStream field. + This field MUST NOT contain the value 0x00000000. + + + + + This MUST be a MONIKERSTREAM structure that specifies the full path to the linked object. + + + + + This MUST be the LONG value -1 + + + + + This MUST be the CLSID containing the object class GUID of the creating application. + + + + + This MUST be a LengthPrefixedUnicodeString that can contain + any arbitrary value and MUST be ignored on processing. + + + + + This can contain any arbitrary value and MUST be ignored on processing. + + + + + This MUST be a FILETIME that contains the time + when the container application last updated the RemoteUpdateTime field. + + + + + This MUST be a FILETIME that contains the time + when the container application last checked the update time of the linked object. + + + + + This MUST be a FILETIME that contains the time when the linked object was last updated. + + + + + The type of the link; + + + + + Path to linked file + + + + + Initializes a new instance of the class. + + The comp stream. + + + + Initializes a default instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Saves to compound stream. + + The stream. + + + + Saves to stg stream. + + The comp stream. + + + + Writes the zero byte array. + + The STG stream. + Length of the byte. + + + + Writes the length prefixed string. + + The STG stream. + The data. + + + + Gets the size of the structure. + + The length. + + + + + + + + + + + + + + Path to file + + + + + Initializes a new instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Gets the short name of the path. + + The path. + The short path. + Short length of the path. + + + + + Save data structure. + + The STG stream. + + + + Gets the size of the structure. + + The length. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + Parse the data strucure + + Bytes with data + Offset + + + + Saves the data structure. + + The destination array. + The offset. + Length + + + + Gets the size of the structure. + + The length. + + + + This interface is used to perform some action on demand. + + + + + Performs required operation. + + + + + Parent worksheet. + + + + + Index of the remove row operation. + + + + + Number of rows to remove. + + + + + Initializes new instance of the class. + + Parent worksheet. + Index of the remove row operation. + Number of rows being removed. + + + + Clears necessary rows. + + + + + This class represents combo box object. + + + + + This interface provides access to the combo box shape properties. + + + + + Gets or sets the worksheet range used to fill the specified list box. + + + The following code illustrates how to set the ListFillRange to load the data for the combobox. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["J1"].Value = "1"; + worksheet["J2"].Value = "2"; + worksheet["J3"].Value = "3"; + + //Add combobox + IComboBoxShape combobox = worksheet.ComboBoxes.AddComboBox(2, 2, 20, 100); + + //Add combobox data + combobox.ListFillRange = worksheet["J1:J3"]; + + //Set linked cell + combobox.LinkedCell = worksheet["D2"]; + + //Set selected index + combobox.SelectedIndex = 2; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the worksheet range linked to the control's value. + + + The following code illustrates how to set LinkedCell to display the of combobox. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["J1"].Value = "1"; + worksheet["J2"].Value = "2"; + worksheet["J3"].Value = "3"; + + //Add combobox + IComboBoxShape combobox = worksheet.ComboBoxes.AddComboBox(2, 2, 20, 100); + + //Add combobox data + combobox.ListFillRange = worksheet["J1:J3"]; + + //Set linked cell + combobox.LinkedCell = worksheet["D2"]; + + //Set selected index + combobox.SelectedIndex = 2; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets selected item index of the combo box. + + + The following code illustrates how to set the SelectedIndex property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["J1"].Value = "1"; + worksheet["J2"].Value = "2"; + worksheet["J3"].Value = "3"; + + //Add combobox + IComboBoxShape combobox = worksheet.ComboBoxes.AddComboBox(2, 2, 20, 100); + + //Add combobox data + combobox.ListFillRange = worksheet["J1:J3"]; + + //Set linked cell + combobox.LinkedCell = worksheet["D2"]; + + //Set selected index + combobox.SelectedIndex = 2; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the number of list lines displayed in the drop-down portion of a combo box. + + + The following code illustrates how to set DropDownLines property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["J1"].Value = "1"; + worksheet["J2"].Value = "2"; + worksheet["J3"].Value = "3"; + worksheet["J4"].Value = "4"; + worksheet["J5"].Value = "5"; + + //Add combobox + IComboBoxShape combobox = worksheet.ComboBoxes.AddComboBox(2, 2, 20, 100); + + //Add combobox data + combobox.ListFillRange = worksheet["J1:J5"]; + + //Set selected index + combobox.SelectedIndex = 1; + + //Set droplines + combobox.DropDownLines = 2; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets value indicating whether 3D shadow is present. + + + The following code illustrates how to set Display3DShading property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["J1"].Value = "1"; + worksheet["J2"].Value = "2"; + worksheet["J3"].Value = "3"; + worksheet["J4"].Value = "4"; + worksheet["J5"].Value = "5"; + + //Add combobox + IComboBoxShape combobox = worksheet.ComboBoxes.AddComboBox(2, 2, 20, 100); + + //Add combobox data + combobox.ListFillRange = worksheet["J1:J5"]; + + //Set selected index + combobox.SelectedIndex = 1; + + //Set 3D shading + combobox.Display3DShading = true; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets value selected in combobox. + + + 1-based indexing is used to access the values in combobox list. + + + The following code illustrates how to access SelectedValue property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["J1"].Value = "1"; + worksheet["J2"].Value = "2"; + worksheet["J3"].Value = "3"; + + //Add combobox + IComboBoxShape combobox = worksheet.ComboBoxes.AddComboBox(2, 2, 20, 100); + + //Add combobox data + combobox.ListFillRange = worksheet["J1:J3"]; + + //Set selected index + combobox.SelectedIndex = 1; + + //Get selected value + Console.Write(combobox.SelectedValue); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //1 + + + + + + Shape instance. + + + + + Shape version. + + + + + Default number of drop lines. + + + + + The worksheet range used to fill the specified list box. + + + + + Gets or sets the worksheet range linked to the control's value. + + + + + Gets or sets selected item index of the combo box. + + + + + Number of list lines displayed in the drop-down portion of a combo box. + + + + + Type of the combobox object. + + + + + Indicates whether combo box has 3D shadow. + + + + + Indicates the formula string associated with Macro. + + + + + Initializes new instance of the combo box item. + + Application object for the new combo box object. + Parent object for the new combo box object. + + + + Initializes new instance of the combo box item. + + Application object for the new combo box object. + Parent object for the new combo box object. + Shape's container. + Parsing options. + + + + Parses OBJ subrecords. + + + + + + Parses SbsFormula record. + + Record to parse. + + + + Parses LbsData record. + + Record to parse. + + + + Parses Sbs record. + + Record to parse. + + + + This method is called inside of PrepareForSerialization to make shape-dependent preparations. + + + + + Serializes current shape. + + Container that will receive this comment. + + + + Updates ftLbsData sub record. + + OBJ record to update sub record in. + Indicates whether OBJRecord existed before or it was created from scratch. + + + + Updates ftSbsFormula sub record. + + OBJ record to update sub record in. + Indicates whether OBJRecord existed before or it was created from scratch. + + + + Updates ftSbs sub record. + + OBJ record to update sub record in. + Indicates whether OBJRecord existed before or it was created from scratch. + + + + Updates ftCmo sub record. + + OBJ record to update sub record in. + Indicates whether OBJRecord existed before or it was created from scratch. + + + + Creates a clone of the current shape. + + New parent for the shape object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Indicates whether we should add created + shape into all necessary parent collections. + A copy of the current shape. + + + + Gets or sets the worksheet range used to fill the specified list box. + + + + + Gets or sets the worksheet range linked to the control's value. + + + + + Gets or sets selected item index of the combo box. + + + + + Gets or sets the number of list lines displayed in the drop-down portion of a combo box. + + + + + Gets type of the combo box object. + + + + + Gets or sets value indicating whether 3D shadow is present. + + + + + Gets value selected in combobox. + + + + + Gets or sets the formula associated with macro. + + + + + Get object that represents the hyperlink for the shape. + + + + + Represents the Sparkline chart. + + + + + Represents the data range of the sparkline. + + The data range. + + if the value.Rows.Length is not equal to 1. + + + + + Represents the reference range of the sparkline. + + The reference range. + + if the value.Rows.length and value.Columns.Length is not equal to 1; + + + + + Gets the column index of a sparkline. + + The column index. + + + + Gets the row index of a sparkline. + + The row index. + + + + Represents the collections of Sparkline chart group. + + + + + Clears the sparkline group. + + The sparkline group range. + This follwing is the example for Clear Method + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroups spGroups= sheet.SparklineGroups; + + //Clears the SparklineGroups from the Specified range. + spGroups.Clear(spGroups[0]); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + + Adds the SparklineGroup instance. + + The follwoing is the sample for Add method + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroups spGroups= sheet.SparklineGroups; + + //Returns the SparklineGroup instance. + ISparklineGroup spGroup= spGroups.Add(); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + SparklineGroup instance + + + + Represents the Spraklines in Sprakline chart + + + + + Adds Sparkline instance. + + + The following example demonstrates the Add method. + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups.Add(); + + //Initialize the Saprklines + ISparklines sparklines=spGroup.Add(); + + //returns the sparkline object. + ISparkline sparkline=sparklines.Add(); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + the Sprakline object + + + + Adds the sparkline. + + The data range. + The reference range. + + The following example demonstrates the Add method. + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups.Add(); + + //Initialize the Sparklines + ISparklines sparklines=spGroup.Add(); + + //Add the Sparklines data range and reference range. + sparklines.Add(sheet.Range["A1:B2"],sheet.Range["C1"]); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + Adds the sparkline. + + The data range. + The reference range. + + The following example demonstrates the Add method. + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups[0]; + + //Initialize the Sparklines + ISparklines sparklines=spGroup[0]; + + //Add the Sparklines data range and reference range. + sparklines.RefreshRanges(sheet.Range["A1:B2"],sheet.Range["C1"]); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + Adds the sparkline. + + The data range. + The reference range. + Specifies whether to plot the sparklines from the new data range by row or by column. + + The following example demonstrates the Add method. + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups.Add(); + + //Initialize the Sparklines + ISparklines sparklines=spGroup.Add(); + + //Add the Sparklines data range and reference range. + sparklines.Add(sheet.Range["A1:B2"],sheet.Range["C1"],true); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + Adds the sparkline. + + The data range. + The reference range. + Specifies whether to plot the sparklines from the refreshed data range by row or by column. + + The following example demonstrates the Add method. + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups[0]; + + //Initialize the Sparklines + ISparklines sparklines=spGroup[0]; + + //Add the Sparklines data range and reference range. + sparklines.RefreshRanges(sheet.Range["A1:B2"],sheet.Range["C1"],true); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + Clears the sparkline. + + The sparkline range. + + The following example demonstrates the Clear Method + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups.Add(); + + //Initialize the Saprklines + ISparklines sparklines=spGroup.Add(); + + //Clears the Sparkline from the specified range. + sparklines.Clear(sparklines[0] as Sparkline); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + Represents the Sparkline chart group. + + + + + Adds Sparklines instance. + + + This Example Demostrated how to Add the Sparklines + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups.Add(); + + //It returns the Sparklines object + ISparklines spLines= spGroup.Add(); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + Sparklines object + + + + Indicates whether to show the sparkline horizontal axis. The horizontal axis appears if the sparkline has data that crosses the zero axis. + + true if [display axis]; otherwise, false. + + + + Indicates whether to show data in hidden rows and columns. + + true if [display hidden RC]; otherwise, false. + + + + Indicates whether the plot data is right to left. + + true if [plot right to left]; otherwise, false. + + + + Indicates whether to highlight the first point of data in the sparkline group. + + true if [show first point]; otherwise, false. + + + + Indicates whether to highlight the last point of data in the sparkline group. + + true if [show last point]; otherwise, false. + + + + Indicates whether to highlight the lowest points of data in the sparkline group. + + true if [show low point]; otherwise, false. + + + + Indicates whether to highlight the highest points of data in the sparkline group. + + true if [show high point]; otherwise, false. + + + + Indicates whether to highlight the negative values on the sparkline group with a different color or marker. + + true if [show negative point]; otherwise, false. + + + + Indicates whether to highlight each point in each line sparkline in the sparkline group. + + true if [show markers]; otherwise, false. + If Sparklinetype is not equal to Line + + + + The VerticalAxisMaximum property represents the Vertical Axis maximum options. + + The VerticalAxisMaximum property gets/sets the m_verticalMaximum member. + + + + The VerticalAxisMinimum property represents the Vertical Axis minimum options. + + The VerticalAxisMinimum property gets/sets the m_verticalMinimum member. + + + + Indicates the sparkline type of the sparkline group. + + The SparklineType property gets/sets the m_sparklineType member. + + + + The HorizontalDateAxis property represents the horizontal axis type as Dateaxis. + + true if [horizontal date axis]; otherwise, false. + + + + Indicates how to display empty cells. + + The DisplayEmptyCellsAs property gets/sets the m_displayEmptyCellsAs data member. + + + + Represents the range that contains the date values for the sparkline data. + + The HorizontalDateAxisRange property gets/sets the m_horizontalDateAxisRange data member. + + ifis not equal to 1 + ifis not equal to 1 + ifis not true + + + + + Gets and sets the color of the horizontal axis in the sparkline group. + + The color of the axis. + + + + Gets and sets the color of the first point of data in the sparkline group. + + The first color of the point. + + + + Gets and sets the color of the highest points of data in the sparkline group. + + The color of the high point. + + + + Gets and sets the color of the last point of data in the sparkline group. + + The last color of the point. + + + + Gets and sets the line weight in each line sparkline in the sparkline group, in the unit of points. + + The line weight value should be between 0 and 1584. + if the value is not between 0 and 1584 + + + + Gets and sets the color of the lowest points of data in the sparkline group. + + The color of the low point. + + + + Gets and sets the color of points in each line sparkline in the sparkline group. + + The color of the markers. + + + + Gets and sets the color of the negative values on the sparkline group. + {get; set; } + The color of the negative point. + + + + Gets and sets the color of the sparklines in the sparkline group. + + The color of the sparkline. + + + + Represents vertical axis of the Sprakline chart. + + + + + Gets or sets the custom Value for the Vertical axis custom option. + + The custom. + If the VaerticalAxisOptions is not equal to Custom + + + + Gets or sets the vertical axis options. + + The vertical axis options. + + + + Represents the Sparline constants + + + + + Uri Attribute + + + + + Sparkline groups tag + + + + + Sparkline group tag + + + + + Sparklines tag + + + + + Sparkline tag + + + + + Color Series tag + + + + + Color negative tag + + + + + Color Axis tag + + + + + Color markers tag + + + + + Color first tag + + + + + Color last tag + + + + + Color high tag + + + + + Color low tag + + + + + Vertical maximum attribute + + + + + Vertical minimum attribute + + + + + Line weight attribute + + + + + Sparkline type attribute + + + + + Date axis attribute + + + + + Display empty cells attribute + + + + + Markers attribute + + + + + High attribute + + + + + Low attribute + + + + + First attribute + + + + + Last attribute + + + + + Negative attribute + + + + + Display axis attribute + + + + + Display hidden attribute + + + + + Vertical maximum axis type attribute + + + + + Vertical minimum axis typr attribute + + + + + Plot right to left attribute + + + + + Represents a Sparkline.The Sparkline object is a member of the Sparklines Collection. + The Sparklines collection contains all the sparkline objects in a worksheet. + + + + + + Represents the data range of the sparkline. + + The data range. + + if the value.Rows.Length is not equal to 1. + + + + + Represents the reference range of the sparkline. + + The reference range. + + if the value.Rows.length and value.Columns.Length is not equal to 1; + + + + + Gets the column index of a sparkline. + + The column index. + + + + Gets the row index of a sparkline. + + The row index. + + + + SparkLines instance. + + + + + Represents a SparklineGroup.The SparklineGroup object is a member of the + SparklineGroups collection.The SparklineGroups collection contains all + the SparklineGroup objects in a workheet. + + + + + SparklineGroup implementation + + + + + + Adds Sparklines instance. + + + This Example Demostrated how to Add the Sparklines + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups.Add(); + + //It returns the Sparklines object + ISparklines spLines= spGroup.Add(); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + Sparklines object + + + + Indicates whether to show the sparkline horizontal axis. The horizontal axis appears if the sparkline has data that crosses the zero axis. + + true if [display axis]; otherwise, false. + + + + Indicates whether to show data in hidden rows and columns. + + true if [display hidden RC]; otherwise, false. + + + + Indicates whether the plot data is right to left. + + true if [plot right to left]; otherwise, false. + + + + Indicates whether to highlight the first point of data in the sparkline group. + + true if [show first point]; otherwise, false. + + + + Indicates whether to highlight the last point of data in the sparkline group. + + true if [show last point]; otherwise, false. + + + + Indicates whether to highlight the lowest points of data in the sparkline group. + + true if [show low point]; otherwise, false. + + + + Indicates whether to highlight the highest points of data in the sparkline group. + + true if [show high point]; otherwise, false. + + + + Indicates whether to highlight the negative values on the sparkline group with a different color or marker. + + true if [show negative point]; otherwise, false. + + + + Indicates whether to highlight each point in each line sparkline in the sparkline group. + + true if [show markers]; otherwise, false. + If Sparklinetype is not equal to Line + + + + The VerticalAxisMaximum property represents the Vertical Axis maximum options. + + The VerticalAxisMaximum property gets/sets the m_verticalMaximum member. + + + + The VerticalAxisMinimum property represents the Vertical Axis minimum options. + + The VerticalAxisMinimum property gets/sets the m_verticalMinimum member. + + + + Indicates the sparkline type of the sparkline group. + + The SparklineType property gets/sets the m_sparklineType member. + + + + The HorizontalDateAxis property represents the horizontal axis type as Dateaxis. + + true if [horizontal date axis]; otherwise, false. + + + + Indicates how to display empty cells. + + The DisplayEmptyCellsAs property gets/sets the m_displayEmptyCellsAs data member. + + + + Represents the range that contains the date values for the sparkline data. + + The HorizontalDateAxisRange property gets/sets the m_horizontalDateAxisRange data member. + + ifis not equal to 1 + ifis not equal to 1 + ifis not true + + + + + Gets and sets the color of the horizontal axis in the sparkline group. + + The color of the axis. + + + + Gets and sets the color of the first point of data in the sparkline group. + + The first color of the point. + + + + Gets and sets the color of the highest points of data in the sparkline group. + + The color of the high point. + + + + Gets and sets the color of the last point of data in the sparkline group. + + The last color of the point. + + + + Gets and sets the line weight in each line sparkline in the sparkline group, in the unit of points. + + The line weight value should be between 0 and 1584. + if the value is not between 0 and 1584 + + + + Gets and sets the color of the lowest points of data in the sparkline group. + + The color of the low point. + + + + Gets and sets the color of points in each line sparkline in the sparkline group. + + The color of the markers. + + + + Gets and sets the color of the negative values on the sparkline group. + + The color of the negative point. + + + + Gets and sets the color of the sparklines in the sparkline group. + + The color of the sparkline. + + + + The SparklineGroups represents the collection of SparklineGroup objects. + + + + + Represnts the implementaion of SparklineGroups + + + + + + Clears the sparkline group. + + The sparkline group range. + This follwing is the example for Clear Method + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroups spGroups= sheet.SparklineGroups; + + //Clears the SparklineGroups from the Specified range. + spGroups.Clear(spGroups[0] as ISparklineGroup); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + + Adds the SparklineGroup instance. + + The follwoing is the sample for Add method + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroups spGroups= sheet.SparklineGroups; + + //Returns the SparklineGroup instance. + ISparklineGroup spGroup= spGroups.Add(); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + SparklineGroup instance + + + + Represents the sparklines.The Sparklines object is a member of the SparklineGroup collection. + The SparklineGroup collection contains all the Sparklines object of the worksheet. + + + + + Adds Sparkline instance. + + + The following example demonstrates the Add method. + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups.Add(); + + //Initialize the Saprklines + ISparklines sparklines=spGroup.Add(); + + //returns the sparkline object. + Sparkline sparkline=sparklines.Add(); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + the Saprkline object + + + + Adds the sparkline. + + The data range. + The reference range. + + The following example demonstrates the Add method. + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups.Add(); + + //Initialize the Sparklines + ISparklines sparklines=spGroup.Add(); + + //Add the Sparklines data range and reference range. + sparklines.Add(sheet.Range["A1:B2"],sheet.Range["C1"],true); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + Adds the sparkline. + + The data range. + The reference range. + + The following example demonstrates the Add method. + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups[0]; + + //Initialize the Sparklines + ISparklines sparklines=spGroup[0]; + + //Add the Sparklines data range and reference range. + sparklines.RefreshRanges(sheet.Range["A1:B2"],sheet.Range["C1"]); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + Adds the sparkline. + + The data range. + The reference range. + Specifies whether to plot the sparklines from the new data range by row or by column. + + The following example demonstrates the Add method. + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups.Add(); + + //Initialize the Sparklines + ISparklines sparklines=spGroup.Add(); + + //Add the Sparklines data range and reference range. + sparklines.Add(sheet.Range["A1:B2"],sheet.Range["C1"],true); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + Adds the sparkline. + + The data range. + The reference range. + + The following example demonstrates the Add method. + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups[0]; + + //Initialize the Sparklines + ISparklines sparklines=spGroup[0]; + + //Add the Sparklines data range and reference range. + sparklines.RefreshRanges(sheet.Range["A1:B2"],sheet.Range["C1"],true); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + Clears the sparkline. + + The sparkline range. + + The following example demonstrates the Clear Method + + ExcelEngine engine=new ExcelEngine(); + + IApplication app= engine.Excel; + + app.DefaultVersion= ExcelVersion.Excel2010; + + IWorkbook wkBook= app.Workbooks.Create(2); + IWorksheet sheet= wkBook.Worksheets[0]; + + ISparklineGroup spGroup= sheet.SparklineGroups.Add(); + + //Initialize the Saprklines + ISparklines sparklines=spGroup.Add(); + + //Clears the Sparkline from the specified range. + sparklines.Clear(sparklines[0] as Sparkline); + + wkBook.SaveAs("Sample.xlsx"); + wkBook.Close(); + + + + + + Updates the sparklines. + + The data range. + The reference range. + if set to true [is vertical]. + + + + Represents Sparkline Vertical Axis + + + + + Gets or sets the custom Value for the Vertical axis custom option. + + The custom. + If the VaerticalAxisOptions is not equal to Custom + + + + Gets or sets the vertical axis options. + + The vertical axis options. + + + + Represents a table on a worksheet. + + + The ListObject object is a member of the collection. The collection contains all the list objects on a worksheet. + Use the property of the to return a collection. + + + + + Updates the table's data range which is similar to refreshing table in Excel. + + + This method is only supported in Windows Forms, Windows Presentation Foundation, Web Forms and MVC platforms. + + + Following code illustrates how to refresh the table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + //Set connection description + Connection.Description = "Sample Connection"; + + // Import data to the sheet from the database + table.Refresh(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + This method is not supported in WinRT, Windows Phone, Universal, Portable and Silverlight platforms. + + + + + Gets and sets the table style name. + + + + + Gets or sets the name of the table. + + + Following code illustrates how to access Name property of the table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C6"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Get Table Name + Console.WriteLine(table1.Name); + + //Set Table Name + table1.Name = "Products"; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C6"].CellStyleName = "CurrencyFormat"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Table1 + + + + + + Gets or sets the location of the table in a worksheet. + + + The following code illustrates how table range can be set and accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C6"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Print Table Range + Console.WriteLine(table1.Location.AddressLocal.ToString()); + + //Add Data + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B7"].Number = 943.89; + worksheet["C7"].Number = 349.6; + + //Set Table Range + table1.Location = worksheet.Range["A1:C7"]; + + //Get Table Range + Console.WriteLine(table1.Location.AddressLocal.ToString()); + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //A1:C6 + //A1:C7 + + + + + + Gets collection of columns in the table. Read-only. + + + The following code illustrates how to access Columns property of the table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Total row + table1.ShowTotals = true; + table1.Columns[0].TotalsRowLabel = "Total"; + table1.Columns[1].TotalsCalculation = ExcelTotalsCalculation.Sum; + table1.Columns[2].TotalsCalculation = ExcelTotalsCalculation.Sum; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets index of the table in a worksheet. Read-only. + + + The following code illustrates how to access the index of the table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Total row + table1.ShowTotals = true; + table1.Columns[0].TotalsRowLabel = "Total"; + table1.Columns[1].TotalsCalculation = ExcelTotalsCalculation.Sum; + table1.Columns[2].TotalsCalculation = ExcelTotalsCalculation.Sum; + + //Print Table index + Console.WriteLine(table1.Index); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Gets or sets the built-in style for the table. + + + To customize the table layout built-in styles from enumeration can be applied to tables. Here for example, we + set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Total row + table1.ShowTotals = true; + table1.Columns[0].TotalsRowLabel = "Total"; + table1.Columns[1].TotalsCalculation = ExcelTotalsCalculation.Sum; + table1.Columns[2].TotalsCalculation = ExcelTotalsCalculation.Sum; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets the parent worksheet object. Read-only. + + + The following code illustrates how the parent worksheet can be accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C7"]); + + //Get parent worksheet's name + Console.WriteLine(table1.Worksheet.Name); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Sheet1 + + + + + + Gets or sets the display name for the table. + + + If the of the table is not set it will be set using the value from property. Here for example, we + get the and print it to console. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C6"]); + + //Get Table display name + Console.WriteLine(table1.DisplayName); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Table1 + + + + + + Gets number of totals rows in the table. Read-only. + + + The following code illustrates how to get the totals rows count. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Apply AutoFit + worksheet["A1:D8"].AutofitColumns(); + + //Check totals row count + Console.WriteLine(table1.TotalsRowCount); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //0 + + + + + + Gets or sets a Boolean value indicating whether the Total row is visible. + + + By default property is set to "False". To add an additional row to display the sum or average of values in the column + in the table has to be set to "True". Here for example, We enable it by setting it to "True" and show the sum of values + in second and third columns in the totals row. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Total row + table1.ShowTotals = true; + table1.Columns[0].TotalsRowLabel = "Total"; + table1.Columns[1].TotalsCalculation = ExcelTotalsCalculation.Sum; + table1.Columns[2].TotalsCalculation = ExcelTotalsCalculation.Sum; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether row stripes should be present. + + + property is set to "True" by default. This allows table to show alternate shades of color present in the + table style. Here for example, We set to "False" and set to "True" + to enable table formatting in columns only. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Set Row Column Stripe Visiblity + table1.ShowTableStyleRowStripes = false; + table1.ShowTableStyleColumnStripes = true; + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether column stripes should be present. + + + Similar to and , and + properties are used to alter first and last rows of the table. + + + By default is set to "False", So formatting is applied only to table rows. Here for example, We set + to "True" and to "False" to change the default formatting of + the table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Set Row Column Stripe Visiblity + table1.ShowTableStyleRowStripes = false; + table1.ShowTableStyleColumnStripes = true; + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether last column format is present. + + + If table's property is set, then the table's last column format can be enabled by setting "true" to + property. By default it is "false". Here for example, we set to "true" to enable the format for the last column. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Set Column Visiblity + table1.ShowFirstColumn = true; + table1.ShowLastColumn = true; + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether first column format is present. + + + If table's property is set, then the table's first column format can be enabled by setting "true" to + property. By default it is "false". Here for example, we set to "true" to enable the format for the first column. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Set Column Visiblity + table1.ShowFirstColumn = true; + table1.ShowLastColumn = true; + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether to hide/display header row. + + + The following code illustrates how to hide the header row of the table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Set Header Visiblity + table1.ShowHeaderRow = false; + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the alternative text title. + + + The following code illustrates how to set the alternative text title for the table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Set the alternative text title + table1.AlternativeText = "Title"; + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + + Gets or sets the alternative text description. + + + The following code illustrates how to set the alternative text description for the table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Set the alternative text description + table1.Summary = "Description"; + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets the query table object bound with the table. + + + Following code illustrates how to access the Query table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + //Set connection description + Connection.Description = "Sample Connection"; + + // Import data to the sheet from the database + table.Refresh(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets the type or source of the table. + + + The following code illustrates how the table type can be accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C7"]); + + //Print table type to Console + Console.WriteLine(table1.TableType.ToString()); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //worksheet + + + + + + Gets the collection in the table. Read-only. + + + The following code illustrates how collection in table can be accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + IAutoFilters filters = table1.AutoFilters; + IAutoFilter filter = filters[0]; + filter.AddTextFilter("Bon app"); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets Boolean to indicate whether the AutoFilter will be displayed. Default value is TRUE. + + + By default property is set to "true". If it is set to "false" after applying filter within table, then it clears + the filter applied. Here for example, we set a text filter within the table and set "false" to property to clear + the applied text filter. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table = worksheet.ListObjects.Create("Table", worksheet["A1:C7"]); + + //Add filter + IAutoFilters filters = table.AutoFilters; + IAutoFilter filter = filters[0]; + filter.AddTextFilter("Ernst Handel"); + + //Clear filter + table.ShowAutoFilter = false; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Name of the list object. + + + + + Location of the list object. + + + + + + + Index of the list object. + + + + + Built-in table style index. + + + + + Display name. + + + + + Parent worksheet object. + + + + + Count of rows with totals. + + + + + Indicates whether row stripes are shown. + + + + + Indicates whether column stripes are shown. + + + + + A Boolean indicating whether the totals row has ever been shown in the past for this table. + + + + + Row shift. + + + + + Custom table style name. + + + + + A Boolean indicating whether the First Columns are shown. + + + + + A Boolean indicating whether the Last Columns are shown. + + + + + A Boolean indicating whether the Header Row is shown. + + + + + Query table for External connection. + + + + + Represent the Table Type + + + + + A zero based integer index indicating which format to apply to the data area of the table + + + + + A zero based integer index indicating what border formatting to apply to the header row of the table + + + + + A zero based integer index indicating which format to apply to the header row of the table + + + + + A zero based integer index indicating what border formatting to apply to the borders of the table + + + + + A zero based integer index indicating what border formatting to apply to the totals row of the table + + + + + A zero based integer index indicating which format to apply to the totals row of the table + + + + + A Boolen indicating whether the table is modified. + + + + + Represents the filter collection + + + + + Gets or sets the alternative text title. + + + + + Gets or sets the alternative text description. + + + + + Represents the slicers present in the table + + + + + Initializes new instance of the list object. + + Name to set. + Location of the new object. + New object's index. + + + + Creates copy of the current object. + + Parent worksheet for the new object. + Dictionary with modified worksheet names. + Copy of the current object. + + + + Generates unique table name. + + Workbook to generate unique name for. + Starting name. + Unique name of the table. + + + + Splits name into two parts - string part and index part. + + Name to split. + String part. + Index part. + + + + Checks whether list object with specified name exists in the specified workbook. + + Workbook to check. + Name to check. + True if list object was found. + + + + List Object has been Refreshed. + + + + + Using Sql connection for list object has been refreshed + + Sql Server conntion + Sql query + Connection have password + + + + Get the server name from registry key + + Data source name + Database name to get + Return server name + + + + Get the server name from registry key + + Data source name + RegisterKey + Sub RegisterKey + Server name to get + Database name to get + Return server name + + + + update the format in table based on sql properties. + + Current DataTable + + + + Adds the ListObject name to workbook named ranges for enabling CalcEngine to calculate table formulas + + + + + Check for the listObject name, if available add the duplicate with list object name only + + key to be searched in name collection + the parent workbook of the name collection + + + + Updates the name of the columns in the List Object + + + + + Checks whether the name is valid for the table. + + Table name + + + + Gets the slicers present in the table + + + + + Gets or sets name of the list object. + + + + + Gets or sets list object's location. + + + + + Gets or sets location of list object's data. + + + + + Gets collection of all columns of the list object. + + + + + Gets index of the current list object. + + + + + Gets or sets the built-in table style for the specified ListObject object. + + + + + Gets parent worksheet object. + + + + + Gets or sets list object name. + + + + + Gets number of rows with totals. + + + + + Gets or sets a boolean indicating whether the totals row has ever been shown in the past for this table. + + + + + Gets or sets the alternative text title. + + + + + Gets or sets the alternative text description. + + + + + Indicates whether row stripes are shown. + + + + + Indicates whether column stripes are shown. + + + + + /// Gets or sets a table style name. + + + + + Indicate whether table is modified + + + + + /// Gets or sets a value indicating whether [show first column]. + + + + + Gets or sets a value indicating whether [show last column]. + + + + + Gets or sets a value indicating whether [show header row]. + + + + + Gets or sets a value indicating whether the Total row is visible. + + + + + Represent the Table Type + + + + + A zero based integer index indicating which format to apply to the data area of the table + + + + + A zero based integer index indicating what border formatting to apply to the header row of the table + + + + + A zero based integer index indicating which format to apply to the header row of the table + + + + + A zero based integer index indicating what border formatting to apply to the borders of the table + + + + + A zero based integer index indicating what border formatting to apply to the totals row of the table + + + + + A zero based integer index indicating which format to apply to the totals row of the table + + + + + + + Represents Table Style + + + + + Delete the table style from table styles list collection. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + tableStyle.Delete(); + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + Clone the table style and return. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + ITableStyle tableStyleClone = tableStyle.Clone(); + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + Clone the table style to add the table styles list collection and return. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + ITableStyle tableStyleDuplicate = tableStyle.Duplicate(); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Clone the table style to add the table styles list collection and return. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + string name = "Table Style 4"; + + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + ITableStyle tableStyleDuplicate= tableStyle.Duplicate(name); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets the table style name. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + string tableStyleName = tableStyles[0].Name; + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + Create the table style elements object and return. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + Name of the table style. + + + + + Create table Style Elements object. + + + + + Parent table styles. + + + + + Constructor of table style to set the table style name and parent table Styles. + + Table style name + Parent table styles + + + + Constructor of table style to set the parent table styles + + + + + + Equals the table style object. + + Table style object + True, If table style object is exist form table styles collection, otherwise False. + + + + Equals the table style name. + + Table style name + True, If table style name is equal, otherwise False. + + + + Delete the Corresponding table style from table style list collection. + + + + + Clone the table style and add the table styles list collection. + + Clone table style + + + + Clone the table style and add the table style list collection. + + Name for the table style. + Clone table style + + + + Clone the corresponding table style. + + Clone table style. + + + + Clone the corresponding table style. + + Parent table styles + Clone table style. + + + + Dispose the table style reference field. + + + + + Gets or sets the table style name. + + + + + Gets or sets the table style elements object. + + + + + Gets or sets the table styles. + + + + + Represents Table Style Element + + + + + Delete the table style element from table style elements list collection. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.LeftBorderStyle=ExcelLineStyle.Thin; + tableStyleElement.LeftBorderColor=ExcelKnownColors.Red; + tableStyleElement.BackColor=ExcelKnownColors.Blue; + tableStyleElement.Clear(); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Clone the table style element and return. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.LeftBorderStyle=ExcelLineStyle.Thin; + tableStyleElement.LeftBorderColor=ExcelKnownColors.Red; + tableStyleElement.BackColor=ExcelKnownColors.Blue; + ITableStyleElement tableStyleElementClone = tableStyleElement.Clone(); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets the table style element type from related table style element. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + ExcelTableStyleElementType tableStyleElementType= tableStyleElements[0].TableStyleElementType; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the table style element row and column strip size. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumnStripe); + tableStyleElement.BackColor = ExcelKnownColors.Blue; + tableStyleElement.StripeSize = 2; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the background color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.BackColor=ExcelKnownColors.Blue; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets and sets the back ground RGB color. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.BackColorRGB = System.Drawing.Color.FromArgb(255, 255, 0, 0); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets and sets the pattern style from table style element. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.PatternStyle=ExcelPattern.DarkVertical; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets RGB color to pattern. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.PatternStyle = ExcelPattern.DarkVertical; + tableStyleElement.PatternColorRGB = System.Drawing.Color.FromArgb(255, 255, 0, 0); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the pattern color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.PatternStyle = ExcelPattern.DarkVertical; + tableStyleElement.PatternColor = ExcelKnownColors.Green; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the Font color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.FontColor=ExcelKnownColors.Red; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets RGB color to font. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.FontColorRGB=System.Drawing.Color.FromArgb(255, 0, 0, 255); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether the font is bold. + + Default value is false. + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.Bold = true; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether the font is italic. + + Default value is false. + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.Italic = true; + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + Gets or sets the underline type from the table style element. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.Underline =ExcelUnderline.Single; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether the font is Strike. + + Default value is false. + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.StrikeThrough=true; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the Top Border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.TopBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.TopBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets RGB color to Top border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.TopBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.TopBorderColorRGB=System.Drawing.Color.FromArgb(255, 0, 255, 0); + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the Top border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.TopBorderStyle=ExcelLineStyle.Thick; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the Horizontal Border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.HorizontalBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.HorizontalBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets RGB color to horizontal border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.HorizontalBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.HorizontalBorderColorRGB=System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the Horizontal border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.HorizontalBorderStyle = ExcelLineStyle.Thick; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the Vertical Border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.VerticalBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.VerticalBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets RGB color to Vertical border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.VerticalBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.VerticalBorderColorRGB = System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the Vertical border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.VerticalBorderStyle = ExcelLineStyle.Thick; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the bottom border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.BottomBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.BottomBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets RGB color to bottom border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.BottomBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.BottomBorderColorRGB = System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the bottom border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.BottomBorderStyle=ExcelLineStyle.Thick; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the right border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.RightBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.RightBorderColor=ExcelKnownColors.Green; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets RGB color to right border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.RightBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.RightBorderColorRGB = System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the right border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.RightBorderStyle=ExcelLineStyle.Thick; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the left border color from predefined colors (). + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.LeftBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.LeftBorderColor=ExcelKnownColors.Green; + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets RGB color to left border. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.LeftBorderStyle=ExcelLineStyle.Thick; + tableStyleElement.LeftBorderColorRGB = System.Drawing.Color.FromArgb(255, 0, 255, 0); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the left border line style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.LeftBorderStyle=ExcelLineStyle.Thick; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Whole table from table style element type. + + + + + Header row from table style element type. + + + + + Total row table from table style element type. + + + + + First column from table style element type. + + + + + Last column from table style element type. + + + + + First Row Stripe from table style element type. + + + + + Second Row Stripe from table style element type. + + + + + First Column Stripe from table style element type. + + + + + Second column stripe from table style element type. + + + + + First header cell from table style element type. + + + + + Last header cell from table style element type. + + + + + First total cell from table style element type. + + + + + Last total cell from table style element type. + + + + + Gets and sets the table style element coloum and row strip size. + + + + + Represent the table style element type. + + + + + Parent table style elements + + + + + Color object that stores table style element background color. + + + + + Represent the fill pattern style. + + + + + Color object that stores table style element color. + + + + + Color object that stores table style element font color color. + + + + + Set the font style to bold or not. + + + + + Set the font style to italic or not. + + + + + Set the underline to font or not. + + + + + Set the strike through to font or not. + + + + + Color object that stores table style element top border color. + + + + + set the line style of the top border. + + + + + Color object that stores table style element bottom border color. + + + + + set the line style of the bottom border. + + + + + Color object that stores table style element right border color. + + + + + Set the line style of the right border. + + + + + Color object that stores table style element left border color. + + + + + Set the line style of the left border. + + + + + Check the top border modified or not. + + + + + Check the bottom border modified or not. + + + + + Check the left border modified or not. + + + + + Check the right border modified or not. + + + + + Check the border format present or not. + + + + + Check the font color present or not. + + + + + Check the font format present or not. + + + + + Check the fill pattern back color modified or not. + + + + + Check the pattern format present or not. + + + + + Check the pattern Color modified or not. + + + + + Store the Table style element name. + + + + + Check the vertical border modified or not + + + + + Check the Horizontal border modified or not. + + + + + Color object that stores table style element vertical border color. + + + + + Color object that stores table style element horizontal border color. + + + + + Set the vertical border line style. + + + + + Set the horizontal border line style. + + + + + Constructor of the table style element to set the table style element type and parent table style elements. + + + + + + + Constructor of the table style element to set the table style element name and parent table style elements. + + + + + + + Constructor to set the table style element to set the parent table style elements. + + + + + + Represent this method remove the table style element in table style element list. + + + + + Clone the table style element and set the parent. + + Table style elements object + Clone table style element + + + + Clone the table style element and set the parent. + + Clone table style element + + + + Dispose the table style element reference value. + + + + + Equals the table style element object. + + Table style element object + True, If two table style element is equal, Otherwise false. + + + + Equals the table style element type. + + Type of the table style element + True, If table style element type is equal, Otherwise false + + + + Initializes color objects. + + + + + Update the top border color. + + + + + Update the bottom border color + + + + + Update the back color. + + + + + Update pattern Color. + + + + + Update left border color. + + + + + Update the right border Color. + + + + + Update the font Color. + + + + + Update the border style present. + + + + + Update the font format present. + + + + + Update the pattern format present. + + + + + Update the vertical border color. + + + + + Update the horizontal border color. + + + + + Gets and sets other table style element. + + + + + Gets and sets the column and row strip size. + + + + + Gets and sets the table style elements. + + + + + Gets and sets the table style element type. + + + + + Gets or sets the pattern background color from predefined colors (). + + + + + Gets or sets the pattern background color (). + + + + + Gets or sets the fill pattern style. + + + + + Gets or sets the color (). + + + + + Gets or sets the pattern background color from predefined colors (). + + + + + Gets or sets the font color from predefined colors (). + + + + + Gets or sets the pattern background color (). + + + + + True if the bold is present font otherwise, False. + + + + + True if the italic is present font otherwise, False. + + + + + True if the underline present font otherwise, False. + + + + + True if the strike through is present font otherwise, False. + + + + + Gets or sets the top border color from predefined colors (). + + + + + Gets or sets the top border color (). + + + + + Gets and sets the top border line style. + + + + + Gets and sets the vertical border color. + + + + + Gets or sets the vertical border color (). + + + + + Gets and sets the vertical border line style. + + + + + Gets and sets the horizontal border color. + + + + + Gets or sets the Horizontal border color (). + + + + + Gets and sets the Horizontal border line style. + + + + + Gets or sets the bottom border color from predefined colors (). + + + + + Gets or sets the bottom color (). + + + + + Gets or sets the bottom border line style. + + + + + Gets or sets the top right color from predefined colors (). + + + + + Gets or sets the right border color (). + + + + + Gets or sets the right border line style. + + + + + Gets or sets the left border color from predefined colors (). + + + + + Gets or sets the left border color (). + + + + + Gets or sets the left border line style. + + + + + True if top border line style and color is modified. otherwise, False. + + + + + True if bottom border line style and color is modified. otherwise, False. + + + + + True if right border line style and color is modified. otherwise, False. + + + + + True if left border line style and color is modified. otherwise, False. + + + + + True if the table style element contains font formatting. otherwise, False. + + + + + True if the table style element contains pattern formatting. otherwise, False. + + + + + True if the table style element contains pattern format present. otherwise, Flase. + + + + + True if background color is present. otherwise, False. + + + + + True if the table style element contains border formatting. otherwise, False. + + + + + True if the table style element contains font color present. otherwise, Flase. + + + + + Gets table style element font color object. Read-only. + + + + + Gets table style element color object. Read-only. + + + + + Gets table style element back color object. Read-only. + + + + + Gets table style element top border color object. Read-only. + + + + + Gets table style element bottom border color object. Read-only. + + + + + Gets table style element horizontal border color object. Read-only. + + + + + Gets table style element vertical border color object. Read-only. + + + + + Gets table style element right border color object. Read-only. + + + + + Gets table style eleement left border color object. Read-only. + + + + + True if bottom border line style and color is modified. otherwise, False. + + + + + True if Horizontal border line style and color is modified. otherwise, False. + + + + + Represents Table Style Elements + + + + + Create the table style element object to add the table style elements list collection and return by using table style element type. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + string name = "Table Style 4"; + + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + If check the this table style element is already exist in table style element list collection to return related table style element, else this table style element is add to table style element list collection and return. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElement.BackColor=ExcelKnownColors.Blue; + ITableStyleElement tableStyleElementClone=tableStyleElement.Clone(); + + MemoryStream stream=new MemoryStream(); + workbook.SaveAs(stream); + stream.Position=0; + workbook= application.Workbooks.Open(stream); + ITableStyles tableStyles1=workbook.TableStyles; + ITableStyle tableStyle1 = tableStyles1.Add("Table Style"); + ITableStyleElements tableStyleElements1=tableStyle1.TableStyleElements; + ITableStyleElement tableStyleElement1=tableStyleElements1.Add(tableStyleElementClone); + workbook.Close(); + } + + + + + + True if table style element is exist in table style elements list collection. otherwise, False + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + bool check = tableStyleElements.Contains(tableStyleElement); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + True if table style element is exist in table style elements list collection. otherwise, False + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + bool check = tableStyleElements.Contains(ExcelTableStyleElementType.FirstColumn); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Remove the table style element from table style elements list collection by using table style element object. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElements.Remove(tableStyleElement); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Remove the table style element from table style elements list collection using index value. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + tableStyleElements.RemoveAt(0); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets the table style element from table style elements list collection by using table style element type. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements= tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.HeaderRow); + tableStyleElement.BackColor=ExcelKnownColors.Red; + ITableStyleElement tableStyleElement1 = tableStyleElements[ExcelTableStyleElementType.HeaderRow]; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets the table style element from table style elements list collection by using index value. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements= tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.HeaderRow); + tableStyleElement.BackColor=ExcelKnownColors.Red; + ITableStyleElement tableStyleElement1 = tableStyleElements[0]; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Gets the table style Element count from table style elements list collection. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.FirstColumn); + int count=tableStyleElements.Count; + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Parent table style + + + + + Constructor of the table style elements to set parent table style. + + Parent table style object + Application object + + + + Create table style object to add table style elements list collection. + + Type of the table style element + Related table style element + + + + Equals the table style element from table style elements list collection. + + Table style element object. + True, If table style element is exist from table style elements collection, Otherwise false. + + + + Add the table style element object to table style elements list collection. + + Table style element object. + + + + + Remove the corresponding table style element from table style element list collection. + + Table style Element object. + + + + Remove the corresponding table style element from table style element list collection. + + Remove the table style based on index + + + + Clone the corresponding table style elements. + + Parent of table Style object. + Clone table style elements object + + + + Dispose the table style elements reference field. + + + + + Check the table style element is exist from table style elements list collection. + + Table style element object + True, If table style element is exist from table style element list collection, Otherwise false. + + + + Check the table style element type is exist from table style elements list collection table style element. + + Type of the Table Style element + True, If table style element type is exist from table style element list collection table style element, Otherwise false + + + + Add the table style element from table style elements list collection. + + Name of the table style element + + + + + Gets the table style element count from table style elements list collection. + + + + + Gets the table style element from table style elements list collection. + + Type of the table style element + Related table style element + + + + Gets the table style element from table style elements list collection. + + Index of table style elements list collection. + Related table style element + + + + Represents Table Styles + + + + + Create table style class object to set the table style name and add the table style list Collection and return table style. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook =application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Check this table style is already exist or not. This table style was not exists from table style list collection, Add this table style to table styles list collection and return. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyleElements tableStyleElements = tableStyle.TableStyleElements; + ITableStyleElement tableStyleElement = tableStyleElements.Add(ExcelTableStyleElementType.HeaderRow); + tableStyleElement.BackColor=ExcelKnownColors.Red; + ITableStyle tableStyleClone= tableStyle.Clone(); + + MemoryStream stream = new MemoryStream(); + workbook.SaveAs(stream); + stream.Position=0; + IWorkbook workbook1 = application.Workbooks.Open(stream); + ITableStyles tableStyles1 = workbook1.TableStyles; + ITableStyle tableStyle1 = tableStyles1.Add(tableStyleClone); + + workbook.Close(); + } + + + + + + True, If tabl style is exist in table styles collection. otherwise, False. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + bool check=tableStyles.Contains(tableStyle); + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + True, If tabl style name is exist in table styles collection. otherwise, False. + + Name of the table style + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + bool check=tableStyles.Contains(name); + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + Remove the table style from table Style list Collection using table style object. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + tableStyles.Remove(tableStyle); + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + Remove the table style from table Style list Collection by using index value. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + tableStyles.RemoveAt(0); + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + Gets the table style from table style list collection by using table style name. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + ITableStyle tableStyle2=tableStyles[name]; + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + Gets the table style from table style list collection by using index value. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + ITableStyle tableStyle2=tableStyles[0]; + workbook.SaveAs("CustomTableStyle.xlsx"); + + workbook.Close(); + } + + + + + + Gets the table style count from table styles list collection. + + + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + string name = "Table Style 4"; + ITableStyles tableStyles = workbook.TableStyles; + ITableStyle tableStyle = tableStyles.Add(name); + ITableStyle tableStyle1 = tableStyles.Add("Table style 5"); + int count=tableStyles.Count; + workbook.SaveAs("CustomTableStyle.xlsx"); + workbook.Close(); + } + + + + + + Maintain the parent work book + + + + + Gets and sets the default table style. + + + + + Gets and sets the default pivot table style. + + + + + Constructor of the table styles and set the workbook impl and application + + current work book for table styles. + Application object + + + + Create table style object to add the table style list collection by using table style name. + + Name of the table style. + + + + + Remove the corresponding table style object from table styles list collection. + + Table style object + + + + Remove the corresponding table style object from table styles list collection. + + Index of the table style + + + + Add the table style object to table style list collection. + + Table style object + Related table style object + + + + True, If table style is exists from table styles list collection, Otherwise false. + + Table style object + Condition is true, return true, Otherwise false. + + + + True, If table style name is exists from table styles list collection table style, Otherwise false. + + Name of the table style + Condtion is true, return true, otherwise false. + + + + Dispose the table styles reference field. + + + + + Clone the table styles. + + Parent workbook + Application + + + + + Gets table style object from table styles list collection + + Name of the table style. + Related table style object + + + + Gets the table style object from table styles list collection. + + + + + + Get the parent work book. + + + + + Gets and sets the default table style. + + + + + Gets and sets the default pivot table style. + + + + + Gets the count of the table style from table style list collection. + + + + + Represents a column in the table. + + + + + Gets or sets the name of the column. + + + If table was created using data in worksheet then Column name will be set automatically if it is available within the range. We can get or set + column name using property. Here for example, We create table using the data in the range "C1:E7" and print + first column's name, id and index using , and + respectively to console. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Print Column Name, ID, Index + Console.WriteLine("Column Name " + table1.Columns[0].Name); + Console.WriteLine("Column ID " + table1.Columns[0].Id); + Console.WriteLine("Column Index " + table1.Columns[0].Index); + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + + + + Gets column index of current column. Read-only. + + + The following code illustrates how the index of a particular column can be accessed using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Print Column's Index + Console.WriteLine("Column Index " + table1.Columns[0].Index); + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + + + + Gets column id of current column. Read-only. + + + The following code illustrates how the of a particular column can be accessed using the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C1"].Text = "Products"; + worksheet["C2"].Text = "Alfreds Futterkiste"; + worksheet["C3"].Text = "Antonio Moreno Taqueria"; + worksheet["C4"].Text = "Around the Horn"; + worksheet["C5"].Text = "Bon app"; + worksheet["C6"].Text = "Eastern Connection"; + worksheet["C7"].Text = "Ernst Handel"; + worksheet["D1"].Text = "Qtr1"; + worksheet["D2"].Number = 744.6; + worksheet["D3"].Number = 5079.6; + worksheet["D4"].Number = 1267.5; + worksheet["D5"].Number = 1418; + worksheet["D6"].Number = 4728; + worksheet["D7"].Number = 943.89; + worksheet["E1"].Text = "Qtr2"; + worksheet["E2"].Number = 162.56; + worksheet["E3"].Number = 1249.2; + worksheet["E4"].Number = 1062.5; + worksheet["E5"].Number = 756; + worksheet["E6"].Number = 4547.92; + worksheet["E7"].Number = 349.6; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["C1:E7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Print Column ID + Console.WriteLine("Column ID " + table1.Columns[0].Id); + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["D2:E8"].CellStyleName = "CurrencyFormat"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + + + + Gets or sets the function used for totals calculation. + + + is used to set formula in the last row for the column specified. Here for example, We set + to "True" to enable totals and set for second and third columns + to get sum of values in the respective columns. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Total row + table1.ShowTotals = true; + table1.Columns[0].TotalsRowLabel = "Total"; + table1.Columns[1].TotalsCalculation = ExcelTotalsCalculation.Sum; + table1.Columns[2].TotalsCalculation = ExcelTotalsCalculation.Sum; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the label for the totals row. + + + property is used to set text in the last row of the column specfied. This will be displayed only if the + property is set to "true". Here for example, We set a string "Total" to the first column's property to indicate that + it's adjacent cell holds sum of the values of it's column. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Total row + table1.ShowTotals = true; + table1.Columns[0].TotalsRowLabel = "Total"; + table1.Columns[1].TotalsCalculation = ExcelTotalsCalculation.Sum; + table1.Columns[2].TotalsCalculation = ExcelTotalsCalculation.Sum; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the calculated formula value. + + + If we want to set a column to hold results of calculation using data from some other columns in a table then we can make use of + property. Here for example, we set a formula to third column to hold the sum of first and second column's data. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + worksheet["D1"].Text = "Sum"; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:D8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:D7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Set formula + table1.Columns[3].CalculatedFormula = "=sum([@" + table1.Columns[1].Name + "]+[@" + table1.Columns[2].Name + "])"; + + //Apply AutoFit + worksheet["A1:D8"].AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets query table field id associated with this column. Read-only. + + + If table is added using method then query is used to fetch data + for table. Here for example, We create table with data queried from MS Access DB file. The created table's field id can be accessed using + property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + //Set connection description + Connection.Description = "Sample Connection"; + + // Import data to the sheet from the database + table.Refresh(); + + //Get Query table field ID + Console.WriteLine(table.Columns[1].QueryTableFieldId); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Default regular expression options. + + + + + Indicates whether the column contains array formula + + + + + XML mapping id. + + + + + Sub-element path. + + + + + Represents Xml column unique name. + + + + + Column datatype. + + + + + Initializes new instance of the class. + + Column name. + Column index. + Parent table object. + + + + Find Column Index. + + Listobject Range. + + + + Sets Name + + + + + Set Total row function. + + Function to set. + + + + Set Total row label. + + Label to set. + + + + Set calculated formula. + + formula to set. + + + + Updated all the table formulas. + + Old cell value. + New cell value. + + + + Creates a copy of the current column. + + New parent table for the column + + + + + Adds the ListObject column name to named ranges for enabling CalcEngine to calculate table formulas + + + + + Indicate whether column name is modified + + + + + Gets or sets name of the column. + + + + + Gets column index. + + + + + Gets or sets function used for totals calculation. + + + + + Get the total cell for the column. + + + + + Get the header cell for the column. + + + + + Gets or sets ccolumn id. + + + + + Gets calculated formula value. + + + + + Calculated formula Ptgs array. + + + + + Gets parent workbook. + + + + + Gets query table field id associated with this column. + + + + + XML mapping id. + + + + + Sub-element path. + + + + + Column datatype. + + + + + Gets or sets Xml column unique name. + + + + + Indicates whether the column contains array formula + + + + + Represents collection of table in the worksheet. + + + + + Represents collection of in the worksheet. + + + + + Creates a table with specified name and its data range. Adds it to the collection. + + Represents the name of the table. + Represents the data range of the table. + Returns a with the specified name and range. + + To know more about tables refer Working with Tables + + + To create table using data from external sources method can be used. + The following code illustrates how a table can be created in a worksheet using data in the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create table + IListObject table1 = worksheet.ListObjects.Create("Table1", worksheet["A1:C7"]); + + //Apply builtin style + table1.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium9; + + //Total row + table1.ShowTotals = true; + table1.Columns[0].TotalsRowLabel = "Total"; + table1.Columns[1].TotalsCalculation = ExcelTotalsCalculation.Sum; + table1.Columns[2].TotalsCalculation = ExcelTotalsCalculation.Sum; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Creates a query table with specified connection and its source type. Adds it to the collection. + + Represents connection source type. + Represents the connection of the table. + Represents destination Range for the query table. + Returns a with the specified connections. + + To know more about importing data to table refer + Create a Table from External Connection + + + The following code illustrates how a table can be created using data from external connection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + //Set connection description + Connection.Description = "Sample Connection"; + + // Import data to the sheet from the database + table.Refresh(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Removes a table from the worksheet. + + ListObject to be removed + true if table is successfully removed; otherwise, false. + + Following code illustrates how to remove a table from the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets["Database"]; + + IListObjects listObjects = worksheet.ListObjects; + + IListObject table = listObjects[0]; + + listObjects.Remove(table); + + workbook.SaveAs("output.xlsx"); + } + + + + + + Removes a table from the worksheet at the specified index. + + Index of the ListObject to be removed + + Following code illustrates how to remove a table from the worksheet from using specified index. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets["Database"]; + + IListObjects listObjects = worksheet.ListObjects; + + listObjects.RemoveAt(0); + + workbook.SaveAs("output.xlsx"); + } + + + + + + Initializes a new instance of ListObjectCollection class. + + Sheet to which this collection belongs to. + + + + Creates a table with specified name and its data range. Adds it to the collection. + + Represents the name of the table. + Represents the data range of the table. + Returns a List object with the specified name and range. + + Following code illustrates how to create a table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx", ExcelOpenType.Automatic); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Create Table with data in the given range + IListObject table = worksheet.ListObjects.Create("Table1", worksheet["A1:C8"]); + + string fileName = "Output.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Check the list object range is overlab the another table or pivot table + + Range in which the IListObject is present. + + + + Checks whether the range is appropriate. + + + + + + + Creates copy of the current collection. + + Parent worksheet for the new collection. + Created collection. + + + + Creates a query table with specified connection and its source type. Adds it to the collection. + + Represents connection source type. + Represents the connection of the table. + Represents destination Range for the query table. + Returns a List object with the specified connections. + + Following code illustrates how to create a table with an external connections. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Database path + string dataPath = Path.GetFullPath(@"c:\company\DB\TestDB.mdb"); + + // Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=" + dataPath; + + // Adding a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + // Adding a QueryTable to sheet object + worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + // Command Text for the Connection + worksheet.ListObjects[0].QueryTable.CommandText = "Select * from tblTest"; + // The Query performs Asynchronous action + worksheet.ListObjects[0].QueryTable.BackgroundQuery = true; + // The Query Table is refreshed when the Workbook is opened + worksheet.ListObjects[0].QueryTable.RefreshOnFileOpen = true; + // Represents the connection description + Connection.Description = "Sample Connection"; + // Import data to the sheet from the database + worksheet.ListObjects[0].Refresh(); + // Auto-fits the columns + worksheet.UsedRange.AutofitColumns(); + + string fileName = "Output.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Adds the table name to the defined names in the workbook. + + Table object. + + + + Removes a table from the worksheet. + + ListObject to be removed + true if table is successfully removed; otherwise, false. + + Following code illustrates how to remove a table from the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets["Database"]; + + IListObjects listObjects = worksheet.ListObjects; + + IListObject table = listObjects[0]; + + listObjects.Remove(table); + + workbook.SaveAs("output.xlsx"); + } + + + + + + Removes a table from the worksheet at the specified index. + + Index of the ListObject to be removed + + Following code illustrates how to remove a table from the worksheet from using specified index. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets["Database"]; + + IListObjects listObjects = worksheet.ListObjects; + + listObjects.RemoveAt(0); + + workbook.SaveAs("output.xlsx"); + } + + + + + + Returns table object with the given name. Read-only. + + Name of the table. + Table object with the given name. + + + + Represents Worksheet Helper + + + + + Indicates if there is formula record. + + Worksheet to get data for. + Represents row index. + Represents column index. + Indicates whether cell contains formula record. + + + + Returns row from the collection or creates one if necessary. + + Worksheet to get row from. + Zero-based row index. + Indicates whether to create row if it doesn't exist. + Desired row object. + + + + Gets row information. + + One-based row index. + Row information. + + + + Updates FirstColumn and LastColumn indexes. + + Column that was accessed. + + + + Updates FirstRow and LastRow indexes. + + Row to access. + + + + This class is responsible for combo box parsing. + + + + + This class is responsible for vml shape and shape type parsing. + + + + + Extracts shape type settings from the reader and creates shape with default settings. + + XmlReader to get general shape settings from. + Parent worksheet for the shape. + + Shape with default settings without adding it to any collection. + + + + + Parses shape and adds it to all necessary shapes collections. + + XmlReader to get shape from. + Default shape that must be cloned to get resulting shape. + Corresponding relations collection. + Path to the parent item (item which holds all these xml tags). + + + + Saves current node into stream. + + Reader to get node from. + Stream with current node's data. + + + + Saves current node into stream. + + Reader to get node from. + Stream with current node's data. + + + + Reads node from the stream and writes it into XmlWriter. + + Writer to write node into. + Stream to get node from. + + + + Reads node from the stream and writes it into XmlWriter. + + Writer to write node into. + Stream to get node from. + + + + Parses shape's anchor. + + XmlReader to get anchor information from. + Shape to set anchor to. + + + + Splits style into properties dictionary. + + Value to split. + Dictionary with properties, key - property name, value - property value. + + + + Creates shape with default settings + + Worksheet Shape Collection + Shape with default settings + + + + Parse the Path list of the free form geometry (Custom geometry). + + XmlReader to extract data from. + Path list to add the extracted data to. + + + + Parse elements in the free form shape's path list. + + XmlReader to extract data from. + Path to set the extract data to. + + + + Parse path point information from the free form shape's path list. + + XmlReader to extract data from. + Path element list to preserve the extracted data to. + + + + Extracts shape type settings from the reader and creates shape with default settings. + + XmlReader to get general shape settings from. + Parent worksheet for the shape. + + Shape with default settings without adding it to any collection. + + + + + Parses shape and adds it to all necessary shapes collections. + + XmlReader to get shape from. + Default shape that must be cloned to get resulting shape. + Corresponding relations collection. + Path to the parent item (item which holds all these xml tags). + + + + Parses client data tag and all its internal tags. + + Reader to get necessary values from. + Shape to parse client data for. + + + + Registers shape in all necessary collections. + + Shape to register. + + + + Creates shape with default settings + + Worksheet Shape Collection + Shape with default settings + + + + Class used to parse option button in Excel 2007 xml format. + + + + + Class used to parse Textbox. + + + + + Hold the Enum shape line style and excel + line style representation + + + + + hold the enum dash style and excel + dash style representation + + + + + Adds list of Shape line style + + + + + Adds the list of shape dash style + + + + + Gradient center shadding option is parsed and serailized by the + "GradientRadial" attribute value, this is not in Enum ExcelGradientStyle + so this property hold this value temporarly + + + + + Parses shape and adds it to all necessary shapes collections. + + XmlReader to get shape from. + Default shape that must be cloned to get resulting shape. + Corresponding relations collection. + Path to the parent item (item which holds all these xml tags). + + + + Parses text box name and divisions + + Reader to get data from. + Text box to parse. + + + + Parses division element + + Reader to get data from. + Text box to parse. + + + + Extracts single formatting run (text + font) from the reader. + + Reader to get text data from. + Text box shape to put extracted data into. + + + + Checks the font element. + + The font reader. + + + + + Registers shape in all necessary collections. + + Shape to register. + + + + Parses client data tag and all its internal tags. + + Reader to get necessary values from. + Shape to parse client data for. + + + + Tries to parse unknown client data tag. + + Reader to get data from. + Shape to put data into. + + + + Extracts boolean value from the reader. When element is empty - default value is used. + + XmlReader to get value from. + Default value to use. + Value containing parsed boolean value if there is any or default one if tag is empty. + + + + This method parses fill color types + + XmlReader to parse fill color from. + TextBox to set fill color to. + relation Collection of the item + path of the item + + + + Parse the solid color + + XmlReader to parse fill color from. + TextBox to set fill color to. + + + + Parse the Graident fills One Color,Two Color and Presets + + XmlReader to parse fill color from. + TextBox to set fill color to. + + + + This method parses Texture fill attribute. + + XmlReader to extract fill color from. + TextBox to set fill color to. + relation Collection of the item + path of the item + + + + This method parses Pattern fill attribute. + + XmlReader to extract fill color from. + TextBox to set fill color to. + relation Collection of the item + path of the item + + + + This method parses Picture fill attribute. + + XmlReader to extract fill color from. + TextBox to set fill color to. + relation Collection of the item + path of the item + + + + Parse Gradient Shading, Variants and Transparency + + XmlReader to parse fill color from. + TextBox to set fill color to. + + + + Parse the border Line of the shape + + XmlReader to parse fill color from. + TextBox to set fill color to. + relation Collection of the item + path of the item + + + + Parse Pattern Line + + XmlReader to parse fill color from. + TextBox to set fill color to. + relation Collection of the item + path of the item + + + + Parses style attribute of the comment shape. + + Reader to get attribute data from. + Comment shape to set values to. + + + + Parses style properties. + + Textbox to put properties into. + String representation of the style properties + (key - property name, value - property value). + + + + Parses TextDirection property comment style property. + + TextBox to set TextRotation for. + Dictionary with comment properties. + + + + Checks whether the given color is indexed or not + + color + color representation + + + + Extract the string color to ColorObject + + color + colorobject from string + + + + Indicates whether the string is Hexadecimal or not. + + Hexadecimal string. + Returns true if the string is Hexadecimal + + + + Extract the opacity double value from string value + + opacity value in string + double value from excel opacity + + + + Removes char at the first or last of the given string + + source string + indicates whether remove char at last or first + remove character at given position + + + + Extract the Gradient Color Type + + reader to parse + enum gradient color + + + + Extract the darkness or lightness value of one color gradient + for one color2 attribute contains darkness or lightness value + + string color2 attribute value + degree double from string + + + + Extract the preset value from the resource file. + + preset in excel format + preset in Enum + + + + Extract the Pattern value from the resource file. + + + + + + + Extract the Shading Variants + + focus is an angle in string + Variant in Enum + + + + Extract the Texture Name from the title string + + Texture name in string + texture in enum + + + + Extract the Pattern Name + + Patterns color string + pattern in enum + + + + Extract Dash style from enum + + dash style to enum + dash style in enum + + + + Exctract the line style from enum + + line style to extract + line style in enum + + + + Gradient center shadding option is parsed and serailized by the + "GradientRadial" attribute value, this is not in Enum ExcelGradientStyle + so this property hold this value temporarly + + + + + Extracts shape type settings from the reader and creates shape with default settings. + + XmlReader to get general shape settings from. + Parent worksheet for the shape. + Shape with default settings without adding it to any collection + + + + Tries to parse unknown client data tag. + + Reader to get data from. + Shape to put data into. + + + + Registers shape in all necessary collections. + + Shape to register. + + + + Creates shape with default settings + + Worksheet Shape Collection + Shape with default settings + + + + This class is used for vml form controls parsing. + + + + + Dictionary of all found shape types. Key - shape type id, value - shape type stream. + + + + + Dictinary with all supported shape parsers. Key - shape type, Value - shape parser to parse shape. + + + + + Initializes static members. + + + + + Extracts shape type settings from the reader and creates shape with default settings. + + XmlReader to get general shape settings from. + Parent worksheet for the shape. + + Shape with default settings without adding it to any collection. + + + + + Parses shape and adds it to all necessary shapes collections. + + XmlReader to get shape from. + Default shape that must be cloned to get resulting shape. + Corresponding relations collection. + Path to the parent item (item which holds all these xml tags). + + + + Creates shape with default settings + + Worksheet Shape Collection + Shape with default settings + + + + This class is responsible for table parsing. + + + + + Extracts specified list object from XmlReader. + + XmlReader to get table from. + Worksheet to put extracted table into. + + + + Extracts extension list from the table. + + XmlReader to get data from. + Table to put extracted data into. + + + + Extracts extension from the table. + + XmlReader to get data from. + Table to put extracted data into. + + + + Extracts autofilter part of the table. + + XmlReader to get data from. + Table to put extracted data into. + + + + Extracts table style settings. + + XmlReader to get style settings from. + Table to put extracted style settings into. + + + + Extracts all columns of the table. + + XmlReader to get columns data from. + List with columns to serializes. + + + + Extracts single column. + + XmlReader to get data from. + Columns collection to put extracted column into. + Extracted column. + + + + Get XmlMapping properties from the table column. + + XML reader. + Table column object. + + + + Extracts single query field. + + XmlReader to get data from + Table column to which the query field is bound with + Query table associated with the query field + + + + + Represents the TextSettings + + + + + Font name. + + + + + Underline style. + + + + + Font size. + + + + + Value indicating whether font is bold. + + + + + Value indicating whether text + + + + + Value indicating whether text is striked. + + + + + Language used to display text. + + + + + Font color. + + + + + Represents the baseline properties + default -1, it was non negative on chart style + + + + + Has Latin + + + + + Has Complex Scripts + + + + + Has East and Asian Font + + + + + Actual Font + + + + + Show Title Bold + + + + + Specifies the minimum font size at which character kerning occurs for this text run. + default -1, it was non negative on chart style + + + + + Specifies the spacing between characters within a text run. + default -1, it was non negative + + + + + Represents File Version + + + + + Application Name + + + + + Build Version + + + + + Last Edited + + + + + Lowest Edited + + + + + Code Name + + + + + This class is responsible for combo box serialization in Excel 2007 format. + + + + + This method serializes specified shape into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + This method serializes general shape settings (shape type) into specified XmlWriter. + + XmlWriter to write shape type into. + Type of the shape that is going to be serialized. + + + + Serializes client data. + + XmlWriter to serialize data into. + Shape to serialize client data for. + + + + Class used for serializing Option button. + + + + + Class used for serializing text box. + + + + + Default shape style constant. + + + + + This method serializes general shape settings (shape type) into specified XmlWriter. + + XmlWriter to write shape type into. + Type of the shape that is going to be serialized. + + + + Serializes subnodes of the shapetype description. + + Writer to serialize into. + + + + This method serializes specified shape into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + Serializes attributes of the shape tag if necessary. + + XmlWriter to serialize into. + Shape to serialize for. + + + + Serializes subnodes of the shape tag. + + XmlWriter to serialize into. + Shape to serialize for. + + + + Serializes shadow settings. + + XmlWriter to serialize into. + Shape to serialize for. + + + + Serialize internal part of the div object. + + XmlWriter to serialize into. + Shape to serialize. + + + + Serializes style attribute for the text box shape. + + Writer to serialize into. + Shape to serialize style attribute for. + + + + Serializes shape's style. + + XmlWriter to serialize into. + Shape to serialize style for. + + + + Adds required style properties to the list in the format 'name':'value'. + + List to add properties to. + Shape to prepare styles for. + + + + Serialize client Additional Data + + XmlWriter to serialize into. + Shape to serialize style for. + + + + Gets instance of the shape object. Read-only. + + + + + Gets string representation of the shape type. Read-only. + + + + + Serializes additional tag into ClientData tag. + + XmlWriter to serialize into. + Shape to serialize for. + + + + Serialize internal part of the div object. + + XmlWriter to serialize into. + Shape to serialize. + + + + Serializes subnodes of the shapetype description. + + Writer to serialize into. + + + + + + XmlWriter to serialize fill color from. + shae to set fill color to. + relation Collection of the item + path of the item + + + + Returns instance number of supported shape object. Read-only. + + + + + Returns string representation of the shape type. Read-only. + + + + + Vml Bitmap Serializator + + + + + This class is responsible for header/footer image serialization. + + + + + Collection of picture item along with its BlipID. + + + + + Initializes a new instance of HFimageSerializator Class. + + + + + Removes all the items of the dictionary. + + + + + String that formulas for HF images. + + + + + This method serializes specified shape into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + Gets width of the shape. + + + + + + + Gets height of the shape. + + + + + + + This method serializes general shape settings (shape type) into specified XmlWriter. + + XmlWriter to write shape type into. + Type of the shape that is going to be serialized. + + + + Serializes imageData xml tag. + + XmlWriter to serialize into. + Shape to get data to serialize from. + Parent worksheet data holder. + + + + This method is used to serialize picture item. + + Shape to serialize. + String value containing relation id. + Parent worksheet data holder. + Relation id for the serialized shape + + + + This method is used to serialize picture item. + + Shape to serialize. + String value containing relation id. + Parent worksheet data holder. + Relation id for the serialized shape + + + + Serialize + + + + + + + + + Serialize Additional Client Data + + + + + + + This method is used to serialize picture item. + + Shape to serialize. + String value containing relation id. + Parent worksheet data holder. + Relation id for the serialized shape + + + + Contains dictionary with supported serializator types. + + + + + + + + Type of the shape that is going to be serialized. + + + + This class is responsible for table object serialization in Excel 2007 xml format. + + + + + Serializes specified list object inside XmlWriter. + + XmlWriter to serialize into. + Table to serialize. + + + + Serializes the table extension list. + + XmlWriter to serialize into. + Table to serialize. + + + + Serializes autofilter part of the table. + + XmlWriter to serialize into. + Table to serialize. + + + + Serializes table style settings. + + XmlWriter to serialize style settings into. + Table to serializes style settings for. + + + + Serializes all columns of the table. + + XmlWriter to serialize into. + List with columns to serializes. + + + + Serializes single column. + + XmlWriter to serializes into. + Column to serialize. + + + + This class contains unique pair of shape instance and shape type. + + + + + Represents internal worksheet object. It can be internal or external. + + + + + Represents a worksheet in a workbook. + + + + + Represents worksheet and chartsheet tab in Excel. + + + + + Activates the sheet which is equivalent to clicking the sheet's tab. + + + Following code illustrates how to activate a sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + ITabSheet sheet = workbook.Worksheets[1]; + + // Activates the sheet + sheet.Activate(); + + workbook.SaveAs("Activate.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Selects the tab sheet. + + + Following code illustrates how to select the sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + ITabSheet sheet = workbook.Worksheets[1]; + + // Selects the sheet + sheet.Select(); + + workbook.SaveAs("Select.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Removes the selection from the sheet. + + + Following code illustrates how to remove the selection from the sheet + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + ITabSheet sheet = workbook.Worksheets[1]; + + // Removes the selection from the sheet. + sheet.Unselect(); + + workbook.SaveAs("Unselect.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Protects a sheet with specified password so that it cannot be modified. + + Represents a password to protect with. + + Following code illustrates how to protect the sheet + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + ITabSheet sheet = workbook.Worksheets[0]; + + // Protect the sheet + sheet.Protect("Syncfusion"); + + workbook.SaveAs("Protect.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Protects a sheet with specified password and so that it cannot be modified. + + Represents a password to protect. + Represents sheet protection option. + + Following code illustrates how to protect the sheet with Excel sheet protection option. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + ITabSheet sheet = workbook.Worksheets[0]; + + // Protect the sheet + sheet.Protect("Syncfusion"); + + workbook.SaveAs("Protect.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Removes protection from a sheet. This method has no effect if the sheet or workbook isn't protected. + + Password to unprotect. + + Following code illustrates how to remove the protection from the sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + ITabSheet sheet = workbook.Worksheets[0]; + + // Unprotect the sheet + sheet.Unprotect("Syncfusion"); + + workbook.SaveAs("UnProtect.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the tab color of the sheet. + + + + + Gets or sets the tab color RGB of the sheet. + + + + + Gets a charts collection in the sheet. Read-only. + + + + + Gets the collection in the sheet. Read-only. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add picture + worksheet.Pictures.AddPicture("Image.png"); + + //Get picture + IPictureShape picture = worksheet.Pictures[0]; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets the parent workbook of the sheet. Read-only. + + + + + Gets the collection in the sheet. Read-only. + + + The following code illustrates how to access the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shapes + worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 5, 5, 40, 100); + + //Check count + Console.Write(worksheet.Shapes.Count); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Gets or sets a Boolean value indicating whether sheet is displayed right to left. + + + + + Gets a Boolean value indicating whether tab of the sheet is selected. Read-only. + + + + + Gets the index number of the sheet within the tabsheets collection. Read-only. + + + + + Gets or sets the name of the sheet. + + + + + Gets or sets the control visibility of sheet to end user. + + + + + Gets a collection with all inside the sheet. Read-only. + + + The following code illustrates how to access collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBoxShape textbox1 = worksheet.TextBoxes.AddTextBox(1, 1, 20, 100); + ITextBoxShape textbox2 = worksheet.TextBoxes.AddTextBox(5, 5, 20, 100); + + //Set name + textbox1.Name = "TextBox1"; + textbox2.Name = "TextBox2"; + + //Get count + Console.Write(worksheet.TextBoxes.Count); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Gets the collection with all inside the sheet. Read-only. + + + The following code illustrates how to access collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + worksheet.CheckBoxes.AddCheckBox(1, 1, 20, 100); + worksheet.CheckBoxes.AddCheckBox(5, 5, 20, 100); + + //Check count + Console.Write(worksheet.CheckBoxes.Count); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Gets the collection with all inside the sheet. Read-only. + + + The following code illustrates how to access the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option button + worksheet.OptionButtons.AddOptionButton(1, 1, 20, 100); + worksheet.OptionButtons.AddOptionButton(5, 5, 20, 100); + + //Get count + Console.Write(worksheet.OptionButtons.Count); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Gets the collection with all inside the sheet. Read-only. + + + The following code illustrates how to access the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + IComboBoxShape combobox1 = worksheet.ComboBoxes.AddComboBox(1, 1, 20, 100); + IComboBoxShape combobox2 = worksheet.ComboBoxes.AddComboBox(5, 5, 20, 100); + + //Get count + Console.Write(worksheet.ComboBoxes.Count); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Gets the name used by macros to access workbook items. Read-only. + + + + + Gets a Boolean value indicating whether content in the sheet is protected. Read-only. + + + + + Gets a Boolean value indicating whether drawing objects in the sheet is protected. Read-only. + + + + + Gets a Boolean value indicating whether scenarios in the sheet is protected. Read-only. + + + + + Gets protected options. Read-only. For sets protection options use "Protect" method. + + + + + Gets a Boolean value indicating whether sheet is protected with a password. Read-only. + + + + + Gets or sets the value that represents zoom factor of document. Value must be in range from 10 till 400. + + + + + Enables the calculation support. + + Enabling this method will initialize objects and retrieves calculated values of formulas in a worksheet. + + The following code illustrates how to enable the sheet calculation. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.EnableSheetCalculations(); + + + + + + Disables the calculation support in this workbook and disposes of the associative objects. + + The following code illustrates how to disable the sheet calculation. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.DisableSheetCalculations(); + + + + + + Copies worksheet data to the clipboard. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Clears the worksheet data, formats and merged cells. + + + + + Clears the worksheet data. + + + + + Checks whether the specified cell is initialized or accessed. + + One-based row index. + One-based column index. + True if the cell is initialized or accessed by the user; otherwise, False. + The following code illustrates if the specified cells contains a value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["A1"].Text = "Hello"; + worksheet.Contains(1, 1); + workbook.Version = ExcelVersion.Excel2013; + workbook.SaveAs("Output.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Creates a new instance of the . + + New instance of ranges collection. + The following code illustrates how to creates a RangeCollection. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Range["B3"].Number = 53.75; + worksheet.Range["B4"].Number = 52.85; + worksheet.Range["B5"].Number = 59.77; + worksheet.Range["B6"].Number = 96.15; + worksheet.Range["F1"].Number = 26.72; + worksheet.Range["F2"].Number = 33.71; + IRanges rangesOne = worksheet.CreateRangesCollection(); + rangesOne.Add(worksheet.Range["B3:B6"]); + rangesOne.Add(worksheet.Range["F1:F2"]); + + + + + + Creates a named ranges with the specified named range's value as a name for the specified range. + + Existing named ranged. + Address of the named range to be created. + True if the named range values are vertically placed in the sheet. + This method is used to access the discontinuous ranges. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + IName name = sheet.Names.Add("B1name",sheet["B1:D1"]); + sheet["B1"].Value = "B2name"; + sheet["C1"].Value = "C2name"; + sheet["D1"].Value = "D2name"; + sheet.CreateNamedRanges("B1name", "B2:D2", true); + + + + + + Create an instance of that can be used for template markers processing. + + Object that can be used for template markers processing. + + + + Returns True if the specified column is visible to end user. + + One-based column index. + True if column is visible; otherwise, False. + + + + Shows the specified column. + + Index at which the column should be hidden. + True - Column is visible; False - hidden. + + + + Hides the specified column. + + One-based column index. + + + + Hides the specified row. + + One-based row index. + + + + Returns True if the specified row is visible to end user. + + One-based row index. + True if row is visible; otherwise, False. + + + + Shows or Hides the specified row. + + Index at which the row should be hidden. + True - Row is visible; False - hidden. + + + + Shows or Hides the specified range. + + Range specifies the particular range to show / hide. + True - Row is visible; False - hidden. + + + + Shows or Hides the collection of range. + + Ranges specifies the range collection. + True - Row is visible; False - hidden. + + + + Shows or Hides an array of range. + + Ranges specifies the range array. + True - Row is visible; False - hidden. + + + + Inserts an empty row in the specified row index. + + Index at which new row should be inserted. + + + + Inserts an empty rows in the specified row index based on row count. + + Index at which new row should be inserted. + Number of rows to insert. + + + + Inserts an empty row in the specified row index with specified based on row count. + + Index at which new row should be inserted. + Number of rows to insert. + Insert options. + + + + Inserts an empty column for the specified column index. + + Index at which new column should be inserted. + + + + Inserts an empty column in the specified column index based on column count. + + Index at which new column should be inserted. + Number of columns to insert. + + + + Inserts an empty column in the specified column index with specified based on column count. + + Index at which new column should be inserted. + Number of columns to insert. + Insert options. + + + + Removes the specified row. + + One-based row index. + + + + Removes the specified number of rows from the given index. + + One-based row index. + Number of rows. + + + + Removes the specified column. + + One-based column index. + + + + Removes the specified number of columns from the given index. + + One-based column index. + Number of columns to remove. + + + + Imports an array of into a worksheet with specified alignment. + + + To know more about ImportArray refer this link + + Array of object. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + The following code illustrates how to Imports an array of into a worksheet with specified alignment. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize the Object Array + object[] array = new object[4] { "Total Income", "Actual Expense", "Expected Expenses", "Profit" }; + + //Import the Object Array to Sheet + worksheet.ImportArray(array, 1, 1, true); + + workbook.SaveAs("ImportArray.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports an array of values into a worksheet. + + + To know more about ImportArray refer this link + + Array of string value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + The following code illustrates how to Imports an array of values into a worksheet with the specified row and column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize the string Array + string[] arrayString = new string[4] { "Total Income", "Actual Expense", "Expected Expenses", "Profit" }; + + //Import the string Array to Sheet + worksheet.ImportArray(arrayString, 1, 1, true); + + workbook.SaveAs("ImportArray.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports an array of integer values into a worksheet. + + + To know more about ImportArray refer this link + + Array of int value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + The following code illustrates how to Imports an array of integer values into a worksheet with the specified row and column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize the integer Array + int[] arrayInt = new int[4] {1000, 2000, 3000, 4000}; + + //Import the integer Array to Sheet + worksheet.ImportArray(arrayInt, 1, 1, true); + + workbook.SaveAs("ImportArray.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports an array of values into a worksheet. + + + To know more about ImportArray refer this link + + Array of double value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + The following code illustrates how to Imports an array of values into a worksheet with the specified row and column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize the double Array + double[] arrayDouble = new double[4] { 344.0045, 345.0045, 346.0045, 347.0045 }; + + //Import the double Array to Sheet + worksheet.ImportArray(arrayDouble, 1, 1, true); + + workbook.SaveAs("ImportArray.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports an array of values into a worksheet. + + + To know more about ImportArray refer this link + + Array of datetime value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + The following code illustrates how to Imports an array of values into a worksheet with the specified row and column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize the DateTime Array + DateTime[] arrayDate = new DateTime[4] { DateTime.Parse("06:45"), DateTime.Parse("08:30"), DateTime.Parse("09:40"), DateTime.Parse("10:30") }; + + //Import the DateTime Array to Sheet + worksheet.ImportArray(arrayDate, 1, 1, true); + + workbook.SaveAs("ImportArray.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports data from a two-dimensional array of into a worksheet. + + + To know more about ImportArray refer this link + + Two-dimensional array of object. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + Number of imported rows. + The following code illustrates how to Imports a two-dimensional array of into a worksheet with the specified row and column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize the Object Array + object[,] arrayTwoDimen = new object[3, 2] { { "AND", "OR" }, { "NAND", "XOR" },{ "NOR", "NOT" } }; + + //Import the Object Array to Sheet + worksheet.ImportArray(arrayTwoDimen, 1, 1); + + workbook.SaveAs("ImportArray.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports data from class objects into a worksheet with specified row and column. + + IEnumerable objects with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if class properties names must be imported. FALSE otherwise. + Number of imported rows. + To know more about ImportData refer this link + The following code illustrates how to Imports data from class objects into a worksheet with the specified row and column. + + using Syncfusion.XlsIO; + using System.Collections.Generic; + + class Example + { + static void Main() + { + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //The list of data is get from GetSalesReports method. Here GetSalesReports and Report are sample method and sample class. + IList<Report> reports = GetSalesReports(); + + //Import the data to worksheet + worksheet.ImportData(reports, 2, 1, false); + + workbook.SaveAs("ImportFromDT.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + public static List<Report> GetSalesReports() + { + List<Report> reports = new List<Report>(); + reports.Add(new Report("Andy Bernard", "45000", "58000")); + reports.Add(new Report("Jim Halpert", "34000", "65000")); + reports.Add(new Report("Karen Fillippelli", "75000", "64000")); + reports.Add(new Report("Phyllis Lapin", "56500", "33600" )); + reports.Add(new Report("Stanley Hudson", "46500", "52000")); + return reports; + } + } + public class Report + { + public string SalesPerson { get; set; } + public string SalesJanJun { get; set; } + public string SalesJulDec { get; set; } + + public Report(string name, string janToJun, string julToDec) + { + SalesPerson = name; + SalesJanJun = janToJun; + SalesJulDec = julToDec; + } + } + + + + + + Imports data from class objects into a worksheet with specified row and column along with import data options. + + IEnumerable object with desired data. + Import data options for when importing nested collection data. + Number of imported rows. + To know more about ImportData refer this link + The following code illustrates how to Imports data from class objects into a worksheet with the specified row and column. + + using Syncfusion.XlsIO; + using System.Collections.Generic; + + class Example + { + static void Main() + { + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //The list of data is get from GetFamilyDataList method. Here GetFamilyDataList and Family are sample method and sample class. + IList<Family> families = GetFamilyDataList(); + + //Import the data to worksheet + ExcelImportDataOptions importDataOptions = new ExcelImportDataOptions(); + importDataOptions.FirstRow = 1; + importDataOptions.FirstColumn = 1; + importDataOptions.IncludeHeader = true; + importDataOptions.IncludeHeaderParent = true; + importDataOptions.NestedDataLayoutOptions = ExcelNestedDataLayoutOptions.Merge; + importDataOptions.NestedDataGroupOptions = ExcelNestedDataGroupOptions.Collapse; + importDataOptions.CollapseLevel = 2; + + worksheet.ImportData(families, importDataOptions); + + workbook.SaveAs("ImportNestedData.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + private static IList<Family> GetFamilyDataList() + { + List<Family> list = new List<Family>(); + + // Create an object for the Husband class + Family f1 = new Family("Thomas Hardy", 50, "Catherine Dewey", 48); + + f1.Children = new List<Child>(); + f1.Children.Add(new Child("Thomas Anderson", 24)); + f1.Children.Add(new Child("Rachel Dawes", 18)); + f1.Children.Add(new Child("Dom Cobb", 25)); + + // Create another object for the Husband class + Family f2 = new Family("Philip Cramer", 54, "Maria Larsson", 50); + + f2.Children = new List<Child>(); + f2.Children.Add(new Child("Bernadette Maryann", 26)); + f2.Children.Add(new Child("Zack Johnson", 23)); + f2.Children.Add(new Child("Sheldon Cooper", 25)); + + list.Add(f1); + list.Add(f2); + return list; + } + } + + public class Family + { + private String m_HusbandName; + public String HusbandName + { + get { return m_HusbandName; } + set { m_HusbandName = value; } + } + private int m_HusbandAge; + public int HusbandAge + { + get { return m_HusbandAge; } + set { m_HusbandAge = value; } + } + private List<Child> m_Children; + public List<Child> Children + { + get { return m_Children; } + set { m_Children = value; } + } + + private string m_WifeName; + public string WifeName + { + get { return m_WifeName; } + set { m_WifeName = value; } + } + + private int m_WifeAge; + public int WifeAge + { + get { return m_WifeAge; } + set { m_WifeAge = value; } + } + public Family(string husbandName, int husbandAge, string wifeName, int wifeAge) + { + m_HusbandName = husbandName; + m_HusbandAge = husbandAge; + m_WifeName = wifeName; + m_WifeAge = wifeAge; + } + } + public class Child + { + private string m_name; + public string Name + { + get { return m_name; } + set { m_name = value; } + } + private int m_age; + public int Age + { + get { return m_age; } + set { m_age = value; } + } + public Child(string name, int age) + { + this.m_name = name; + this.m_age = age; + } + } + + + + + + Imports data from a into a worksheet. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataColumn refer this link + + DataColumn with desired data. + TRUE if column name must be imported. FALSE - Not imported. + First row from where the data should be imported. + First column from where the data should be imported. + Number of imported rows. + The following code illustrates how to Imports data from a into a worksheet with the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + System.Data.DataTable table = SampleDataTable(); + System.Data.DataColumn column = table.Columns[2]; + worksheet.ImportDataColumn(column, true, 1, 1); + workbook.SaveAs("ImportFromDC.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from a into a worksheet. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataColumn refer this link + + DataColumn with desired data. + TRUE if column name must be imported. FALSE - Not imported. + First row from where the data should be imported. + First column from where the data should be imported. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + The following code illustrates how to Imports data from a into a worksheet with the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + System.Data.DataTable table = SampleDataTable(); + System.Data.DataColumn column = table.Columns[2]; + worksheet.ImportDataColumn(column, true, 1, 1); + workbook.SaveAs("ImportFromDC.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from Microsoft into worksheet. + + + This method is only supported in Windows Form platform. + To know more about ImportDataGrid refer this link + + DataGrid with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + The following code illustrates how to Imports data from Microsoft into worksheet with the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataGrid control + System.Windows.Forms.DataGrid dataGrid = new System.Windows.Forms.DataGrid(); + dataGrid.DataSource = GetDataTable(); + + //Import data from DataGrid control + worksheet.ImportDataGrid(dataGrid, 1, 1, true, true); + + workbook.SaveAs("ImportDataGrid.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable GetDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from Microsoft into worksheet. + + + This method is supported in ASP.NET Web Forms only. + To know more about ImportDataGrid refer this link + + DataGrid with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + The following code illustrates how to Imports data from MS into worksheet with the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to the DataSource of DataGrid web control + System.Windows.Forms.DataGrid dataGrid = new System.Windows.Forms.DataGrid(); + dataGrid.DataSource = GetDataTable(); + dataGrid.DataBind(); + + //Import data from DataGrid control + worksheet.ImportDataGrid(dataGrid, 1, 1, true, true); + + workbook.SaveAs("ImportDataGrid.xlsx", ExcelSaveType.SaveAsXLS, Response, ExcelDownloadType.PromptDialog); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable GetDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from Microsoft into worksheet. + + + This method is supported in ASP.NET Web Forms only. + To know more about ImportDataGrid refer this link + + GridView with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + The following code illustrates how to Imports data from MS into worksheet with the specified row and column. + + using Syncfusion.XlsIO; + using System; + using System.Data; + + public partial class Sample : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + GridView(); + } + + public void GridView() + { + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to the DataSource of GridView web control + gridView.DataSource = GetDataTable(); + gridView.DataBind(); + + //Import data from DataGrid control + worksheet.ImportGridView(gridView, 1, 1, true,true); + + workbook.SaveAs("ImportGridView.xlsx", ExcelSaveType.SaveAsXLS, Response, ExcelDownloadType.PromptDialog); + workbook.Close(); + excelEngine.Dispose(); + } + + static DataTable GetDataTable() + { + // Here we create a three columns + DataTable table = new DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + } + + + + + + Imports data from Microsoft into worksheet. + + + This method is only supported in Windows Form platform. + To know more about ImportDataGridView refer this link + + DataGridView with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + The following code illustrates how to Imports data from Microsoft into worksheet with the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataGridView control + System.Windows.Forms.DataGridView dataGridView = new System.Windows.Forms.DataGridView(); + + //Get the data from GetDataTable method. + dataGridView.DataSource = GetDataTable(); + + //Import data from DataGridView control + worksheet.ImportDataGridView(dataGridView, 1, 1, true, true); + + workbook.SaveAs("ImportDataGridView.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable GetDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from a into a worksheet with specified row and column. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward.. + To know more about ImportDataTable refer this link + + DataTable with desired data. + TRUE if column names must be imported. FALSE otherwise. + First row from where the data should be imported. + First column from where the data should be imported. + Number of imported rows. + The following code illustrates how to Imports data from a into a worksheet with specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Import data from DataTable + worksheet.ImportDataTable(table, true, 1, 1); + + workbook.SaveAs("ImportDataTable.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from a into a worksheet with the specified row and column along with save option. + + + We request you to use this method to improve performance and reduce memory consumption while dealing with large data. + To know more about ImportDataTable refer this link. + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + + Data Table with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data table must be serialized directly on save. + Number of imported rows. + The following code illustrates how to Imports data from a into a worksheet with the specified row and column along with save option. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Import data from DataTable + worksheet.ImportDataTable(table, 1, 1, true); + + workbook.SaveAs("ImportDataTable.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from a into a worksheet with the specified row and column along with save option. + + + We request you to use this method to improve performance and reduce memory consumption while dealing with large data. + To know more about ImportDataTable refer this link. + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + + Data Table with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data table must be serialized directly on save. + TRUE if column names must be imported. + Number of imported rows. + The following code illustrates how to Imports data from a into a worksheet with the specified row and column along with save option. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Import data from DataTable + worksheet.ImportDataTable(table, 1, 1, true, true); + + workbook.SaveAs("ImportDataTable.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from a into a worksheet with specified row and column along with the preserve type. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataTable refer this link + + DataTable with desired data. + True if column names must be imported. FALSE otherwise. + First row from where the data should be imported. + First column from where the data should be imported. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + The following code illustrates how to Imports data from a into a worksheet with specified row and column along with the preserve type. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Import data from DataTable + worksheet.ImportDataTable(table, true, 1, 1, true); + + workbook.SaveAs("ImportDataTable.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from a into a worksheet with the specified range. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataTable refer this link + + DataTable with desired data. + True if column names must be imported. FALSE otherwise. + First row from where the data should be imported. + First column from where the data should be imported. + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + The following code illustrates how to Imports data from a into a worksheet with the specified range. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Import data from DataTable + worksheet.ImportDataTable(table, true, 1, 1, 5, 2); + + workbook.SaveAs("ImportDataTable.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add Ten DataRows. + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + table.Rows.Add(5, "Snacks", "Andrew"); + table.Rows.Add(6, "Perfume", "Thomos"); + table.Rows.Add(7, "Biscuit", "Stephen"); + table.Rows.Add(8, "Cake", "Jones"); + table.Rows.Add(9, "Fruit", "Yabes"); + table.Rows.Add(10, "vegetable", "Marsion"); + return table; + } + + + + + + Imports data from a into a worksheet with specified range along with preserve type. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataTable refer this link + + DataTable with desired data. + True if column names must be imported. FALSE otherwise. + First row from where the data should be imported. + First column from where the data should be imported. + Maximum number of rows to import. + Maximum number of columns to import. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + The following code illustrates how to Imports data from a into a worksheet with specified range along with preserve type. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Import data from DataTable + worksheet.ImportDataTable(table, true, 1, 1, 5, 2 , true); + + workbook.SaveAs("ImportDataTable.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add Ten DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + table.Rows.Add(5, "Snacks", "Andrew"); + table.Rows.Add(6, "Perfume", "Thomos"); + table.Rows.Add(7, "Biscuit", "Stephen"); + table.Rows.Add(8, "Cake", "Jones"); + table.Rows.Add(9, "Fruit", "Yabes"); + table.Rows.Add(10, "vegetable", "Marsion"); + return table; + } + + + + + + Imports data from into the specified named range of current worksheet. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataTable refer this link + + Data Table with desired data. + + Represents named range . Bounds of data table should not greatfull than bounds of named range. + i.e., Example NamedRange["A1:F6"] have a 6 Rows and 6 Columns. Also we should have DataTable rows and columns also same or less than named range. + + TRUE if column names must be imported. FALSE otherwise. + Number of imported rows. + The following code illustrates how to Imports data from into a worksheet with specified named range. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize named range + IName namedRange = worksheet.Names.Add("SampleInfo"); + namedRange.RefersToRange = worksheet.Range["A1:F6"]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Import data from DataTable + worksheet.ImportDataTable(table, namedRange, true); + + workbook.SaveAs("ImportDataTable.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from into the specified named range of current worksheet with row and column offset. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataTable refer this link + + Data Table with desired data. + + Represents named range . Bounds of data table should not greatfull than bounds of named range. + i.e., Example NamedRange["A1:F6"] have a 6 Rows and 6 Columns. Also we should have DataTable rows and columns also same or lessthan named range. + + TRUE if column names must also be imported. FALSE otherwise. + Represents row offset into named range to import. + Represents column offset into named range to import. + Number of imported rows. + The following code illustrates how to Imports data from into the specified named range of current worksheet with row and column offset. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize named range + IName namedRange = worksheet.Names.Add("SampleInfo"); + namedRange.RefersToRange = worksheet.Range["A1:F6"]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Import data from DataTable + worksheet.ImportDataTable(table, namedRange, true, 1, 3); + + workbook.SaveAs("ImportDataTable.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from into the specified named range of current worksheet with row and column offset. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataTable refer this link + + DataTable with desired data. + + Represents named range using enumeration. Bounds of data table should not greatfull than bounds of named range. + i.e., Example NamedRange["A1:F6"] have a 6 Rows and 6 Columns. Also we should have DataTable rows and columns also same or lessthan named range. + + TRUE if column names must be imported. FALSE otherwise. + Represents row offset into named range to import. + Represents column offset into named range to import. + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + The following code illustrates how to Imports data from into the specified named range of current worksheet with row and column offset also with maximum rows and columns. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize named range + IName namedRange = worksheet.Names.Add("SampleInfo"); + namedRange.RefersToRange = worksheet.Range["A1:F16"]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Import data from DataTable + worksheet.ImportDataTable(table, namedRange, true, 1, 1, 5, 2); + + workbook.SaveAs("ImportDataTable.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add Ten DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + table.Rows.Add(5, "Snacks", "Andrew"); + table.Rows.Add(6, "Perfume", "Thomos"); + table.Rows.Add(7, "Biscuit", "Stephen"); + table.Rows.Add(8, "Cake", "Jones"); + table.Rows.Add(9, "Fruit", "Yabes"); + table.Rows.Add(10, "vegetable", "Marsion"); + return table; + } + + + + + + Imports data from into the specified named range of current worksheet with row and column offset along with preserve type option. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataTable refer this link + + DataTable with desired data. + + Represents named range using enumeration. Bounds of data table should not greatfull than bounds of named range. + i.e., Example NamedRange["A1:F6"] have a 6 Rows and 6 Columns. Also we should have DataTable rows and columns also same or lessthan named range. + + TRUE if column names must be imported. FALSE otherwise. + Represents row offset into named range to import. + Represents column offset into named range to import. + Maximum number of rows to import. + Maximum number of columns to import. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + The following code illustrates how to Imports data from into the specified named range of current worksheet with row and column offset also with maximum rows and columns. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize named range + IName namedRange = worksheet.Names.Add("SampleInfo"); + namedRange.RefersToRange = worksheet.Range["A1:F16"]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Import data from DataTable + worksheet.ImportDataTable(table, namedRange, true, 1, 1, 5, 2, true); + + workbook.SaveAs("ImportDataTable.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add ten DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + table.Rows.Add(5, "Snacks", "Andrew"); + table.Rows.Add(6, "Perfume", "Thomos"); + table.Rows.Add(7, "Biscuit", "Stephen"); + table.Rows.Add(8, "Cake", "Jones"); + table.Rows.Add(9, "Fruit", "Yabes"); + table.Rows.Add(10, "vegetable", "Marsion"); + return table; + } + + + + + + Imports data from into worksheet from the specified row and column. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataReader refer this link + + The or object which contains data. + TRUE if column names must be imported. FALSE otherwise. + First row from where the data should be imported. + First column from where the data should be imported. + Number of imported rows. + The following code illustrates how to Imports data from into worksheet from the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and get data from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Create IDataReader using Datatable + System.Data.IDataReader reader = table.CreateDataReader(); + + //Import data from DataReader + worksheet.ImportDataReader(reader, true, 1, 1); + + workbook.SaveAs("ImportDataReader.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add Ten DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + table.Rows.Add(5, "Snacks", "Andrew"); + table.Rows.Add(6, "Perfume", "Thomos"); + table.Rows.Add(7, "Biscuit", "Stephen"); + table.Rows.Add(8, "Cake", "Jones"); + table.Rows.Add(9, "Fruit", "Yabes"); + table.Rows.Add(10, "vegetable", "Marsion"); + return table; + } + + + + + + Imports data from into worksheet from the specified row and column along with save option. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataReader refer this link + + The or object which contains data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data must be serialized directly on save. + Number of imported rows. + The following code illustrates how to Imports data from into worksheet from the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and get data from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Create IDataReader using Datatable + System.Data.IDataReader reader = table.CreateDataReader(); + + //Import data from DataReader + worksheet.ImportDataReader(reader, 1, 1,true); + + workbook.SaveAs("ImportDataReader.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add Ten DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + table.Rows.Add(5, "Snacks", "Andrew"); + table.Rows.Add(6, "Perfume", "Thomos"); + table.Rows.Add(7, "Biscuit", "Stephen"); + table.Rows.Add(8, "Cake", "Jones"); + table.Rows.Add(9, "Fruit", "Yabes"); + table.Rows.Add(10, "vegetable", "Marsion"); + return table; + } + + + + + + Imports data from into worksheet from the specified row and column along with the preserve type. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataReader refer this link + + The or object which contains data. + TRUE if column names must be imported. FALSE otherwise. + First row from where the data should be imported. + First column from where the data should be imported. + + Indicates whether XlsIO should preserve column types from DataReader. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + Number of imported rows. + The following code illustrates how to Imports data from into worksheet from the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and get data from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Create IDataReader using Datatable + System.Data.IDataReader reader = table.CreateDataReader(); + + //Import data from DataReader + worksheet.ImportDataReader(reader,true, 1, 1,true); + + workbook.SaveAs("ImportDataReader.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add Ten DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + table.Rows.Add(5, "Snacks", "Andrew"); + table.Rows.Add(6, "Perfume", "Thomos"); + table.Rows.Add(7, "Biscuit", "Stephen"); + table.Rows.Add(8, "Cake", "Jones"); + table.Rows.Add(9, "Fruit", "Yabes"); + table.Rows.Add(10, "vegetable", "Marsion"); + return table; + } + + + + + + Imports data from into the specified named range of current worksheet. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataReader refer this link + + The or object which contains data. + + Represents named range using enumeration. Bounds of data table should not greatfull than bounds of named range. + i.e., Example NamedRange["A1:F6"] have a 6 Rows and 6 Columns. Also we should have DataTable rows and columns also same or lessthan named range. + + TRUE if column names must be imported. FALSE otherwise. + Number of imported rows. + The following code illustrates how to Imports data from into worksheet. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize named range + IName namedRange = worksheet.Names.Add("SampleInfo"); + namedRange.RefersToRange = worksheet.Range["A1:F6"]; + + //Initialize DataTable and get data from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Create IDataReader using Datatable + System.Data.IDataReader reader = table.CreateDataReader(); + + //Import data from DataReader + worksheet.ImportDataReader(reader, namedRange, true); + + workbook.SaveAs("ImportDataReader.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from a into worksheet with the specified row and column. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataView refer this link + + DataView with desired data. + TRUE if column names must also be imported. FALSE otherwise. + First row from where the data should be imported. + First column from where the data should be imported. + Number of imported rows. + The following code illustrates how to Imports data from a into worksheet with the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Initialize dataview of datatable + System.Data.DataView view = table.DefaultView; + + //Import data from DataView + worksheet.ImportDataView(view, true, 1, 1); + + workbook.SaveAs("ImportDataView.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from a into a worksheet with the specified range and preserve type. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataView refer this link + + DataView with desired data. + TRUE if column names must be imported. FALSE otherwise. + + First row from where the data should be imported. + + + First column from where the data should be imported. + + + Indicates whether XlsIO should preserve column types from DataReader. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + Number of imported rows. + The following code illustrates how to Imports data from a into worksheet with the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and data of DataTable get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Initialize dataview of datatable + System.Data.DataView view = table.DefaultView; + + //Import data from DataView + worksheet.ImportDataView(view, true, 1, 1, true); + + workbook.SaveAs("ImportDataView.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add four DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + return table; + } + + + + + + Imports data from a into a worksheet with specified row, column and preserve type. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataView refer this link + + Data View with desired data. + TRUE if column names must be imported. FALSE otherwise. + + First row from where the data should be imported. + + + First column from where the data should be imported. + + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + The following code illustrates how to Imports data from a into worksheet with the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Initialize dataview of datatable + System.Data.DataView view = table.DefaultView; + + //Import data from DataView + worksheet.ImportDataView(view, true, 1, 1, 5, 2); + + workbook.SaveAs("ImportDataView.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add Ten DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + table.Rows.Add(5, "Snacks", "Andrew"); + table.Rows.Add(6, "Perfume", "Thomos"); + table.Rows.Add(7, "Biscuit", "Stephen"); + table.Rows.Add(8, "Cake", "Jones"); + table.Rows.Add(9, "Fruit", "Yabes"); + table.Rows.Add(10, "vegetable", "Marsion"); + return table; + } + + + + + + Imports data from a into a worksheet with specified range and preserve type. + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ImportDataView refer this link + + DataView with desired data. + TRUE if column names must also be imported. FALSE otherwise. + + First row from where the data should be imported. + + + First column from where the data should be imported. + + Maximum number of rows to import. + Maximum number of columns to import. + Indicates whether XlsIO should try to preserve types in Data Table, i.e. if it is set to False (default) and in Data Table we have in + string column value that contains only numbers, it would be converted to number. + Number of imported rows. + The following code illustrates how to Imports data from a into worksheet with the specified row and column. + + using(ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Initialize DataTable and data get from SampleDataTable method + System.Data.DataTable table = SampleDataTable(); + + //Initialize dataview of datatable + System.Data.DataView view = table.DefaultView; + + //Import data from DataView. + worksheet.ImportDataView(view, true, 1, 1, 5, 2, true); + + workbook.SaveAs("ImportDataView.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + System.Data.DataTable SampleDataTable() + { + // Here we create a three columns + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("ID", typeof(int)); + table.Columns.Add("Item", typeof(string)); + table.Columns.Add("Name", typeof(string)); + + // Here we add Ten DataRows + table.Rows.Add(1, "Soap", "David"); + table.Rows.Add(2, "Paste", "Sam"); + table.Rows.Add(3, "Cream", "Christoff"); + table.Rows.Add(4, "Powder", "Janet"); + table.Rows.Add(5, "Snacks", "Andrew"); + table.Rows.Add(6, "Perfume", "Thomos"); + table.Rows.Add(7, "Biscuit", "Stephen"); + table.Rows.Add(8, "Cake", "Jones"); + table.Rows.Add(9, "Fruit", "Yabes"); + table.Rows.Add(10, "vegetable", "Marsion"); + return table; + } + + + + + + Import XML document with specified cell position to the worksheet using file path. + + FilePath of the speciifed xml file. + Row where the data to be imported. + Column where the data to be imported. + + + + Imports XML data into a worksheet at the specified row and column from a given XML data stream. + + Stream data of the xml file. + Row where the data to be imported. + Column where the data to be imported. + The stream should be passed as file stream to bind the xml + + + + Removes panes from a worksheet. + + + + + Exports worksheet data in the specified row and column into a . + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ExportDataTable refer this link. + + Row of the first cell from where DataTable should be exported. + Column of the first cell from where DataTable should be exported. + Maximum number of rows to export / upto number of rows. + Maximum number of columns to export / upto number of columns. + Export options using enumeration. + DataTable with worksheet data. + The following code illustrates how to exports worksheet data into a with the specified row and column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx", ExcelOpenType.Automatic); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Import Data From Excel to DataTable + System.Data.DataTable dataTable = worksheet.ExportDataTable(1,1,40,4, ExcelExportDataTableOptions.ComputedFormulaValues); + + // Using dataGrid/gridControls you can view the exported DataTable's data + System.Windows.Forms.DataGrid dataGrid1 = new System.Windows.Forms.DataGrid(); + dataGrid1.DataSource = dataTable; + + workbook.Close(); + excelEngine.Dispose(); + + + + + + Exports worksheet data in the specified row and column into a DataTable based on the export options. + + When exportDataOption is null or the value of the ColumnTypeDeductionRow property in a row is less than or equal to 0, then By default the second row from the export range is used for detecting the column types. And the default value will be exported in the data table if the cell value does not match with the column type. + Row of the first cell from where DataTable should be exported. + Column of the first cell from where DataTable should be exported. + Maximum number of rows to export / upto number of rows. + Maximum number of columns to export / upto number of columns. + Export options using enumeration. + Export data options using enumeration. + DataTable with worksheet data. + The following code illustrates how to exports worksheet data into a with the specified row and column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx", ExcelOpenType.Automatic); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Import Data From Excel to DataTable + ExcelExportDataOptions exportDataOptions = new ExcelExportDataOptions(); + exportDataOptions.ColumnTypeDetectionRow = 2; + System.Data.DataTable dataTable = worksheet.ExportDataTable(1,1,40,4, ExcelExportDataTableOptions.ComputedFormulaValues,exportDataOptions); + + // Using dataGrid/gridControls you can view the exported DataTable's data + System.Windows.Forms.DataGrid dataGrid1 = new System.Windows.Forms.DataGrid(); + dataGrid1.DataSource = dataTable; + + workbook.Close(); + excelEngine.Dispose(); + + + + + + Exports worksheet data in the specified range into a . + + + This method is supported in ASP.NET Core, Xamarin, and UWP platforms from .NET Standard 2.0 onward. + To know more about ExportDataTable refer this link. + + Used range of worksheet to be export using Interface. + Export options using enumeration. + DataTable with worksheet data. + The following code illustrates how to exports worksheet data into a with the specified . + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx", ExcelOpenType.Automatic); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Import Data From Excel to DataTable + System.Data.DataTable customersTable = worksheet.ExportDataTable(worksheet.UsedRange, ExcelExportDataTableOptions.ColumnNames| ExcelExportDataTableOptions.PreserveOleDate); + + //Using dataGrid/gridControls you can view the exported DataTable's data + System.Windows.Forms.DataGrid dataGrid1 = new System.Windows.Forms.DataGrid(); + this.dataGrid1.DataSource = customersTable; + + workbook.Close(); + excelEngine.Dispose(); + + + + + + Exports worksheet data into a DataTable with the specified data range based on the export options. + + When exportDataOption is null or the value of the ColumnTypeDeductionRow property in a row is less than or equal to 0, then By default the second row from the export range is used for detecting the column types. And the default value will be exported in the data table if the cell value does not match with the column type. + Used range of worksheet to be export using Interface. + Export options using enumeration. + Export data options using enumeration. + DataTable with worksheet data. + The following code illustrates how to exports worksheet data into a with the specified . + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx", ExcelOpenType.Automatic); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Import Data From Excel to DataTable + ExcelExportDataOptions exportDataOptions = new ExcelExportDataOptions(); + exportDataOptions.ColumnTypeDetectionRow = 2; + System.Data.DataTable customersTable = worksheet.ExportDataTable(worksheet.UsedRange, ExcelExportDataTableOptions.ColumnNames| ExcelExportDataTableOptions.PreserveOleDate, exportDataOptions); + + //Using dataGrid/gridControls you can view the exported DataTable's data + System.Windows.Forms.DataGrid dataGrid1 = new System.Windows.Forms.DataGrid(); + this.dataGrid1.DataSource = customersTable; + + workbook.Close(); + excelEngine.Dispose(); + + + + + + Exports worksheet data into the of CLR Objects. + + + Class property name or for a property must match with any one of the cell value in firstRow parameter to bind and export data. + To know more about ExportData refer this link. + + Row of the first cell should be exported. + Column of the first cell should be exported. + Upto lastRow of data want to be export. + Upto lastColumn of data want to be export. + T is a generic type argument. The type argument for this particular class can be any type recognized by the compiler and it must have a parameterless constructor. + List of CLRObjects with worksheet data. + The following code illustrates how to exports worksheet data into a of CLR objects. + + using Syncfusion.XlsIO; + using System.Collections.Generic; + + class Example + { + static void Main() + { + ExcelEngine engine = new ExcelEngine(); + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2016; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Export the matching data and Get the list of CLR objects + List<Report> clrObjects= worksheet.ExportData<Report>(1, 1, 40, 3); + + workbook.Close(); + engine.Dispose(); + } + } + public class Report + { + public string SalesPerson { get; set; } + public string SalesJanJun { get; set; } + public string SalesJulDec { get; set; } + + public Report() + { + + } + } + + + + + + Exports worksheet data into the of CLR Objects. + + + Class property name or for a property must match with any one of the cell value in firstRow parameter to bind and export data. + To know more about ExportData refer this link. + + Row of the first cell should be exported. + Column of the first cell should be exported. + Upto lastRow of data want to be export. + Upto lastColumn of data want to be export. + Property names mapping collection. You should give headers as key and properties names as value to the dictionary. + T is a generic type argument. The type argument for this particular class can be any type recognized by the compiler and it must have a parameterless constructor. + List of CLRObjects with worksheet data. + The following code illustrates how to exports worksheet data into a of CLR objects. + + using Syncfusion.XlsIO; + using System.Collections.Generic; + + class Example + { + static void Main() + { + ExcelEngine engine = new ExcelEngine(); + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2016; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Export the matching data and Get the list of CLR objects + Dictionary<string, string> mappingProperties = new Dictionary<string, string>(); + mapping.Add("Sales Person", "SalesPerson"); + mapping.Add("Sales JanuaryJune", "SalesJanJun"); + mapping.Add("Sales JulyDecember", "SalesJulDec"); + + List<Report> clrObjects= worksheet.ExportData<Report>(1, 1, 40, 3, mappingProperties); + + workbook.Close(); + engine.Dispose(); + } + } + public class Report + { + public string SalesPerson { get; set; } + public string SalesJanJun { get; set; } + public string SalesJulDec { get; set; } + + public Report() + { + + } + } + + + + + + Intersects two ranges. + + First range to intersect. + Second range to intersect. + Intersection of two ranges or NULL if there is no range intersection. + + When range1 or range2 is NULL. + + + + + Merges two ranges. + + First range to merge. + Second range to merge. + Merged ranges or NULL if is not able to merge ranges. + + When range1 or range2 is NULL. + + + + + Changes the height of the specified row to achieve the best fit. + + One-based row index. + The following code illustrates how to Auto-fit the row. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C2"].Value = "Sample text"; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set font + IFont font = style.Font; + + //Set font size + font.Size = 18; + + //Set style + worksheet["C2"].CellStyle = style; + + //Set auto fit + worksheet.AutofitRow(2); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Changes the width of the specified column to achieve the best fit. + + One-based column index. + The following code illustrates how to Auto-fit the column. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "Sample text in cell"; + + //Set auto fit + worksheet.AutofitColumn(1); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Replaces string with the specified string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + The following code snippet illustrates how to replace the string with another string. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + string oldValue = "Find"; + string newValue = "NewValue"; + sheet.Replace(oldValue, newValue); + + + + + + Replaces string with the specified string value based on the given . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + The following code snippet illustrates how to replace the string with another string. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + string oldValue = "Find"; + string newValue = "NewValue"; + sheet.Replace(oldValue, newValue, ExcelFindOptions.MatchCase); + + + + + + Replaces string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + The following code snippet illustrates how to replace the string value with double. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + string oldValue = "Ten"; + sheet.Replace(oldValue,10.0); + + + + + + Replaces string with the specified DateTime value. + + The string to be replaced. + The datetime value to replace all occurrences of oldValue. + The following code illustrates how to replace the string value with datetime. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + string oldValue = "Find"; + DateTime dateTime = DateTime.Now; + sheet.Replace(oldValue,dateTime); + + + + + + Replaces specified string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + The following code snippet illustrates how to replace the string with array of string values. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + string oldValue = "Find"; + string[] newValues = { "X values", "Y values" }; + sheet.Replace(oldValue, newValues, true); + + + + + + Replaces specified string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + The following code snippet illustrates how to replace the string with array of int values. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + string oldValue = "Find"; + int[] newValues = { 1, 2 }; + sheet.Replace(oldValue, newValues, true); + + + + + + Replaces specified string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + The following code snippet illustrates how to replace the string with array of double values. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + string oldValue = "Find"; + double[] newValues = { 1.00, 3.00 }; + sheet.Replace(oldValue, newValues, true); + + + + + + Replaces the string with the specified datatable value. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + The following code snippet illustrates how to replace the string value with data table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + //Create the data table + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("Dosage", typeof(int)); + table.Rows.Add(1); + // Replace the value with data table. + sheet.Replace("AB2", table, true); + + + + + + Replaces string with the specified datacolumn value. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + The following code snippet illustrates how to replace the string value with data column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + // create the data table + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("Dosage", typeof(int)); + table.Rows.Add(1); + System.Data.DataColumn dataColumn = table.Columns[0]; + // Replace the value with data column. + sheet.Replace("AB2", dataColumn, true); + + + + + + Removes worksheet from parent worksheet collection. + + + + + Moves worksheet to the specified index. + + New index of the worksheet. + + + + Converts the specified column width from points to pixels. + + Width in points. + Column width in pixels. + + + + Converts the specified column width from pixels to points. + + Width in pixels. + Width in points. + + + + Sets column width for the specified column. + + One-based column index. + Width to set. + + The following code illustrates how to set width for a column. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set column width + worksheet.SetColumnWidth(2, 160); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets column width in pixels for the specified column. + + One-based column index. + Width in pixels to set. + + The following code illustrates how to set width for a column. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set column width + worksheet.SetColumnWidthInPixels(2, 160); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets column width in pixels to the given number of columns from the specified column index. + + Start Column index + No of Column to be set width + Value in pixel to set + + The following code illustrates how to set width for columns. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set column width + worksheet.SetColumnWidthInPixels(2, 4, 160); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets row height for the specified row. + + One-based row index. + Height to set. + + The following code illustrates how to set height for a row. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set row height + worksheet.SetRowHeight(3, 45); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets row height in pixels for the specified row. + + One-based row index. + Value in pixels to set. + + The following code illustrates how to set height for a row. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set row height + worksheet.SetRowHeightInPixels(3, 150); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets row height in pixels to the given number of rows from the specified row index. + + Starting row index. + No of Row to be set width. + Value in pixels to set. + + The following code illustrates how to set height for a row. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set row height + worksheet.SetRowHeightInPixels(3, 4, 150); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns the width of the specified column. + + One-based column index. + Width of the specified column. + + The following code illustrates how to get the column width for a particular column. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "Sample text in cell"; + + //Set auto fit + worksheet.AutofitColumn(1); + + //Get column width + Console.WriteLine(worksheet.GetColumnWidth(1)); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //17.70701325 + + + + + + Returns the width of the specified column in pixels. + + One-based column index. + Width in pixels of the specified column. + + The following code illustrates how to get the column width for a particular column. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["A1"].Text = "Sample text in cell"; + + //Set auto fit + worksheet.AutofitColumn(1); + + //Get column width + Console.WriteLine(worksheet.GetColumnWidthInPixels(1)); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //129 + + + + + + Returns the height of the specified row. + + One-based row index. + + Returns height of the specified row. + Otherwise returns StandardHeight. + + + The following code illustrates how to get the row height for a particular row. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C2"].Value = "Sample text"; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set font + IFont font = style.Font; + + //Set font size + font.Size = 18; + + //Set style + worksheet["C2"].CellStyle = style; + + //Set auto fit + worksheet.AutofitRow(2); + + //Get row width + Console.WriteLine(worksheet.GetRowHeight(2)); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //21.95 + + + + + + Returns the height of the specified row in pixels. + + One-based row index. + + Returns height of the specified row in pixels. + Otherwise returns StandardHeight. + + + The following code illustrates how to get the row height for a particular row. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["C2"].Value = "Sample text"; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set font + IFont font = style.Font; + + //Set font size + font.Size = 18; + + //Set style + worksheet["C2"].CellStyle = style; + + //Set auto fit + worksheet.AutofitRow(2); + + //Get row width + Console.WriteLine(worksheet.GetRowHeightInPixels(2)); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //29 + + + + + + Returns the first occurrence of the specified string value with the specified . + + Value to search. + Type of value to search. + Returns the first cell with a specified string value, or null if value was not found. + The following code illustrates how to find the first occurrence of the specified string value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with string + IRange results = sheet.FindFirst("Hello World", ExcelFindType.Text); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search the value. + Returns the first cell with a specified string value and specified find options , or null if value was not found. + The following code illustrates how to find the first occurrence of the specified string value with specified Excel find option. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with string and specified find option. + IRange results = sheet.FindFirst("Hello World", ExcelFindType.Text,ExcelFindOptions.MatchCase); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence that starts with the specified string value. + + Value to search. + Type of value to search. + Returns the first occurrence that starts with the specified string value, or null if value was not found. + The following code illustrates how to find the first occurrence that starts with the specified string value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find String Starts with specified string + IRange result = sheet.FindStringStartsWith("Hello", ExcelFindType.Text); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence that starts with the specified string value which ignores the case. + + Value to search. + Type of value to search. + true to ignore case wen comparing this string to the value;otherwise,false + Returns the first occurrence that starts with the specified string value, or null if value was not found. + The following code illustrates how to find the first occurrence that starts with the specified string value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find String Starts with specified string + IRange result = sheet.FindStringStartsWith("Hello", ExcelFindType.Text, true); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence that ends with the specified string value. + + Value to search. + Type of value to search. + Returns the first occurrence that ends with the specified string value, or null if value was not found. + The following code illustrates how to find the first occurrence that ends with the specified string value which ignores the case. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find String Ends with specified string + IRange result = sheet.FindStringEndsWith("world", ExcelFindType.Text); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence that ends with the specified string value which ignores the case. + + Value to search. + Type of value to search. + True to ignore case when comparing this string to the value; otherwise, False. + Returns the first occurrence that ends with the specified string value, or null if value was not found. + The following code illustrates how to find the first occurrence that ends with the specified string value which ignores the case. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find String Ends with specified string + IRange result = sheet.FindStringEndsWith("world", ExcelFindType.Text, true); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence of the specified double value with the specified . + + Value to search. + Type of value to search. + Returns the first cell with a specified double value, or null if value was not found. + The following code illustrates how to find the first occurrence of the specified double value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with number + IRange result = sheet.FindFirst(100.32, ExcelFindType.Number); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence of the specified bool value. + + Value to search. + Returns the first cell with a specified bool value, or null if value was not found. + The following code illustrates how to find the first occurrence of the specified bool value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with bool + IRange result = sheet.FindFirst(true); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence of the specified DateTime value. + + Value to search. + Returns the first cell with a specified DateTime value, or null if value was not found. + The following code illustrates how to find the first occurrence of the specified DateTime value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with DateTime + IRange result = sheet.FindFirst(DateTime.Now); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence of the specified TimeSpan value. + + Value to search. + Returns the first cell with a specified TimeSpan value, or null if value was not found. + The following code illustrates how to find the first occurrence of the specified TimeSpan value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with Timespan + IRange result = sheet.FindFirst(TimeSpan.MinValue); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells of the specified string value with the specified . + + Value to search. + Type of value to search. + Returns the cells with a specified string value, or null if value was not found. + The following code illustrates how to find the cells with specified string value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find all with string + IRange[] results = sheet.FindAll("Hello World", ExcelFindType.Text); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search. + + Returns the cells with a specified string value and specified find options , or null if value was not found. + + The following code illustrates how to find the cells with specified string value with specified Excel find option. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find all with string and specified find option. + IRange[] results = sheet.FindAll("Hello World", ExcelFindType.Text, ExcelFindOptions.MatchCase); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells of the specified double value with the specified . + + Value to search. + Type of value to search. + All found cells, or Null if value was not found. + The following code illustrates how to find the cells with specified double value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find All with number + IRange[] results = sheet.FindAll(100.32, ExcelFindType.Number); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells of the specified bool value. + + Value to search. + Returns the cells with a specified bool value, or null if value was not found. + The following code illustrates how to find the cells with specified bool value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find all with bool. + IRange[] results = sheet.FindAll(true); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells of the specified DateTime value. + + Value to search. + Returns the cells with a specified DateTime value, or null if value was not found. + The following code illustrates how to find the cells with specified DateTime value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find all with DateTime + IRange[] results = sheet.FindAll(DateTime.Now); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells of the specified TimeSpan value. + + Value to search. + Returns the cells with a specified TimeSpan value, or null if value was not found. + The following code illustrates how to find the cells with specified TimeSpan value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find All with Timespan + IRange[] results = sheet.FindAll(TimeSpan.MinValue); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Saves worksheet with specified file name using separator. Used only for CSV files. + + File to save. + Denotes separator for the CSV file types. + The following code illustrates how to saves the worksheet with separator. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.SaveAs("newFile.csv", ","); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet using separator with specified file name and encoding. Used only for CSV files. + + File to save. + Denotes separator for the CSV file types. + Encoding to use. + The following code illustrates how to saves the worksheet with encoding. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.SaveAs("newFile.csv", ",",Encoding.ASCII); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet as stream using separator. Used only for CSV files. + + Stream to save. + Denotes separator for the CSV file types. + The following code illustrates how to saves the worksheet as stream with separator. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + Stream stream = new MemoryStream(); + sheet.SaveAs(stream, ","); + + + + + + Saves worksheet as stream using separator with specified encoding. Used only for CSV files. + + Stream to save. + Denotes separator for the CSV file types. + Encoding to use. + The following code illustrates how to saves the worksheet as stream with encoding. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + Stream stream = new MemoryStream(); + sheet.SaveAs(stream, ",",Encoding.ASCII); + + + + + + Sets the default column style for the specified column. + + One-based column index. + Default style. + + The following code illustrates how to set the default style for a column. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set default style + worksheet.SetDefaultColumnStyle(2, style); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets the default column style for the specified starting and ending column. + + Starting column index. + Ending column index. + Default style. + + The following code illustrates how to set the default style for columns. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set default style + worksheet.SetDefaultColumnStyle(2, 5, style); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets the default row style for the specified row. + + One-based row index. + Default style. + + The following code illustrates how to set the default style for a row. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set default style + worksheet.SetDefaultRowStyle(2, style); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets the default row style for the specified starting and ending row. + + Starting row index. + Ending row index. + Default style. + + The following code illustrates how to set the default style for rows. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set default style + worksheet.SetDefaultRowStyle(2, 5, style); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns the default column style for the specified column. + + One-based column index. + Default column style for the specified column or null if style wasn't set. + + The following code illustrates how to get default column style. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set default style + worksheet.SetDefaultRowStyle(2, style); + + //Get default style + IStyle defaultStyle = worksheet.GetDefaultColumnStyle(3); + + //Set color + defaultStyle.ColorIndex = ExcelKnownColors.Blue; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns default row style for the specified row. + + One-based row index. + Default row style for the specified row or null if style wasn't set. + + The following code illustrates how to get default row style. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set default style + worksheet.SetDefaultColumnStyle(2, style); + + //Get default style + IStyle defaultStyle = worksheet.GetDefaultRowStyle(3); + + //Set color + defaultStyle.ColorIndex = ExcelKnownColors.Blue; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Frees range object. + + Range to remove from internal cache. + + + + Frees range object for the specified row and column. + + One-based row index of the range object to remove from internal cache. + One-based column index of the range object to remove from internal cache. + + + + Sets value for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets number for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets boolean value for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets text for the specified cell. + + One-based row index. + One-based column index. + Text to set. + + + + Sets formula for the specified cell. + + One-based row index. + One-based column index. + Formula to set. + + + + Sets error for the specified cell. + + One-based row index. + One-based column index. + Error to set. + + + + Blanks the specified cell. + + One-based row index. + One-based column index. + + + + Sets formula number value for the specified cell. + + One-based row index. + One-based column index. + Represents formula number value. + + + + Sets formula error value for the specified cell. + + One-based row index. + One-based column index. + Represents formula error value. + + + + Sets formula bool value for the specified cell. + + One-based row index. + One-based column index. + Represents formula bool value. + + + + Sets formula string value for the specified cell. + + One-based row index. + One-based column index. + Represents formula string value. + + + + Returns string value from the specified row and column. + + One-based row index. + One-based column index. + String contained by the cell. + + + + Returns number value from the specified row and column. + + One-based row index. + One-based column index. + Number contained by the cell. + + + + Returns formula value from specified row and column. + + One-based row index. + One-based column index. + Indicates whether R1C1 notation should be used. + Returns formula string. + + + + Returns error value from the specified row and column. + + One-based row index. + One-based column index. + Returns error value or null. + + + + Returns bool value from the specified row and column. + + One-based row index. + One-based column index. + Returns found bool value. If cannot found returns false. + + + + Returns formula bool value from the specified row and column. + + One-based row index. + One-based column index. + True if bool value is found. otherwise False. + + + + Returns formula error value from the specified row and column. + + One-based row index. + One-based column index. + Returns error value or null. + + + + Returns formula number value from the specified row and column. + + One-based row index. + One-based column index. + Number contained by the cell. + + + + Returns formula string value from the specified row and column. + + One-based row index. + One-based column index. + String contained by the cell. + + + + Converts the specified range into image. Default image type is Bitmap. + + First row index. One-based. + First column index. One-based. + Last row index. One-based. + Last column index. One-based. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + // Converts the Range(R1C1 to R10C20) in worksheet to image. + System.Drawing.Image img = sheet.ConvertToImage(1, 1, 10, 20); + img.Save("Sample.png", System.Drawing.Imaging.ImageFormat.Png); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Converts the specified range into image with the specified type. + + First row index. One-based. + First column index. One-based. + Last row index. One-based. + Last column index. One-based. + Type of the image to create. + Stream to be converted to an image. It is ignored if null. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + MemoryStream stream = new MemoryStream(); + // Converts the Range(R1C1 to R10C20) in worksheet to image. + sheet.ConvertToImage(1, 1, 10, 20, ImageType.Metafile, stream); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet with specified filename. + + File to save. + + The following code snippets illustrates how to save as html to the specified file name. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.SaveAsHtml("Output.html"); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet as stream. + + Stream to save. + + The following code snippets illustrates how to save as html as stream. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + Stream stream = new MemoryStream(); + sheet.SaveAsHtml(stream); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet with specified filename and . + + File to save. + Save Options + + The following code snippets illustrates how to save as html to the specified file name and save option. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.SaveAsHtml("Output.html",HtmlSaveOptions.Default); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet as stream with the specified . + + Stream to save. + Save Options + + The following code snippets illustrates how to save as html as stream with Save option. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + Stream stream = new MemoryStream(); + sheet.SaveAsHtml(stream,HtmlSaveOptions.Default); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Converts the specified range into Metafile. + + First row index. One-based. + First column index. One-based. + Last row index. One-based. + Last column index. One-based. + Enhanced MetaFile, to render the image in meta file format. + Stream to be converted to an image. It is ignored if null. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + MemoryStream stream = new MemoryStream(); + // Converts the Range(R1C1 to R10C20) in worksheet to image. + sheet.ConvertToImage(1, 1, 10, 20, System.Drawing.Imaging.EmfType.EmfOnly, stream); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Converts the specified range into image along with Metafile. + + First row index. One-based.. + First column index. One-based. + Last row index. One-based. + Last column index. One-based. + Type of the image to create. + Stream to be converted to an image. It is ignored if null. + Enhanced MetaFile, to render the image in meta file format. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + MemoryStream stream = new MemoryStream(); + // Converts the Range(R1C1 to R10C20) in worksheet to image. + sheet.ConvertToImage(1, 1, 10, 20, ImageType.Metafile, stream, System.Drawing.Imaging.EmfType.EmfOnly); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Calculate all the formulas in worksheet. + + The following code illustrates how to calculate all the formulas in the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Formulas.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Calculate all the formulas in the worksheet. + worksheet.Calculate(); + + workbook.SaveAs("Calculation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Filters or copies data from a list based on a criteria range.. + + Whether filter in the place or copy to another place. + The filter range. + The criteria range. + The destination range for the copied rows if ExcelFilterAction is FilterCopy. Otherwise, this argument is ignored. + True to filter unique records; Otherwise filters all the records that meet the criteria. The default value is False. + + + + Imports HTML table of a HTML file into worksheet from the specified row and column. + + Specifies the HTML file. + Specifies the starting row index. + Specifies the starting column index. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + sheet.ImportHtmlTable("HTMLtable.html", 1, 1); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports HTML table of a file stream into worksheet from the specified row and column. + + Specifies the HTML filestream. + Specifies the starting row index + Specifies the starting column index + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + FileStream html = new FileStream("HTMLtable.html", FileMode.Open, FileAccess.ReadWrite); + + sheet.ImportHtmlTable(html, 1, 1); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports tables from HTML document into Excel worksheet from the specified row and column with HTML import options. + + Specifies the HTML file. + Specifies the starting row index. + Specifies the starting column index. + Specifies the html import options. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + sheet.ImportHtmlTable("HTMLtable.html", 1, 1, HtmlImportOptions.DetectFormulas); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports HTML table of a file stream into worksheet from the specified row and column. + + Specifies the HTML filestream. + Specifies the starting row index + Specifies the starting column index + Specifies the html import options. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + FileStream html = new FileStream("HTMLtable.html", FileMode.Open, FileAccess.ReadWrite); + + sheet.ImportHtmlTable(html, 1, 1, HtmlImportOptions.DetectFormulas); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the a object associated with implementation. + + + + + Event raised when an unknown function is encountered. + + + + + Gets the collection of slicers present in the worksheet. + + + + + Gets the scenarios in the current worksheet. + + The following code illustrates how to get the scenarios for the current worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IScenarios scenarios = sheet.Scenarios; + + + + + + Gets the auto filters collection in the worksheet. Read-only. + + + + + Gets the used cells in the worksheet. Read-only. + + + + + Gets or sets a value that indicates whether page breaks (both automatic and manual) + on the worksheet are displayed. + + + + + Gets the index number of the worksheet within the collection of + worksheet. Read-only. + + + + + Gets all the merged ranges in the worksheet. Read-only. + + The following code illustrates how to get the merged ranges. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Merge cells + worksheet["C2:D2"].Merge(); + worksheet["F3:G3"].Merge(); + + //Get merged ranges + IRange[] mergedRanges = worksheet.MergedCells; + + //Get merged range count + Console.Write(mergedRanges.Length); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Gets a Names collection that represents + the worksheet-specific names (names defined with the "WorksheetName!" + prefix) in the worksheet. Read-only. + + + + + Gets a object that contains all the page setup settings + for the specified object. Read-only. + + + + + Gets a Range object that represents a cell or a range of cells in the worksheet. + + + + + Gets a Range object that represents the rows in the specified worksheet. Read-only. + + + + + Gets a Range object that represents all the columns in the specified worksheet. Read-only. + + + + + Gets or sets the standard (default) height of all the rows in the worksheet, + in points. + + The following code illustrates how to get the standard height. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Text"; + + //Set standard height + worksheet.StandardHeight = 40; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the standard (default) height option flag. + + + Which defines that standard (default) row height and book default font height do not match. + + + + + Gets or sets the standard (default) width of all the columns in the + worksheet. + + The following code illustrates how to get the standard width. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Text"; + + //Set standard width + worksheet.StandardWidth = 80; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets the worksheet type. Read-only ExcelSheetType. + + + + + Gets a Range object that represents the used range on the + specified worksheet. Read-only. + + The following code illustrates how to get used range on the specified worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["B2"].Text = "Text"; + worksheet["J5"].Text = "Text"; + + //Set Color + worksheet["J3"].CellStyle.ColorIndex = ExcelKnownColors.Red; + + //Get used range + Console.Write(worksheet.UsedRange.AddressLocal); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //B2:J5 + + + + + + Gets or sets the value that represents zoom factor of document. Value must be in range from 10 till 400. + + The following code illustrates how to set zoom level of the sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.Zoom = 200; + + + + + + Gets or sets the position of vertical split in the worksheet. + + + Position of the vertical split (px, 0 = No vertical split): + Unfrozen pane: Width of the left pane(s) (in twips = 1/20 of a point) + Frozen pane: Number of visible columns in left pane(s) + + + + + Gets or sets the position of horizontal split in the worksheet. + + + Position of the horizontal split (by, 0 = No horizontal split): + Unfrozen pane: Height of the top pane(s) (in twips = 1/20 of a point) + Frozen pane: Number of visible rows in top pane(s) + + + + + Gets or sets the first visible row index. + + + + + Gets or sets the first visible column index. + + + + + Gets or sets index of the active pane. + + + + + True if zero values to be displayed. otherwise, False. + + + + + True if grid lines are visible. otherwise, False. + + + The following code illustrates how to set visibility for grid lines. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set grid line visibility + worksheet.IsGridLinesVisible = false; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the color of the Grid line in the worksheet. + + The following code illustrates how to set the grid line color. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set grid lines color + worksheet.GridLineColor = ExcelKnownColors.Red; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if row and column headers are visible. otherwise, False. + + + + + Gets a that represents the vertical page + breaks on the sheet. Read-only. + + + + + Gets a that represents the horizontal + page breaks in the worksheet. Read-only. + + + + + True if all values in the worksheet are preserved as strings. otherwise, False. + + The following code illustrates if the values in the worksheet are preserved as strings. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.IsStringsPreserved = true; + worksheet["A1"].Value = "10"; + worksheet["A2"].Value = "Test"; + worksheet["A3"].Value = "=SUM(1+1)"; + + + + + + Gets the collection in the worksheet. + + + The following code illustrates how to access the collection in the worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + // Adding comments to a cell. + ICommentShape comment1 = sheet.Range["A1"].AddComment(); + ICommentShape comment2 = sheet.Range["B1"].AddComment(); + + //Set comment text + comment1.Text= "Comment1"; + comment2.Text= "Comment2"; + + //Check count + Console.Write(sheet.Comments.Count); + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Gets the threaded comments collection for a current worksheet. + + The collection. + + The following code illustrates how to access ThreadedComments property of IWorksheet + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("Hello","User"); + + //Get the threaded comments collection + IThreadedComments threadedComments = worksheet.ThreadedComments. + + //Get the threaded comments count + int count = threadedComments.Count; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets cell range by row and column index. Row and column indexes are one-based. + + One-based row index. + One-based column index. + + + + Get cell Range. Row and column indexes are one-based. Read-only. + + First row index. One-based. + First column index. One-based. + Last row index. One-based. + Last column index. One-based. + + + + Gets cell Range. Read-only. + + + + + Gets cell Range with R1C1Notation flag. Read-only. + + + + + Gets a hyperlink collections in the worksheet. Read-only. + + + + + Gets all not empty or accessed cells. Read-only. + + + WARNING: This property creates Range object for each cell in the worksheet + and creates new array each time user calls to it. It can cause huge memory + usage especially if called frequently. + + The following code illustrates how to get the used cells range of a sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IRange[] usedCellsRange = sheet.UsedCells; + + + + + + Gets a collection of custom properties of the worksheet. Read-only. + + + + + Indicates whether all created range objects should be cached or not. + + + + + Defines whether freezed panes are applied. + + + + + Gets split cell range. + + + + + Gets or sets the top visible row of the worksheet. + + The following code illustrates how to get the top visible row. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + int topVisibleRow = sheet.TopVisibleRow; + + + + + + Gets or sets the left visible column of the worksheet. + + The following code illustrates how to get the left visible column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + int leftVisibleColumn = worksheet.LeftVisibleColumn; + + + + + + Gets or sets whether used range should include cells with formatting. + + + There are two different algorithms to create UsedRange object: + 1) Default. This property = true. The cell is included into UsedRange, + even data is empty (maybe some formatting + changed, maynot be - cell was accessed and record was created). + 2) This property = false. In this case XlsIO tries to remove empty rows and + columns from all sides to make UsedRange smaller. + + + The following code illustrates how to set UsedRangeIncludesFormatting property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Text"; + + //Add format + worksheet["D3"].CellStyle.ColorIndex = ExcelKnownColors.Red; + + //Set used range includes formatting + worksheet.UsedRangeIncludesFormatting = false; + + //Get used range + Console.Write(worksheet.UsedRange.AddressLocal); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //C2 + + + + + + Gets a collection of pivot tables in the worksheet. Read-only. + + + + + Gets a collection of list objects in the worksheet. Read-only. + + + + + Gets or sets the view setting of the worksheet. + + The following code illustrates how to set the view of the sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.View = SheetView.PageLayout; + + + + + + Gets collection in the worksheet. + + This property is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + The OLE objects. + + The following code illustrates how to access the collection in the worksheet to add a new . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add ole object + IOleObject oleObject = worksheet.OleObjects.Add("Shapes.xlsx", image, OleLinkType.Embed); + + //Save and dispose + workbook.SaveAs("OLEObjects.xlsx"); + workbook.Close(); + } + + + + + + Gets whether the OLE object is present in the worksheet. Read-only. + + This property is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + True if this instance is OLE object; otherwise, False. + + + The following code illustrates how to access the collection in the worksheet to add a new . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add ole object + IOleObject oleObject = worksheet.OleObjects.Add("Shapes.xlsx", image, OleLinkType.Embed); + + //Check HasOleObject + Console.Write(worksheet.HasOleObject); + + //Save and dispose + workbook.SaveAs("OLEObjects.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Gets the sparkline groups. + + The sparkline groups. + The following code illustrates how to get the Spark line groups from the sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + //A new Sparkline group is added to the sheet sparklinegroups + ISparklineGroup sparklineGroup = sheet.SparklineGroups.Add(); + + //Set the Sparkline group type as line + sparklineGroup.SparklineType = SparklineType.Line; + + //Set to display the empty cell as line + sparklineGroup.DisplayEmptyCellsAs = SparklineEmptyCells.Line; + + //Sparkline group style properties + sparklineGroup.ShowFirstPoint = true; + sparklineGroup.FirstPointColor = System.Drawing.Color.Green; + sparklineGroup.ShowLastPoint = true; + sparklineGroup.LastPointColor = System.Drawing.Color.DarkOrange; + sparklineGroup.ShowHighPoint = true; + sparklineGroup.HighPointColor = System.Drawing.Color.DarkBlue; + sparklineGroup.ShowLowPoint = true; + sparklineGroup.LowPointColor = System.Drawing.Color.DarkViolet; + sparklineGroup.ShowMarkers = true; + sparklineGroup.MarkersColor = System.Drawing.Color.Black; + sparklineGroup.ShowNegativePoint = true; + sparklineGroup.NegativePointColor = System.Drawing.Color.Red; + + //set the line weight + sparklineGroup.LineWeight = 0.3; + //The sparklines are added to the sparklinegroup. + ISparklines sparklines = sparklineGroup.Add(); + + //Set the Sparkline Datarange + IRange dataRange = sheet.Range["D6:G17"]; + //Set the Sparkline Reference range + IRange referenceRange = sheet.Range["H6:H17"]; + + //Create a sparkline with the datarange and reference range + sparklines.Add(dataRange, referenceRange); + + ISparklineGroups sparkline = sheet.SparklineGroups; + + + + + + Gets the DataSorter. + + The sparkline groups. + The following code illustrates how to get the DataSorter from the sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sorting.xlsx"); + + //Create DataSorter for worksheet. + IDataSort sheetSort = workbook.Worksheets[0].DataSorter; + + //Adding Sort range for worksheet + sheetSort.SortRange = workbook.Worksheets[0].UsedRange; + + //Adding Sorting fields for DataSorter. + sheetSort.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + + //Perform Sorting for worksheet range. + sheetSort.Sort(); + + workbook.SaveAs("SortedExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Event to choose an action while exporting data from Excel to data table. + + + + + Occurs when the value of a cell changes. + + + + + Indicates whether cell contains array-entered formula. + + Cell index to check. + True if cell contains array-entered formula. + + + + Gets object that is clone of current worksheet in the specified workbook. + + Dictionary with update worksheet names. + New workbook object. + Object that is clone of the current worksheet. + + + + Get default row height in pixel. + + + + + Gets or sets one-based index of the first row of the worksheet. + + + + + Gets or sets one-based index of the first column of the worksheet. + + + + + Gets or sets one-based index of the last row of the worksheet. + + + + + Gets or sets one-based index of the last column of the worksheet. + + + + + Gets collection of cell records. Read-only. + + + + + Gets parent workbook. Read-only. + + + + + Gets excel version. + + + + + Style wrapper for multicell range. Redirects all + properties and method calls to the range styles. + + + + + Represents a style description for a range. The Style object contains + all style attributes (font, number format, alignment, and so on) as + properties. There are several built-in styles, including Normal, + Currency, and Percent. Using the Style object is a fast and efficient + way to change several cell-formatting properties on multiple cells at + the same time. + For the Workbook object, the Style object is a member of the Styles + collection. The Styles collection contains all the defined styles for + the workbook + + + + + True if the is a built-in . Read-only Boolean. + + + The following code illustrates how to check whether a is a built-in or not. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Check style built in + Console.WriteLine(workbook.Styles[6].BuiltIn); + Console.WriteLine(workbook.Styles[0].BuiltIn); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + //True + + + + + + Returns or sets the name of the object. Read-only String. + + + The following code illustrates how to access the name of the object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Check style name + Console.WriteLine(workbook.Styles[6].Name); + Console.WriteLine(workbook.Styles[0].Name); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //CustomStyle + //Normal + + + + + + Indicates whether is initialized (differs from Normal style). + Read-only. + + + By default if the style is created using method, then the style will be created based on the Normal style + which is the default style. If the created style is modified then will be set to "true". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Check style initialized or not + Console.WriteLine(style.IsInitialized); + + //Set rich text + IRichTextString richText = worksheet["C2"].RichText; + + //Set text + richText.Text = "Sample"; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set rich text font + richText.SetFont(0, 5, font); + + //Check style initialized or not + Console.Write(style.IsInitialized); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + //True + + + + + + Returns interior object for this extended format. + + + The following code illustrates how to access 's interior object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set interior + Syncfusion.XlsIO.Interfaces.IInterior interior = style.Interior; + + //Set color + interior.ColorIndex = ExcelKnownColors.Red; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Array that contains all cells. + + + + + Parent workbook. + + + + + Application. + + + + + Creates object that will contain all styles that are used by range. + + Range from which styles must be taken. + + + + Creates object that will contain all styles that are used by range. + + Range from which styles must be taken. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object. + + + + + Detect whether the cell styles can be applied for the range. + + + + + For far east languages. Supported only for format. Always 0 for US. + + + + + Returns or sets the format code for the object as a string in the + language of the user. Read / write String. + + + + + Gets format index in m_book.InnerFormats. + + + + + Indicates whether style has border. Read-only Boolean. + + + + + Returns a Borders collection that represents the borders of a + style or a range of cells (including a range defined as part of + a conditional format). + + + + + True if the style is a built-in style. Read-only Boolean. + + + + + Gets / sets fill pattern. + + + + + Gets / sets index of fill background color. + + + + + Gets / sets fill background color. + + + + + Gets / sets index of fill foreground color. + + + + + Gets / sets fill foreground color. + + + + + Returns a Font object that represents the font of the specified + object. Read-only. + + + + + True if the formula will be hidden when the worksheet is protected. + Read/write Boolean. + + + + + Returns or sets the horizontal alignment for the specified object. + For all objects, this can be one of the following ExcelHAlign constants. + Read/write ExcelHAlign. + + + + + True if the style includes the AddIndent, HorizontalAlignment, + VerticalAlignment, WrapText, and Orientation properties. + Read/write Boolean. + + + + + True if the style includes the Color, ColorIndex, LineStyle, + and Weight border properties. Read/write Boolean. + + + + + True if the style includes the Background, Bold, Color, + ColorIndex, FontStyle, Italic, Name, OutlineFont, Shadow, + Size, Strikethrough, Subscript, Superscript, and Underline + font properties. Read/write Boolean. + + + + + True if the style includes the NumberFormat property. + Read/write Boolean. + + + + + True if the style includes the Color, ColorIndex, + InvertIfNegative, Pattern, PatternColor, and PatternColorIndex + interior properties. Read / write Boolean. + + + + + True if the style includes the FormulaHidden and Locked protection + properties. Read / write Boolean. + + + + + Returns or sets the indent level for the style. Read/write. + + + + + Indicates whether style is initialized (differs from Normal style). + Read-only. + + + + + True if the object is locked, False if the object can be + modified when the sheet is protected. Read/write Boolean. + + + + + Returns or sets the name of the object. Read-only String. + + + + + Returns or sets the format code for the object. Read / write String. + + + + + Gets / sets index of the number format. + + + + + Returns object that describes number format. Read-only. + + + + + Text rotation angle: + 0 Not rotated + 1-90 1 to 90 degrees counterclockwise + 91-180 1 to 90 degrees clockwise + 255 Letters are stacked top-to-bottom, but not rotated. + int.MinValue - different rotation angle for different ranges. + + Thrown when value is more than 0xFF. + + + + True if text automatically shrinks to fit in the available + column width. Read/write Boolean. + + + + + Returns or sets the vertical alignment of the specified object. + Read/write ExcelVAlign. + + + + + True if Microsoft Excel wraps the text in the object. + Read/write Boolean. + + + + + Text direction, the reading order for far east versions. + + + + + If true then first symbol in cell is apostrophe. + + + + + Returns or sets the color of the interior pattern as an index into the current color palette. + + + + + Returns or sets the color of the interior pattern as an Color value. + + + + + Returns or sets the color of the interior. The color is specified as + an index value into the current color palette. + + + + + Returns or sets the cell shading color. + + + + + Returns Interior object that represents the interior of the specified + object. Read-only. + + + + + Gets value indicating whether format was modified, compared to parent format. + + + + + Returns number of begin update calls that have no corresponding end update. Read-only. + + + + + Returns array of ranges that contain styles. Read-only. + + + + + Specifies a boolean value that indicates whether the application will + refresh the cache when the workbook has been opened. + + + + + Specifies the name of the end-user who last refreshed the cache. + + + + + Specifies the date when the cache was last refreshed. + + + + + Specifies the version of the application that created the cache. + + + + + Specifies the version of the application that last refreshed the cache. + + + + + Specifies the earliest version of the application that is required to refresh the cache. + + + + + Specifies the number of records in the cache. + + + + + Represents the description of data source whose data is stored in the pivot cache. + + + + + Specifies the cache type. + + + + + Indicates that the cache contains data that + consolidates ranges. + + + + + Indicates that the cache contains data from an + external data source. + + + + + Indicates that the cache contains a scenario summary + report + + + + + Indicates that the cache contains worksheet data. + + + + + Represents the location of the source of the data that is stored in the cache. + + + + + Specifies the reference that defines a cell range that is the source of the data. + + + + + Specifies the name of the sheet that is the source for the cached data. + + + + + Represents the collection of field definitions in the source data. + + + + + Specifies the number of fields in the cache. + + + + + Represent a single field in the PivotCache. + + + + + Specifies the name of the cache field. + + + + + Represents the PivotTable root element for non-null PivotTables. + + + + + This element enumerates pivot cache definition parts used by pivot tables and formulas in this workbook. + + + + + This element represents a cache of data for pivot tables and formulas in the workbook. + + + + + Specifies the unique identifier for the pivot cache for this workbook in the pivot cache part. + + + + + Specifies the pivot cache Id for pivot cache definition parts used by pivot tables. + + + + + Specifies the name of the value area field header in the PivotTable. + + + + + Specifies the version of the application that last updated the PivotTable view. + + + + + Specifies a boolean value that indicates whether calculated members should be shown + in the PivotTable view. This attribute applies to PivotTables from OLAP-sources only. + + + + + Specifies a boolean value that indicates whether auto formatting has + been applied to the PivotTable view. + + + + + Specifies a boolean value that indicates whether PivotItem names should + be repeated at the top of each printed page. + + + + + Specifies the indentation increment for compact axis and can be used to + set the Report Layout to Compact Form. + + + + + Specifies a boolean value that indicates whether new fields should have + their outline flag set to true. + + + + + Specifies a boolean value that indicates whether data fields in the + PivotTable should be displayed in outline form. + + + + + Specifies a boolean value that indicates whether the fields of a PivotTable + can have multiple filters set on them. + + + + + Represents the collection of fields that appear on the PivotTable. + + + + + Represents a single field in the PivotTable. + + + + + Represents the fill down label to show repeated items in pivot table rows and columns. + + + + + Represents whether the pivot field should be ignored or not. + + + + + Specifies a boolean value that indicates whether to show all items for this field. + + + + + Represents location information for the PivotTable. + + + + + Specifies the first row of the PivotTable header, relative to the top + left cell in the ref value. + + + + + Specifies the first row of the PivotTable data, relative to the top left cell in the ref value. + + + + + Specifies the first column of the PivotTable data, relative to the top left cell in the ref value. + + + + + Represents the pivotCacheDefinition part. This part defines each field + in the source data, including the name, the string resources of the + instance data (for shared items), and information about the type of + data that appears in the field. + + + + + Represents the collection of row fields for the PivotTable. + + + + + Represents the collection of items in row axis of the PivotTable. + + + + + Represents the collection of fields that are on the column axis of the PivotTable. + + + + + Represents the collection of column items of the PivotTable. + + + + + Specifies the index to the number format applied to this data field. + + + + + Represent information on style applied to the PivotTable. + + + + + Specifies a boolean value that indicates whether to show row headers for the table. + + + + + Specifies a boolean value that indicates whether to show column headers for the table. + + + + + Specifies a boolean value that indicates whether to show row + stripe formatting for the table. + + + + + Specifies a boolean value that indicates whether to show column stripe + formatting for the table. + + + + + Specifies a boolean value that indicates whether to show the last column. + + + + + Specifies a boolean value that indicates whether grand totals should be + displayed for the PivotTable columns. + + + + + Specifies a boolean value that indicates whether grand totals should be + displayed for the PivotTable rows. + + + + + Specifies a boolean value that indicates whether drill indicators should be hidden. + + + + + Represents the collection of unique items for a field in the PivotCacheDefinition. + + + + + Specifies a boolean value that indicates that this field contains text values. + The field may also contain a mix of other data type and blank values. + + + + + Specifies a boolean value that indicates whether this field contains a text value. + + + + + Specifies a boolean value that indicates whether this field contains numeric values. + + + + + Specifies a boolean value that indicates whether this field contains integer values. + + + + + Specifies a boolean value that indicates that the field contains at least one date. + + + + + Specifies a boolean value that indicates that the field contains at + least one value that is not a date. + + + + + Specifies a boolean value that indicates whether this field contains a blank value. + + + + + Specifies a boolean value that indicates wheter this field contains a long Text. + + + + + Specifies a boolean value that indicates whether to suppress display of pivot field. + + + + + Represents a generic field that can appear either on the column or the row region of the PivotTable. + + + + + Specifies the index to a pivotField item value. + + + + + Represents the collection of items in the row or column region of the PivotTable. + + + + + GrandTotal constant + + + + + Row Labels of pivot table + + + + + Specifies the type of the item. + + + + + constant + + + + + Represents an array of indexes to cached member property values. + + + + + Represents the collection of items in the data region of the PivotTable. + + + + + Represents a field from a source list, table, or database that contains data that is summarized in a PivotTable. + + + + + Specifies the index to the field (<r>) in the pivotCacheRecords part that this data item summarizes. + + + + + Specifies the index to the base field when the ShowDataAs calculation is in use. + + + + + Specifies the index to the base item when the ShowDataAs calculation is in use. + + + + + Specifies the aggregation function that applies to this data field. + + + + + Specifies the custom text that is displayed for the subtotals label. + + + + + Specifies the region of the PivotTable that this field is displayed. + + + + + Specifies a boolean value that indicates whether this field appears in the + data region of the PivotTable. + + + + + Represents the collection of items in a PivotTable field. + + + + + Represents a single item in PivotTable field. + + + + + Specifies the type of this item. A value of 'default' indicates the subtotal or total item. + + + + + Indicates the pivot item represents the default type for this PivotTable. + The default pivot item type is the "total" aggregate function. + + + + + Represents the collection of records in the PivotCache. + + + + + Represents a single record of data in the PivotCache. + + + + + Represents a numeric value in the PivotTable. + + + + + Represents a character value in a PivotTable. + + + + + Represents a value that was not specified. + + + + + Represents a date-time value in the PivotTable. + + + + + Represents a boolean value for an item in the PivotTable. + + + + + Unified date time format. + + + + + Specifies the value of the item. + + + + + Specifies a boolean value that indicates whether to apply the 'Average' + aggregation function in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether to apply the 'countA' + aggregation function in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether to apply the 'count' + aggregation function in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether to apply the 'max' + aggregation function in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether to apply the 'min' + aggregation function in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether to apply 'product' + aggregation function in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether to apply the 'stdDevP' + aggregation function in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether to use 'stdDev' + in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether apply the 'sum' + aggregation function in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether to apply the 'varP' + aggregation function in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether to apply the 'variance' + aggregation function in the subtotal of this field. + + + + + Specifies a boolean value that indicates whether the default subtotal + aggregation function is displayed for this field. + + + + + Specifies a boolean value that indicates whether the application should query and + retrieve records asynchronously from the cache. + + + + + Specifies a boolean value that indicates whether the user can refresh the cache. + + + + + Specifies a boolean value that indicates whether the cache needs to be refreshed. + + + + + Specifies a boolean value that indicates whether the application will apply optimizations + to the cache to reduce memory usage + + + + + Specifies a boolean value that indicates whether the pivot records are saved with the + cache. + + + + + Specifies whether the cache's data source supports attribute drilldown + + + + + Specifies whether the cache's data source supports subqueries. + + + + + Specifies a boolean value that indicates whether the cache is scheduled for version + upgrade. + + + + + Specifies a boolean value that indicates whether this field came from the source + database + + + + + Specifies the formula for the calculated field + + + + + Represents the collection of properties for a field group. + + + + + Specifies a boolean value that indicates whether an asterisks should be displayed in + subtotals and totals + + + + + Specifies the string to be displayed in column header in compact mode. This attribute + depends on whether the application implements a compact mode for displaying + PivotTables in the user interface. + + + + + Specifies the compact new fileds + + + + + Specifies the display compact Data + + + + + This attribute indicates the wheater to auto sort pivot table or not + + + + + This attribute represents the multiple fields in the data region + is located in the row area or the column area + + + + + This attribute represents the position for the field which representing multiple data field in the PivotTable + + + + + this attribute indicates whether to disable the PivotTable field list. + + + + + This attribute that indicates whether the user is allowed to edit the cells in + the data area of the PivotTable. + + + + + This attribute that indicates whether the user is prevented from drilling down + on a PivotItem or aggregate value. + + + + + indicates whether the user is prevented from displaying + PivotField properties. + + + + + This attribute that indicates whether the user is prevented from displaying + the PivotTable wizard. + + + + + This attribute Specifies the string to be displayed in cells that contain errors. + + + + + this attribute that indicates whether fields in the PivotTable are sorted in + non-default order in the field list. + + + + + Specifies the display name + + + + + Specifies the number of columns per page for this PivotTable that the filter area will + occupy. + + + + + Specifies the number of rows per page for this PivotTable that the filter area will occupy. + + + + + Specifies a boolean value that indicates whether the approximate number of child items + for this item is greater than zero. + + + + + Specifies a boolean value that indicates whether this item has been expanded in the + PivotTable view. + + + + + Specifies a boolean value that indicates whether attribute hierarchies nested next to + each other on a PivotTable row or column will offer drilling "across" each other or not. + + + + + Specifies a boolean value that indicates whether this item is a calculated member. + + + + + Specifies a boolean value that indicates whether the item is hidden. + + + + + Specifies the user caption of the item. + + + + + Specifies a boolean value that indicates whether the item has a character value. + + + + + Specifies a boolean value that indicates whether the details are hidden for this item. + + + + + Specifies a boolean value that indicate whether the item has a missing value. + + + + + Specifies the type of this item. A value of 'default' indicates the subtotal or total item. + + + + + Specifies the base of this field, + + + + + Specifies the parent of this field, + + + + + Represents the collection of discrete grouping properties for a field group + + + + + Represents the collection of items in a field group. + + + + + Represents the collection of range grouping properties. + + + + + Specifies a boolean value that indicates whether the application uses the source data to + set the ending range value. + + + + + Specifies a boolean value that indicates whether we use source data to set the beginning + range value. + + + + + Specifies the ending value for date grouping if autoEnd is false. + + + + + Specifies the ending value for numeric grouping if autoEnd is false. + + + + + Specifies the grouping. + + + + + Specifies the grouping interval for numeric range grouping. Specifies the number of days + to group by in date range grouping + + + + + Specifies the starting value for date grouping if autoStart is false. + + + + + Specifies the starting value for numeric grouping if autoStart is false. + + + + + Specifies a boolean value that indicates whether an "AutoShow" filter is applied to this + field. + + + + + Specifies a boolean value that indicates whether the field can be removed from the + PivotTable. + + + + + Specifies a boolean value that indicates whether the field can be dragged to the column + axis. + + + + + Specifies a boolean value that indicates whether the field can be dragged to the data + region. + + + + + Specifies a boolean value that indicates whether the field can be dragged to the page + region + + + + + Specifies a boolean value that indicates whether the field can be dragged to the row axis + + + + + Specifies a boolean value that indicates whether new items that appear after a refresh + should be hidden by default. + + + + + Specifies a boolean value that indicates whether manual filter is in inclusive mode. + + + + + Specifies a boolean value that indicates whether to insert a blank row after each item. + + + + + Specifies a boolean value that indicates whether to insert a page break after each item. + + + + + Specifies the number of items showed per page in the PivotTable. + + + + + Specifies a boolean value that indicates whether field has a measure based filter. + + + + + Specifies a boolean value that indicates whether the field can have multiple items + selected in the page field. + + + + + Specifies a boolean value that indicates whether to hide drop down buttons on PivotField + headers + + + + + Specifies a boolean value that indicates whether to show the property as a member + caption. + + + + + Specifies a boolean value that indicates whether to show the member property value in a + tooltip on the appropriate PivotTable cells. + + + + + Specifies the type of sort that is applied to this field. + + + + + Specifies the unique name of the member property to be used as a caption for the field + and field items. + + + + + Represents an item within a PivotTable field that uses a formula + + + + + Represents an item within a PivotTable field that uses a formula + + + + + Represents a set of selected fields and selected items within those fields + + + + + Represents a set of selected fields and selected items within those fields + + + + + Flag indicating whether any indexes refer to fields or items in the Pivot cache + + + + + Flag indicating whether the column grand total is included. + + + + + Flag indicating whether only the data values + + + + + Position of the field within the axis to which this rule applies. + + + + + Flag indicating whether the row grand total is included + + + + + Flag indicating whether only the item labels for an item selection + are selected and does + not include the data values + + + + + Flag indicating whether the Collapsed levels are subtotals. + + + + + A Reference that specifies a subset of the selection area. + + + + + Specifies a boolean value that indicates whether the + item is referred to by position rather than item index. + + + + + Specifies a boolean value that indicates whether the item is + referred to by a relative reference rather than an absolute reference + + + + + Specifies a boolean value that indicates whether this field has selection + + + + + Pivot Area tag + + + + + Pivot Area Type + + + + + Represents the collection of conditional formats applied to a PivotTable + + + + + Represents the conditional formatting defined in the PivotTable. + + + + + Specifies a boolean value that indicates whether the in-grid drop zones should be + displayed at runtime, and whether classic layout is applied. + + + + + Specifies a boolean value that indicates how the page fields are laid out + when there are multiple PivotFields in the page area. + + + + + Specifies a boolean value that indicates whether to show error messages in cells + + + + + Specifies a boolean value that indicates + whether to show a message in cells with no value. + + + + + Specifies a boolean value that indicates whether to + show a message in cells with no value. + + + + + Specifies a boolean value that indicates whether the formatting applied by + the user to the PivotTable cells is discarded on refresh. + + + + + Specifies a boolean value that indicates whether tooltips should be + displayed for PivotTable data cells. + + + + + + + + + + Specifies a boolean value that indicates whether row or column titles that span multiple + cells should be merged into a single cell. + + + + + Specifies the number of page fields to display before starting another row or column. + + + + + Represents the collection of filters that apply to this PivotTable. + + + + + Specifies the description of the pivot filter. + + + + + Specifies the evaluation order of the pivot filter. + + + + + Specifies the index of the measure field. + + + + + Specifies the index of the measure cube field. + + + + + Indicates whether the AutoFilter button for this column is hidden + + + + + Flag indicating whether the filter button is visible. + + + + + Specifies the element for Auto filter. + + + + + Specifies the element for filter column + + + + + Specifies the attributes for operator which is applied in pivot filter. + + + + + Specifies the string value "1" used by label pivot filters. + + + + + Zero-based index indicating the AutoFilter column to which this filter information applies. + + + + + Specifies the string value "2" used by label pivot filters. + + + + + Specifies the unique identifier of the pivot filter as assigned by the PivotTable. + + + + + Specifies the element for Custom filters. + + + + + Specifies the element for Custom filter + + + + + Attribute specifying whether and operator is used. + + + + + Top or bottom value to use as the filter criteria. + + + + + Flag indicating whether to filter by blank. + + + + + The actual cell value in the range which is used to perform the comparison for this filter. + + + + + Flag indicating whether or not to filter by percent value of the column. + + + + + Flag indicating whether or not to filter by top order + + + + + Specifies the element for Top 10 filter + + + + + Specifies the element for Dynamic filter + + + + + Represents the collection of filter that apply to this PivotFilters. + + + + + Represents the collection of custom formats apply to the pivot table. + + + + + Represents the custom format in the pivot table. + + + + + Represents the collection of formats applied to PivotChart. + + + + + Specifies the string to be displayed in row header in compact mode. + + + + + Represents the sorting scope for the PivotTable. + + + + + Represents a Error value in a PivotTable. + + + + + Represents the collection of OLAP hierarchies in the PivotCache. + + + + + Represents the collection of Key Performance Indicators (KPIs) + defined on the OLAP server and stored in the PivotCache. + + + + + Represents the collection of PivotTable OLAP dimensions. + + + + + Represents a PivotTable OLAP measure group. + + + + + Represents the PivotTable OLAP measure group - Dimension maps. + + + + + Represents the collection of OLAP hierarchies associated with the PivotTable. + + + + + Represents the collection of references to OLAP hierarchies on the row axis of a PivotTable. + + + + + Represents the collection of references to OLAP hierarchies on the column axis of a PivotTable. + + + + + Specifies the hierarchy that this field is part of. + + + + + Specifies the hierarchy level that this field is part of. + + + + + Represents the Pivot Field Captions. + + + + + Specifies a boolean value that indicates whether sort is applied to this field in the datasource. + + + + + Specifies a boolean value that indicates the drill state of the attribute hierarchy in an + OLAP-based PivotTable. + + + + + Specifies a boolean value that indicates whether all items in the field are expanded. + Applies only to OLAP PivotTables. + + + + + Indicates whether the pivot cache has missing items. + + + + + Specifies the hierarchy level that this page field is part of. + + + + + Specifies a boolean value that indicates whether this field Member Property + database + + + + + Specifies the string to be displayed for grand totals. + + + + + Specifies a boolean value that indicate whether the item has tuple cache. + + + + + Specifies a string to display the selected value. + + + + + Specifies a string to display the filter value. + + + + + Constructor used to prevent from creating instances of this class. + + + + + This class is repsonsible for pivot cache serialization in Excel 2007 format. + + + + + Default application version. + + + + + Serializes pivot cache definition. + + XmlWriter to serialize into. + Cache to serialize. + Current workbook. + Relation id to the pivot cache records. + + + + Serializes cache fields. + + Writer to serialize into. + Fields collection. + + + + Serializes cache field. + + Writer to serialize into. + Field to serialize. + + + + Serializes field shared items. + + XmlWriter to serialize shared items into. + Field to serialzie shared items for. + + + + Serializes cache source. + + XmlWriter to serialize into. + Cache to serialize. + + + + Serializes the pivot table scenario + + XmlWriter to serialize into. + pivot cache + + + + Serializes the pivot cache worksheet source + + Xml writer to Serialize + cache to serialized the data + + + + Serializes pivot cache External Source + + XmlWriter to serialize into. + Cache to serialize. + + + + Serializes pivot cache consolidation Source + + XmlWriter to serialize into. + Cache to serialize. + + + + Serializes pivot cache definition. + + XmlWriter to serialize into. + Cache to serialize. + + + + Serializes pivot cache value. + + XmlWriter to serialize value into. + Value to serialize. + + + + Serialize Calculated items of Cache field + + xml writer to write items + calculated item to write + + + + Serialize the Calculated Item of Cache Field + + Xml writer to write + item to write + + + + Serialize the Calculated Pivot item which the formula applies to + + xml writer to serialize into + area to serialize + + + + Serialize the pivot area references + + Xml Writer to serialize into + references to seralize to + + + + Serialize the Pivot area reference + + XMl Writer to Serialize into + reference to serialize + + + + Serializes field group + + Xml writer to serialize into + field to serialize group + + + + Serializes field group + + Xml writer to serialize into + field to serialize group + + + + Serializes the Field group items + + + + + + + Serialize the Field Group Range Properties + + Xml writer to serialize into + field group to serialize + + + + Serializes the Filed Group discrete property + + Xml writer to serialize into + Feild Group + + + + Serialize cache olap hierarchy collections + + xml writer to write items + cache item to serialize. + + + + Serialize pivot cache extension + + xml writer to write items + cache item to serialize. + + + + Serializes Pivot Key Performance Indicators (KPIs) defined in the OLAP. + + xml writer to write items + cache item to serialize. + + + + Serializes PivotTable OLAP dimension collection. + + xml writer to write items + cache item to serialize. + + + + Serializes the PivotTable OLAP measure group - Dimension maps. + + xml writer to write items + cache item to serialize. + + + + Serializes the PivotTable OLAP Dimension maps. + + xml writer to write items + cache item to serialize. + + + + collects the item index of calculated item + + field contains caluclated item + + + + Serializes attribute if it differs from default value. + + XmlWriter to serialize into. + Attribute name. + Attribute value. + Default value. + + + + Index of the data field. + + + + + Serializes pivot table object in xml format. + + XmlWriter to serialize into. + Pivot table to serialize. + + + + Serialize the row items of pivottableDefinition.xml + + + + + + + + Serialize the column items of PivottableDefinition.xml + + + + + + + + Serializes the Extern List of Pivot table Definition. + + Xml writer to serialize the chart formats into. + pivot table to serialize the filters + + + + Serializes the Chart format elements associated with the pivot table fields. + + Xml writer to serialize the chart formats into. + pivot table to serialize the filters + + + + Serializes the Custom format elements of the pivot table fields. + + Xml writer to serialize the custom formats into. + pivot table to serialize the filters + + + + Serializes the filters elements of the pivot table fields. + + Xml writer to serialize the fileter into. + pivot table to serialize the filters + + + + Serialize the filter of the pivot filters. + + XmlWriter to serialize the pivot table into. + pivot table object to serialize. + + + + Serialize the filter of the pivot filters. + + XmlWriter to serialize the pivot table into. + pivot table object to serialize. + + + + Serialize the filter of the pivot filters. + + XmlWriter to serialize the pivot table into. + pivot table object to serialize. + + + + Serialize the Custom filters of the Filter Column. + + XmlWriter to serialize the pivot table into. + pivot table object to serialize. + + + + Serialize the custom filter of the custom filters. + + XmlWriter to serialize the pivot table into. + pivot table object to serialize. + + + + Serialize the color filter of the Filter Column. + + XmlWriter to serialize the pivot table into. + pivot table object to serialize. + + + + Serialize the custom filter of the custom filters. + + XmlWriter to serialize the pivot table into. + pivot table object to serialize. + + + + Serialize the dynamic filter of the custom filters. + + XmlWriter to serialize the pivot table into. + dynamic filter of pivot table to serialize. + + + + Serialize the conditional Formats of the pivot table. + + XmlWriter to serialize the pivot table into. + pivot table object to serialize. + + + + Serializes pivot style. + + XmlWriter to serialize pivot style into. + Pivot table to serialize style for. + + + + Serializes row fields. + + XmlWriter to serialize row fields into. + Pivot table to serialize row fields for. + + + + Serailizes column fields. + + XmlWriter to serialize into. + Pivot table to serialize column fields for. + + + + Serializes fields (row or column). + + XmlWriter to serialize fields into. + Pivot table to serialize fields for. + Field axis to detect fields to serialize. + Tag name for the fields to use. + Tag for single field. + Indicates whether to add field used for data fields. + + + + Checks the is equal. + + The LST fields. + The copy indexs. + + + + Serializes column items. + + XmlWriter to serialize into. + List of field indexes to serialize. + Name of the main xml tag that will contain serialized fields. + Parent pivot table. + + + + Serializes data fields. + + XmlWriter to serialize fields into. + PivotTable to serialize data fields for. + + + + Return the Number Format Index Field. + + + + + + + + Serializes subtotal value. + + XmlWriter to serialize into. + Subtotal type to serialize. + + + + Serializes pivot fields. + + XmlWriter to serialize fields into. + Pivot table to serialize fields for. + + + + Serializes single pivot field. + + XmlWriter to serialize pivot field into. + Field to serialize. + + + + Serializes extension list of the pivot field. + + XmlWriter to serialize into. + PivotField to serialize. + + + + Serializes subtotal flags as set of pivot field attributes. + + XmlWriter to serialize into. + Subtotal options to serialize. + + + + Serializes single subtotal flag if necessary. + + XmlWriter to serialize into. + Subtotal options to serialize. + Single subtotal option to check. + Default option value. + Attribute name to store option value if necessary. + + + + Serializes data field special attributes. + + XmlWriter to serialize data field into. + Field to serialize. + + + + Serializes ordinary (not data) field special attributes. + + XmlWriter to serialize into. + Field to serialize. + + + + Gets the pivot field item value. + + DataType of the field item. + String value of the field item. + Item value converted to appropriate data type. + + + + Serializes the sorting scope of the pivot field. + + XmlWriter to serialize into. + pivot field obj + + + + Serializes subtotal items. + + XmlWriter to serialize into. + Subtotal values to serialize. + + + + Serializes subtotal items. + + XmlWriter to serialize into. + Subtotal values to serialize. + + + + Sorts field values. + + Cache field to sort items for. + Sorted list with field values: key - field value, value - item index. + + + + Sorts field values. + + Cache field to sort items for. + Custom sort list based on which sorting is to be done. + List with field values: key - field value, value - item index. + + + + Sorts field values. + + Pivot filed to sort items for. + Custom sort list based on which sorting is to be done. + List with field values: key - field value, value - item index. + + + + Sorts field values. + + Pivot filed to sort items for. + List with field values: key - field value, value - item index. + + + + Sorts pivot inner items. + + Pivot inner items. + Pivot table. + List with field values: key - field value, value - item index. + + + + Serializes pivot table location. + + XmlWriter to serialize location into. + Pivot table to serialize location for. + + + + Serializes the OLAP hierarchies associated with the PivotTable. + + Xml writer to serialize the chart formats into. + pivot table to serialize the filters + + + + Serializes references to OLAP hierarchies on the row axis of a PivotTable. + + Xml writer to serialize the chart formats into. + pivot table to serialize the filters + + + + Serializes references to OLAP hierarchies on the column axis of a PivotTable. + + Xml writer to serialize the chart formats into. + pivot table to serialize the filters + + + + This class represents value-index pair and used to sort pivot field values. + + + + + This class represents custom comparer to sort pivot field values based on custom sort list. + + + + + Represents the memory cache for a PivotTable report. + + + + + Gets the index number of the pivot cache within . Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use Index property in PivotCache. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + + //Gets the pivot cache's index number + int cacheIndex = cache.Index; + if(cacheIndex >= 0) + { + //Your Code Here + } + + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets a value from that identifies the type of item being published. Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use SourceType property in PivotCache. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + + //Gets a value that identifies the type of item being published + ExcelDataSourceType cacheSourceType = cache.SourceType; + if(cacheSourceType == ExcelDataSourceType.Worksheet) + { + //Your Code Here + } + + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the data source for the PivotTable report. Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use SourceRange property in PivotCache. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + + //Gets the data source range for the Pivot cache + IRange cacheSourceRange = cache.SourceRange; + if(cacheSourceRange != null) + { + //Your Code Here + } + + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Represents the collection of memory caches from the PivotTable reports in a workbook. + + + + + Adds a new PivotTable cache to a collection. + + that contains data to cache. + Returns a . + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to add a cache to PivotCaches collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + + //Adds a new PivotTable cache to a PivotCaches collection + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets number of pivot cache items in the collection. Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to get a Count of pivot cache collections. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("SamplePivot.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + //Gets number of pivot cache items in the collection + int pivotCachesCount = workbook.PivotCaches.Count; + if(pivotCachesCount > 0) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets a with the specified index from the collection. Read-only. + + Zero-based index of the cache to return. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use index property in PivotCache collections. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + + //Gets a pivot cache value from the index of the collection + ExcelDataSourceType cacheSourceType = workbook.PivotCaches[0].SourceType; + if(cacheSourceType == ExcelDataSourceType.Worksheet) + { + //Your Code Here + } + + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Represents a data field in pivot table report. + + + + + Set the previous value to BaseItem. + + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a SetPreviousBaseItem method in pivot data field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + IPivotDataField pivotDataField = pivotTable.DataFields[0]; + pivotDataField.ShowDataAs = PivotFieldDataFormat.Difference; + pivotDataField.BaseField = 1; + pivotDataField.BaseItem = 2; + + //Set the previous value to base item + pivotDataField.SetPreviousBaseItem(); + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Set the next value to BaseItem. + + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a SetNextBaseItem method in pivot data field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + IPivotDataField pivotDataField = pivotTable.DataFields[0]; + pivotDataField.ShowDataAs = PivotFieldDataFormat.Difference; + pivotDataField.BaseField = 1; + pivotDataField.BaseItem = 2; + + //Set the next value to base item + pivotDataField.SetNextBaseItem(); + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets name of the data field. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a Name property in pivot data field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + IPivotDataField pivotDataField = pivotTable.DataFields[0]; + + //Sets name of the data field + pivotDataField.Name = "SUM Marks"; + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the function used for data field. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a Subtotal property in pivot data field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + IPivotDataField pivotDataField = pivotTable.DataFields[0]; + + //Sets the subtotal function used for data field + pivotDataField.Subtotal = PivotSubtotalTypes.Average; + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the indicating how the pivot data is shown. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a ShowDataAs property in pivot data field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + IPivotDataField pivotDataField = pivotTable.DataFields[0]; + + //Sets the pivot table format indicating how the pivot data is shown + pivotDataField.ShowDataAs = PivotFieldDataFormat.PercentageOfTotal; + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the base item for a custom calculation. + + Valid only for data fields. To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a BaseItem property in pivot data field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + IPivotDataField pivotDataField = pivotTable.DataFields[0]; + pivotDataField.ShowDataAs = PivotFieldDataFormat.Difference; + + //Sets the base item for a custom calculation + pivotDataField.BaseItem = 2; + pivotDataField.BaseField = 1; + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the base field for a custom calculation. + + Valid only for data fields. To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a BaseField property in pivot data field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + IPivotDataField pivotDataField = pivotTable.DataFields[0]; + pivotDataField.ShowDataAs = PivotFieldDataFormat.Difference; + + //Sets the base field for a custom calculation + pivotDataField.BaseField = 1; + pivotDataField.BaseItem = 2; + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the number format for the pivot data field. + + The following code snippet illustrates how to use a NumberFormat property in pivot data field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + + //Sets number format for the pivot data field + pivotTable.DataFields[0].NumberFormat = "#,##0_);(#,##0)"; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Represents the collection of data fields from the PivotTable reports in a workbook. + + + + + Adds a new data field to the collection. + + The parent field to use. + The name for the new data field. + The subtotal function for the new data field. + Returns a . + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to add a pivot data field to the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + + //Adds a new data field to the PivotDataField collection + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets a with the specified index from the collection. Read-only. + + Zero-based index of the data field to return. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a index property in pivot data field collections. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + + //Gets a pivot data field with the specified index from the collection + IPivotDataField pivotDataField = pivotTable.DataFields[0]; + pivotDataField.Name = "SUM Marks"; + pivotDataField.Subtotal = PivotSubtotalTypes.Average; + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets a with the specified name from the collection. Read-only. + + Pivot data field name + + The following code illustrates how to get the pivot table data field by data field name. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + + //Gets a pivot data field with the specified name from the collection + IPivotDataField pivotDataField = pivotTable.DataFields["Sum of Marks"]; + pivotDataField.Name = "SUM Marks"; + pivotDataField.Subtotal = PivotSubtotalTypes.Average; + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the number of data fields in this collection. Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a Count property of the pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("SamplePivot.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + //Gets the number of data fields in this collection + int pivotDataFieldsCount = pivotSheet.PivotTables[0].DataFields.Count; + if(pivotDataFieldsCount > 0) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Represents a field in a PivotTable report. + + + + + Sorts pivot field items in the given order. + + Array of strings to be sorted. + + To know more about Pivot Tables refer this link. + + + The following code illustrates sorting of pivot field items based on custom set of strings. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField pivotField = pivotTable.Fields[1]; + + //Sorts pivot field items in the given order + pivotField.Sort(new string[5] { "Breto", "Marson", "Jack", "Andrew", "Sam" }); + + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Sorts pivot row or column values in the given sort type. + + Type of sort that is applied to this field. + Row or Column number of the pivot table that the sort is applied to. + + The following code illustrates sorting of pivot row and column values based on sort type. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open(@"PivotData.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IPivotTable pivotTable = worksheet.PivotTables[0]; + + //Pivot table row sorting. + IPivotField columnField = pivotTable.ColumnFields[0]; + columnField.AutoSort(PivotFieldSortType.Ascending, 1); + + //Pivot table column sorting. + IPivotField rowField = pivotTable.RowFields[0]; + rowField.AutoSort(PivotFieldSortType.Descending, 1); + + workbook.SaveAs("Output.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the name of the pivot field. + + + To know more about Pivot Tables refer this link. + + The following code illustrates the use of Name property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets the name of the pivot field + pivotTable.Fields[0].Name = "StudentID"; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the of pivot field. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to sets the field axis in pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets the axis of the pivot field + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the in current pivot field. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to get pivot field group and use it for date time grouping. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Input.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:C8"]); + + //Create "PivotTable1" with the cache at the specified range + IPivotTable pivotTable = worksheet.PivotTables.Add("PivotTable1", worksheet["A1"], cache); + + //Get the pivot group field from pivot field. + IPivotFieldGroup fieldGroup = pivotTable.Fields[0].FieldGroup; + + //Set the pivot field group type. + fieldGroup.GroupBy = PivotFieldGroupType.Months; + + //Set the pivot field group start date. + fieldGroup.StartDate = new DateTime(2023,5,20) + + //Set the pivot field group end date. + fieldGroup.EndDate = new DateTime(2023,10,3); + + workbook.SaveAs("Output.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + } + + + + + + Gets or sets the Filter value of Page fields. + + + To know more about Pivot Tables refer this link. + + + + + Gets or sets the number format for the pivot field. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use the number format in pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets number format for the pivot field + pivotTable.Fields[2].NumberFormat = "#,##0_);(#,##0)"; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the used for pivot field. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use Subtotals property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 88; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + + //Sets the subtotal function used for pivot field + pivotTable.Fields[1].Subtotals = PivotSubtotalTypes.Count; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether the subtotal is positioned at the top. The default value is True. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use ShowSubtotalAtTop property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 88; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + + //Sets the subtotal function used for pivot field + pivotTable.Fields[1].ShowSubtotalAtTop = false; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating if user can drag field to row area. + The default value is True. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use CanDragToRow property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets a Boolean value indicating if user can drag field to row area + pivotTable.Fields[0].CanDragToRow = false; + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating if user can drag field to column area. + The default value is True. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use CanDragToColumn property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets a Boolean value indicating if user can drag field to column area + pivotTable.Fields[0].CanDragToColumn = false; + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating if user can drag field to page area. + The default value is True. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use CanDragToPage property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets a Boolean value indicating if user can drag field to page area + pivotTable.Fields[0].CanDragToPage = false; + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating if user can remove field from view. + The default value is True. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use CanDragOff property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets a Boolean value indicating if user can remove field from view + pivotTable.Fields[0].CanDragOff = false; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Page; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating if a blank row is inserted + after the specified row field in a PivotTable report. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use ShowBlankRow property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 88; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + + //Sets a Boolean value to insert a blank row after the specified row field + pivotTable.Fields[1].ShowBlankRow = true; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating if the specified field can be dragged to the data position. + The default value is True. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use CanDragToData property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets a Boolean value indicating if user can drag field to data position + pivotTable.Fields[0].CanDragToData = false; + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets a Boolean value indicating if this field is formula field. Read-only. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use IsFormulaField property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark1"; + sheet.Range["D1"].Text = "Mark2"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Number = 87; + sheet.Range["D3"].Number = 68; + sheet.Range["D4"].Number = 98; + sheet.Range["D5"].Number = 45; + sheet.Range["D6"].Number = 70; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.CalculatedFields.Add("AverageMark", "(Mark1+Mark2)"); + field.Formula = "(Mark1+Mark2)/2"; + + //Gets a Boolean value indicating if this field is formula field + bool isFormula = field.IsFormulaField; + if(isFormula) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the formula for the calculated field. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use Formula property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark1"; + sheet.Range["D1"].Text = "Mark2"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Number = 87; + sheet.Range["D3"].Number = 68; + sheet.Range["D4"].Number = 98; + sheet.Range["D5"].Number = 45; + sheet.Range["D6"].Number = 70; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.CalculatedFields.Add("AverageMark", "(Mark1+Mark2)"); + + //Sets the formula for the calculated field + field.Formula = "(Mark1+Mark2)/2"; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection for the pivot field. Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use PivotFilters property in the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + IPivotField field = pivotTable.Fields[1]; + + //Adds filter with Value/Label based on the specified filter values + field.PivotFilters.Add(PivotFilterType.ValueBetween, field, "50", "80"); + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets which are the individual data entries in a field category. + Read-only. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a Items property in pivot field item. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Gets the field item from the collection based on the specified text + IPivotField pivotField = pivotTable.Fields[1]; + pivotField.Items["Andrew"].Position = 4; + + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the position of the field (first,second,third and so on) among all the fields in its Axis (Row,Column,Page,Data). + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use Position property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + + //Sets the position of the field + pivotTable.Fields[0].Position = 1; + pivotTable.Fields[1].Position = 0; + + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether newly added pivot table items should be tracked when manual filtering is applied to pivot field. If a Boolean value is true newly added items are included into the manual layout of the pivot table. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use IncludeNewItemsInFilter property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 88; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + + //Sets a Boolean value to include the newly added items in manual layout + pivotTable.Fields[1].IncludeNewItemsInFilter = true; + + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + + Get or set a Boolean value indicating whether the Quarters and Years fields are applied to a date field or not. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to use EnableQuartersandYears property in pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Date"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Value = "7/23/2014"; + sheet.Range["A3"].Value = "1/13/2015"; + sheet.Range["A4"].Value = "8/1/2016"; + sheet.Range["A5"].Value = "6/15/2017"; + sheet.Range["A6"].Value = "5/30/2018"; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 88; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + + //Get or set the Quarters and Years fields for a date field in a pivot table. + pivotTable.Fields[0].EnableQuartersAndYears = true; + + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Represents a collection of in the pivot table. + + + + + Gets the number of pivot fields in the pivot table. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a Count property of the pivot field. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("SamplePivot.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + //Gets the number of pivot fields in the pivot table + int pivotFieldCount = pivotSheet.PivotTables[0].Fields.Count; + if(pivotFieldCount > 0) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the from the collection with the specified index. Read-only. + + Item index to return. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a index property in pivot field collections. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Gets the pivot field from the collection with the specified index + IPivotField pivotField = pivotTable.Fields[2]; + pivotField.NumberFormat = "#,##0_);(#,##0)"; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the from the collection with the specified name. Read-only. + + Name of the item to return. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a name as index in pivot field collections. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Gets the pivot field from the collection with the specified name + IPivotField pivotField = pivotSheet.PivotTables[0].Fields["Mark(Out of 100)"]; + pivotField.NumberFormat = "#,##0_);(#,##0)"; + pivotTable.Fields["Student Name"].Axis = PivotAxisTypes.Row; + pivotTable.Fields["Student City"].Axis = PivotAxisTypes.Column; + + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Represents a PivotTable on a worksheet. + + + + + Clears all the fields, deletes all filtering and sorting applied to the PivotTable. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to clear the all fields, filters and sorting using ClearTable method. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + + //Clears all the fields, deletes all filtering and sorting applied to the PivotTable + pivotTable.ClearTable(); + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Get cell format for the given pivot range. + + Pivot range to get the cell format. + Pivot cell format + + Following code snippet illustrates how to get pivot cell format from the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + + //Get the cell format for "A1" pivot range. + IPivotCellFormat cellFormat = pivotTable.GetCellFormat("A1"); + cellFormat.BackColor = ExcelKnownColors.Red; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Draws a layout for the pivot table. + + This property is not supported in UWP, Xamarin and ASP.NET Core platforms. To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to layout a pivot table similar to MS Excel. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + + //The following code sample must be included to XlsIO layout the pivot table like MS Excel. + pivotTable.Layout(); + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the pivot table name. This property allows you to Read and Write a pivot table name. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how the use of Name property in pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets the pivot table name + pivotTable.Name = "Sample Pivot Table"; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection of . Read-only. + + + To know more about Pivot Tables refer this link. + + The following code illustrates the use of Fields property in pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Name = "Sample Pivot Table"; + + //Sets the value for pivot field using index from pivot fields collection + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection of in pivot table. Read-only. + + + To know more about Pivot Tables refer this link. + + The following code illustrates the use of DataFields property in pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Name = "Sample Pivot Table"; + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + + //Add the DataField to the Data fields collection + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets value indicating whether the PivotTable contains + row with grand totals for columns (same as RowGrand in VBA). + Default value is true. + + + To know more about Pivot Tables refer this link. + + The following code illustrates how to access the RowGrand property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets value indicating whether the PivotTable contains row with grand totals for columns + pivotTable.RowGrand = false; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets value indicating whether the PivotTable contains + column with grand totals for rows (same as ColumnGrand in VBA). + Default value is true. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ColumnGrand property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets value indicating whether the PivotTable contains column with grand totals for rows + pivotTable.ColumnGrand = false; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether to toggle the display of + drill indicators in the PivotTable. Default value is true. + + To know more about Pivot Tables refer this link. + + Following code illustrates how to access the ShowDrillIndicators property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 88; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + + //Sets a Boolean value to display of drill indicators in the PivotTable + pivotTable.ShowDrillIndicators = false; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether filter buttons and pivot field + captions for rows and columns are displayed in the grid. + The default value is True. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates use of DisplayFieldCaptions property in the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets a Boolean value to pivot field captions are displayed in the grid + pivotTable.DisplayFieldCaptions = false; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether labels must be repeated on every page.The default value is True. + + True if row, column, and item labels appear on the first row of each page when + the specified PivotTable report is printed. False if labels are printed only on + the first page. To know more about Pivot Tables refer this link. + + + Following code illustrates use of RepeatItemsOnEachPrintedPage property in the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets a Boolean value indicating whether labels must be repeated on every page + pivotTable.RepeatItemsOnEachPrintedPage = true; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the of the pivot table. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the BuiltInStyle property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + + //Sets the built-in style of the pivot table + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether the PivotTable contains grand totals for rows. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ShowRowGrand property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets a Boolean value to PivotTable contains grand totals for rows + pivotTable.ShowRowGrand = false; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether the PivotTable contains grand totals for columns. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ShowColumnGrand property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets a Boolean value indicating whether the PivotTable contains grand totals for columns + pivotTable.ShowColumnGrand = false; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the index number of the PivotTable cache. Read-only. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the CacheIndex property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cacheStuName = workbook.PivotCaches.Add(sheet["A1:C3"]); + IPivotCache cacheStuMark = workbook.PivotCaches.Add(sheet["A1:C4"]); + IPivotCache cacheStuMarkName = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cacheStuMarkName); + + //Gets the index number of the PivotTable cache + int pivotCacheIndex = pivotTable.CacheIndex; + if(pivotCacheIndex >= 0) + { + //Your Code Here + } + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets of pivot table location in the worksheet. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the Location property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Sets the pivot table location in the worksheet + pivotTable.Location = pivotSheet["B2"]; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the of pivot table. Read-only. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the Options property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + //Gets the pivot table options + IPivotTableOptions pivotTableOptions = pivotTable.Options; + pivotTableOptions.ColumnHeaderCaption = "Student Details"; + pivotTableOptions.RowHeaderCaption = "Student Records"; + + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the number of rows per page for this PivotTable that the filter area will occupy. Read-only. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the RowsPerPage property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + //Gets the number of rows per page for this PivotTable + int rowsPerPage = pivotSheet.PivotTables[0].RowsPerPage; + if(rowsPerPage != 0) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the number of columns per page for this PivotTable that the filter area will occupy. Read-only. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ColumnsPerPage property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + //Gets the number of columns per page for this PivotTable + int columnPerPage = pivotSheet.PivotTables[0].ColumnsPerPage; + if(columnPerPage != 0) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection of in the pivot table. Read-only. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the CalculatedFields property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark1"; + sheet.Range["D1"].Text = "Mark2"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Number = 87; + sheet.Range["D3"].Number = 68; + sheet.Range["D4"].Number = 98; + sheet.Range["D5"].Number = 45; + sheet.Range["D6"].Number = 70; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + + //Gets the collection of calculated fields in the pivot table + IPivotCalculatedFields calculatedFields = pivotTable.CalculatedFields; + calculatedFields.Add("AverageMark", "(Mark1+Mark2)/2"); + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection of in the pivot table. Read-only. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the PageFields property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 88; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Page; + + //Gets the collection of page fields in the pivot table + IPivotFields pageFields = pivotTable.PageFields; + pageFields[0].CanDragToRow = false; + + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection of in the pivot table. Read-only. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the RowFields property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 88; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + + //Gets the collection of row fields in the pivot table + IPivotFields rowFields = pivotTable.RowFields; + rowFields[0].CanDragToColumn = false; + + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection of in the pivot table. Read-only. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ColumnFields property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 88; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + + //Gets the collection of row fields in the pivot table + IPivotFields columnFields = pivotTable.ColumnFields; + columnFields[0].CanDragToRow = false; + + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether the PivotTable data fields are shown in rows. + + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to access the ShowDataFieldInRow property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 88; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + + //Sets a Boolean value to the PivotTable data fields are shown in rows + pivotTable.ShowDataFieldInRow = true; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the of the pivot table. + + This property is not supported in UWP, Xamarin and ASP.NET Core platforms. To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use PivotEngineValues property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Column; + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + pivotTable.Layout(); + + //Gets the pivot engine of the pivot table + Syncfusion.XlsIO.Implementation.PivotAnalysis.PivotEngine pivotEngine = pivotTable.PivotEngineValues; + if(pivotEngine != null) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Represents collection of in the worksheet. + + + + + Adds a to the collection. + + Name of the pivot table. + Pivot table location. + Pivot cache of the pivot table. + Returns the pivot table object. + + To know more about Pivot Tables refer this link. + + + Following code illustrates how to add pivot table using Add method. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:C6"]); + + //Adds a pivot table to the collection + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Removes pivot table with specified name from this collection. + + Name of the pivot table to remove. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use Remove method in the pivot table collections. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("SamplePivot.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + //Removes pivot table with specified name from this collection + pivotSheet.PivotTables.Remove("PivotTable1"); + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Removes a pivot table with the specified index from this collection. + + Index of the pivot table to remove. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use RemoveAt method in the pivot table collections. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("SamplePivot.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + //Removes a pivot table with the specified index from this collection + pivotSheet.PivotTables.RemoveAt(0); + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets a number of pivot tables in the worksheet. + + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a Count property of the pivot table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("SamplePivot.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + //Gets a number of pivot tables in the worksheet + int pivotTableCount = pivotSheet.PivotTables.Count; + if(pivotTableCount > 0) + { + //Your Code Here + } + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets a from the collection with the specified index. + + Zero-based index of the pivot table. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use a index property of the pivot table collections. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("SamplePivot.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + //Gets a pivot table from the collection with the specified index + IPivotTable pivotTable = pivotSheet.PivotTables[0]; + pivotTable.Name = "Sample Pivot Table"; + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleDark10; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Gets a from the collection with the specified name. + + Name of the pivot table. + To know more about Pivot Tables refer this link. + + + Following code snippet illustrates how to use name property in the pivot table collections. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("SamplePivot.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + //Gets a pivot table from the collection with the specified name + IPivotTable pivotTable = pivotSheet.PivotTables["PivotTable1"]; + pivotTable.Name = "Sample Pivot Table"; + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleDark10; + + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Class used for optimized row height evaluation. + + + + + List with height of the rows. + + + + + Method used to get size of the measured items. + + + + + Initializes new instance of the class. + + Delegate used to get size of the items. + + + + Returns height of all rows starting from the first one and finishing specified row. + + One-based row index. + Sum of height of all rows till rowIndex (included). + + + + Returns height of all rows starting from the first one and finishing specified row. + + One-based row index. + Sum of height of all rows till rowIndex (included). + + + + Update the column index value in the array. + + + + + Update the Row index value in the array. + + + + + Gets size starting from rowStart and ending rowEnd (both included). + + Index of the first item to measure. + Index of the last item to measure. + Total size starting from rowStart and ending rowEnd (both included). + + + + Evaluates size of the specified item. + + Item's index. + Size of the specified item. + + + + Evaluates size of the specified item. + + Item's index. + Size of the specified item. + + + + Delegate used to get size of the single object by its index. + + Item's index to get size for. + Size of the specified item. + + + + Class used for implementing Advanced Encryption Standard algorithm. + + + + + Initializes a new instance of the Aes class. + + Key size. + Key bytes + + + + Encipher 16 bit input + + 16 bit Input + Output value + + + + Decipher 16-bit input + + + + + + + Dump + + + + + Dump key. + + + + + + Dump two by two. + + + + + + + Possible key sizes. + + + + + 128-bit. + + + + + 192-bit. + + + + + 256-bit. + + + + + Default header size. + + + + + Header length. + + + + + List with transform references. + + + + + Initializes new instance. + + + + + Initializes new instance of DataSpaceDefinition. + + Stream to get data from. + + + + Serializes dataspace definition into the stream. + + Stream to serialize into. + + + + List with transform references. + + + + + Size of the header. + + + + + Map entries. + + + + + Default constructor. + + + + + Initializes new instance of the DataSpaceMap. + + Stream to get data from. + + + + Serializes dataspace map into the steram. + + Stream to serialize into. + + + + Map entries. + + + + + List of the reference components. + + + + + DataSpace name. + + + + + Default constructor. + + + + + Initializes new instance of the map entry. + + Stream to get data from. + + + + Serializes single dataspace map entry into the stream. + + Stream to serialize into. + + + + List of the reference components. + + + + + DataSpace name. + + + + + Component type. + + + + + Component name. + + + + + Initializes new instance of the reference component. + + Component type. + Component name. + + + + Initializes new instance of the component reference. + + Stream to get data from. + + + + Serializes object into stream. + + Stream to serialize into. + + + + Component type. + + + + + Component name. + + + + + Represents Encryption Header + + + + + An EncryptionHeaderFlags structure that specifies properties of the encryption algorithm used. + + + + + Reserved, MUST be 0x00000000. + + + + + A signed integer that specifies the encryption algorithm. + + + + + A signed integer that specifies the hashing algorithm in concert with the Flags.fExternal bit. + + + + + An unsigned integer that specifies the number of bits in the encryption key. + MUST be a multiple of 8. + + + + + An implementation specified value which corresponds to constants accepted by + the specified CSP. MUST be compatible with the chosen CSP. + + + + + Undefined and MUST be ignored. + + + + + MUST be 0x00000000 and MUST be ignored. + + + + + A null-terminated Unicode string that specifies the CSP name. + + + + + Default constructor. + + + + + Initializes new instance of the header and extracts its data from the stream. + + Stream to get data from. + + + + Extracts item's data from the specified stream. + + Stream to get data from. + + + + Serialize item in the specified stream. + + Stream to serialize data into. + + + + An EncryptionHeaderFlags structure that specifies properties of the encryption algorithm used. + + + + + Reserved, MUST be 0x00000000. + + + + + A signed integer that specifies the encryption algorithm. + + + + + A signed integer that specifies the hashing algorithm in concert with the Flags.fExternal bit. + + + + + An unsigned integer that specifies the number of bits in the encryption key. + MUST be a multiple of 8. + + + + + An implementation specified value which corresponds to constants accepted by + the specified CSP. MUST be compatible with the chosen CSP. + + + + + Undefined and MUST be ignored. + + + + + MUST be 0x00000000 and MUST be ignored. + + + + + A null-terminated Unicode string that specifies the CSP name. + + + + + Represents the Encryption Info + + + + + A Version structure where Version.vMajor MUST be 0x0003, and Version.vMinor MUST be 0x0002. + + + + + A copy of the Flags stored in the EncryptionHeader field of this structure. + + + + + An EncryptionHeader structure that specifies parameters used to encrypt data. + + + + + An EncryptionVerifier structure. + + + + + This structure specifies parameters to encrypt the Key. + + + + + This structure specifies parameters to ensure the data integrity. + + + + + This structure specifies parameters to Encrypt the Data. + + + + + Default constructor. + + + + + Initializes new instance. + + Stream to get data from. + + + + Serializes object into stream. + + Stream to serialize into. + + + + This structure specifies parameters to encrypt the Key. + + + + + This structure specifies parameters to ensure the data integrity. + + + + + This structure specifies parameters to Encrypt the Data. + + + + + A Version structure where Version.vMajor MUST be 0x0003, and Version.vMinor MUST be 0x0002. + + + + + A copy of the Flags stored in the EncryptionHeader field of this structure. + + + + + An EncryptionHeader structure that specifies parameters used to encrypt data. + + + + + An EncryptionVerifier structure. + + + + + Transform name. + + + + + Block size. + + + + + Cipher mode. + + + + + Reserved. + + + + + Default constructor. + + + + + Initializes new instance of the class. + + Stream to get data from. + + + + Serializes object into stream. + + Stream to serialize into. + + + + Transform name. + + + + + Block size. + + + + + Cipher mode. + + + + + Reserved. + + + + + Represents the Encryption Verifier + + + + + An array of bytes that specifies the salt value used during password hash + generation. MUST NOT be the same data used for the verifier stored encrypted + in the EncryptedVerifier field. + + + + + MUST be the randomly generated Verifier value encrypted using the algorithm + chosen by the implementation. + + + + + An array of bytes that contains the encrypted form of the hash of the randomly + generated Verifier value. The length of the array MUST be the size of the + encryption block size multiplied by the number of blocks needed to encrypt + the hash of the Verifier. If the encryption algorithm is RC4, the length + MUST be 20 bytes. If the encryption algorithm is AES, the length MUST be 32 bytes. + + + + + Size of the verifier hash. + + + + + Default constructor. + + + + + Initializes new instance of the verifier. + + Stream to get data from. + + + + Extracts object from stream. + + Stream to get data from. + + + + Serializes object into stream. + + Stream to serialize into. + + + + An array of bytes that specifies the salt value used during password hash + generation. MUST NOT be the same data used for the verifier stored encrypted + in the EncryptedVerifier field. + + + + + MUST be the randomly generated Verifier value encrypted using the algorithm + chosen by the implementation. + + + + + An array of bytes that contains the encrypted form of the hash of the randomly + generated Verifier value. The length of the array MUST be the size of the + encryption block size multiplied by the number of blocks needed to encrypt + the hash of the Verifier. If the encryption algorithm is RC4, the length + MUST be 20 bytes. If the encryption algorithm is AES, the length MUST be 32 bytes. + + + + + Gets/sets size of the verifier hash. + + + + + Represents the Alogrithms. + + + + + Represents the SHA1 Hash Algorithm. + + + + + Represents the SHA256 Hash Algorithm. + + + + + Represents the SH512 Hash Algorithm. + + + + + This class contains utility methods used by Excel 2007 security implementation. + + + + + Represents the Excel 2010 encrypted version. + + + + + Number of iterations used for key generation. + + + + + Name of encryption info stream. + + + + + Name of dataspaces storage. + + + + + Name of dataspace map stream. + + + + + Name of the transform primary stream. + + + + + Name of dataspace info storage. + + + + + Name of transform info storage. + + + + + Name of encrypted package stream. + + + + + Reads Int32 value from the stream. + + Stream to get data from. + Temporary buffer to put extracted bytes into. + Extracted Int32 value. + + + + Extracts padded unicode string from a stream. + + Stream to get data from. + Extracted string. + + + + Read zero-terminated string from the stream. + + Stream to get string from. + Extracted string (without trailing zero). + + + + Writes Int32 value into the stream. + + Stream to put data into. + Value to write. + + + + Writes padded unicode string from a stream. + + Stream to get data from. + Value to write. + + + + Writes zero-terminated string into the stream. + + Stream to put string into. + Value to write. + + + + Creates key object based on the salt and password. + + Password to use. + Salt to use. + Required key length. + Array with created key. + + + + Encrypts/decrypts buffer with specified method. + + Data to process. + Method to use. + Size of the encryption block. + Modified (encrypted/decrypted) data. + + + + Combines two arrays into one. + + The first buffer to combine. + The second buffer to combine. + Combined array. + + + + An unsigned integer that specifies the type of transform to be applied. + + + + + An identifier associated with a specific transform. + + + + + The friendly name of the transform. + + + + + The reader version. + + + + + The updater version. + + + + + The writer version. + + + + + Default constructor. + + + + + Initializes new instance of the class. + + Stream to get data from. + + + + Serializes object into stream. + + Stream to serialize into. + + + + An unsigned integer that specifies the type of transform to be applied. + + + + + An identifier associated with a specific transform. + + + + + The friendly name of the transform. + + + + + The reader version. + + + + + The updater version. + + + + + The writer version. + + + + + The functionality for which the DataSpaceVersionInfo structure specifies + version information. MUST be "Microsoft.Container.DataSpaces". + + + + + The reader version of the data spaces structure. + + + + + The updater version of the data spaces structure. + + + + + The writer version of the data spaces structure. + + + + + Default constructor. + + + + + Serializes object into specified stream. + + Stream to serialize into. + + + + The functionality for which the DataSpaceVersionInfo structure specifies + version information. MUST be "Microsoft.Container.DataSpaces". + + + + + The reader version of the data spaces structure. + + + + + The updater version of the data spaces structure. + + + + + The writer version of the data spaces structure. + + + + + This class represents Checkbox form control. + + + + + This interface represents TextBox form control shape. + + + + + Indicates whether check box is checked. + + + By default, is set to CheckState property. Here for example, we + set to CheckState. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + ICheckBoxShape checkbox = worksheet.Shapes.AddCheckBox(); + + //Set checkbox state + checkbox.CheckState = ExcelCheckState.Checked; + + //Set text + checkbox.Text = "Checkbox select"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Indicates the cell in which the option button points to + + + The following code illustrates how to set LinkedCell for the checkbox. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + ICheckBoxShape checkbox = worksheet.Shapes.AddCheckBox(); + + //Set linked cell + checkbox.LinkedCell = worksheet["C7"]; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Correct shape instance. + + + + + Correct shape version. + + + + + Indicates whether check box is checked. + + + + + Stores formula link value. + + + + + Indicates whether check box button is firstbutton. + + + + + Initialize new instance of the text box shape. + + Application object for the new shape. + Parent object for the new shape. + + + + Initializes new instance of the text box shape. + + Application object for the new shape. + Parent object for the new shape. + Shape's container. + Parsing options. + + + + Initializes shape items. + + + + + This method is called inside of PrepareForSerialization to make shape-dependent preparations. + + + + + Serializes current shape. + + Container that will receive this comment. + + + + Serializes comment's options. + + Parent record for options. + All options in MsofbtOPT record. + + + + Creates default options. + + MsofbtOPT record + + + + Parses client data record. + + Record to parse. + Parse options. + + + + Creates a clone of the current shape. + + New parent for the shape object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Indicates whether we should add created + shape into all necessary parent collections. + A copy of the current shape. + + + + Horizontal alignment of the text. + + + + + Vertical alignment of the text. + + + + + Text rotation. + + + + + Get object that represents the hyperlink for the shape. + + + + + Indicates whether check box is checked. + + + + + Gets or sets formula link value. + + + + + indicates whether the option button is in 3D shading + + + + + Represents the data base property + + + + + Represent the source data file + + + + + The Query Table is automatically updated when open the workbook + + + + + Define connection command type + + + + + Define the connection commandtext + + + + + It's define th connection string + + + + + It's desine the background query process + + + + + Represent the number of minutes between refreshes + + + + + Save the password for implement the odbc connection + + + + + Represent the connection file + + + + + Represent the enable refresh + + + + + It's defind the server credential + + + + + Represent the source Data File + + + + + The Query Table is automatically updated when open the workbook + + + + + Command Type for specified connection + + + + + Represent the command string for the specified data source + + + + + Define connection information + + + + + Query table performed Asynchronously + + + + + Represent the number of minutes between refreshes + + + + + Password information saved for ODBC connection + + + + + Connection file is always used to establish the connection to the DataSource + + + + + Connection can be refreshed by the user. + + + + + Represent the server credential. + + + + + Represents the external connection + + + + + Represent the connection source + + + + + Delete the connection from connection collection. + + + The following code illustrates how to delete a connnection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + //Set connection description + Connection.Description = "Sample Connection"; + + // Import data to the sheet from the database + table.Refresh(); + + //Remove Connection + Connection.Delete(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the connection name. + + + The following code illustrates how the name for the connection can be set and accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + // Import data to the sheet from the database + table.Refresh(); + + //Get Name + Console.WriteLine(Connection.Name); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Connection1 + + + + + + Gets or sets the connection description. + + + The following code illustrates how description for connection can be set and accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + // Import data to the sheet from the database + table.Refresh(); + + //Get Description + Console.WriteLine(Connection.Description); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Sample connection with MsAccess + + + + + + Gets or sets the connection range.read only + + + The following code illustrates how the range of the connection can be accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + //Set connection description + Connection.Description = "Sample Connection"; + + // Import data to the sheet from the database + table.Refresh(); + + //Get Range + Console.WriteLine(Connection.Range.AddressLocal.ToString()); + + //Remove Connection + Connection.Delete(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //A1:A2 + + + + + + Gets the oledb connection. + + + If connection type is ODBC then to customize connection properties property can be used. + + + If the connection type is OLEDB we can customize the properties of connection by accessing property. Here for + example, we get the command text and print it to console. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + //Set connection description + Connection.Description = "Sample Connection"; + + // Import data to the sheet from the database + table.Refresh(); + + //Get Command Text from OLEDB connection + Console.WriteLine(Connection.OLEDBConnection.CommandText); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Select * from tbltest + + + + + + Gets the odbc connection. + + + If connection type is ODBC then to customize connection properties property can be used. + + + If the connection type is ODBC we can customize the properties of connection by accessing property. Here for + example, we get the command text and print it to console. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "ODBC;DSN=MS Access;DBQ=C:\\Company\\DB\\Testing.mdb;DefaultDir=C:\\Company\\DB;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + //Set connection description + Connection.Description = "Sample Connection"; + + // Import data to the sheet from the database + table.Refresh(); + + //Get Command Text from ODBC connection + Console.WriteLine(Connection.ODBCConnection.CommandText); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Select * from tbltest + + + + + + Gets the connection id. + + This API is deprecated. Please use the the instead. + + + + Gets the connection id. + + + The following code illustrates how to access the connection id. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + //Set connection description + Connection.Description = "Sample Connection"; + + // Import data to the sheet from the database + table.Refresh(); + + //Get Connection ID + Console.WriteLine(Connection.ConnectionId); + + //Remove Connection + Connection.Delete(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //1 + + + + + + Represent the connection password event + + + + + Gets the connection database type. + + + The following code illustrates how to get the connection database type. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook= application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set Connection string for DataSource + string ConnectionString = "OLEDB;Provider=Microsoft.JET.OLEDB.4.0;Password=\"\";User ID=Admin;Data Source=AccessDB.mdb"; + + //Add a connection to the workbook + IConnection Connection = workbook.Connections.Add("Connection1", "Sample connection with MsAccess", ConnectionString, "", ExcelCommandType.Sql); + + //Add a QueryTable to sheet object + IListObject table = worksheet.ListObjects.AddEx(ExcelListObjectSourceType.SrcQuery, Connection, worksheet.Range["A1"]); + + //Set Command Text for the Connection + table.QueryTable.CommandText = "Select * from tbltest"; + + //Set connection description + Connection.Description = "Sample Connection"; + + // Import data to the sheet from the database + table.Refresh(); + + //Get DataBase Type + Console.WriteLine(Connection.DataBaseType.ToString()); + + //Remove Connection + Connection.Delete(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //DataBaseType OLEDB + + + + + + External connection + + + + + + + Represent the connection name + + + + + Represent the connection description + + + + + Represent the connection id + + + + + It's define the connection file + + + + + Represent the source file + + + + + Represent the data base type + + + + + Represent the oledb connection + + + + + Represent the odbc connection + + + + + It's define the refreshed version + + + + + Represent connection is deleted or not + + + + + Represenet the background query + + + + + It's define the connection string + + + + + It's define whether the connection is used or not + + + + + Data base connection string + + + + + It's define the query table range + + + + + Represent the ODBC password + + + + + Olap maintain as Stream + + + + + Ext_Lst maintain as Stream + + + + + Represent textPr as stream + + + + + Represent the parameter collection. + + + + + Delete the connection from the connection collection. + + + + + Event + + + + + + + Dispose the connection + + + + + External connection + + + + + connection password events + + + + + Gets or sets the connection description. + + + + + Gets the connection id. + + This API is deprecated. Please use the the instead. + + + + Gets or sets the connection id. + + + + + Gets or sets the connection file. + + + + + Gets or sets the source file. + + + + + Gets or sets the Database Type. + + + + + Gets or sets the connection name. + + + + + Gets or sets the OLEDB Connection. + + + + + Gets or sets the ODBC connection. + + + + + Gets or sets the refreshed version. + + This API is deprecated. Please use the instead. + + + + Gets or sets the refreshed version. + + + + + Get or sets the value indicating whether the connection is deleted. + + + + + Gets or sets the value indicating whether the Query is asynchronus with DB. + + + + + Gets and sets connection string of respective connection type. + + + + + Gets or sets a value indicating whether the connection for query table exists. + + + + + Gets or sets the Database connection string. + + + + + Gets or sets the connection range. + + + + + Gets or sets the Password of External connection. + + This API is deprecated. Please use the instead. + + + + Gets or sets the Password of External connection. + + + + + Gets or sets the Olap Stream. + + + + + Gets or sets the Ext_Lst Stream + + + + + Represent the parameter collection. + + + + + Represents the collection of external connection + + + + + Represent the connection collection. + + + + + Add the connection to the workbook + + Connection Name + Connection Description + Connection String + Command Text + Command Type + Connection object for these parameters + + + + returns the connection + + + + + + + External connection collection + + + + + + + Connection added to workbook + + + + + Add connection + + + + + + + Add connection frm file + + + + + + + + Check the connection name + + + + + + Create OLEDB connection + + + + + + + + + Create ODBC connection + + + + + + + + + Find the Data source from the connection string + + + + + + + Check the connection string + + + + + + + Find the connection ID + + + + + + Dispose the connection collection + + + + + Represents the ODBC connection + + + + + External Connection + + + + + Constructor + + + + + + Represents the OLEDB connection + + + + + It define the external connection + + + + + Implement the OLEDB Connection for ExternalConnection + + + + + + Define connection information + + + + + Represents the Query table + + + + + Query table implementation + + + + + + + + Represent the external connection + + + + + It's define the database property + + + + + Represent the column width + + + + + It's define the connection availability + + + + + Provides info on queryfields associated with the query table + + + + + Gets or sets the GrowShrinkType + + + + + Delete the query table from the workbook + + + + + Converts Control unicode Character to ASCII . + + String Value. + Modified ASCII String. + + + + Gets the Connection for the Specified QueryTable. + + + + + Gets or sets a value indicating whether the Query Table is automatically updated when open the workbook. + + + + + Gets or sets the GrowShrinkType + + + + + Gets or sets the Command Type for specified connection. + + + + + Gets or sets the command string for the specified data source. + + + + + Gets or sets connection information. + + + + + Gets or sets a value indicating whether the Query table is performed Asynchronously + + + + + Gets or sets the Name of the Query Table. + + + + + Gets the connection ID. Read-Only + + This API is deprecated. Please use the instead. + + + + Gets the connection ID. Read-only + + + + + Gets or sets the Column width for QueryTable. + + + + + Represent the connection state + + + + + Gets or Sets the queryTableRefresh field + + + + + Gets the parameter collection. + + + + + Specifies the number of extra columns included at the left end of the field array that aren't bound to external data + + + + + Specifies the number of extra columns included at the right end of the Table that aren't bound to external data + + + + + Specifies the next available column id in table. + + + + + Specifies the list of fields in query table + + + + + Represents the parent query table object + + + + + Represents the preserveSortFilterLayout + + + + + Initializes a new instance of QueryTableRefresh class + + Represents parent Query table object + + + + Gets or Sets the number of extra columns included at the left end of the field array that aren't bound to external data + + + + + Gets or Sets the number of extra columns included at the right end of the Table that aren't bound to external data + + + + + Gets or sets the list of QueryFields + + + + + Gets or Sets the PreserverSortFilterLayout enable or not. + + + + + Denotes Next available ID for table column allocation + + + + + Represents the unique id for the query field + + + + + Represents the query field column name + + + + + Specifies the unique identifier for the table column if the query table is attached to a table object rather than just a range in the sheet + + + + + Specifies whether this column is a user-defined column or comes from the external data query + User defined columns shall be preserved during data refresh operations + User-defined columns are only supported on query tables that are attached to table objects + + + + + Represents the parent object + + + + + Initializes a new instance of Query table field + + Unique id for the query field + Unique id for the table column if the query table is attached to a table object rather than just a range in the sheet + Represents parent QueryTableRefresh object + + + + Gets or sets the QueryFieldId + + + + + Gets or Sets the query field name + + + + + Gets or Sets the unique identifier for the table column if the query table is attached to a table object rather than just a range in the sheet + + + + + Gets or Sets the databound field + + + + + Represents LogFont structure that defines the attributes of a font. + + + + + Specifies the height, in logical units, of the font's character cell or character. + The character height value (also known as the em height) is the character cell + height value minus the internal-leading value. + + + + + Specifies the average width, in logical units, of characters in the font. + If lfWidth is zero, the aspect ratio of the device is matched against the + digitalization aspect ratio of the available fonts to find the closest match, + determined by the absolute value of the difference. + + + + + Specifies the angle, in tenths of degrees, between the escapement vector + and the x-axis of the device. The escapement vector is parallel + to the base line of a row of text. + + + + + Specifies the angle, in tenths of degrees, between each character's base + line and the x-axis of the device. + + + + + Specifies the weight of the font in the range 0 through 1000. + For example, 400 is normal and 700 is bold. If this value is zero, + a default weight is used. + + + + + Specifies an italic font if set to TRUE. + + + + + Specifies an underlined font if set to TRUE. + + + + + Specifies a strikeout font if set to TRUE. + + + + + Specifies the character set. The following values are predefined. + + + + + Specifies the output precision. The output precision defines how closely + the output must match the requested font's height, width, character + orientation, escapement, pitch, and font type. + + + + + Specifies the clipping precision. The clipping precision defines how + to clip characters that are partially outside the clipping region. + + + + + Specifies the output quality. The output quality defines how carefully + the graphics device interface (GDI) must attempt to match the logical-font + attributes to those of an actual physical font. + + + + + Specifies the pitch and family of the font. The two low-order bits + specify the pitch of the font. Font families describe the look of + a font in a general way. They are intended for specifying fonts when + the exact typeface desired is not available. + + + + + A null-terminated string that specifies the typeface name of the font. + The length of this string must not exceed 32 characters, including + the terminating null character. The EnumFontFamiliesEx function can + be used to enumerate the typeface names of all currently available fonts. + If lfFaceName is an empty string, GDI uses the first font that matches + the other specified attributes. + + + + + Default constructor. + + + + + Contains information about an enumerated font. + + + + + Specifies a LOGFONT structure that contains values defining the font attributes. + + + + + Specifies a null-terminated string specifying the unique name of the font. + For example, ABC Font Company TrueType Bold Italic Sans Serif. + + + + + Specifies a null-terminated string specifying the style of the font. + For example, Bold Italic. + + + + + Specifies a null-terminated string specifying the script, that is, + the character set, of the font. For example, Cyrillic. + + + + + Converts byte array with zero terminated string data into string without ending zero character. + + String data. + Converted string. + + + + Returns font full name without ending zero character. Read-only. + + + + + Returns style name without ending zero character. Read-only. + + + + + Returns a LOGFONT structure that contains values defining the font attributes. Read-only. + + + + + + The EnumFontFamExProc function is an application definedcallback function + used with the EnumFontFamiliesEx function. It is used to process the fonts. + It is called once for each enumerated font. The FONTENUMPROC type defines + a pointer to this callback function. EnumFontFamExProc is a placeholder + for the application definedfunction name. + + + + + Contains some native32 functions used by XlsIO. + + + + + The EnumFontFamiliesEx function enumerates all fonts in the system that + match the font characteristics specified by the LOGFONT structure. + EnumFontFamiliesEx enumerates fonts based on typeface name, character set, or both. + + Handle to the device context. + + Pointer to a LOGFONT structure that contains information about the fonts + to enumerate. The function examines the following members. + + + Pointer to the application definedcallback function. + + + + + + + + This class contains native heap functions. + + + + + This function allocates a block of memory from a heap. The allocated memory is not movable. + + Handle to the heap from which the memory will be allocated. + Heap allocation options. + Number of bytes to be allocated. If the heap specified by + the hHeap parameter is a nongrowable heap, dwBytes must be less than 0x7FFF8. + You create a nongrowable heap by calling the HeapCreate function with a nonzero value. + + + + + Creates a heap object that can be used by the calling process. The function reserves + space in the virtual address space of the process and allocates physical storage for + a specified initial portion of this block. + + The heap allocation options. + The initial size of the heap, in bytes. This value + determines the initial amount of memory that is committed for the heap. + The value is rounded up to the next page boundary. The value must be smaller + than dwMaximumSize. If this parameter is 0, the function commits one page. + The maximum size of the heap, in bytes. + + + + + Destroys the specified heap object. It decommits and releases all the + pages of a private heap object, and it invalidates the handle to the heap. + + A handle to the heap to be destroyed. + If the function succeeds, the return value is nonzero. + + + + Frees a memory block allocated from a heap by the HeapAlloc or HeapReAlloc function. + + A handle to the heap whose memory block is to be freed. + The heap free options. + A pointer to the memory block to be freed. + If the function succeeds, the return value is nonzero. + + + + Reallocates a block of memory from a heap. This function enables you to + resize a memory block and change other memory block properties. + The allocated memory is not movable. + + A handle to the heap from which the memory is to be reallocated. + The heap reallocation options. + A pointer to the block of memory that the function reallocates. + The new size of the memory block, in bytes. A memory + block's size can be increased or decreased by using this function. + If the function succeeds, the return value is a pointer to + the reallocated memory block. + + + + This class contains some Win32 API functions for memory operations. + + + + + The MoveMemory function moves a block of memory from one location to another. + + Pointer to the starting address of the move destination. + Pointer to the starting address of the block of memory to be moved. + Size of the block of memory to move, in bytes. + + + + The RtlZeroMemory routine fills a block of memory with zeros, given a pointer + to the block and the length, in bytes, to be filled. + + Pointer to the memory to be filled with zeros. + Specifies the number of bytes to be zeroed. + + + + The CopyMemory function copies a block of memory from one location to another. + + Pointer to the starting address of the copied block's destination. + Pointer to the starting address of the block of memory to copy. + Size of the block of memory to copy, in bytes. + + + + The CopyMemory function copies a block of memory from one location to another. + + Pointer to the starting address of the copied block's destination. + Pointer to the starting address of the block of memory to copy. + Size of the block of memory to copy, in bytes. + + + + Contains Am Pm Token descriptions. + + + + + Base class for formula tokens. + + + + + Default regular expressions options: + + + + + Part of format. + + + + + Initializes a new instance of the FormatTokenBase class + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Tries to parse format string using regular expression. + + Regular expression to use. + Format string to parse. + Start index. + Position after parsing. + + + + Tries to parse format string using regular expression. + + Regular expression to use. + Format string to parse. + Start index. + Output regular expression match. + Position after parsing. + + + + Applies format to the value. + + Value to format. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Applies format to the value. + + Value to format. + Formatted value. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Searches for string from strings array in the format starting from the specified position. + + Array of strings to check. + String format to search in. + Start index in the format. + Indicates whether to ignore case. + String index or -1 if not found. + + + + This method is called after format string was changed. + + + + + Gets or sets format of the token. + + + + + Gets type of the token. Read-only. + + + + + Start of the token. + + + + + Start of the token. + + + + + Edge between AM and PM symbols. + + + + + AM symbol. + + + + + PM symbol. + + + + + Length of the token. + + + + + Initializes a new instance of the AmPmToken class + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Checks the AMPM is other pattern. + + + + + + + Returns type of the token. Read-only. + + + + + Class used for Asterix Token. + + + + + Default start character. + + + + + Initializes a new instance of the AsterixToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for Character Token. + + + + + Start of the token. + + + + + Initializes a new instance of the CharacterToken class + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for Color Tokens. + + + + + Class used for parsing Brackets. + + + + + Start character of the token. + + + + + End character of the token. + + + + + Initializes a new instance of the InBracketToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Tries to parse format string. + + Format string to parse. + Position of the first bracket. + Position to start parsing at. + Position of the end bracket. + Position after parsed block. + + + + Reserved keyword for color definition in excel number format. + + + + + Minimum possible color index. + + + + + Maximum possible color index. + + + + + Color increment. + + + + + Regex for color selecting. + + + + + Possible color values. + + + + + Color index. + + + + + Initializes a new instance of the ColorToken class + + + + + Tries to parse format string. + + Format string to parse. + Position of the first bracket. + Position to start parsing at. + Position of the end bracket. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Searches for color in the array of known colors. + + Format string. + Start index. + Index in the array of known colors or -1 if color was not found. + + + + Tries to get color number from format string. + + Format string + Index to start looking from. + End index of the token. + Extracted color index or -1 if color was not found. + + + + Returns type of the token. Read-only. + + + + + Class used for Condition Tokens. + + + + + All compare operations. + + + + + Indicates whether token should be formatted using am/pm time format. + + + + + Applied compare operation. + + + + + Initializes a new instance of the ConditionToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position of the first bracket. + Position to start parsing at. + Position of the end bracket. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Checks value with the condition. + + Value to check. + Value that indicates whether the condition is true for the value. + + + + Returns type of the token. Read-only. + + + + + Possible compare operators. + + + + + Class used for Culture Tokens. + + + + + Group in regular expression with locale id. + + + + + Group in regular expression with characters. + + + + + LocaleId value that indicates that we should use system settings instead of provided number format. + + + + + LocaleId value that indicates that we should use system settings instead of provided number format. + + + + + Regular expression for hours part of the format: + + + + + Locale id of the desired culture. + + + + + Character specifying the culture. + + + + + Initializes a new instance of the CultureToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Gets the culture info. Read-only. + + + + + Gets a value indicating whether we should ignore all following format tokens and use system date format. Read-only. + + + + + Gets a value indicating whether we should ignore all following format tokens and use system time format. Read-only. + + + + + Class used for describing Day Tokens. + + + + + Regular expression for minutes part of the format: + + + + + Format string in lower case. + + + + + Initializes a new instance of the DayToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for describing Dollor Tokens. + + + + + Start character of the token. + + + + + End character of the token. + + + + + Dollar character of the token. + + + + + Hypen Character. + + + + + Initializes a new instance of the InBracketToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for describing DecimalSeparatorToken. + + + + + Class used for character token. + + + + + Initializes a new instance of the SingleCharToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Gets format character. Read-only. + + + + + Format character. + + + + + Initializes a new instance of the DecimalPointToken class. + + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Format character. Read-only. + + + + + Returns type of the token. Read-only. + + + + + Class used for describing Digit Tokens. + + + + + Represents the Maximum number digit. + + + MS Excel allows maximum of 15 digit number. If it exceeds adds zero to exceeded number. + + + + + Indicates whether this digit is last in the sequence of digits + and all significant numbers should be displayed. + + + + + Initializes a new instance of the DigitToken class. + + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Gets single digit from number and updates number. + + Number to get digit from. + Extracted digit. + + + + Gets the single digit from Exponential Number. + + Number to get digit from. + Extracted digit. + + + + Returns string representation according to the current format and digit value. + + Value after removing current digit. + Digit to convert into string. + Indicates whether to show hidden symbols. + Converted value. + + + + Gets or sets a value indicating whether this digit is last in the sequence of digits + and all significant numbers should be displayed. Read-only. + + + + + Gets or sets a value indicating whether this digit is last in the sequence of digits. + + + + + Class used for Fraction tokens. + + + + + Format character. + + + + + Initializes a new instance of the FractionToken class. + + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Returns type of the token. Read-only. + + + + + Class used for organizing General Tokens. + + + + + Format string. + + + + + Initializes a new instance of the GeneralToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for 24 hour Token. + + + + + Regular expression for hours part of the format: + + + + + Initializes a new instance of the Hour24Token class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for Hour Token. + + + + + Defined 12hr format. + + + + + Long format. + + + + + Regular expression for hours part of the format: + + + + + Indicates whether token should be formatted using am/pm time format. + + + + + Initializes a new instance of the HourToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Gets or sets a value indicating whether token should be formatted using am/pm time format. + + + + + Class used for Significant Digit Tokens. + + + + + Format character. + + + + + Indicates that we shouldn't show string value if digit is zero. + + + + + Initializes a new instance of the InsignificantDigitToken class. + + + + + Returns string representation according to the current format and digit value. + + Value after removing specified digit. + Digit to convert into string. + Indicates whether to show hidden symbols. + Converted value. + + + + Returns type of the token. Read-only. + + + + + Format character. Read-only. + + + + + Gets or sets a value indicating whether to show string value if digit is zero. + + + + + Class used for MilliSecond Token. + + + + + Long format. + + + + + Represents Dot. + + + + + Default OleDateValue + + + + + Maximum OleDateValue + + + + + Maximum format length. + + + + + Initializes a new instance of the MilliSecondToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for Minute Token. + + + + + Long type of the format. + + + + + Default OleDateValue + + + + + Maximum OleDateValue + + + + + Regular expression for minutes part of the format: + + + + + Initializes a new instance of the MinuteToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + This method is called after format string was changed. + + + + + Returns type of the token. Read-only. + + + + + Class used for organizing Minutes since midnight. + + + + + Regular expression for hours part of the format: + + + + + Initializes a new instance of the MinuteTotalToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for Month Token. + + + + + Short year format. + + + + + Length of the format for full name of the month. + + + + + Length of the format for full name of the month. + + + + + Length of the format for full name of the month. + + + + + Format for long number month representation. + + + + + Regular expression for minutes part of the format: + + + + + Initializes a new instance of the MonthToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + This method is called after format string was changed. + + + + + Returns type of the token. Read-only. + + + + + Class used for Percent Token. + + + + + Format character. + + + + + Initializes a new instance of the PercentToken class. + + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Format character. Read-only. + + + + + Class used for placing reserved digit token. + + + + + Format character. + + + + + String to display when digit is 0 and ShowHiddenSymbols is set to False. + + + + + Initializes a new instance of the PlaceReservedDigitToken class. + + + + + Returns string representation according to the current format and digit value. + + Value after removing specified digit. + Digit to convert into string. + Indicates whether to show hidden symbols. + Converted value. + + + + Returns type of the token. Read-only. + + + + + Format character. Read-only. + + + + + Class used for reserved place format token. + + + + + Start of the token. + + + + + Space symbol. + + + + + En quad Space symbol. + + + + + Initializes a new instance of the ReservedPlaceToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for Scientific Token. + + + + + Short form without plus sign. + + + + + One of the possible formats. + + + + + Used format index. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for Seconds Token. + + + + + Long type of the format. + + + + + Half of possible milliseconds. + + + + + Default OleDateValue + + + + + Maximum OleDateValue + + + + + Regular expression for minutes part of the format: + + + + + Indicates whether number of seconds must be rounded. + + + + + Initializes a new instance of the SecondToken class + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Gets or sets a value indicating whether number of seconds must be rounded. + + + + + Class used for second total token. + + + + + Regular expression for hours part of the format: + + + + + Initializes a new instance of the SecondTotalToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for separator token. + + + + + Default string representation of the separator. + + + + + Initializes a new instance of the SectionSeparatorToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for Significant Digit Token. + + + + + Format character. + + + + + Initializes a new instance of the SignificantDigitToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Returns type of the token. Read-only. + + + + + Format character. Read-only. + + + + + Class used for String Token. + + + + + Regular expression for minutes part of the format: + + + + + Initializes a new instance of the StringToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for Text Token. + + + + + Format character for text token. + + + + + Initializes a new instance of the TextToken class. + + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Format character. Read-only. + + + + + Class used for thousands separator token. + + + + + Format character. + + + + + Indicates whether this separator is placed immediately after last digit token. + + + + + Initializes a new instance of the ThousandsSeparatorToken class. + + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Prepares value to display. + + Value to prepare. + Prepared value. + + + + Format character. Read-only. + + + + + Returns type of the token. Read-only. + + + + + Gets or sets a value indicating whether this separator is placed immediately + after last digit token. Read-only. + + + + + Class used for UnknownToken. + + + + + Initializes a new instance of the UnknownToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for YearToken. + + + + + Short year format. + + + + + Regular expression for minutes part of the format: + + + + + Initializes a new instance of the YearToken class. + + + + + Tries to parse format string. + + Format string to parse. + Position to start parsing at. + Position after parsed block. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Culture used to convert value into text. + Parent section. + Formatted value. + + + + Applies format to the value. + + Value to format. + Indicates whether to put in result hidden symbols. + Formatted value. + + + + Returns type of the token. Read-only. + + + + + Class used for format constants. + + + + + Number of hours in a day. + + + + + Number of minutes in a hour. + + + + + Number of minutes in a day. + + + + + Number of seconds in a minute. + + + + + Number of seconds in a day. + + + + + Represents possible token types. + + + + + Represents unknown format token. + + + + + Represents section format token. + + + + + Represents hour format token. + + + + + Represents hours in 24 hours format format token. + + + + + Represents minute format token. + + + + + Represents total minutes format token. + + + + + Represents second format token. + + + + + Represents total seconds format token. + + + + + Represents year format token. + + + + + Represents month format token. + + + + + Represents day format token. + + + + + Represents string format token. + + + + + Represents reserved place format token. + + + + + Represents character format token. + + + + + Represents am/pm format token. + + + + + Represents color format token. + + + + + Represents condition format token. + + + + + Represents text format token. + + + + + Represents significant digit format token. + + + + + Represents insignificant digit format token. + + + + + Represents place reserved digit format token. + + + + + Represents percent format token. + + + + + Represents scientific format token. + + + + + Represents general format token. + + + + + Represents thousands separator format token. + + + + + Represents decimal point format token. + + + + + Represents asterix format token. + + + + + Represents fraction format token. + + + + + Represents millisecond format token. + + + + + Represents culture token. + + + + + Represents Dollar token. + + + + + Represents common fraction. Used to apply number format to the value. + + + + + Maximum number of digits. + + + + + Maximum accuracy. + + + + + Fraction numerator. + + + + + Fraction denumerator. + + + + + Initializes a new instance of the Fraction class. + + Represents numerator of the fraction. + Represents denominator of the fraction. + + + + Initializes a new instance of the Fraction class. + + Represents numerator of the fraction. + + + + Initializes a new instance of the Fraction class. + + Represents first term of the fraction. + Represents second term of the fraction. + Fraction of the numerator and denominator. + + + + Converts fraction to double value. + + Fraction to convert. + Double value equal to the fraction. + + + + Converts List into fraction. + + List to convert. + Converted value. + + + + Converts long into fraction. + + Value to convert. + Converted value. + + + + Swaps numerator and denumerator. + + Current fraction after reverse. + + + + Converts number to fraction using required digits number. + + Value to convert. + Maximum number of digits. + Optimal fraction. + + + + Returns maximum common divisor of two numbers using Euclid method. + + First number. + Second number. + Maximum common divisor of two numbers. + + + + Returns absolute difference between fraction and double. + + Fraction for difference evaluation. + Double value for difference evaluation. + Evaluated difference. + + + + Adds next number to List with continued fraction. + + List with continued fraction. + Remainder of the fraction. + Remainder after adding next number to the fraction. + + + + Returns string representation of the Fraction. + + String representation of the Fraction. + + + + Gets or sets the fraction numerator. + + + + + Gets or sets the fraction denumerator. + + + + + Gets the number of digits in the denumerator. + + + + + Summary description for AddInFunctionImpl. + + + + + Represents an Custom Addin Function in Excel. + + + + + Returns name of the add-in function. Read-only. + + + + + Index to extern workbook. + + + + + Name index in the extern workbook. + + + + + Parent workbook. + + + + + Creates new instance. + + Current application. + Parent object. + Book index. + Name index. + + + + Searches for all necessary parents. + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Gets / sets book index. + + + + + Name index. + + + + + Returns name of add-in function. + + + + + XlsIO Application interface declaration. + + + + + Represents the Excel application. + + + + + Converts a measurement from centimeters to points + (one point equals 0.035 centimeters). + + Double value in centimeters + Returns the converted double value in points + + + + Converts a measurement from inches to points. + + Double value in inches + Returns the converted double value in points + + + + Saves changes to the active workbook. + + This method is supported on Windows Forms, WPF, ASP.NET, and ASP.NET MVC platforms only. + File name of result file. + + + + Check whether the file version is supported by XlsIO. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + File full path that contains workbook. + Returns True if the file is supported by XlsIO else returns False + + + + Checks whether a given file is in Excel format based on its file path. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + File path that contains workbook. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + + // Checks if the specified file is a valid Excel file. + if(application.IsExcelFile("sample.xlsx)) + { + // Opens the Excel workbook from the stream. + IWorkbook workbook = application.Workbooks.Open("sample.xlsx", ExcelOpenType.Automatic); + IWorksheet sheet = workbook.Worksheets[0]; + + //Convert the sheet to image. + Image image = sheet.ConvertToImage(1, 1, 10, 20); + image.Save("Sample.png", ImageFormat.Png); + + //Close and Dispose + workbook.Close(); + } + } + + Returns true if the file is in excel format else false. + + + + Check whether the file version is supported by XlsIO. + + File stream that contains workbook. + Returns True if the stream is supported by XlsIO else returns False + + + + Checks whether a given stream contains data in Excel format. + + File stream that contains workbook. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + + FileStream stream = new FileStream("sample.xlsx", FileMode.Open); + + // Checks if the content of the stream represents a valid Excel file. + if(application.IsExcelFile(stream)) + { + // Opens the Excel workbook from the stream. + IWorkbook workbook = application.Workbooks.Open("sample.xlsx", ExcelOpenType.Automatic); + IWorksheet sheet = workbook.Worksheets[0]; + + Stream image = new FileStream("Sample.png", FileMode.Create, FileAccess.ReadWrite); + sheet.ConvertToImage(sheet.UsedRange, imageOptions, image); + + //Close and Dispose + workbook.Close(); + } + } + + Returns true if the file is in excel format else false. + + + + Converts units. + + Value to convert. + Form option. + To option. + Returns converted result. + + + + Gets or sets a boolean value indicating whether to add string delimiter for all the text values. Default value is FALSE. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + application.UseStringDelimiter = true; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "Document"; + worksheet["B1"].Value = "6"; + MemoryStream stream = new MemoryStream(); + workbook.SaveAs(stream, ",",Encoding.Unicode); + } + + + + In the above example, cell A1 contains a text value. So, it will be surrounded by string delimiter i.e., double quotes + while saving workbook as CSV document. + + Output of the above code looks like this. + "Document",6 + + + + + Returns a Range object that represents the active cell in the + active window (the window on top) or in the specified window. + If the window isn't displaying a worksheet, this property fails. + Read-only. + + + + + Returns an object that represents the active sheet (the sheet on + top) in the active workbook or in the specified window or workbook. + Returns Nothing if no sheet is active. Read-only. + + + + + Returns a Workbook object that represents the workbook in the active + window (the window on top). Read-only. Returns Nothing if there are + no windows open or if either the Info window or the Clipboard window + is the active window. + + + + + Returns a Workbooks collection that represents all the open workbooks. + Read-only. + + + + + For an Application object, returns a Sheets collection that represents + all the worksheets in the active workbook. For a Workbook object, + returns a Sheets collection that represents all the worksheets in the + specified workbook. Read-only Sheets object. + + + + + Returns a Range object that represents a cell or a range of cells. + + + + + All data entered after this property is set to True will be formatted + with the number of fixed decimal places set by the FixedDecimalPlaces + property. Read/write Boolean. + + + + + Gets or sets a Boolean value to ignore duplicate worksheet name exception by adding a suffix at the end.Default value is FALSE. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(3); + + application.IgnoreSheetNameException = true; + + IWorksheet sheet_1 = workbook.Worksheets[0]; + IWorksheet sheet_2 = workbook.Worksheets[1]; + IWorksheet sheet_3 = workbook.Worksheets[2]; + + Console.WriteLine("First sheet name is " + sheet_1.Name); + Console.WriteLine("Second sheet name is " + sheet_2.Name); + Console.WriteLine("Third sheet name is " + sheet_3.Name); + + Console.WriteLine("Set sheet1 to Thired sheet name"); + + sheet_3.Name = "Sheet1"; + + Console.WriteLine("After set the third sheet name is " + sheet_3.Name); + + workbook.SaveAs("Output.xlsx"); + + workbook.Close(); + } + + + Output : + + First sheet name is Sheet1 + Second sheet name is Sheet2 + Third sheet name is Sheet3 + + Set sheet1 to Thired sheet name + + After set the third sheet name is Sheet1_1 + + + + + + True (default) if the system separators of Microsoft Excel are + enabled. Read/write Boolean. + + + + + Returns the Microsoft Excel build number. Read-only. + + + + + Returns or sets the number of fixed decimal places used when + the FixedDecimal property is set to True. Read/write. + + + + + Returns or sets the number of sheets that Microsoft Excel + automatically inserts into new workbooks. Read/write Long. + + + + + Sets or returns the character used for the decimal separator as a + String. Read/write. + + + + + Returns or sets the default path that Microsoft Excel uses when it + opens files. Read/write String. + + This property is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, WP, Universal and UWP platforms only. + + + + Returns the path separator character ("\"). Read-only String. + + This property is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, WP, Universal and UWP platforms only. + + + + Sets or returns the character used for the thousands separator + as a String. Read / write. + + + + + Returns or sets the name of the current user. Read/write String. + + + + + For the Application object, always returns "Microsoft Excel". For + the CubeField object, the name of the specified field. For the Style + object, the name of the specified style. Read-only String. + + + + + If this property is set to True, then if some cells have reference + to the same style, changes will influence all these cells. + Default value: False + + + + + This flag controls behavior of workbook save methods. Each flag controls + one aspect of the save code. Can be set one or more flags which will influence + the output produced by the library. + + + + + Returns or sets the standard (default) height of all the rows in the worksheet, + in points. This value is used only for newly created worksheets. + Read/write Double. + + + + + Returns or sets the standard (default) height option flag, which defines that + standard (default) row height and book default font height do not match. + This value is used only for newly created worksheets. Read/write Bool. + + + + + Returns or sets the standard (default) width of all the columns in the + worksheet. This value is used only for newly created worksheets. + Read/write Double. + + + + + Indicates whether to optimize fonts count. This option will + take effect only on workbooks that will be added after setting + this property. + WARNING: Setting this property to True can decrease performance significantly, + but will reduce resulting file size. + + + + + Indicates whether to optimize Import data. This option will + take effect only on Import methods that are available with the worksheet + WARNING: Setting this property to True can decrease memory significantly, + but will increase the performance of data import . + + + + + Gets / sets row separator for array parsing. + + + + + Formula arguments separator. + + + + + Represents CSV Separator. Using for Auto recognize file type. + + + + + Gets or sets the qualifier to put around the results with separator or record delimiter. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + + application.CsvQualifier ="$"; + + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "This"; + worksheet["B1"].Text = "is"; + worksheet["C1"].Text = "a"; + worksheet["D1"].Text = "sample"; + worksheet["E1"].Text = "to"; + worksheet["F1"].Text = "set"; + worksheet["G1"].Text = "qualifier,text"; + MemoryStream stream = new MemoryStream(); + workbook.SaveAs(stream, ",", Encoding.Unicode); + } + + + + In the above example, the CSV qualifier is set as "$" and the separator is (,). So, the G1 cell value + "qualifier,text" will be surrounded by qualifier because it contains the separator while saving workbook as CSV document. + + Output of the above code looks like this. + This,is,a,sample,to,set,$qualifier,text$ + + If the results contain the qualifier, the qualifier is repeated. The Qualifier setting must be different from the Separator and RecordDelimiter settings. The default value is quotation ("). + + + + + Gets or sets the record delimiter to put at the end of each record. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + + application.CsvRecordDelimiter ="$"; + + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "This"; + worksheet["B1"].Text = "is"; + worksheet["C1"].Text = "a"; + worksheet["D1"].Text = "sample"; + worksheet["A2"].Text = "to"; + worksheet["B2"].Text = "set"; + worksheet["C2"].Text = "Record Delimiter"; + MemoryStream stream = new MemoryStream(); + workbook.SaveAs(stream, ",", Encoding.Unicode); + } + + + + In the above example, CSV record delimiter is set as '$'. It will be added at the end of each row while saving workbook as CSV document. + + Output of the above code looks like this. + This,is,a,sample$ + to,set,Record Delimiter$ + + The default value is Carriage Return(CR) and Line Feed(LF). + + + + + Returns or sets the name of the standard font. Read/write String. + + + + + Returns or sets the standard font size, in points. Read/write. + + + + + Indicates is use unsafe code. + + + + + Indicates whether to try fast record parsing. + + + + + Gets / sets memory allocation block for single row. Each row will allocate memory block + that can be divided on this number. Smaller value means smaller memory usage but slower + speed when changing cell's value. Default value is 128. That is enough to allocate 9 string records, + or 9 integer numbers (or floating numbers with 1 or 2 digits after decimal point) or 7 double numbers. + + + + + Indicates whether XlsIO should delete destination file before saving into it. + Default value is TRUE. + + + + + Gets / sets default excel version. This value is used in create methods. + + + + + Indicates whether we should use native storage (standard windows COM object) + or our .Net implementation to open excel 97-2003 files. + + + + + Changes data provider type for all operations after it. + + + + + Compression level for workbooks serialization. + + + + + Indicates whether to preserve the datatypes for the CSV file formats. + + + + + Represents the chart to image converter instance. + + + This property is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Gets or sets a boolean value which indicates whether the chart caches are enabled or not + Default value is false. + + + If set "true" XlsIO will give parsing and serializing support for chart caches + which lead some performance delay and memory consumption + Some spreadsheet viewer requires chart caches to view the chart + This property is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, WP, Universal and UWP platforms only. + + + + + Specifies whether to increment the references in formula automatically. Default value is false. + + + + + Specifies whether to remove worksheet reference in formulas on removing and reattaching the worksheet. Default value is TRUE. + + + + + Specifies whether to run Partial trust code. + + + True if to run partial trust code; otherwise, false. + + + + + Specifies whether the range should be accessed from worksheet or within the range object scope.. + + + + + Gets or sets a Boolean value to skip the call of method while accessing row height. Default value is FALSE. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + //skip autofit row property is set to true. + application.SkipAutoFitRow = true; + double rowHeight = worksheet.GetRowHeight(1); + + Console.WriteLine("SkipAutoFitRow set to true , result will be"); + Console.WriteLine(rowHeight); + + //skip autofit row property is set to false. + application.SkipAutoFitRow = false; + double afterRowHeight = worksheet.GetRowHeight(1); + + Console.WriteLine("SkipAutoFitRow set to false , result will be"); + Console.WriteLine(afterRowHeight); + + workbook.SaveAs("output.xlsx"); + } + + + Output : + + SkipAutoFitRow set to true , result will be + 40.5 + SkipAutoFitRow set to false , result will be + 36.35 + + + + + + Flag to ignore exception and exclude characters more than 32767 (maximum allowed characters) in a cell text. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + //Instantiate the application object + IApplication application = engine.Excel; + + //Set flag to ignore exception and exclude additional characters + application.ExcludeAdditionalCharacters = true; + + //Open the existing workbook + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Access the first worksheet + IWorksheet worksheet = workbook.Worksheets[0]; + + //Save the workbook + workbook.SaveAs("Output.xlsx"); + } + + + + + + Get or set maximum rows for CSV file. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + + //Instantiate the application object + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + + //Set the maximum rows for CSV file + application.MaximumRowsForCSV = 3000000; + + //Open the existing workbook + IWorkbook workbook = application.Workbooks.Open("Sample.csv"); + + //Access the first worksheet + IWorksheet sheet = workbook.Worksheets[0]; + + //Save the workbook + workbook.SaveAs("Output.csv",","); + } + + + + + + Get or set maximum columns for CSV file. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + + //Instantiate the application object + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + + //Set the maximum columns for CSV file + application.MaximumColumnsForCSV = 25000; + + //Open the existing workbook + IWorkbook workbook = application.Workbooks.Open("Sample.csv"); + + //Access the first worksheet + IWorksheet sheet = workbook.Worksheets[0]; + + //Save the workbook + workbook.SaveAs("Output.csv",","); + } + + + + + + + When workbook is read from stream and position of the stream changed, + this event is raised. + + + + + This event is fired when user tries to open password protected workbook + without specifying password. It is used to obtain password. + + + + + This event is fired when user specified wrong password when trying to open + password protected workbook. It is used to obtain correct password. + + + + + This event is fired to substitute an alternate font when a specified font is not installed in the production environment in Excel to PDF/Image conversion. + + This event is supported in Excel to PDF/Image conversion. + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Initializes the SubstituteFont event to perform font substitution during ExceltoPDFconversion. + application.SubstituteFont += new SubstituteFontEventHandler(SubstituteFont); + + IWorksheet worksheet = workbook.Worksheets[0]; + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + PdfDocument doc = new PdfDocument(); + doc = converter.Convert(); + doc.Save("PDF.pdf"); + workbook.SaveAs("output.xlsx"); + } + void SubstituteFont(object sender, SubstituteFontEventArgs args) + { + // Sets the alternate font when a specified font is not installed in the production environment. + if (args.OriginalFontName == "Wingdings Regular") + args.AlternateFontName = "Bauhaus 93"; + else + args.AlternateFontName = "Times New Roman"; + } + + + + + + + Width of the zero character. + + + + + Build number. + + + + + Default font size. + + + + + Default quantity of decimal digits after separator. + + + + + Default sheets in the new workbook. + + + + + Default font name. + + + + + Name of the object "Microsoft Excel". + + + + + Name of the switch. + + + + + Switch description. + + + + + Argument separator. + + + + + Row separator. + + + + + Represents size of biff file header. + + + + + Represents xml header. + + + + + Represents xml header. + + + + + Represents default buffer size for auto recognize. + + + + + Represents the default max column width supported by MS Excel. + + + + + Represents Default TSV Separator. + + + + + Represents Default CSV Separator. + + + + + Path separator. + + + + + Represents default header for .xls and .xlt files. + + + + + Defined custom list for sorting. + + + + + Array of Proportions. + + + + + Minimum cell size. + + + + + Represents the Graphic. + + + + + Switch indicating whether to show debug information. + + + + + Flag for debug message. + + + + + All types in the assembly (in order to increase performance). + + + + + Parent object + + + + + Indicates is debug info enabled. + + + + + XlsIO Static Members. + + + + + + + + + + Returns font height for Calibri and Tahoma. + + + + + Indicates whether seprator value is changed or not. + + + + + Indicates whether to add string delimiter for text values. + + + + + Use this NumberFormatChar to check the Unicodes. + + + + + Default styles names. Index means outline level value. + + + + + Table with paper sizes. + + + + + Range representing active cell of the active worksheet of the active workbook. + + + + + Active worksheet. + + + + + Active TabSheet. + + + + + Active workbook. + + + + + Collection of all workbooks in the application. + + + + + All data entered after this field is set to True will be formatted + with the number of fixed decimal places set by the FixedDecimalPlaces + property. + + + + + Gets or sets a Boolean value to ignore duplicate worksheet name exception by adding a suffix at the end.Default value is FALSE. + + + + + True (default) if the system separators of Microsoft Excel are + enabled. + + + + + Standard font size, in points. + + + + + Number of fixed decimal places used when the FixedDecimal + property is set to True. + + + + + The number of sheets that Microsoft Excel automatically + inserts into new workbooks. + + + + + The character used for the decimal separator as a String. + + + + + Name of the standard font. + + + + + The character used for the thousands separator as a String. + + + + + The name of the current user. + + + + + If this value is True and if some cells have reference + to the same style, changes will influence all these cells. + False otherwise + + + + + Storage of SkipExtendedRecords property value. + + + + + Standard row height - height of the rows that do not have specified row height. + + + + + Standard (default) height option flag, which defines that standard (default) + row height and book default font height do not match. + + + + + Standard column width. + + + + + Indicates whether to optimize fonts count. This option will + take effect only on workbooks that will be added after setting + this property. + WARNING: Setting this property to True can decrease performance significantly, + but will reduce resulting file size. + + + + + Indicates whether to optimize Import data. This option will + take effect only on Import methods that are available with the worksheet + WARNING: Setting this property to True can decrease memory significantly, + but will increase the performance of data import . + + + + + Row separator for array parsing. + + + + + Formula arguments separator. + + + + + Represents CSV Separator. + + + + + Represents CSV Qualifier. + + + + + Represents CSV Record Delimiter. + + + + + Indicates whether to try fast record parsing. + + + + + Memory allocation block for single row. + + + + + Indicates whether XlsIO should delete destination file before saving into it. + Default value is TRUE. + + + + + Represents the Fallback font class. + + + + + Represents the Graphic. + + + + + Default excel version for new workbooks. + + + + + + + + + + Indicates whether evaluation license expired. + + + + + Indicates whether the dafault font is changed or not. + + + + + Specifies whether to increment the references in formula automatically. Default value is false. + + + + + Specifies whether to remove worksheet reference in formulas on removing and reattaching the worksheet. Default value is TRUE. + + + + + Gets or sets a boolean value which indicates whether the chart caches are enabled or not + Default value is false. + + + If set "true" XlsIO will give parsing and serializing support for chart caches + which lead some performance delay and memory consumption + Some spreadsheet viewer requires chart caches to view the chart + + + + + Indicates whether the partial trust code is enabled or not. + + + + + Specifies the Range Indexer mode. + + + + + Indicates whether workbook is in parsing process. + + + + + Added to lock a object in multi threading. + + + + + + Flag to ignore exception and exclude characters more than 32767 (maximum allowed characters) in a cell text. + + + + + Flag to denote whether ignoring exception and excluding characters more than 32767 (maximum allowed characters) in a cell text is explicitly set. + + + + + Represents Maximum Rows for CSV file. + + + + + Represents Maximum Columns for CSV file.. + + + + + Specifies whether the excel open type is CSV. Default value is false. + + + + + Static constructor. + + + + + Default constructor. + + + + + Initiliaze the Custom List collections + + + + + This method initializes inner collections of workbooks. + + + + + Initialize the font height for Calibri and Tahoma fonts. + + + + + Converts a measurement from centimeters to points + (one point equals 0.035 centimeters). + + Value in centimeters to convert. + Converted value. + + + + Check whether the file version is supported by XlsIO. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + File full path that contains workbook + + + + + Checks whether a given file is in Excel format based on its file path. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + File path that contains workbook. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + + // Checks if the specified file is a valid Excel file. + if(application.IsExcelFile("sample.xlsx)) + { + // Opens the Excel workbook from the stream. + IWorkbook workbook = application.Workbooks.Open("sample.xlsx", ExcelOpenType.Automatic); + IWorksheet sheet = workbook.Worksheets[0]; + + //Convert the sheet to image. + Image image = sheet.ConvertToImage(1, 1, 10, 20); + image.Save("Sample.png", ImageFormat.Png); + + //Close and Dispose + workbook.Close(); + } + } + + Returns true if the file is in excel format else false. + + + + Check whether the file version is supported by XlsIO. + + File stream that contains workbook + + + + + Checks whether a given stream contains data in Excel format. + + File stream that contains workbook. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + + FileStream stream = new FileStream("sample.xlsx", FileMode.Open); + + // Checks if the content of the stream represents a valid Excel file. + if(application.IsExcelFile(stream)) + { + // Opens the Excel workbook from the stream. + IWorkbook workbook = application.Workbooks.Open("sample.xlsx", ExcelOpenType.Automatic); + IWorksheet sheet = workbook.Worksheets[0]; + + Stream image = new FileStream("Sample.png", FileMode.Create, FileAccess.ReadWrite); + sheet.ConvertToImage(sheet.UsedRange, imageOptions, image); + + //Close and Dispose + workbook.Close(); + } + } + + Returns true if the file is in excel format else false. + + + + Gets file type based on stream data. + + Represents data stream. + Represents type of the file for open operation. + Returns defined open type (cannot return automatic). + + + + Get the name of the storage in case Insensitive + + Compound storage + stream name + + + + + Detects is csv or xml file type. + + Represents data stream. + MemoryStream with data from the file that will be used for file type detection. + Represents start position in stream. + Parsed workbook if detected or null. + + + + Indicates is surrogate value. + + Value for search. + Represents current separator. + Indicates is compare with separator content, or not. + + + + + Converts a measurement from inches to points. + + Value in inches. + Converted value in points. + + + + Saves changes to the active workbook. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + File name of result file. + + + + Creates a new Workbook. + + Parent object for the new workbook. + Excel version. + Newly created workbook. + + + + Creates a new Workbook. + + Parent object for the new workbook. + Stream to read. + Current separator + Number of first row to write. + Number of first column to write. + Excel version. + Filename is used to generate worksheet name + Created workbook. + + + + Creates a new Workbook. + + Parent object for the new workbook. + Stream with workbook's data. + Excel version. + Newly created workbook. + + + + Creates a new Workbook. + + Parent object for the new workbook. + Stream with workbook's data. + Parse options. + Excel version. + Newly created workbook. + + + + Creates a new Workbook. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Parent object for the new workbook. + Name of the file with workbook. + Parse options. + Indicates whether to open workbook in read-only mode. + Password to decrypt. + Excel version. + Newly created workbook. + + + + Creates the workbook. + + Parent object for the new workbook. + Stream with workbook's data. + Parse options. + Indicates whether to open workbook in read-only mode. + Password to decrypt. + Excel version. + Newly created workbook. + + + + Creates a new Workbook. + + Parent object for the new workbook. + Number of sheets in the new workbook. + Excel version. + Newly created workbook. + + + + Creates a new Workbook. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Parent object for the new workbook. + Name of the file with workbook. + Excel version. + Newly created workbook. + + + + Creates a new Workbook. + + Parent object for the new workbook. + Name of the file with workbook. + Parse options. + Excel version. + Newly created workbook. + + + + Creates a new Worksheet. + + Parent object for the new worksheet. + Newly created worksheet. + + + + Creates a new Worksheet. + + Parent object for the new worksheet. + Reader with worksheet data. + Parse options. + Indicates whether to skip parsing. + + Dictionary with new extended format indexes used in ignore styles mode. + + Object used to decrypt encrypted records. + Newly created worksheet. + + + + Creates a new Range. + + Parent object for the new range. + Newly created range. + + + + Creates new range for a single cell. + + Parent object for the new range. + Column index for the new range. + Row index for the new range. + Newly created range. + + + + Creates a new Range. + + Parent object for the new range. + Array of BiffRecordRaws that contains range data. + Index of the range record. + Newly created range. + + + + Creates a new Range. + + Parent object for the new range. + Array of BiffRecordRaws that contains range data. + Index of the range record. + Indicates whether cell styles should be ignored. + Newly created range. + + + + Creates a new Range. + + Parent object for the new range. + Array of BiffRecordRaws that contains range data. + Index of the range record. + Indicates whether cell styles should be ignored. + Newly created range. + + + + Creates a new Range. + + Parent object for the new range. + First column of the range. + First row of the range. + Last column of the range. + Last row of the range. + Newly created range. + + + + Creates a new Range. + + Parent object for the new range. + Range record to parse. + Indicates whether styles should be ignored. + Newly created range. + + + + Creates a new Style. + + Parent object for the new style object. + Name of the new style. + Newly created style. + + + + Creates a new Style. + + Parent object for the new style object. + Name of the new style. + Base style for this style. + Newly created style. + + + + Creates a new Style. + + Parent object for the new style object. + Style record with style information. + Newly created style. + + + + Creates a new Style. + + Parent object for the new style object. + Name of the new style.> + Indicates whether built in style should be created. + + + + + Creates new font. + + Parent object for the new font. + Newly created font. + + + + Method creates a font object based on native font and register it in the workbook. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Parent object for the new font. + Native font to get settings from. + Newly created font. + + + + Creates new font. + + Base font for the new one. + Newly created font. + + + + Creates new font. + + Parent object for the new font. + Font record that contains font information. + Newly created font. + + + + Creates new font. + + Parent object for the new font. + Font object that contains font information. + Newly created font. + + + + This method should be called before creating font. + Sets default font name and size. + + + + + Creates clipboard provider. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Created provider. + + + + + Creates a new chart. + + + The created chart object. + + + + Creates a chart series object. + + + The created chart series object. + + + + Creates new instance of RangesCollection. + + Parent object for the collection. + Newly created collection. + + + + Initializes new hyperlink. + + Parent object for the new hyperlink. + Newly created hyperlink. + + + + Initializes new hyperlink. + + Parent object for the new hyperlink. + Hyperlink range. + Newly created hyperlink. + + + + Initializes new hyperlink. + + Parent object for the new hyperlink. + Hyperlink shape. + Newly created hyperlink. + + + + Initialize new ComentsRange. + + Parent Range for the new CommentRange. + Newly created ComentsRange. + + + + Initialize new CommentShapeImpl. + + Parent object for the new CommentShapeImpl. + Newly created CommentShapeImpl. + + + + Initialize new CommentShapeImpl. + + Parent object for the new CommentShapeImpl. + Indicates is parse comment fill line options. + Newly created CommentShapeImpl. + + + + Initialize new CommentShapeImpl. + + Parent object for the new CommentShapeImpl. + Parent MsofbtSpContainer for the new CommentShapeImpl. + Newly created CommentShapeImpl. + + + + Initialize new CommentShapeImpl. + + Parent object for the new CommentShapeImpl. + Parent MsofbtSpContainer for the new CommentShapeImpl. + Parse options. + Newly created CommentShapeImpl. + + + + Initialize new DataValidationArrayImpl. + + Parent object for the new DataValidationArrayImpl. + Newly created DataValidationArrayImpl. + + + + Initialize new DataValidationWrapper. + + Parent Range for the new DataValidationWrapper. + Parent DataValidationImpl for the new DataValidationWrapper. + Newly created DataValidationWrapper. + + + + Initialize new DataValidationImpl. + + Parent object for the new DataValidationImpl. + Newly created DataValidationImpl. + + + + Initialize new DataValidationImpl. + + Parent object for the new DataValidationImpl. + Base DVRecord for the new DataValidationImpl. + Newly created DataValidationImpl. + + + + Creates collection with specified argument. + + + + + + + Creates ConditionalFormats collection from array of BiffRecords. + + Parent object for the collection. + Main conditional format record. + Array of CFRecords with conditional formats. + + + + Creates ConditionalFormats collection from array of BiffRecords. + + Parent object for the collection. + Main conditional format12 record. + Array of CF12Records with conditional formats. + + + + Creates object that can be used for template markers processing. + + Parent object for the new instance. + Object that can be used for template markers processing. + + + + Creates intptr data provider. + + New instance of created data provider. + + + + + + + + + + Creates compound file based on stream object. + + Stream to create compound file for. + Created compound file object. + + + + Creates compound file object from file. + + Name of the file to open. + Storage flags to use. + Created compound file object. + + + + Creates compound file object. + + Created compound file object. + + + + Create image from stream. + + + + + + + Creates new instance of the textbox shape. + + Parent shapes collection. + Created textbox shape. + + + + Creates new instance of the checkbox shape. + + Parent shapes collection. + Created checkbox shape. + + + + Creates new instance of the OptionButton shape. + + Parent shapes collection. + Created OptionButton shape. + + + + Creates new instance of the combobox shape. + + Parent shapes collection. + Created checkbox shape. + + + + Creates the Compressor. + + + + + + + Checks and apply the seperators to the current culture. + (ie.. DecimalSeperator, ThousandSeperators). + + Current Culture with the new Seperators. + + + + Get the current culture; + + Old cultrue + New cultrue + CultureInfo + + + + Set numberical decimal separator. + + NumberFormat + Numberical separator string + + + + Set thousands separator. + + NumberFormat + Thousands separator string + + + + Sets active workbook. + + Workbook that becomes active. + + + + Sets active worksheet. + + Worksheet that becomes active. + + + + Sets active cell. + + Range that becomes active. + + + + Recalculate Array of Proportions. + + Current DPI value. + + + + Converts to pixels. + + Value to convert. + MeasureUnits. + Returns converted result. + + + + Converts from pixel. + + Pixel to convert. + Convert options. + Returns converted result. + + + + Converts units. + + Value to convert. + Form option. + To option. + Returns converted result. + + + + Converts units. + + Value to convert. + Form option. + To option. + Returns converted result. + + + + Raising progress event. + + Position. + Full size. + + + + Raising TypeMismatchOnExport event. + + The source of the event. + object that contains the event data. + + + + Measures string. + + String to measure. + Font to measure. + Rect size. + Returns new size. + + + + + + + + + + + + + + + + + + + + Returns the Parent object of the application. + + Parent object + + + + Check whether the dynamic object have the overriden methods + + input type + the boolean value indicates whether it have overridden methods + + + + + Check the bytes of image with given header + + Header of possible images in byte array + Byte array value of an image + + + + + Gets the font based on given font details. + + Name of the font. + Size of the font. + Style of the font. + Return the alternatefontstream if exist. + The created font name, or substituted font by event. + + + + Creates font based on given font details. + + Name of the font. + Size of the font. + Style of the font. + The created font. + + + + Default style names. + + + + + Gets a Fallback font collection. + + + + + Switch indicating whether to show debug information. Read-only. + + This property is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Indicates whether debug info is enabled. Read-only. + + + + + Indicates is use unsafe code. Static property. + + + + + Changes data provider type for all operations after it. Static property. + + + + + If True, no changes were made since last save. + + + + + Indicates whether the formula is parsed. + + + + + Returns standard row height in units used by RowRecord. + + + + + Indicates whether evaluation license expired. + + + + + Gets or sets a boolean value indicating whether to add string delimiter for all the text values. Default value is FALSE. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + application.UseStringDelimiter = true; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "Document"; + worksheet["B1"].Value = "6"; + MemoryStream stream = new MemoryStream(); + workbook.SaveAs(stream, ",",Encoding.Unicode); + } + + + + In the above example, cell A1 contains a text value. So, it will be surrounded by string delimiter i.e., double quotes + while saving workbook as CSV document. + + Output of the above code looks like this. + "Document",6 + + + + + Returns a Range object that represents the active cell in the + active window (the window on top) or in the specified window. + If the window isn't displaying a worksheet, this property fails. + Read-only. + + + + + Returns an object that represents the active sheet (the sheet on + top) in the active workbook or in the specified window or workbook. + Returns NULL (Nothing in VB) if no sheet is active. Read-only. + + + + + Returns an object that represents the active tab sheet (the tab sheet on + top) in the active workbook or in the specified window or workbook. + Returns NULL (Nothing in VB) if no sheet is active. Read-only. + + + + + Returns a Workbook object that represents the workbook in the active + window (the window on top). Read-only. Returns NULL (Nothing in VB) if there are + no windows open or if either the Info window or the Clipboard window + is the active window. + + + + + Used without an object qualifier, this property returns an Application + object that represents the Microsoft Excel application. Used with an + object qualifier, this property returns an Application object that + represents the creator of the specified object (you can use this property + with an OLE Automation object to return that object's application). + Read-only. + + + + + Returns a Workbooks collection that represents all the open workbooks. + Read-only. + + + + + For an Application object, returns a Sheets collection that represents + all worksheets in the active workbook. For a Workbook object, + returns a Sheets collection that represents all the worksheets in the + specified workbook. Read-only Sheets object. + + + + + Returns the parent object for the specified object. Read-only. + + + + + Returns a Range object that represents a cell or a range of cells. + Read-only. + + + + + All data entered after this property is set to True will be formatted + with the number of fixed decimal places set by the FixedDecimalPlaces + property. Read/write Boolean. + + + + + + True (default) if the system separators of Microsoft Excel are + enabled. Read/write Boolean. + + + + + Returns or sets the standard font size, in points. Read/write. + + + + + Returns the Microsoft Excel build number. Read-only. + + + + + Returns or sets the number of fixed decimal places used when + the FixedDecimal property is set to True. Read/write. + + + + + Returns or sets the number of sheets that Microsoft Excel + automatically inserts into new workbooks. Read/write Long. + + + + + Sets or returns the character used for the decimal separator as a + String. Read/write. + + + + + Returns or sets the default path that Microsoft Excel uses when it + opens files. Read/write String. + + This property is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, Windows Phone and Universal platforms only. + + + + Returns the path separator character ("\"). Read-only String. + + This property is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Returns or sets the name of the standard font. Read/write String. + + + + + Sets or returns the character used for the thousands separator + as a String. Read/write + + + + + Returns or sets the name of the current user. Read/write String. + + + + + For the Application object, it always returns "Microsoft Excel". For + the CubeField object, the name of the specified field. For the Style + object, the name of the specified style. Read-only String. + + + + + When this property is set to True, if some cells have reference + to the same style, changes will influence all these cells. + Default value: FALSE. + + + + + Flags that control behavior of workbook save methods. Each flag controls + one aspect of save code. Can be set one or more flags influencing + the output produced. + + + + + Returns or sets the standard (default) height of all the rows in the worksheet, + in points. Read/write Double. + + + + + Returns or sets the standard (default) height option flag, which defines that + standard (default) row height and book default font height do not match. + Read/write Bool. + + + + + Returns or sets the standard (default) width of all the columns in the + worksheet. Read/write Double. + + + + + Indicates whether to optimize fonts count. This option will + take effect only on workbooks that will be added after setting + this property. + WARNING: Setting this property to True can decrease performance significantly, + but will reduce resulting file size. + + + + + Indicates whether to optimize Import data. This option will + take effect only on Import methods that are available with the worksheet + WARNING: Setting this property to True can decrease memory significantly, + but will increase the performance of data import . + + + + + Gets / sets row separator for array parsing. + + + + + Formula arguments separator. + + + + + Represents CSV Separator. + + + + + Gets or sets the qualifier to put around the results with separator or record delimiter. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + + application.CsvQualifier ="$"; + + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "This"; + worksheet["B1"].Text = "is"; + worksheet["C1"].Text = "a"; + worksheet["D1"].Text = "sample"; + worksheet["E1"].Text = "to"; + worksheet["F1"].Text = "set"; + worksheet["G1"].Text = "qualifier,text"; + MemoryStream stream = new MemoryStream(); + workbook.SaveAs(stream, ",", Encoding.Unicode); + } + + + + In the above example, the CSV qualifier is set as "$" and the separator is (,). So, the G1 cell value + "qualifier,text" will be surrounded by qualifier because it contains the separator while saving workbook as CSV document. + + Output of the above code looks like this. + This,is,a,sample,to,set,$qualifier,text$ + + If the results contain the qualifier, the qualifier is repeated. The Qualifier setting must be different from the Separator and RecordDelimiter settings. The default value is quotation ("). + + + + + Gets or sets the record delimiter to put at the end of each record. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + + application.CsvRecordDelimiter ="$"; + + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "This"; + worksheet["B1"].Text = "is"; + worksheet["C1"].Text = "a"; + worksheet["D1"].Text = "sample"; + worksheet["A2"].Text = "to"; + worksheet["B2"].Text = "set"; + worksheet["C2"].Text = "Record Delimiter"; + MemoryStream stream = new MemoryStream(); + workbook.SaveAs(stream, ",", Encoding.Unicode); + } + + + + In the above example, CSV record delimiter is set as '$'. It will be added at the end of each row while saving workbook as CSV document. + + Output of the above code looks like this. + This,is,a,sample$ + to,set,Record Delimiter$ + + The default value is Carriage Return(CR) and Line Feed(LF). + + + + + Indicates is use unsafe code. + + + + + Indicates whether to try fast record parsing. + + + + + Gets / sets memory allocation block for single row. Each row will allocate memory block + that can be divided on this number. Smaller value means smaller memory usage but slower + speed when changing cell's value. Default value is 128. That is enough to allocate 9 string records, + or 9 integer numbers (or floating numbers with 1 or 2 digits after decimal point) or 7 double numbers. + + + + + Indicates whether XlsIO should delete destination file before saving into it. + Default value is TRUE. + + + + + Gets / sets default excel version. This value is used in create methods. + + + + + Indicates whether we should use native storage (standard windows COM object) + or our .Net implementation to open excel 97-2003 files. + + + + + Changes data provider type for all operations after it. Static property. + + + + + Compression level for workbooks serialization. + + + + + Indicates whether to preserve the datatypes for the CSV file formats. + + + + + Specifies whether to increment the references in formula automatically. Default value is false. + > + + + + Represents the Chart to Image Converter instance. + Returns null if it is not instantiated. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Gets or sets a boolean value which indicates whether the chart caches are enabled or not + Default value is false. + + + If set "true" XlsIO will give parsing and serializing support for chart caches + which lead some performance delay and memory consumption + Some spreadsheet viewer requires chart caches to view the chart. + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, Windows Phone, Universal and UWP platforms only. + + + + + Specifies whether to run Partial trust code. + + + + + Specifies whether to run Partial trust code. + + + True if to run partial trust code; otherwise, false. + + + + + Specifies whether the range should be accessed from worksheet or within the range object scope.. + + The following code illustrates how to change range indexer mode by this property. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.RangeIndexerMode = ExcelRangeIndexerMode.Relative; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange range = sheet.Range["A5:C7"]; + IRange relativeRange = range[2, 2]; + + string fileName = "RelativeRangeIndexer.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Specifies whether to remove worksheet reference in formulas on removing and reattaching the worksheet. Default value is TRUE. + + + Updates the worksheet reference in formulas while removing the worksheet. Default value is TRUE. Setting UpdateSheetFormulaReference to FALSE while removing the worksheet, will retain the sheet name in the formulas. + If worksheet with same name is created, then the formula will refer the new worksheet with that name. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + + // Ignores removal of worksheet reference in the formulas while removing the worksheet. + application.UpdateSheetFormulaReference = false; + + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Formula = "Sheet2!A1"; + workbook.Worksheets["Sheet2"].Remove(); + workbook.Worksheets.Create("Sheet2"); + string formula = sheet.Range["A1"].Formula; + workbook.SaveAs("Output.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether workbook is in parsing process. + + + + + + Returns font height for Calibri and Tahoma. + + + + + Flag to ignore exception and exclude characters more than 32767 (maximum allowed characters) in a cell text. + + + + + Get or set maximum rows for CSV file. + + + + + Get or set maximum columns for CSV file. + + + + + + Progress event handler. + + + + + This event is fired when user tries to open password protected workbook + without specifying password. It is used to obtain password. + + + + + This event is fired when user specified wrong password when trying to open + password protected workbook. It is used to obtain correct password. + + + + + This event is fired to substitute an alternate font when a specified font is not installed in the production environment in Excel to PDF/Image conversion. + + This event is supported for Excel to PDF/Image conversion. + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Initializes the SubstituteFont event to perform font substitution during ExceltoPDFconversion. + application.SubstituteFont += new SubstituteFontEventHandler(SubstituteFont); + + IWorksheet worksheet = workbook.Worksheets[0]; + ExcelToPdfConverter converter = new ExcelToPdfConverter(workbook); + PdfDocument doc = new PdfDocument(); + doc = converter.Convert(); + doc.Save("PDF.pdf"); + workbook.SaveAs("output.xlsx"); + } + void SubstituteFont(object sender, SubstituteFontEventArgs args) + { + // Sets the alternate font when a specified font is not installed in the production environment. + if (args.OriginalFontName == "Wingdings Regular") + args.AlternateFontName = "Bauhaus 93"; + else + args.AlternateFontName = "Times New Roman"; + } + + + + + + + Represents the method that handles substitute font event. + + This event is supported for Excel to PDF/Image conversion alone + + + + Represents the substitute font event that occurs during Excel to PDF/Image conversion to substitute the alternate fonts when a specified font is not installed in the production environment. + + This event is supported for Excel to PDF/Image conversion alone + + + + Represents the original font name. + + + + + Represents the substitute font name. + + + + + Represents the substitute font name. + + + + + Initializes a new instance of class for the specified document + with original (missing) font name, and alternate font name. + + Name of the original (missing) font name. + Name of the alternate font name. + + + + Gets the original font name. Read Only. + + The original font is not installed in production environment + The string that specifies the orignal font name. + + + + Gets or sets the alternate font name. + + The string that specifies the alternate font name. + + + + Gets or sets the alternate font stream. + + The stream that specifies the alternate font . + is considered over if the alternate font stream is valid + + + + Summary description for AutoFilterConditionImpl. + + + + + Represents the autofilter conditions for . + + + + + Gets or sets Data type. + + + The following code illustrates how to set datatype for autofilter condition. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set filter range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Set Is AND or OR + filter.IsAnd = true; + + //Add filter + filter.FirstCondition.ConditionOperator = ExcelFilterCondition.DoesNotBeginWith; + filter.FirstCondition.DataType = ExcelFilterDataType.String; + filter.FirstCondition.String = "A"; + + filter.SecondCondition.ConditionOperator = ExcelFilterCondition.EndsWith; + filter.SecondCondition.DataType = ExcelFilterDataType.String; + filter.SecondCondition.String = "n"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets Comparison operator. + + + The following code illustrates how to set the operator for filter condition. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set filter range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Set Is AND or OR + filter.IsAnd = true; + + //Add filter + filter.FirstCondition.ConditionOperator = ExcelFilterCondition.DoesNotBeginWith; + filter.FirstCondition.DataType = ExcelFilterDataType.String; + filter.FirstCondition.String = "A"; + + filter.SecondCondition.ConditionOperator = ExcelFilterCondition.EndsWith; + filter.SecondCondition.DataType = ExcelFilterDataType.String; + filter.SecondCondition.String = "n"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets String value. + + + The can be used to filter as well as . Here for example, we + set the to filter texts in cells which "A" and + "n". For this we have to set to and + set strings to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set filter range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Set Is AND or OR + filter.IsAnd = true; + + //Add filter + filter.FirstCondition.ConditionOperator = ExcelFilterCondition.DoesNotBeginWith; + filter.FirstCondition.DataType = ExcelFilterDataType.String; + filter.FirstCondition.String = "A"; + + filter.SecondCondition.ConditionOperator = ExcelFilterCondition.EndsWith; + filter.SecondCondition.DataType = ExcelFilterDataType.String; + filter.SecondCondition.String = "n"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Boolean value. Read-only. (Used internally) + + + + + Error code. Read-only. (Used internally) + + + + + Gets or sets Floating-point value. + + + The can be used to filter as well as . Here for example, we + set the to filter numeric data in cells, so we set + to and set and 's + value. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set filter range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Set Is AND or OR + filter.IsAnd = true; + + //Add filter + filter.FirstCondition.ConditionOperator = ExcelFilterCondition.Greater; + filter.FirstCondition.DataType = ExcelFilterDataType.FloatingPoint; + filter.FirstCondition.Double = 400; + + filter.SecondCondition.ConditionOperator = ExcelFilterCondition.Less; + filter.SecondCondition.DataType = ExcelFilterDataType.FloatingPoint; + filter.SecondCondition.Double = 3000; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Data type. + + + + + Comparison operator. + + + + + String value. + + + + + Boolean value. + + + + + Error code. + + + + + Floating-point value. + + + + + Creates new instance. + + + + + Creates new instance. + + Filters collection. + Current filter. + + + + Disposes the AutoFilter Condition. + + + + + Parse current object. + + Current condition. + + + + Serialize method. + + Current condition. + + + + Clones current instance. + + Parent object. + Returns just cloned object. + + + + Data type. + + + + + Comparison operator. + + + + + String value. + + + + + Boolean value. + + + + + Error code. + + + + + Floating-point value. + + + + + This class represents single autofilter item. + + + + + Represents an Autofilter in an Excel worksheet. + + + + + Add Color Filter with the specified object + + to be filtered. + applied. + + To apply filters within tables in worksheet, we have to set the as child of . The range for + the will be same as the . + + + Color filter can be applied based on or . Here for example, + we apply filter based on . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Apply colors + worksheet["A2:A3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["A4:A5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["A6:A7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Add filter + filter.AddColorFilter(System.Drawing.Color.Blue, ExcelColorFilterType.CellColor); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Apply Icon Filter with the specfied iconId for the Iconset applied. + + to be filtered from. + IconId to be filtered. + + To apply filters within tables in worksheet, we have to set the as child of . The range for + the will be same as the . + + + Iconsets can be applied by setting conditional formats for data in the worksheet. For the iconsets applied using conditional formats we can apply + to filter a particular icon based on it's id or index. Here for example, we set + using conditional formats and filter the first icon in it. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 144.6; + worksheet["B3"].Number = 579.6; + worksheet["B4"].Number = 267.5; + worksheet["B5"].Number = 418; + worksheet["B6"].Number = 728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[1]; + + //Create conditional formats + IConditionalFormats formats = worksheet["B2:B7"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Type as IconSet + format.FormatType = ExcelCFType.IconSet; + + //Add filter + filter.AddIconFilter(ExcelIconSetType.ThreeArrows, 0); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + + Apply text filter with the specified string. + + string value need to add in the text filter + + To apply filters within tables in worksheet, we have to set the as child of . The range for + the will be same as the . + + + The following code illustrates how to apply text filter with the specified string. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Add filter + filter.AddTextFilter("Around the Horn"); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + + Remove text value in text filter with the specified string. + + Value need to remove from the filter list. + Return true if value is removed, else return false. + + The following code illustrates how to remove a specific text from the text filter's filtered list. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Add filter + filter.AddTextFilter("Eastern Connection"); + filter.AddTextFilter("Around the Horn"); + filter.AddTextFilter("Bon app"); + + //Remove filter + filter.RemoveText("Around the Horn"); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Apply DateTime filter with the specified date time. + + year in the date time. + month in the date time. + day in the date time. + hour in the date time. + mintue in the date time. + Seconds in the date time. + With respective grouping type. + + To apply filters within tables in worksheet, we have to set the as child of . The range for + the will be same as the . + + + The following code illustrates how to apply DateTime filter. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Title"; + worksheet["A2"].Text = "Sales Representative"; + worksheet["A3"].Text = "Sales Agent"; + worksheet["A4"].Text = "Owner"; + worksheet["A5"].Text = "Sales Associate"; + worksheet["A6"].Text = "Sales Representative"; + worksheet["A7"].Text = "Marketing Manager"; + worksheet["B1"].Text = "DOJ"; + worksheet["B2"].DateTime = DateTime.Parse("6/5/2011"); + worksheet["B3"].DateTime = DateTime.Parse("9/5/2011"); + worksheet["B4"].DateTime = DateTime.Parse("10/21/2007"); + worksheet["B5"].DateTime = DateTime.Parse("9/28/2004"); + worksheet["B6"].DateTime = DateTime.Parse("8/28/2007"); + worksheet["B7"].DateTime = DateTime.Parse("8/12/2003"); + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[1]; + + //Add filter + filter.AddDateFilter(2004, 9, 28, 0, 0, 0, DateTimeGroupingType.month); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Apply DateTime filter with the specified date time. + + Date with time which need to add. + Type of grouping. + + To apply filters within tables in worksheet, we have to set the as child of . The range for + the will be same as the . + + + The following code illustrates how to apply DateTime filter by passing object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Title"; + worksheet["A2"].Text = "Sales Representative"; + worksheet["A3"].Text = "Sales Agent"; + worksheet["A4"].Text = "Owner"; + worksheet["A5"].Text = "Sales Associate"; + worksheet["A6"].Text = "Sales Representative"; + worksheet["A7"].Text = "Marketing Manager"; + worksheet["B1"].Text = "DOJ"; + worksheet["B2"].DateTime = DateTime.Parse("9/5/2011"); + worksheet["B3"].DateTime = DateTime.Parse("9/5/2011"); + worksheet["B4"].DateTime = DateTime.Parse("10/21/2007"); + worksheet["B5"].DateTime = DateTime.Parse("9/28/2004"); + worksheet["B6"].DateTime = DateTime.Parse("8/28/2007"); + worksheet["B7"].DateTime = DateTime.Parse("8/12/2003"); + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[1]; + + //Add filter + filter.AddDateFilter(new DateTime(2004, 9, 28, 0, 0, 0, 0), DateTimeGroupingType.month); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + Remove specified date time from DateTime filter. + + year in the date time. + month in the date time. + day in the date time. + hour in the date time. + mintue in the date time. + Seconds in the date time. + With respective grouping type. + Return true if value is removed, else return false. + + The following code illustrates how to remove a particular date time from the date time filter's filtered list. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Title"; + worksheet["A2"].Text = "Sales Representative"; + worksheet["A3"].Text = "Sales Agent"; + worksheet["A4"].Text = "Owner"; + worksheet["A5"].Text = "Sales Associate"; + worksheet["A6"].Text = "Sales Representative"; + worksheet["A7"].Text = "Marketing Manager"; + worksheet["B1"].Text = "DOJ"; + worksheet["B2"].DateTime = DateTime.Parse("6/5/2011"); + worksheet["B3"].DateTime = DateTime.Parse("9/5/2011"); + worksheet["B4"].DateTime = DateTime.Parse("10/21/2007"); + worksheet["B5"].DateTime = DateTime.Parse("9/28/2004"); + worksheet["B6"].DateTime = DateTime.Parse("8/28/2007"); + worksheet["B7"].DateTime = DateTime.Parse("8/12/2003"); + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[1]; + + //Add filter + filter.AddDateFilter(2004, 9, 28, 0, 0, 0, DateTimeGroupingType.month); + filter.AddDateFilter(2007, 8, 28, 0, 0, 0, DateTimeGroupingType.month); + filter.AddDateFilter(2011, 9, 5, 0, 0, 0, DateTimeGroupingType.month); + + //Remove filter + filter.RemoveDate(2007, 8, 28, 0, 0, 0, DateTimeGroupingType.month); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Remove specified date time from DateTime filter. + + Datetime which need to remove. + With respective grouping type + Return true if value is removed, else return false. + + The following code illustrates how to remove a particular date time from the date time filter's filtered list by passing + object as an argument. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Title"; + worksheet["A2"].Text = "Sales Representative"; + worksheet["A3"].Text = "Sales Agent"; + worksheet["A4"].Text = "Owner"; + worksheet["A5"].Text = "Sales Associate"; + worksheet["A6"].Text = "Sales Representative"; + worksheet["A7"].Text = "Marketing Manager"; + worksheet["B1"].Text = "DOJ"; + worksheet["B2"].DateTime = DateTime.Parse("6/5/2011"); + worksheet["B3"].DateTime = DateTime.Parse("9/5/2011"); + worksheet["B4"].DateTime = DateTime.Parse("10/21/2007"); + worksheet["B5"].DateTime = DateTime.Parse("9/28/2004"); + worksheet["B6"].DateTime = DateTime.Parse("8/28/2007"); + worksheet["B7"].DateTime = DateTime.Parse("8/12/2003"); + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[1]; + + //Add filter + filter.AddDateFilter(new DateTime(2004, 9, 28, 0, 0, 0, 0), DateTimeGroupingType.month); + filter.AddDateFilter(new DateTime(2007, 8, 28, 0, 0, 0, 0), DateTimeGroupingType.month); + filter.AddDateFilter(new DateTime(2011, 9, 5, 0, 0, 0, 0), DateTimeGroupingType.month); + + //Remove filter + filter.RemoveDate(new DateTime(2007, 8, 28, 0, 0, 0, 0), DateTimeGroupingType.month); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Apply dynamic date filter based on the specified relative date constant. + + Type dynamic filter + + The following code illustrates how to apply the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Title"; + worksheet["A2"].Text = "Sales Representative"; + worksheet["A3"].Text = "Sales Agent"; + worksheet["A4"].Text = "Owner"; + worksheet["A5"].Text = "Sales Associate"; + worksheet["A6"].Text = "Sales Representative"; + worksheet["A7"].Text = "Marketing Manager"; + worksheet["B1"].Text = "DOJ"; + worksheet["B2"].DateTime = DateTime.Parse("6/5/2011"); + worksheet["B3"].DateTime = DateTime.Parse("9/5/2011"); + worksheet["B4"].DateTime = DateTime.Parse("10/21/2007"); + worksheet["B5"].DateTime = DateTime.Parse("9/28/2004"); + worksheet["B6"].DateTime = DateTime.Parse("8/28/2007"); + worksheet["B7"].DateTime = DateTime.Parse("8/12/2003"); + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[1]; + + //Add filter + filter.AddDynamicFilter(DynamicFilterType.Quarter3); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Remove dynamic date filter if exist. + + Return true if dynamic filter is removed, else return false. + + The following code illustrates how to remove the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Title"; + worksheet["A2"].Text = "Sales Representative"; + worksheet["A3"].Text = "Sales Agent"; + worksheet["A4"].Text = "Owner"; + worksheet["A5"].Text = "Sales Associate"; + worksheet["A6"].Text = "Sales Representative"; + worksheet["A7"].Text = "Marketing Manager"; + worksheet["B1"].Text = "DOJ"; + worksheet["B2"].DateTime = DateTime.Parse("6/5/2011"); + worksheet["B3"].DateTime = DateTime.Parse("9/5/2011"); + worksheet["B4"].DateTime = DateTime.Parse("10/21/2007"); + worksheet["B5"].DateTime = DateTime.Parse("9/28/2004"); + worksheet["B6"].DateTime = DateTime.Parse("8/28/2007"); + worksheet["B7"].DateTime = DateTime.Parse("8/12/2003"); + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[1]; + + //Add filter + filter.AddDynamicFilter(DynamicFilterType.Quarter3); + + //Remove filter + filter.RemoveDynamicFilter(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Removes the Color Filter applied + + + The following code illustrates how to remove the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Apply colors + worksheet["A2:A3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["A4:A5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["A6:A7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Add filter + filter.AddColorFilter(System.Drawing.Color.Blue, ExcelColorFilterType.CellColor); + + //Remove filter + filter.RemoveColorFilter(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Removes the Icon Filter applied. + + + The following code illustrates how to remove the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 144.6; + worksheet["B3"].Number = 579.6; + worksheet["B4"].Number = 267.5; + worksheet["B5"].Number = 418; + worksheet["B6"].Number = 728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[1]; + + //Create conditional formats + IConditionalFormats formats = worksheet["B2:B7"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Type as IconSet + format.FormatType = ExcelCFType.IconSet; + + //Add filter + filter.AddIconFilter(ExcelIconSetType.ThreeArrows, 0); + + //Remove filter + filter.RemoveIconFilter(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + First condition of autofilter. + + + To know more about filters refer Data Filtering + + + Custom filters can be applied by setting and . To filter particular pattern we can + make use of custom filters. Here for example, we set a custom filter to filter values those does not start with "A" but should end with "N". + For this we set to 's + and to 's and + set to for both coditions. + Also we set "A" and "N" to for and + respectively. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Add filter + filter.FirstCondition.ConditionOperator = ExcelFilterCondition.DoesNotBeginWith; + filter.FirstCondition.DataType = ExcelFilterDataType.String; + filter.FirstCondition.String = "A"; + + filter.SecondCondition.ConditionOperator = ExcelFilterCondition.EndsWith; + filter.SecondCondition.DataType = ExcelFilterDataType.String; + filter.SecondCondition.String = "n"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Second condition of autofilter. + + + To setup a custom should be used. is optional. + + + The following code illustrates how to set second condition. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Set Is AND or OR + filter.IsAnd = true; + + //Add filter + filter.FirstCondition.ConditionOperator = ExcelFilterCondition.DoesNotBeginWith; + filter.FirstCondition.DataType = ExcelFilterDataType.String; + filter.FirstCondition.String = "A"; + + filter.SecondCondition.ConditionOperator = ExcelFilterCondition.EndsWith; + filter.SecondCondition.DataType = ExcelFilterDataType.String; + filter.SecondCondition.String = "n"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + } + + + + + + False indicates that this autofilter was not used; otherwise True. Read-only. + + + The following code illustrates how to access the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Title"; + worksheet["A2"].Text = "Sales Representative"; + worksheet["A3"].Text = "Sales Agent"; + worksheet["A4"].Text = "Owner"; + worksheet["A5"].Text = "Sales Associate"; + worksheet["A6"].Text = "Sales Representative"; + worksheet["A7"].Text = "Marketing Manager"; + worksheet["B1"].Text = "DOJ"; + worksheet["B2"].DateTime = DateTime.Parse("6/5/2011"); + worksheet["B3"].DateTime = DateTime.Parse("9/5/2011"); + worksheet["B4"].DateTime = DateTime.Parse("10/21/2007"); + worksheet["B5"].DateTime = DateTime.Parse("9/28/2004"); + worksheet["B6"].DateTime = DateTime.Parse("8/28/2007"); + worksheet["B7"].DateTime = DateTime.Parse("8/12/2003"); + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[1]; + + //Check filter applied or not + Console.WriteLine(filter.IsFiltered); + + //Add filter + filter.AddDynamicFilter(DynamicFilterType.Quarter3); + + //Check filter applied or not + Console.WriteLine(filter.IsFiltered); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Tables.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + //True + + + + + + True means to use AND operation between conditions, + False to use OR. Read-only. + + + If both the conditions given for should be applied without considering the other condition + should be set to "false". By default is set to "true", so it combines both the conditions and applies the filter. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Set Is AND or OR + filter.IsAnd = false; + + //Add filter + filter.FirstCondition.ConditionOperator = ExcelFilterCondition.DoesNotBeginWith; + filter.FirstCondition.DataType = ExcelFilterDataType.String; + filter.FirstCondition.String = "A"; + + filter.SecondCondition.ConditionOperator = ExcelFilterCondition.EndsWith; + filter.SecondCondition.DataType = ExcelFilterDataType.String; + filter.SecondCondition.String = "n"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + True if the Top 10 AutoFilter shows percentage; (Used internally) + False if it shows items. Read-only. + + + + + True if the first condition is a simple equality. Read-only. + + + The following code illustrates how IsSimple1 property can be used. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Set Is AND or OR + filter.IsAnd = false; + + //Add filter + filter.FirstCondition.ConditionOperator = ExcelFilterCondition.Equal; + filter.FirstCondition.DataType = ExcelFilterDataType.String; + filter.FirstCondition.String = "Alfreds Futterkiste"; + + filter.SecondCondition.ConditionOperator = ExcelFilterCondition.Equal; + filter.SecondCondition.DataType = ExcelFilterDataType.String; + filter.SecondCondition.String = "Ernst Handel"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + Console.WriteLine(filter.IsSimple1); + Console.WriteLine(filter.IsSimple2); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + //True + + + + + + True if the second condition is a simple equality. Read-only. + + + The following code illustrates how IsSimple2 property can be used. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Set Is AND or OR + filter.IsAnd = false; + + //Add filter + filter.FirstCondition.ConditionOperator = ExcelFilterCondition.Equal; + filter.FirstCondition.DataType = ExcelFilterDataType.String; + filter.FirstCondition.String = "Alfreds Futterkiste"; + + filter.SecondCondition.ConditionOperator = ExcelFilterCondition.Equal; + filter.SecondCondition.DataType = ExcelFilterDataType.String; + filter.SecondCondition.String = "Ernst Handel"; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + Console.WriteLine(filter.IsSimple1); + Console.WriteLine(filter.IsSimple2); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + //True + + + + + + True if the Top 10 AutoFilter shows the top items; + False if it shows the bottom items. + + + The following code illustrates how to set the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Top 10"; + worksheet["A2"].Number = 7; + worksheet["A3"].Number = 1; + worksheet["A4"].Number = 8; + worksheet["A5"].Number = 2; + worksheet["A6"].Number = 3; + worksheet["A7"].Number = 9; + worksheet["A8"].Number = 15; + worksheet["A9"].Number = 19; + worksheet["A10"].Number = 23; + worksheet["A11"].Number = 42; + worksheet["A12"].Number = 5; + worksheet["A13"].Number = 7; + worksheet["A14"].Number = 12; + worksheet["A15"].Number = 16; + worksheet["A16"].Number = 22; + worksheet["A17"].Number = 33; + worksheet["A18"].Number = 25; + worksheet["A19"].Number = 30; + worksheet["A20"].Number = 38; + worksheet["A21"].Number = 6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create filter + IAutoFilters filters = worksheet.AutoFilters; + filters.FilterRange = worksheet["A1:A21"]; + IAutoFilter filter = filters[0]; + + //Set top + filter.IsTop = false; + + //Set top 10 number + filter.Top10Number = 5; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + True if the condition is a Top 10 AutoFilter. + + + The following code illustrates how Top 10 is set for autofilters. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Top 10"; + worksheet["A2"].Number = 7; + worksheet["A3"].Number = 1; + worksheet["A4"].Number = 8; + worksheet["A5"].Number = 2; + worksheet["A6"].Number = 3; + worksheet["A7"].Number = 9; + worksheet["A8"].Number = 15; + worksheet["A9"].Number = 19; + worksheet["A10"].Number = 23; + worksheet["A11"].Number = 42; + worksheet["A12"].Number = 5; + worksheet["A13"].Number = 7; + worksheet["A14"].Number = 12; + worksheet["A15"].Number = 16; + worksheet["A16"].Number = 22; + worksheet["A17"].Number = 33; + worksheet["A18"].Number = 25; + worksheet["A19"].Number = 30; + worksheet["A20"].Number = 38; + worksheet["A21"].Number = 6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create filter + IAutoFilters filters = worksheet.AutoFilters; + filters.FilterRange = worksheet["A1:A21"]; + IAutoFilter filter = filters[0]; + + //Set top 10 + filter.IsTop10 = true; + + //Set top 10 number + filter.Top10Number = 5; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Number of elements to show in Top10 mode. + + + The following code illustrates how to set the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Top 10"; + worksheet["A2"].Number = 7; + worksheet["A3"].Number = 1; + worksheet["A4"].Number = 8; + worksheet["A5"].Number = 2; + worksheet["A6"].Number = 3; + worksheet["A7"].Number = 9; + worksheet["A8"].Number = 15; + worksheet["A9"].Number = 19; + worksheet["A10"].Number = 23; + worksheet["A11"].Number = 42; + worksheet["A12"].Number = 5; + worksheet["A13"].Number = 7; + worksheet["A14"].Number = 12; + worksheet["A15"].Number = 16; + worksheet["A16"].Number = 22; + worksheet["A17"].Number = 33; + worksheet["A18"].Number = 25; + worksheet["A19"].Number = 30; + worksheet["A20"].Number = 38; + worksheet["A21"].Number = 6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C8"].CellStyleName = "CurrencyFormat"; + + //Create filter + IAutoFilters filters = worksheet.AutoFilters; + filters.FilterRange = worksheet["A1:A21"]; + IAutoFilter filter = filters[0]; + + //Set top + filter.IsTop = false; + + //Set top 10 number + filter.Top10Number = 5; + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Returns filter values for combination type ( Text and DateTime) and dynamic type. It returns null, if custom filter is applied. Read-only. + + + The following code illustrates how to access the applied filter using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Apply colors + worksheet["A2:A3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["A4:A5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["A6:A7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:A7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Add filter + filter.AddColorFilter(System.Drawing.Color.Blue, ExcelColorFilterType.CellColor); + + //Get filtered items + Console.WriteLine(filter.FilteredItems.FilterType.ToString()); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //ColorFilter + + + + + + Specifies the type of filter. + + + The following code illustrates how to access the filter type. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Apply colors + worksheet["A2:A3"].CellStyle.Color = System.Drawing.Color.Red; + worksheet["A4:A5"].CellStyle.Color = System.Drawing.Color.Blue; + worksheet["A6:A7"].CellStyle.Color = System.Drawing.Color.Green; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Check filter type + Console.WriteLine(filter.FilterType.ToString()); + + //Add filter + filter.AddColorFilter(System.Drawing.Color.Blue, ExcelColorFilterType.CellColor); + + //Check filter type + Console.WriteLine(filter.FilterType.ToString()); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //CustomFilter + //ColorFilter + + + + + + First condition of autofilter. + + + + + Second condition of autofilter. + + + + + Auto filter record. + + + + + Form control shape implementation. + + + + + Parent collection. + + + + + Type of filter used. + + + + + combination filter with collection of text filters. + + + + + Color Filter + + + + + Icon Filter + + + + + dynamic date filter + + + + + Holds the column index for which filtering is applied. + + + + + Name of the attribute that represents if filter shape should be visible. + + + + + Creates new instance. + + Parent filters collection. + + + + Creates new instance. + + Parent filters collection. + Column index. + Row index. + + + + Creates new instance. + + Parent filters collection. + Base record. + Column index. + Row index. + + + + Creates new instances of condition variables. + + + + + Disposes the AutoFilter. + + + + + Clears content of the autofilter (shape corresponding to autofilter). + + + + + Clone current instance. + + Parent object. + Returns just created object. + + + + To select the range in which the autofilter has to be applied + + + + + To set the top10 filter for filtering values based on IsTop and Top10Number + + + + + To filter values based upon the conditions according to condition operator, datatype and condition value + + Comparison operator + Data Type + Value may be double or string + + + + + To filter values based upon the conditions according to condition operator, condition value and type of the current range value + + Comparison operator + Value may be double or string + Worksheet + Range + isFirstCondition + Type may be double or DateTime or string + + + + To get the result of comparison between two objects based on the condition operator + + Value in the cell + Condition value + Comparison operator + + + + Returns an integer after comparing two objects based on the comparison type. Returns zero when the two values are equal, returns positive value when a is greater than b and returns negative value when a is less than b. + + Value in the cell + Condition value + Type of string comparison + + + + To show/hide rows based on the blanks. + + + + + To show/hide rows based on the non-blanks. + + + + + Apply text filter with the specified string collection. + + IEnumerable collection of string + + + + Add Color Filter with the specified System.Drawing.Color object + + Color to be filtered. + Filter type applied. + + Usage of Color Filter in two scenarios have been shown in the below code snippets. + + + The following code illustrates the filtering cells based on cell color + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("ColorFilter.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.AutoFilters.FilterRange = worksheet["A1:C30"]; + IAutoFilter filter = worksheet.AutoFilters[1]; + filter.AddColorFilter(ExcelColorFilterType.CellColor, System.Drawing.Color.Red); + workbook.SaveAs("FilteredbyColorFilter.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + The following code illustrates the filtering cells based on Font color + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("ColorFilter.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet.AutoFilters.FilterRange = worksheet["A1:C30"]; + IAutoFilter filter = worksheet.AutoFilters[1]; + filter.AddColorFilter(System.Drawing.Color.Red, ExcelColorFilterType.FontColor); + workbook.SaveAs("FilteredbyColorFilter.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Clears the applied color filter in the particular column + + + + + Apply Icon Filter with the specfied iconId for the Iconset applied. + + IconSetType to be filtered from. + IconId to be filtered. + + Usage of Icon Filter in has been shown in the below code snippet. + + + The following code illustrates applying icon filter based on the icon present in the cell. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("IconFilter.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IConditionalFormats formats = worksheet["B1:B15"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + format.BackColorRGB = System.Drawing.Color.Red; + format.FormatType = ExcelCFType.IconSet; + format.IconSet.IconSet = ExcelIconSetType.ThreeArrows; + worksheet.AutoFilters.FilterRange = worksheet["A1:C30"]; + IAutoFilter filter = worksheet.AutoFilters[1]; + filter.AddIconFilter(ExcelIconSetType.ThreeArrows, 1); + workbook.SaveAs("FilteredBook.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Removes the IconFilter (If applied). + + + + + Removes Color Filter or Icon Filter from the current column when Called. + + + + + Apply text filter with the specified string. + + string value need to add in the text filter + + + + Remove text value in text filter with the specified string. + + String Value that have to remove from the Text filter. + Return true if the value is removed, else false. + + + + + Apply DateTime filter with the specified date time. + + year in the date time. + month in the date time. + day in the date time. + hour in the date time. + mintue in the date time. + Seconds in the date time. + With respective grouping type. + + + + Apply DateTime filter with the specified date time. + + Date with time which need to add. + Type of grouping. + + + + Remove specified date time from DateTime filter. + + year in the date time. + month in the date time. + day in the date time. + hour in the date time. + mintue in the date time. + Seconds in the date time. + With respective grouping type. + Return true if the value is removed, else false. + + + + Remove specified date time from DateTime filter. + + Datetime which need to remove. + With respective grouping type + Return true if the value is removed, else false. + + + + Apply dynamic date filter based on the specified relative date constant. + + Dynamic filer type. + + + + Remove dynamic date filter if exist. + + Return true if the value is removed, else false. + + + + Applying Text filter. + + + + + Initialize CalcEngine + + disableCalcEngine + + + + Applying DateTime filter. + + + + + Applying Dynamic Date filter. + + + + + Parses specified record. + + Record to parse. + Column index. + Row index. + + + + Saves autofilter as biff records. + + Records to be serialized. + + + + First condition of autofilter. Read-only. + + + + + Second condition of autofilter. Read-only. + + + + + Auto filter record. + + + + + False indicates that this autofilter was not used; otherwise True. + + + + + True means to use AND operation between conditions, + False to use OR. + + + + + Returns true if color filter is applied. + + + + + Returns true if Icon Filter is applied. + + + + + True if the Top 10 AutoFilter shows percentage; + False if it shows items. + + + + + True if the first condition is a simple equality. + + + + + True if the second condition is a simple equality. + + + + + True if the Top 10 AutoFilter shows the top items; + False if it shows the bottom items. + + + + + True if the condition is a Top 10 AutoFilter. + + + + + Number of elements to show in Top10 mode. + + + + + Specifies the type of filter. + + + + + Returns filter values for combination type ( Text and DateTime), dynamic and color type. It returns null, if custom filter is applied. Read-only. + + + + + Returns parent worksheet. Read-only. + + + + + Returns shapes collection of the parent worksheet. Read-only. + + + + + Number of AutoFilter drop-down arrows on the sheet. ( One based ) + + + + + If true - than contain non default first condition; otherwise false. Read-only. + + + + + If true - than contain non default second condition; otherwise false. Read-only. + + + + + If filtered to blanks - true. Read-only. + + + + + If filtered to nonblanks - true. Read-only. + + + + + Represents the border of an object. + + + + + Represents the border of an object. + + + + + Returns or sets a color of the border from enumeration. + + + The following code illustrates how to set a color from enumeration to the border. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Set borders + IBorders borders = worksheet["C2"].Borders; + + //Set border color + borders[ExcelBordersIndex.EdgeTop].Color = ExcelKnownColors.Red; + borders[ExcelBordersIndex.EdgeBottom].Color = ExcelKnownColors.Blue; + + //Set line style + borders[ExcelBordersIndex.EdgeTop].LineStyle = ExcelLineStyle.Thick; + borders[ExcelBordersIndex.EdgeBottom].LineStyle = ExcelLineStyle.Thick; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the primary color of the object. + + + The following code illustrates how to access ColorObject and set a color from to the border. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set borders + IBorders borders = worksheet["C2"].Borders; + + //Set color object + ColorObject colorObject = borders[ExcelBordersIndex.EdgeTop].ColorObject; + + //Set color + colorObject.SetIndexed(ExcelKnownColors.Red); + + //Set line style + borders.LineStyle = ExcelLineStyle.Thick; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets or gets the RGB color of the border from structure. + + + The following code illustrates how to set a RGB color from structure to the border. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Set borders + IBorders borders = worksheet["C2"].Borders; + + //Set border color + borders[ExcelBordersIndex.EdgeTop].ColorRGB = System.Drawing.Color.Red; + borders[ExcelBordersIndex.EdgeBottom].ColorRGB = System.Drawing.Color.Blue; + + //Set line style + borders[ExcelBordersIndex.EdgeTop].LineStyle = ExcelLineStyle.Thick; + borders[ExcelBordersIndex.EdgeBottom].LineStyle = ExcelLineStyle.Thick; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the line style for the border. Read/write ExcelLineStyle. + + + To know more about borders refer Apply Border Settings. + + + By default is set to so borders are not applied. Here for example, we set + to and borders. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Set borders + IBorders borders = worksheet["C2"].Borders; + + //Set border color + borders[ExcelBordersIndex.EdgeTop].Color = ExcelKnownColors.Red; + borders[ExcelBordersIndex.EdgeBottom].Color = ExcelKnownColors.Blue; + + //Set line style + borders[ExcelBordersIndex.EdgeTop].LineStyle = ExcelLineStyle.Thick; + borders[ExcelBordersIndex.EdgeBottom].LineStyle = ExcelLineStyle.Thick; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + This property is used only by Diagonal borders. For any other border + index property will have no influence. + + + The following code illustrates how to set visibility of the and borders. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set borders + IBorders borders = worksheet["C2:D3"].Borders; + + //Set color + borders.Color = ExcelKnownColors.Red; + + //Set line style + borders.LineStyle = ExcelLineStyle.Thick; + + //Set diagonal line visibility + borders[ExcelBordersIndex.DiagonalDown].ShowDiagonalLine = false; + borders[ExcelBordersIndex.DiagonalUp].ShowDiagonalLine = false; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Maximum color index that requires modification in order to let MS Excel edit styles. + + + + + Increment for color value in order to let MS Excel edit styles. + + + + + Index of the border. + + + + + Extended format that contains this border. + + + + + Creates a class instance and sets its Application and Parent properties. + + Application object for the Border. + Parent object for the Border. + + + + Creates border with specified index. + + Application object for the border. + Parent object for the border. + Index of border that should be created. + + + + Creates border from ExtendedFormat with specified border index. + + Application object for the border. + Parent object for the border. + + ExtendedFormat that contains all information about required border. + + Border index of the border. + + + + Determines whether the specified Object is equal to the current Object. + + The Object to compare with the current Object. + true if the specified Object is equal to the current Object; otherwise, false. + + + + Serves as a hash function for a particular type, suitable for use + in hashing algorithms and data structures like a hash table. + + A hash code for the current object. + + + + Copies all fields from baseBorder except Parent. + + Border that will be copied. + + + + Normalizes border color to let MS Excel edit style. + + + + + Normalizes border color to let MS Excel edit style. + + Color to normalize. + New color value. + + + + Clone current object. + + New extended format. + Cloned border object. + + + + Returns or sets the primary color of the object, as shown in the + following table. Use the RGB function to create a color value. + Read/write Long. + + + + + Returns or sets the primary color of the object, as shown in the + following table. Use the RGB function to create a color value. + Read/write Long. + + + + + Returns or sets the primary color of the object, as shown in the + following table. Use the RGB function to create a color value. + Read/write Color. + + + + + Returns or sets the line style for the border. Read/write ExcelLineStyle. + + + + + This property is used only by Diagonal borders. For any other border + index property will have no influence. + + + + + Returns border index. Read-only. + + + + + Returns parent workbook. Read-only. + + + + + This class represents border for multicell range. + + + + + Cells of the range. + + + + + Border index. + + + + + Parent workbook. + + + + + Creates wrapper for specified range and border index. + + Range for which this wrapper is created. + Border index. + + + + Creates wrapper for specified range and border index. + + Range for which this wrapper is created. + Border index. + + + + Returns or sets the primary color of the object. + Read/write ExcelKnownColors. + + + + + Returns or sets the primary color of the object, as shown in the + following table. Use the RGB function to create a color value. + + + + + Returns or sets the primary color of the object, as shown in the + following table. Use the RGB function to create a color value. + Read/write Long. + + + + + Returns or sets the line style for the border. Read/write ExcelLineStyle. + + + + + This property is used only by Diagonal borders. For any other border + index property will have no influence. + + + + + Worksheet calculation options block. + + + + + Represents the Calculation options in a Excel Workbook. + + + + + Specifies the maximum number of times the formulas should be iteratively calculated. + This is a fail-safe against mutually recursive formulas locking up + a spreadsheet application. + + + + + Defines whether to recalculate before saving. + + + + + Gets / sets maximum change of the result to the exit of an iteration. + + + + + Indicates whether iterations are turned on. + + + + + Indicates whether R1C1 reference mode is turned on. + + + + + Gets/sets calculation mode in Excel. + + + + + Correct records. + + + + + Specifies whether to calculate formulas manually, automatically, or automatically + except for multiple table operations. + + + + + Specifies the maximum number of times the formulas should be iteratively calculated. + This is a fail-safe against mutually recursive formulas locking up + a spreadsheet application. + + + + + Describes which reference mode to use. + + + + + Tells whether to iterate over formula calculations or not + (if a formula is dependent upon another formula's result) + (odd feature for something that can only have 32 elements in a formula). + + + + + Stores the maximum change of the result to the exit of an iteration. + + + + + Defines whether to recalculate before saving (set to 1). + + + + + Initializes new instance and sets application and parent fields. + + Application object for the page setup. + Parent object for the page setup. + + + + Recovers Page setup from the Biff Records array starting from position + + Application object for the page setup. + Parent object for the page setup. + Array of Biff Records that contains all needed records. + Position of PrintHeadersRecord in the array. + + + + Recovers Page setup from the Biff Records array starting from the position specified. + + Biff Records data. + Position of first PageSetup record - PrintHeadersRecord. + Position after extracting calculation options. + + + + Adds all records to OffsetArrayList. + + OffsetArrayList which will get all records. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Specifies the maximum number of times the formulas should be iteratively calculated. + This is a fail-safe against mutually recursive formulas locking up + a spreadsheet application. + + + + + Specifies the mode of formula value calculations. + + + + + Defines whether to recalculate before saving. + + + + + Gets / sets maximum change of the result to the exit of an iteration. + + + + + Indicates whether iterations are turned on. + + + + + Indicates whether R1C1 reference mode is turned on. + + + + + Summary description for CellDataImpl. + + + + + Cell range. + + + + + Cell record. + + + + + Default constructor. + + + + + Cell range. + + + + + Cell record. + + + + + Summary description for CellStyle. + + + + + This class wraps extended format inside in order to hide from user + creation of new extended formats when user changes any properties + of extended format. + + + + + Extended format with style settings. + + + + + Parent workbook. + + + + + Font wrapper. + + + + + Borders collection. + + + + + Interior wrapper. + + + + + Creates new instance of extended format wrapper. + + + + + Creates new instance of extended format wrapper. + + Parent workbook. + Index of extended format to wrap. + + + + Sets solid fill pattern when changing + + + + + Creates inner extended format. + + Index to extended format to wrap. + + + + Updates inner extended format's font wrapper. + + + + + Searches for all necessary parent objects. + + Parent object. + + + + Sets Saved flag of the parent workbook to the False. + Called when any changes occurred in the style. + + + + + Event handler for font AfterChange event. + + Event sender. + Event arguments. + + + + Event handler for interior AfterChange event. + + Event sender. + Event arguments. + + + + This method is called after changes in NumberFormat. + + + + + + + + + + + + This method is called before reading any value. Can be used + to update wrapped object before read operation. + + + + + Gets style object either from parent or from this instance if it has no parent. + + Parent style object. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Returns parent workbook. Read-only. + + + + + Gets / Sets fill pattern. + + + + + Gets format index in m_book.InnerFormats. + + + + + Gets / Sets index of fill background color. + + + + + Gets / Sets fill background color. + + + + + Gets / Sets index of fill foreground color. + + + + + Gets / Sets fill foreground color. + + + + + Gets / Sets format index. + + + + + Horizontal alignment. + + + + + True if the style includes the AddIndent, HorizontalAlignment, + VerticalAlignment, WrapText, and Orientation properties. + Read / write Boolean. + + + + + True if the style includes the Color, ColorIndex, LineStyle, + and Weight border properties. Read / write Boolean. + + + + + True if the style includes the Background, Bold, Color, + ColorIndex, FontStyle, Italic, Name, OutlineFont, Shadow, + Size, Strikethrough, Subscript, Superscript, and Underline + font properties. Read / write Boolean. + + + + + True if the style includes the NumberFormat property. + Read / write Boolean. + + + + + True if the style includes the Color, ColorIndex, + InvertIfNegative, Pattern, PatternColor, and PatternColorIndex + interior properties. Read / write Boolean. + + + + + True if the style includes the FormulaHidden and Locked protection + properties. Read / write Boolean. + + + + + Indent level. + + + + + True if formula is hidden. + + + + + True if cell is locked. + + + + + For far east languages. Supported only for format. Always 0 for US. + + + + + Returns or sets the format code for the object. Read / write String. + + + + + Returns or sets the format code for the object as a string in the + language of the user. Read / write String. + + + + + Returns object that describes number format. Read-only. + + + + + Text direction, the reading order for far east versions. + + + + + Text rotation angle: + 0 Not rotated + 1-90 1 to 90 degrees counterclockwise + 91-180 1 to 90 degrees clockwise + 255 Letters are stacked top-to-bottom, but not rotated. + + Thrown when value is more than 0xFF. + + + + True - shrink content to fit into cell. + + + + + Vertical alignment. + + + + + True - Text is wrapped at right border. + + + + + Returns font object for this extended format. + + + + + Returns borders object for this extended format. + + + + + If true then first symbol in cell is apostrophe. + + + + + Returns or sets the color of the interior pattern as an index into the current color palette. + + + + + Returns or sets the color of the interior pattern as an Color value. + + + + + Returns or sets the color of the interior. The color is specified as + an index value into the current color palette. + + + + + Returns or sets the cell shading color. + + + + + Returns interior object for this extended format. + + + + + Gets value indicating whether format was modified, compared to parent format. + + + + + Gets / Sets font index. + + + + + Returns wrapped format. + + + + + Gets or sets whether the extended format has border + + + + + Get/set BottomBorder color. + + + + + Get/set TopBorder color. + + + + + Get/set LeftBorder color. + + + + + Get/set RightBorder color. + + + + + Get/set DiagonalUpBorder color. + + + + + Gets / sets line style of the left border. + + + + + Gets / sets line style of the right border. + + + + + Gets / sets line style of the top border. + + + + + Gets / sets line style of the bottom border. + + + + + Gets / sets line style of the diagonal border. + + + + + Gets / sets line style of the diagonal border. + + + + + Indicates whether DiagonalUp line is visible. + + + + + Indicates whether DiagonalDown line is visible. + + + + + Event is raised after changes in number format. + + + + + Reference to Application which hosts all objects. Read-only. + + + + + Reference to Parent object. Read-only. + + + + + Indicates whether style is build in. Read-only. + + + + + Returns name of the style. Read-only. + + + + + Indicates whether style is initialized (differs from Normal style). + Read-only. + + + + + Parent range. + + + + + Represents whether to get adjacent or not + + + + + Creates new instance of cell style. + + Parent range. + + + + Creates new instance of cell style. + + Parent range. + Index of extended format to wrap. + + + + This method is called before changes in extended format. + + + + + This method is called after changes in extended format. + + + + + Searches for all necessary parent objects. + + Parent object. + + + + This method is called before reading any value. Can be used + to update wrapped object before read operation. + + + + + Gets line style of the left border. + + + + + + + Sets line style of the border. + Border + LineStyle + + + + + Gets line style of the right border. + + + + + + + Gets line style of the top border. + + + + + + + Get line style of the bottom border. + + + + + + + Gets the width of a border line style + + Border Line Style + Width of the line style + + + + Gets line color of the left border. + + + + + + + Gets line color of the right border. + + + + + + + Gets line color of the top border. + + + + + + + Get line color of the bottom border. + + + + + + + Gets left adjecent cell. + + + + + + Gets rigth adjecent cell. + + + + + + Gets top adjecent cell. + + + + + + Gets bottom adjecent cell. + + + + + + Gets relative cell. + + + + + + + + Get/set LeftBorder color. + + + + + Get/set RightBorder color. + + + + + Get/set TopBorder color. + + + + + Get/set BottomBorder color. + + + + + Gets / sets line style of the left border. + + + + + Gets / sets line style of the right border. + + + + + Gets / sets line style of the top border. + + + + + Gets / sets line style of the top border. + + + + + Gets or sets a boolean value + whether to get adjacent or not + + + + + Represents an axis on the chart. + + + + + Represents an axis on the chart. + + + + + Gets or sets number format for the axis values. + + + By default "General" set to . Here for example, we set currency format "$#,##0_);($#,##0)" to + to display value in the as currency. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10000"; + sheet.Range["B2"].Value = "20000"; + sheet.Range["C2"].Value = "30000"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartAxis chartAxis = chart.PrimaryValueAxis; + + //Set number format + chartAxis.NumberFormat = @"$#,##0_);($#,##0)"; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the type of the axis. Read-only. + + + The following code illustrates how to access the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10000"; + sheet.Range["B2"].Value = "20000"; + sheet.Range["C2"].Value = "30000"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartAxis chartAxis = chart.PrimaryValueAxis; + + //Get axis type + Console.Write(chartAxis.AxisType); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + + + + Gets or sets the axis title. + + + The following code illustrates how to set for the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Pareto; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category title + categoryAxis.Title = "Categories"; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the axis text rotation angle. Should be an integer value between -90 and 90. + + + The following code illustrates how to set for . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set secondary axis + IChartAxis chartAxis = chart.PrimaryCategoryAxis; + + //Set text rotation angle + chartAxis.TextRotationAngle = 30; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the area for the axis title. Read-only. + + + The following code illustrates how to set foreground color to 's title area using + property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Pareto; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category title + categoryAxis.Title = "Categories"; + + //Set title area + IChartTextArea titleArea = categoryAxis.TitleArea; + + //Set color + titleArea.FrameFormat.Fill.ForeColorIndex = ExcelKnownColors.Pale_blue; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the font used for axis text display. Read-only. + + + The following code illustrates how to set font color to the 's category labels using + property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart axis + IChartAxis chartAxis = chart.PrimaryCategoryAxis; + + //Set font color + chartAxis.Font.Color = ExcelKnownColors.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the major grid lines for the axis. Read-only. + + + The following code illustrates how to access of and set colors to it. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart axis + IChartAxis chartAxis = chart.PrimaryCategoryAxis; + + //Set visibility + chartAxis.HasMajorGridLines = true; + + //Set grid lines + IChartGridLine gridLine = chartAxis.MajorGridLines; + gridLine.LineProperties.ColorIndex = ExcelKnownColors.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the minor grid lines for the axis. Read-only. + + + The following code illustrates how to access of and set colors to it. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart axis + IChartAxis chartAxis = chart.PrimaryCategoryAxis; + + //Set visibility + chartAxis.HasMinorGridLines = true; + + //Set grid lines + IChartGridLine gridLine = chartAxis.MinorGridLines; + gridLine.LineProperties.ColorIndex = ExcelKnownColors.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating if the axis has minor grid lines. + + + The following code illustrates how to set visibility of of . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart axis + IChartAxis chartAxis = chart.PrimaryCategoryAxis; + + //Set grid lines visibility + chartAxis.HasMinorGridLines = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + + Gets or sets a boolean value indicating if the axis has major grid lines. + + + The following code illustrates how to set visibility of of . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart axis + IChartAxis chartAxis = chart.PrimaryCategoryAxis; + + //Set grid lines visibility + chartAxis.HasMajorGridLines = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + + Gets or sets the type of minor tick mark for the axis. + + + By default is set to . Here for example, we set + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category minor tick type + categoryAxis.MinorTickMark = ExcelTickMark.TickMark_Cross; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the type of major tick mark for the axis. + + + By default is set to . Here for example, we set + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category major tick type + categoryAxis.MajorTickMark = ExcelTickMark.TickMark_Cross; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the chart border. Read-only. + + + The following code illustrates how to set color to 's border using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Pareto; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category title + categoryAxis.Title = "Categories"; + + //Set border + IChartBorder border = categoryAxis.Border; + + //Set color + border.ColorIndex = ExcelKnownColors.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether or not the tick label spacing is automatic. + + + Using and we can alter the appearance. + + + By default property is set to "true" tick label spacing is set automatically. Here for example, we set + to "false". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set chart axis + IChartAxis chartAxis = chart.PrimaryCategoryAxis; + + //Set auto spacing + chartAxis.AutoTickLabelSpacing = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the position of tick-mark labels on the axis. + + + By default is set to . Here for example, we + set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category tick labels position + categoryAxis.TickLabelPosition = ExcelTickLabelPosition.TickLabelPosition_High; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the axis is visible. otherwise False. + + + The following code illustrates how to set visibility of . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "100"; + sheet.Range["B3"].Value = "200"; + sheet.Range["C3"].Value = "300"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart axis + IChartAxis chartAxis = chart.PrimaryCategoryAxis; + + //Set visibility + chartAxis.Visible = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the alignment for the tick label. + + + Used in older versions of Microsoft office. + + + + + True if data points are plotted from last to first. otherwise False. + + + This property is obsolete. Please use instead of it + + + + + Gets or sets a boolean value indicating whether to plot data points from last to first. + + + The following code illustrates how to plot the data points in reverse order. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "100"; + sheet.Range["B3"].Value = "200"; + sheet.Range["C3"].Value = "300"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart axis + IChartAxis chartAxis = chart.PrimaryCategoryAxis; + + //Set reverse plot order + chartAxis.ReversePlotOrder = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the shadow properties for the axis. Read-only. + + + The following code illustrates how to set , and by accessing + property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category title + categoryAxis.Title = "Categories"; + + //Set shadow + IShadow shadow = categoryAxis.Shadow; + shadow.Size = 100; + shadow.Blur = 15; + + //Set color + shadow.ShadowColor = System.Drawing.Color.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the 3D options for the chart. Read-only. + + + Used in older versions of Microsoft office. + + + + + Represents the default number format index. + + + + + Represents index to general format. + + + + + True if chart category label text wrapped, false as default. + + + + + Type of the axis. + + + + + True if this is the primary axis; false if secondary. + + + + + Text area for the axis title. + + + + + Chart tick record for this axis. + + + + + Represents Shadow + + + + + Indicates whether line format is present. + + + + + Represents the beginning of a collection of records + + + + + Represents the shape formatting properties for chart elements + + + + + Represents the end of a collection of records + + + + + Font used for axis drawing. + + + + + Font used to store the default font used with axis drawing. + + + + + Represents major grid. + + + + + Represents minor grid. + + + + + Represents if axis has major gridlines. + + + + + Represents if axis has minor gridlines. + + + + + Represents parent axis. + + + + + Represents format index. + + + + + Represents border axis. + + + + + Represents text direction. + + + + + Represents the text rotation. + + + + + Axis id. + + + + + Inidicates whether axis was deleted. + + + + + Indicates whether tick label spacing value is automatically evaluated. + + + + + Indicates whether TickMarkSpacing has automatic value. + + + + + Stores label alignment setting. + + + + + Represents the 3D features + + + + + Represents the TextArea Paragraph + + + + + Represents the frame format of Axis + + + + + Represents cross value of the axis + + + + + Initializes a new instance of class. + + Application object for the axis. + Parent object for the axis. + + + + Initializes a new instance of class with the specified primary axis type. + + Application object for the axis. + Parent object for the axis. + Type of the new axis. + + + + Initializes a new instance of class with + specified axis type and specified IsPrimary value. + + Application object for the axis. + Parent object for the axis. + Type of the new axis. + + True if primary axis should be created; False otherwise. + + + + + Initializes a new instance of class from array of BiffRecords + with primary axis data. + + Application object for the axis. + Parent object for the axis. + Array of BiffRecords with axis data. + + Position of the first axis record in the data array. + + + + + Initializes a new instance of class from array of BiffRecords + with axis data. + + Application object for the axis. + Parent object for the axis. + Array of BiffRecords with axis data. + + Position of the first axis record in the data array. + + + True if it is primary axis; False otherwise. + + + + + Finds parent objects. + + + + + Extracts the axis from array of BiffRecords. + + Array of BiffRecords with axis data. + + Position of the first axis record in the data array. + + + True if it is primary axis; False otherwise. + + + If specified record is not ChartAxis record + or next record is not Begin record. + + + + + Parses axis line format. + + Array of BiffRecords with axis data. + + Position of the ChartAxisLineFormat record in the data array. + + + + + Extracts extended font record data of the chart axis. + + Record to parse. + + + + Extracts chart walls or floor data. + + Record storage. + Position of the axis record in storage. + + + + Extracts chart format record data. + + Record to parse. + + + + Extracts axis data with specified array of Biff records. + + Represents record data. + Represents records storage. + Represents position in storage. + + + + Parses chart tick record. + + Represents chart tick record. + + + + Serializes axis records. + + OffsetArrayList that will receive all records. + + + + Serializes title of the axis. + + OffsetArrayList that will receive all records. + + + + Serializes the font records used in the chart axis. + + OffsetArrayList that will receive all records. + + + + Serializes the grid lines of chart axis. + + OffsetArrayList that will receive all records. + + + + Serializes the number format records for the axis values. + + Record storage. + + + + Serializes the axis border. + + Record storage. + + + + Serializes the tick record. + + Record storage. + + + + Sets some important variables to the initial state. + + + + + Initializes internal tick record. + + + + + Event handler for color change. + + + + + Sets the specified title area. + + Title area to set. + + + + Creates a copy of current instance with the specified dictionaries of font indexes and + worksheet names. + + Parent object. + Dictionary with new indexes. + Dictionary with new worksheet names. + Cloned object which is a copy of the current object. + + + + Creates a copy of current instance with the specified font wrapper object. + + Font object for the chart axis. + Cloned chart axis which is a copy of the current object. + + + + Sets the axis title. + + Title to set. + + + + Updates surface tick record. + + Represents tick label position value. + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Initializes frame format for the axis. + + + + + Creates frame format for the axis. + + Newly created frame format. + + + + Set the border on this object + + the input border + + + + Set default font and size + + + + + Gets and sets the boolean value to indicate whether the chart category label text is wrapped. False by default. + + + + + Gets the type of the axis. Read-only. + + + + + True if this is primary axis. False if secondary. + + + + + Represents Cross value of the axis + + + + + Gets or sets the axis title. + + + + + Gets or sets the axis text rotation angle. Should be an integer value between -90 and 90. + + + + + True if the axis text rotation angle is autoselected. False otherwise. + + + + + Gets the area for the axis title. Read-only. + + + + + Gets the font used for axis text display. Read-only. + + + + + Gets or Sets the value indicating whether the aixs font settings are applied from the chart default font settings. + + + + + Gets the major grid lines for the axis. Read-only. + + + + + Gets the minor grid lines for the axis. Read-only. + + + + + Gets or sets a boolean value indicating if the axis has minor grid lines. + + + + + Gets or sets a boolean value indicating if the axis has major grid lines. + + + + + True if the axis has numerical values. False otherwise. + + + + + Gets the chart parent axis. Read-only. + + + + + Gets or sets the number format index for the axis values. + + + + + Gets or sets number format for the axis values. + + + + + Gets or sets the type of minor tick mark for the axis. + + + + + Gets or sets the type of major tick mark for the axis. + + + + + Gets the chart border. Read-only. + + + + + Gets or sets the position of tick-mark labels on the axis. + + + + + True if the axis is visible. otherwise False. + + + + + Gets or sets the alignment for the tick label. + + + + + True if data points are plotted from last to first. otherwise False. + + + + + Gets or sets a boolean value indicating whether to plot data points from last to first. + + + + + Gets the axis identifier. + + + + + Gets the parent chart. Read-only. + + + + + Gets or sets a Boolean value indicating whether axis is deleted. + + + + + Gets or sets a boolean value indicating whether or not the tick label spacing is automatic. + + + + + Gets or sets a Boolean value indicating whether or not + the tick label spacing is automatic. Read/write Boolean. + + + + + Gets the shadow properties for the axis. Read-only. + + + + + Gets the shadow Properties. Read-only. + + + + + True if a shadow object is created. False otherwise. + + + + + Gets the 3D options for the chart. Read-only. + + + + + Gets the 3D properties for the chart. + + + + + True if a shadow object + (which includes the 3D properties) is created. + + + + + Gets the frame format of the axis. Read-only. + + + + + True if the axis has a title. False otherwise. + + + + + Gets or sets the paragraph type for the text area paragraph. + + + + + Represents the Default Text Settings + + + + + Gets the text link type for the title area. Read-only. + + + + + Gets the parent workbook. Read-only. + + + + + Represents chart border. + + + + + Represents chart border. Provides Border options for Chart Area and Plot Area. + + + + + Gets or sets the border line color. + + + To know more about charts refer this link. + + The following code illustrates the use of LineColor property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Set line color for chart area border + chart.ChartArea.Border.LineColor = System.Drawing.Color.DarkOrange; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the border line pattern. + + + To know more about charts refer this link. + + The following code illustrates the use of LinePattern property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Set line pattern for plot area border + chart.ChartArea.Border.LinePattern = ExcelChartLinePattern.DashDotDot; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the border line weight. + + + To know more about charts refer this link. + + The following code illustrates the use of LineWeight property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Set line weight for plot area border + chart.ChartArea.Border.LineWeight = ExcelChartLineWeight.Narrow; + chart.ChartArea.Border.LineColor = System.Drawing.Color.DarkOrange; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating if the border has default or custom format. + + + To know more about charts refer this link. + + The following code illustrates the use of AutoFormat property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //True to enable the autoFormat for border + chart.ChartArea.Border.AutoFormat = true; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True for default border line color as in . otherwise False. + + + To know more about charts refer this link. + + The following code illustrates the use of IsAutoLineColor property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //True to enable default border colour for plot area + chart.ChartArea.Border.IsAutoLineColor = true; + chart.ChartArea.Border.LinePattern = ExcelChartLinePattern.DashDotDot; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the index of the border color in . + + + To know more about charts refer this link. + + The following code illustrates the use of ColorIndex property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Sets the index border colour for plot area + chart.ChartArea.Border.ColorIndex = ExcelKnownColors.Red; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True to draw tick labels on this axis. otherwise False. + + + To know more about charts refer this link. + + The following code illustrates the use of DrawTickLabels property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //True to draw tick labels on this axis + chart.PrimaryValueAxis.Border.DrawTickLabels = false; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the transparency level of the solid color shaded fill as a floating-point + value from 0.0 (Clear) through 1.0 (Opaque). + + + To know more about charts refer this link. + + The following code illustrates the use of Transparency property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the transparency level of the solid color + chart.ChartArea.Border.Transparency =0.75; + chart.ChartArea.Border.ColorIndex = ExcelKnownColors.Red; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the border line weight as number. Set -1 for Hairline, 0 for Narrow, 1 for Medium, 2 for Wide. + + + To know more about charts refer this link. + + The following code illustrates the use of Weight property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Set line weight for plot area border + chart.ChartArea.Border.Weight = 7.5; + chart.ChartArea.Border.LineColor = System.Drawing.Color.DarkOrange; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Represents chart border. + + + + + Line format. + + + + + Represents parent workbook. + + + + + Represents parent Series format. + + + + + Represents line color. + + + + + Indicates the cap styles of the line + + + + + Represents the default transparency level for the solid type + + + + + Preserve Gradient Stops (Supported in Excel 2007 and higher) + + + + + border edge join type + + + + + Represents whether the color is inverted. false by default + + + + + Gets or sets the border line weight as number. + + + + + Represents whether the chart border line color is changed or not. + + + + + Represents the begin arrow style. + + + + + Represents the end arrow style. + + + + + Represents the begin arrow size. + + + + + Represents the end arrow size. + + + + + Represents the begin arrow length. + + + + + Represents the end arrow length. + + + + + Represents the begin Arrow Width. + + + + + Represents the end arrow width. + + + + + Initializes a new instance of class. + + Represents current application. + Represents parent object. + + + + Initializes a new instance of class with the specified line format record. + + Represents current application. + Represents parent object. + Represents line record. + + + + Initializes a new instance of class with the specified Biff records. + + Represents current application. + Represents parent object. + Represents record storage. + Represents position in storage. + + + + Extracts chart border data from the specified Biff records. + + List of Biff records. + Position in offset. + + + + Serializes the chart border records. + + Records offset. + + + + Finds parent objects. + + + + + Updates internal record for Excel97 file format. + + + + + Creates a copy of current instance. + + Represents parent object. + Returns cloned object. + + + + Check whether the serie Format is available, if it update auto color + Only to be called on auto format is false + + + + + Makes complete copy of the current object and updates its parent. + + Parent object to set. + Cloned object. + + + + Indicates the cap styles of the line + + + + + Gets or sets the border line color. + + + + + Gets or sets the border line pattern. + + + + + Gets or sets the border line weight. + + + + + Gets or sets the border line weight as number. + + + + + preserve fill and gradient stops (Supported in Excel 2007 and higher) + + + + + indicates whether the line filled with gradient fill + + + + + True if the RGB color values are inverted in the binary records else returns false. + + + + + Represents whether the chart border line color is changed or not. + + + + + Border edge join type + + + + + Gets or sets a boolean value indicating if the border has default or custom format. + + + + + True to draw tick labels on this axis. otherwise False. + + + + + True for default border line color as in . otherwise False. + + + + + Gets or sets the index of the border color in . + + + + + Gets the border color. Read-only. + + + + + Gets or sets the transparency level of the solid color shaded fill as a floating-point + value from 0.0 (Clear) through 1.0 (Opaque). + + + + + Gets or sets the line weight string. + + The line weight string. + + + + Gets or sets the series begin arrow type + + + + + Gets or sets the series end arrow type. + + + + + Gets or sets the series begin arrow size. + + + + + Gets or sets the series end arrow size. + + + + + Represents category axis of the chart. + + + + + Class used for Chart Value Axis implementation. + + + + + Represents the chart value axis. + + + + + Minimum value on axis. + + + The following code illustrates how to set and for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set minimum and maximum value + valueAxis.MinimumValue = -20; + valueAxis.MaximumValue = 60; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Maximum value on axis. + + + The following code illustrates how to set and for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set minimum and maximum value + valueAxis.MinimumValue = -20; + valueAxis.MaximumValue = 60; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Value of major increment. + + + The following code illustrates how to set major axis increment unit for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set major unit + valueAxis.MajorUnit = 20; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Value of minor increment. + + + The following code illustrates how to set minor axis increment unit for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set minor unit + valueAxis.MinorUnit = 8; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents the point on the axis another axis crosses it. + + + This property is obsolete. Please use instead of it + + + + + Represents the point on the axis another axis crosses it. + + + The following code illustrates how to set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set cross at + valueAxis.CrossesAt = 15; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Automatic minimum selected. + + + The following code illustrates how to access . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Check auto min + Console.Write(valueAxis.IsAutoMin); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Automatic maximum selected. + + + The following code illustrates how to access . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Check auto max + Console.Write(valueAxis.IsAutoMax); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Automatic major selected. + + + The following code illustrates how to access . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Check auto major and minor + Console.WriteLine(valueAxis.IsAutoMajor); + Console.WriteLine(valueAxis.IsAutoMinor); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + //True + + + + + + Automatic minor selected. + + + The following code illustrates how to access . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Check auto major and minor + Console.WriteLine(valueAxis.IsAutoMajor); + Console.WriteLine(valueAxis.IsAutoMinor); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + //True + + + + + + Automatic category crossing point selected. + + + The following code illustrates how to access . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set cross at + valueAxis.CrossesAt = 15; + + //Check auto cross + Console.Write(valueAxis.IsAutoCross); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + + + + + + Logarithmic scale. + + + The following code illustrates how to set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set IsLogScale + valueAxis.IsLogScale = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the base of the logarithm when you are using log scales. The default value is 10. + + + The following code illustrates how to set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set IsLogScale and log base + valueAxis.IsLogScale = true; + valueAxis.LogBase = 2; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Category axis to cross at maximum value. + + + The following code illustrates how to access . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set IsMaxCross + valueAxis.IsMaxCross = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents custom unit to display. + + + The following code illustrates how to set custom units for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set display unit + valueAxis.DisplayUnit = ExcelChartDisplayUnit.Custom; + + //Set display unit + valueAxis.DisplayUnitCustom = 5; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the unit label for the specified axis. + + + By default the value axis displays no unit labels since is set to by default. + Here for example, we set to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10000"; + sheet.Range["B2"].Value = "20000"; + sheet.Range["C2"].Value = "30000"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set display unit + valueAxis.DisplayUnit = ExcelChartDisplayUnit.Hundreds; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the label is displayed on the specified axis. + + + By default is set to so display unit label will not be shown. Here for example, + we set to property so the display unit label will be visible. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10000"; + sheet.Range["B2"].Value = "20000"; + sheet.Range["C2"].Value = "30000"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set display unit + valueAxis.DisplayUnit = ExcelChartDisplayUnit.Hundreds; + + //Check display unit label + Console.Write(valueAxis.HasDisplayUnitLabel); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Returns the DisplayUnitLabel object for the specified axis. + Returns Null if the HasDisplayUnitLabel property is set to False. Read-only. + + + The following code illustrates how to set fill foreground color to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10000"; + sheet.Range["B2"].Value = "20000"; + sheet.Range["C2"].Value = "30000"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set display unit + valueAxis.DisplayUnit = ExcelChartDisplayUnit.Hundreds; + + //Set Display unit label + IChartTextArea unitLabel = valueAxis.DisplayUnitLabel; + + //Set label color + unitLabel.FrameFormat.Fill.ForeColorIndex = ExcelKnownColors.Pale_blue; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents logarithmic scale. + + + + + Indicates whether datapoint plot from last to first. + + + + + Represents maximum value. + + + + + Represents minimum value. + + + + + Represents the log base + + + + + Represents array of display units values. + Index - display units index, value - double value. + + + + + Indicates is has display unit label. + + + + + Chart value record. + + + + + Represents log base. Default value is 10. + + + + + Represents custom unit to display. + + + + + Represents display unit. + + + + + Represents display Unit label. + + + + + Indicates whether tick label spacing value is automatically evaluated. + + + + + Represents the indicate whether the chart axis auto cross value change or not. + + + + + Represents the indicate whether the chart axis auto cross value change or not in loading. + + + + + Creates axis object. + + Application object for the axis. + Parent object for the axis. + + + + Creates primary axis of specified type. + + Application object for the axis. + Parent object for the axis. + Type of the new axis. + + + + Creates axis of specified type and specified IsPrimary value. + + Application object for the axis. + Parent object for the axis. + Type of the new axis. + + True if primary axis should be created; otherwise False. + + + + + Extracts primary axis from the array of BiffRecords. + + Application object for the axis. + Parent object for the axis. + Array of BiffRecords with axis data. + + Position of the first axis record in the data array. + + + + + Extracts axis from the array of BiffRecords. + + Application object for the axis. + Parent object for the axis. + Array of BiffRecords with axis data. + + Position of the first axis record in the data array. + + + True if it is primary axis; otherwise False. + + + + + Automatic Minimum + + + + + + + Automatic Maximum + + + + + + + Parses max cross. + + Represents max cross data to parse. + + + + Parses walls or floor. + + Record storage. + Position in storage. + + + + Parses data. + + Represents current record to parse. + Represents records storage. + Represents position in storage. + + + + Parses display unit record. + + Represents record to parse. + + + + Parses display unit label. + + Record storage. + Position in storage. + + + + Serializes axis. + + OffsetArrayList that will receive all records. + + + + Serializes axis. + + OffsetArrayList that will receive all records. + Represents axis type. + + + + Serializes walls or floor. + + Record storage. + + + + Serialize display units. + + Represents records storage. + + + + Initializes internal variables. + + + + + Checks if everything is ok with ChartValueRangeRecord. + + True if check succeeded. + + + + Checks if everything is ok with ChartValueRangeRecord. + + Indicates whether we should throw an exception in the case of check failed. + True if check succeeded. + + + + Clone current object. + + Parent object. + Dictionary with new indexes. + Dictionary with new worksheet names. + Returns cloned object. + + + + Creates display unit label. + + + + + Sets major unit. + + + + + + Sets minor unit. + + + + + + Maximum value on axis. + + + + + Maximum value on axis. + + + + + Value of major increment. + + + + + Value of minor increment. + + + + + Represents the point on the axis another axis crosses it. + + + + + Represents the point on the axis another axis crosses it. + + + + + Automatic minimum selected. + + + + + Automatic maximum selected. + + + + + Represents whether the label spacing is automatic or not + + + + + Automatic major selected. + + + + + Automatic minor selected. + + + + + Automatic category crossing point selected. + + + + + Get or set the indicates whether the chart axis auto cross value change or not. + + + + + Get or set the indicates whether the chart axis auto cross value change or not in loading. + + + + + Logarithmic scale. + + + + + Returns or sets the base of the logarithm when you are using log scales. The default value is 10. + + + + + True if plots data points from last to first. + + + + + Category axis to cross at maximum value. + + + + + Gets or sets the ChartValueRangeRecord. + + + + + Represents custom unit to display. + + + + + Returns or sets the unit label for the specified axis. + + + + + True if the label is displayed on the specified axis. + + + + + Returns the DisplayUnitLabel object for the specified axis. + Returns Null if the HasDisplayUnitLabel property is set to False. Read-only. + + + + + Gets text link for this axis. + + + + + Represents category axis of the chart. + + + + + Gets or sets the number of categories or series between tick-mark labels. + + + This property is obsolete. Please use instead of it + + + + + Gets or sets the number of categories or series between tick-mark labels. + Applies only to category and series axes. Can be a value from 1 through 31999. + + + The following code illustrates how to set for chart axis. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["D1"].Text = "Apr"; + sheet.Range["E1"].Text = "May"; + sheet.Range["F1"].Text = "Jun"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["D2"].Value = "30"; + sheet.Range["E2"].Value = "20"; + sheet.Range["F2"].Value = "10"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set tick label spacing + categoryAxis.TickLabelSpacing = 2; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets whether or not the tick label spacing is automatic. + + + The following code illustrates how to access property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["D1"].Text = "Apr"; + sheet.Range["E1"].Text = "May"; + sheet.Range["F1"].Text = "Jun"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["D2"].Value = "30"; + sheet.Range["E2"].Value = "20"; + sheet.Range["F2"].Value = "10"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set tick label spacing + categoryAxis.TickLabelSpacing = 2; + + //Check auto spacing + Console.Write(categoryAxis.AutoTickLabelSpacing); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + + + + + + Gets or sets the number of categories or series between tick marks. + + + This property is obsolete. Please use instead of it + + + + + Gets or sets the number of categories or series between tick marks. + Applies only to category and series axes. Can be a value from 1 through 31999. + + + The following code illustrates how to set for chart axis. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["D1"].Text = "Apr"; + sheet.Range["E1"].Text = "May"; + sheet.Range["F1"].Text = "Jun"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["D2"].Value = "30"; + sheet.Range["E2"].Value = "20"; + sheet.Range["F2"].Value = "10"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set tick mark spacing + categoryAxis.TickMarkSpacing = 2; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True to cut unused plot area. otherwise False. Default for area and surface charts. + + + By default is set to "true" so chart serie will be plotted in between the tick marks. Here for example, we set + to "false" so that chart serie would be plotted on the tick marks. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category axis IsBetween + categoryAxis.IsBetween = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the category labels for the chart. + + + The following code illustrates how to access the category labels range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Get category label range + Console.WriteLine(categoryAxis.CategoryLabels.AddressLocal); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //A1:C1 + + + + + + Gets or sets the directly entered category labels for the chart. + + + The following code illustrates how to set category labels directly for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category labels directly + categoryAxis.EnteredDirectlyCategoryLabels = new object[] { "Oct", "Nov", "Dec" }; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the category type. + + + By default is set to . Here for example, we set + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].DateTime = new System.DateTime(2017, 3, 15); + sheet.Range["B1"].DateTime = new System.DateTime(2017, 9, 17); + sheet.Range["C1"].DateTime = new System.DateTime(2017, 5, 2); + sheet.Range["D1"].DateTime = new System.DateTime(2016, 5, 2); + sheet.Range["E1"].DateTime = new System.DateTime(2015, 5, 2); + sheet.Range["F1"].DateTime = new System.DateTime(2011, 5, 2); + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["D2"].Value = "30"; + sheet.Range["E2"].Value = "20"; + sheet.Range["F2"].Value = "10"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category type + categoryAxis.CategoryType = ExcelCategoryType.Time; + + //Set base unit + categoryAxis.BaseUnit = ExcelChartBaseUnit.Year; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the distance between the labels and the axis line. + The value can be from 0 through 1000. + + + By default the category labels are separated by a distance of "100" from the . Here for example, we set "350" + to to increase the distance to "350" from "100". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category axis Offset + categoryAxis.Offset = 350; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the base unit for the . + + Setting this property has no visible effect if the property + for the specified axis is set to . The set value is retained, however, and + takes effect when the property is set to . + + The following code illustrates how to set for . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].DateTime = new System.DateTime(2017, 3, 15); + sheet.Range["B1"].DateTime = new System.DateTime(2017, 9, 17); + sheet.Range["C1"].DateTime = new System.DateTime(2017, 5, 2); + sheet.Range["D1"].DateTime = new System.DateTime(2016, 5, 2); + sheet.Range["E1"].DateTime = new System.DateTime(2015, 5, 2); + sheet.Range["F1"].DateTime = new System.DateTime(2011, 5, 2); + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["D2"].Value = "30"; + sheet.Range["E2"].Value = "20"; + sheet.Range["F2"].Value = "10"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category type + categoryAxis.CategoryType = ExcelCategoryType.Time; + + //Set base unit + categoryAxis.BaseUnit = ExcelChartBaseUnit.Year; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True to use automatic base units for the specified category axis. otherwise False. + + + The following code illustrates how to access property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].DateTime = new System.DateTime(2017, 3, 15); + sheet.Range["B1"].DateTime = new System.DateTime(2017, 9, 17); + sheet.Range["C1"].DateTime = new System.DateTime(2017, 5, 2); + sheet.Range["D1"].DateTime = new System.DateTime(2016, 5, 2); + sheet.Range["E1"].DateTime = new System.DateTime(2015, 5, 2); + sheet.Range["F1"].DateTime = new System.DateTime(2011, 5, 2); + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["D2"].Value = "30"; + sheet.Range["E2"].Value = "20"; + sheet.Range["F2"].Value = "10"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category type + categoryAxis.CategoryType = ExcelCategoryType.Time; + + //Set base unit + categoryAxis.BaseUnit = ExcelChartBaseUnit.Year; + + //Check base unit auto or not + Console.Write(categoryAxis.BaseUnitIsAuto); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + + + + + + Gets or sets the major unit scale value for the when the of the axis is set to . + + + The following code illustrates how to set major unit scale value for . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].DateTime = new System.DateTime(2017, 3, 15); + sheet.Range["B1"].DateTime = new System.DateTime(2017, 9, 17); + sheet.Range["C1"].DateTime = new System.DateTime(2017, 5, 2); + sheet.Range["D1"].DateTime = new System.DateTime(2016, 5, 2); + sheet.Range["E1"].DateTime = new System.DateTime(2015, 5, 2); + sheet.Range["F1"].DateTime = new System.DateTime(2015, 5, 7); + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["D2"].Value = "30"; + sheet.Range["E2"].Value = "20"; + sheet.Range["F2"].Value = "10"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category type + categoryAxis.CategoryType = ExcelCategoryType.Time; + + //Set major and minor units + categoryAxis.MajorUnitScale = ExcelChartBaseUnit.Year; + categoryAxis.MinorUnitScale = ExcelChartBaseUnit.Month; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the minor unit scale value for the when the of the axis is set to . + + + The following code illustrates how to set minor unit scale value for . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].DateTime = new System.DateTime(2017, 3, 15); + sheet.Range["B1"].DateTime = new System.DateTime(2017, 9, 17); + sheet.Range["C1"].DateTime = new System.DateTime(2017, 5, 2); + sheet.Range["D1"].DateTime = new System.DateTime(2016, 5, 2); + sheet.Range["E1"].DateTime = new System.DateTime(2015, 5, 2); + sheet.Range["F1"].DateTime = new System.DateTime(2015, 5, 7); + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["D2"].Value = "30"; + sheet.Range["E2"].Value = "20"; + sheet.Range["F2"].Value = "10"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category type + categoryAxis.CategoryType = ExcelCategoryType.Time; + + //Set major and minor units + categoryAxis.MajorUnitScale = ExcelChartBaseUnit.Year; + categoryAxis.MinorUnitScale = ExcelChartBaseUnit.Month; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if multi-Level category axis is not allowed. otherwise False. + + + By default + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Text = "Apr"; + sheet.Range["B2"].Text = "May"; + sheet.Range["C2"].Text = "Jun"; + + sheet.Range["A4"].Value = "10"; + sheet.Range["B4"].Value = "20"; + sheet.Range["C4"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "10"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C4"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set NoMultiLevelLabel + chart.PrimaryCategoryAxis.NoMultiLevelLabel = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if bins generated by category values. otherwise False + + Applies only to and charts. + + By default is set to "true" so chart serie are grouped based on category labels. Here for example, we set "false" + to so that chart serie would be grouped automatically. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Pareto; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set bins to automatic + categoryAxis.IsBinningByCategory = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if bins generated are automatic. otherwise False + + Applies only to and charts. + + By default is set to "false" so grouping will be done based on the categories in the . + Here for example, we set to "true" so that chart serie would be grouped automatically. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Pareto; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set bins to automatic + categoryAxis.HasAutomaticBins = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets / Sets the Number of Bins in the axis + + Applies only to and charts. + + The following code illustrates how to set number of bins in the chart axis for and + charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Pareto; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category axis bins + categoryAxis.NumberOfBins = 2; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Get or Set the number of data points in each range. + + Applies only to and charts. + + The following code illustrates how to set the grouping width for and charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Pareto; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set category axis bin width + categoryAxis.BinWidth = 7; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Get or Set the UnderFlow Bin value + + Applies only to and charts. + + The following code illustrates how to set for and + charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Pareto; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set bin to automatic + categoryAxis.HasAutomaticBins = true; + + //Set bin underflow + categoryAxis.UnderflowBinValue = 12; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Get or Set the OverFlow Bin value + + Applies only to and charts. + + The following code illustrates how to set for and + charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Pareto; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set bin to automatic + categoryAxis.HasAutomaticBins = true; + + //Set bin overflow + categoryAxis.OverflowBinValue = 25; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Error message for not supported property. + + + + + Represents default offset. + + + + + Represents month count. + + + + + Represents the XmlTkValue of multilevel label is enabled in binary file + + + + + Represents the XmlTkValue of automatic tick label is enabled in binary file + + + + + Represents min axis data. + + + + + ChartCatserRangeRecord that describes this axis. + + + + + UnknownRecord that describes label intervals of this axis. + + + + + Represents time scale data. + + + + + Represents category axis type. + + + + + Represents default axis offset. + + + + + Indicates whether tick label spacing value is automatically evaluated. + + + + + Indicates whether multi level label is allowed or not + + + + + Represents to serialize NoMultiLvlLbl attribute or not + + + + + Represents to serialize majorUnitScale is Auto + + + + + Represents to serialize minorUnitScale is Auto + + + + + boolean value used for tick label spacing + + + + + boolean value used for ChartAxisOffsetRecord + + + + + Object that holds the information required for Histogram series + + + + + Represents the date time axis value change or not + + + + + Initializes a new instance of class with the specified + application and parent objects. + + Application object for the axis. + Parent object for the axis. + + + + Initializes a new instance of class + of specified primary axis type. + + Application object for the axis. + Parent object for the axis. + Type of the new axis. + + + + Initializes a new instance of class + of specified type and specified IsPrimary value. + + Application object for the axis. + Parent object for the axis. + Type of the new axis. + + True if primary axis should be created; False otherwise. + + + + + Initializes a new instance of class + with primary axis extracted from array of BiffRecords. + + Application object for the axis. + Parent object for the axis. + Array of BiffRecords with axis data. + + Position of the first axis record in the data array. + + + + + Initializes a new instance of class + with the axis extracted from array of BiffRecords. + + Application object for the axis. + Parent object for the axis. + Array of BiffRecords with axis data. + + Position of the first axis record in the data array. + + + True if it is primary axis; False otherwise. + + + + + Parses data of the specified record. + + Represents record to parse. + Represents records storage. + Represents position in storage. + + + + Parses max cross from the specified record. + + Represents max cross data to parse. + + + + Parses walls or floor from the specified list of + Binary Interchanged File Formats (BIFF) records and the offset. + + Record storage. + Position in storage. + + + + Parses category axis type. + + Represents record for parsing. + + + + Serializes the axis record. + + OffsetArrayList that will receive all records. + + + + Serializes primary standard category axis. + + OffsetArrayList that will receive all records. + + + + Serializes walls or floor of the axis. + + Record storage. + + + + Serialize category axis type. + + Represents record storage. + + + + Initializes internal variables. + + + + + Checks for error free ChartValueRangeRecord. + + Indicates whether we should throw an exception in the case of check failed. + True if check succeeded. + + + + Creates a copy of current instance with the specified parent object, + Font indexes and worksheet names dictionary. + + Parent object. + Dictionary with new indexes. + Dictionary with new worksheet names. + Returns the cloned object. + + + + Gets start chart type only for series type. + + Returns start chart type. + + + + Checks for time scale axis mode. Otherwise rise exception. + + + + + Check the CrtmlFrt record whether it have automatic tick labels and multilevel labels + + input record files to be checked + the boolean value indicates it have automatic tick labels and no multilevel labels + + + + Swap the values from category axis properties + + + + + True if the value axis crosses at the far right category (in a line, bar, + column, scatter, or area chart; 2D charts only). + + + + + Gets or sets the point on the value axis where the category axis crosses it. + Applies only to the value axis. + + + + + Represents the date time axis value change or not + + + + + Represents whether the label spacing is present or not + + + + + Gets or sets whether or not the tick label spacing is automatic. + + + + + Gets or sets the number of categories or series between tick-mark labels. + + + + + Gets or sets the number of categories or series between tick-mark labels. + Applies only to category and series axes. Can be a value from 1 through 31999. + + + + + Gets or sets the number of categories or series between tick marks. + + + + + Gets or sets the number of categories or series between tick marks. + Applies only to category and series axes. Can be a value from 1 through 31999. + + + + + Creates title area. Read-only. + + + + + True to cut unused plot area. otherwise False. Default for area and surface charts. + + + + + True if plots data points from last to first. + + + + + Gets or sets the category labels for the chart. + + + + + Gets or sets the directly entered category labels for the chart. + + + + + Gets or sets the . + + + + + Gets or sets the distance between the labels and the axis line. + The value can be from 0 through 1000. + + + + + Gets or sets the base unit for the category axis. + + Setting this property has no visible effect if the property + for the specified axis is set to Category. The set value is retained, however, and + takes effect when the property is set to Time. + + + + True to use automatic base units for the specified category axis. otherwise False. + + + + + True if use automatic major units for the specified category axis. + + + + + True if use automatic major units for the specified category axis. + + + + + Automatic major selected. + + + + + Automatic minor selected. + + + + + Automatic category crossing point selected. + + + + + Automatic maximum selected. + + + + + Automatic minimum selected. + + + + + Gets or sets the major units for the value axis. + + + + + Value of minor increment. + + + + + Gets or sets the major unit scale value for the category axis + when the of the axis is set to Time. + + + + + Gets or sets the minor unit scale value for the category axis + when the of the axis is set to TimeScale. + + + + + True if multi-Level category axis is not allowed. otherwise False. + + + + + True if bins generated by category values. otherwise False + + Applies only to Histogram and Pareto charts. + + + + True if bins generated are automatic. otherwise False + + Applies only to Histogram and Pareto charts. + + + + Get or set the Number of Bins in the axis + + Applies only to Histogram and Pareto charts.Can be a value from 1 through 31999. + + + + Get or Set the number of data points in each range. + + Applies only to Histogram and Pareto charts. + + + + Get or Set the UnderFlow Bin value + + Applies only to Histogram and Pareto charts. + + + + Get or Set the OverFlow Bin value + + Applies only to Histogram and Pareto charts. + + + + returns an Object that holds the information required for Histogram series + + + + + Returns ChartCatserRangeRecord record. Read-only. + + + + + Indicates is chart bubble or scatter. Using series start type. + + + + + Indicates is category axis type is category. Read-only. + + + + + Represents a collection of chart data labels. + + + + + Represents a collection of chart data labels. + + + + + Represents the Text Area in a chart. + + + + + Contains the font attributes (font name, font size, + color and so on) for an object. + + + + + Generates .Net font object corresponding to the current font. + + Generated .Net font. + + The following code illustrates how .Net font object can be generated using GenerateNativeFont() method. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Generate font + System.Drawing.Font nativeFont = font.GenerateNativeFont(); + + //Get native font name + Console.Write(nativeFont.Name); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Calibri + + + + + + True if the font is bold. Read / write Boolean. + + + The following code illustrates how to set Bold property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set bold + font.Bold = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the primary color of the object. Read / write ExcelKnownColors. + + + The following code illustrates how a color from enumeration can be set to font. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets font color from the structure. + + + The following code illustrates how to set a color from structure to the font. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set color + font.RGBColor = System.Drawing.Color.Red; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the font style is italic. Read / write Boolean. + + + The following code illustrates how to set Italic property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set italic + font.Italic = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the font is an outline font. Read / write Boolean. + + + The following code illustrates how to set MacOSOutlineFont property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set MacOS outline font + font.MacOSOutlineFont = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the font is a shadow font or if the object has + a shadow. Read / write Boolean. + + + The following code illustrates how to set MacOSShadow property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set MacOS shadow + font.MacOSShadow = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the size of the font. Read / write Variant. + + + The following code illustrates how font size can be set. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set size + font.Size = 15; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the font is struck through with a horizontal line. + Read / write Boolean + + + The following code illustrates how to set Strikethrough property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set strick through + font.Strikethrough = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the font is formatted as subscript. + False by default. Read / write Boolean. + + + The following code illustrates how to set Subscript property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set subscript + font.Subscript = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + True if the font is formatted as superscript. False by default. + Read/write Boolean + + + The following code illustrates how to set Superscript property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set superscript + font.Superscript = true; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the type of underline applied to the font. + Read / write ExcelUnderline. + + + By default, is set to Underline for fonts. Here for example, we set + to Underline property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set underline + font.Underline = ExcelUnderline.Single; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the font name. Read / write string. + + + The following code illustrates how to set FontName property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set font name + font.FontName = "Arial"; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets font vertical alignment. + + + By default, is set to VerticalAlignment for fonts. Here for example, we set + to VerticalAlignment property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set alignment + font.VerticalAlignment = ExcelFontVertialAlignment.Superscript; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether color is automatically selected. Read-only. + + + The following code illustrates how to access IsAutoColor property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Check IsAutoColor + Console.Write(font.IsAutoColor); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + + + + + + Get or sets the Area's text in the chart. + + + To know more about charts refer this link. + + The following code illustrates the use of Text property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the Area's text in the chart + chart.ChartTitleArea.Text = "Student Chart"; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + String with rich text formatting in the chart. Read-only. + + + To know more about charts refer this link. + + The following code illustrates the use of RichText property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.ChartTitleArea.Text = "Sample Chart"; + + //Create a font style for RichText + IFont font = chart.ChartTitleArea; + font.Color = ExcelKnownColors.Orange; + font.FontName = "Broadway"; + + //Get the rich text formatting in the chart + IChartRichTextString richText = chart.ChartTitleArea.RichText; + + //Sets the rich text in Text Area + richText.SetFont(0, 5, font); + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Text rotation angle. We can rotate or change the angle of the Area's text. + + + To know more about charts refer this link. + + The following code illustrates the use of RightColumn property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.ChartTitleArea.Text = "Student Chart"; + + //Sets the Text rotation angle + chart.ChartTitleArea.TextRotationAngle = 30; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets the formatting options of the chart for text area. Read-only. Return format of the text area. + + + To know more about charts refer this link. + + The following code illustrates the use of FrameFormat property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Gets the formatting options of the chart for text area + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.FrameFormat.Border.LineColor = System.Drawing.Color.Brown; + chart.ChartTitleArea.FrameFormat.Interior.BackgroundColor = System.Drawing.Color.Beige; + chart.ChartTitleArea.FrameFormat.Interior.Pattern = ExcelPattern.Percent25; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Get or sets the Display mode of the background. The chart Text Area's Display mode can be changed using + + + To know more about charts refer this link. + + The following code illustrates the use of BackgroundMode property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.ChartTitleArea.Text = "Student Chart"; + + //sets the Display mode of the background + chart.ChartTitleArea.BackgroundMode = ExcelChartBackgroundMode.Opaque; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True if background is set to automatic. + + + To know more about charts refer this link. + + The following code illustrates the use of IsAutoMode property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.ChartTitleArea.Text = "Student Chart"; + + //True if background is set to automatic + chart.ChartTitleArea.IsAutoMode = true; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Represents the Layout settings of TextArea. Layout settings are used to specifies the position using . + + + The layout option is supported only for plot area. To know more about charts refer this link. + + The following code illustrates the use of Layout property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.ChartTitleArea.Text = "Student Chart"; + + //Layout settings for TextArea is below + chart.ChartTitleArea.Layout.HeightMode = LayoutModes.edge; + chart.ChartTitleArea.Layout.WidthMode = LayoutModes.edge; + chart.ChartTitleArea.Layout.LeftMode = LayoutModes.edge; + chart.ChartTitleArea.Layout.TopMode = LayoutModes.edge; + chart.ChartTitleArea.Layout.Height = 200; + chart.ChartTitleArea.Layout.Width = 300; + chart.ChartTitleArea.Layout.Left = 180; + chart.ChartTitleArea.Layout.Top = 20; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating whether this instance is formula. + + + true if this instance is formula; otherwise, false. + + The following code illustrates the use IsFormula property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + sheet.Range["A1"].Text = "Month"; + sheet.Range["B1"].Text = "Product A"; + sheet.Range["C1"].Text = "Product B"; + + sheet.Range["A2"].Text = "Jan"; + sheet.Range["A3"].Text = "Feb"; + sheet.Range["A4"].Text = "Mar"; + sheet.Range["A5"].Text = "Apr"; + sheet.Range["A6"].Text = "May"; + + sheet.Range["B2"].Number = 111; + sheet.Range["B3"].Number = 361; + sheet.Range["B4"].Number = 336; + sheet.Range["B5"].Number = 40; + sheet.Range["B6"].Number = 219; + + sheet.Range["C2"].Number = 182; + sheet.Range["C3"].Number = 283; + sheet.Range["C4"].Number = 406; + sheet.Range["C5"].Number = 449; + sheet.Range["C6"].Number = 337; + + IChartShape chart = sheet.Charts.Add(); + chart.ChartType = ExcelChartType.Line; + chart.DataRange = sheet.Range["A1:C6"]; + + chart.ChartTitleArea.IsFormula = true; + chart.ChartTitle = "='Sheet1'!$A$2"; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether to display + series name for data labels. + + + The following code illustrates how to access the and set to shows the serie name. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the serie name + dataLabels.IsSeriesName = true; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether to display + category name for data labels. + + + The following code illustrates how to access the and set to shows the categories. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the category names + dataLabels.IsCategoryName = true; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether + to display data label values. + + + The following code illustrates how to access the and set to shows the values. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the values + dataLabels.IsValue = true; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether to display + percentage value for data labels. + + + The following code illustrates how to access the and set to shows the percentage values. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Pie; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the percentage values + dataLabels.IsPercentage = true; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether to show + bubble size for data labels. + + + The following code illustrates how to access the and set to shows the bubble sizes. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "1"; + sheet.Range["B3"].Value = "2"; + sheet.Range["C3"].Value = "3"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Bubble; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the bubble sizes + dataLabels.IsBubbleSize = true; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the variant representing the separator used for data labels on the chart. + + + The following code illustrates how to access the and set delimiter for data labels. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the values + dataLabels.IsValue = true; + + //Set the data label to show the series name + dataLabels.IsSeriesName = true; + + //Set '-' symbol as separator for data labels + dataLabels.Delimiter = "-"; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether + data label legend key is visible. + + + The following code illustrates how to access the and set to shows the legend keys. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the values + dataLabels.IsValue = true; + + //Set the data label to show the legend key + dataLabels.IsLegendKey = true; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether + to display leader lines. + + + The following code illustrates how to access the and set leader lines to show. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Pie; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the values + dataLabels.IsValue = true; + + //Set data label position to outside + dataLabels.Position = ExcelDataLabelPosition.Outside; + + //Set the data label to show the leader lines + dataLabels.ShowLeaderLines = true; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the data labels position. + + + The following code illustrates how to access the and set the position for labels. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Pie; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the values + dataLabels.IsValue = true; + + //Set data label position to outside + dataLabels.Position = ExcelDataLabelPosition.Outside; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating whether this instance is formula. + + + true if this instance is formula; otherwise, false. + + The following code illustrates the use IsFormula property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + sheet.Range["A1"].Text = "Month"; + sheet.Range["B1"].Text = "Product A"; + sheet.Range["C1"].Text = "Product B"; + + sheet.Range["A2"].Text = "Jan"; + sheet.Range["A3"].Text = "Feb"; + sheet.Range["A4"].Text = "Mar"; + sheet.Range["A5"].Text = "Apr"; + sheet.Range["A6"].Text = "May"; + + sheet.Range["B2"].Number = 111; + sheet.Range["B3"].Number = 361; + sheet.Range["B4"].Number = 336; + sheet.Range["B5"].Number = 40; + sheet.Range["B6"].Number = 219; + + sheet.Range["C2"].Number = 182; + sheet.Range["C3"].Number = 283; + sheet.Range["C4"].Number = 406; + sheet.Range["C5"].Number = 449; + sheet.Range["C6"].Number = 337; + + IChartShape chart = sheet.Charts.Add(); + chart.ChartType = ExcelChartType.Line; + chart.DataRange = sheet.Range["A1:C6"]; + + chart.Series[0].DataPoints[0].DataLabels.IsFormula = true; + chart.Series[0].DataPoints[0].DataLabels.Text = "='Sheet1'!$A$2"; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether to display + value form cells for data labels. + + + The following code illustrates how to access the and set to shows the vale form cells values. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the value form cells. + dataLabels.IsVlaveFromCells = true; + + //Set the data label to show the value form cells range. + datalabels.ValueFromCellsRange= sheet["F5:H5"]; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether to display + value form cells range for data labels. + + + The following code illustrates how to access the and set to shows the value form cells range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get the chart serie + IChartSerie serie = chart.Series[0]; + + //Get serie data labels + IChartDataLabels dataLabels = serie.DataPoints.DefaultDataPoint.DataLabels; + + //Set the data label to show the value form cells. + dataLabels.IsVlaveFromCells = true; + + //Set the data label to show the value form cells range. + datalabels.ValueFromCellsRange= sheet["F5:H5"]; + + //Save and Dispose + workbook.SaveAs("chart.xlsx"); + workbook.Close(); + } + + + + + + Represents objects that can be saved into list of biff records. + + + + + Saves object into list of biff records. + + List of biff records to save object into. + + + + Summary description for IInternalFont. + + + + + Returns font index. Read-only. + + + + + Returns FontImpl for current font. Read-only. + + + + + Returns textarea's color object. Read-only. + + + + + Gets value indicating whether TextRotation was changed. Read-only. + + + + + Represents the Legend Paragraph + + + + + Represents the Default Fontname + + + + + Represents the Default Language + + + + + Represents the Default size + + + + + Parent chart + + + + + Parent Series. + + + + + Text area. + + + + + Parent data point; + + + + + Represents Excel 2007 layout data + + + + + boolean containing delete value + + + + + Indicats whether to show text properties or not + + + + + Indicats whether to show text size properties or not + + + + + Indicats whether to show text bold properties or not + + + + + Indicates if data labels are linked to source + + + + + Indicates whether to show leader lines or not + + + + + Indicates whether to enables the data labels automatically + + + + + The array stores the cache information + + + + + Indicates whether the font is changed or not + + + + + Initializes new instance of data label and sets its parent and application objects. + + Application object. + Parent object + Data point index. + + + + Searches for all necessary parent objects. + + + + + Generates .Net font object corresponding to the current font. + + Generated .Net font. + + + + Saves object into OffsetArrayList. + + + OffsetArrayList that will receive all records. + + + When specified OffsetArrayList is NULL. + + + + + Fill object link record. + + + + + Update datalabel text. + + ChartDataLabel object + Indicating whether value from cells value display to datalabels. + + + + Updates Series index. + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + New font indexes. + New worksheet names. + A new object that is a copy of this instance. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Gets or sets a boolean value indicating whether to display + series name for data labels. + + + + + Gets or sets a boolean value indicating whether to display + category name for data labels. + + + + + Gets and sets boolean value indicating whether display to value from cells value to datalabels. + + + + + Gets and sets indicating whether value from cells range in datalables. + + + + + Gets or sets a boolean value indicating whether + to display data label values. + + + + + Gets or sets a boolean value indicating whether to display + percentage value for data labels. + + + + + Indicates if data labels are linked to source. + + + + + Gets or sets a boolean value indicating whether to show + bubble size for data labels. + + + + + Gets or sets the variant representing the separator used for data labels on the chart. + + + + + Gets or sets a boolean value indicating whether + data label legend key is visible. + + + + + Gets or sets a boolean value indicating whether + to display leader lines. + + + + + Gets or sets the data labels position. + + + + + Gets or sets the Chart serie. + + + + + Display mode of the background. + + + + + True if background is set to automatic. + + + + + Area's text. + + + + + Gets rich text. + + + + + Text rotation angle. + + + + + Return format of the text area. + + + + + True if the font is bold. Read / write Boolean. + + + + + Returns or sets the primary color of the object. + Read / write ExcelKnownColors. + + + + + Gets / sets font color. Searches for the closest color in + the workbook palette. + + + + + True if the font style is italic. Read / write Boolean. + + + + + True if the font is an outline font. Read / write Boolean. + + + + + True if the font is a shadow font or if the object has + a shadow. Read / write Boolean. + + + + + Returns or sets the size of the font. Read / write Variant. + + + + + True if the font is struck through with a horizontal line. + Read / write Boolean + + + + + True if the font is formatted as subscript. + False by default. Read / write Boolean. + + + + + True if the font is formatted as superscript. False by default. + Read/write Boolean + + + + + Returns or sets the type of underline applied to the font. Can + be one of the following ExcelUnderlineStyle constants. + Read / write ExcelUnderline. + + + + + Returns or sets the font name. Read / write string. + + + + + Gets / sets font vertical alignment. + + + + + Indicates whether color is automatically selected. Read-only. + + + + + Gets / sets text area. + + + + + Gets corresponding data format. Read-only. + + + + + Gets or sets Excel 2007 layout data + + + + + Gets or sets whether to delete or not. + + + + + Gets value indicating whether TextRotation was changed. Read-only. + + + + + Represents the Legend Paragraph + + + + + Gets or sets a value indicating whether this instance is formula. + + + true if this instance is formula; otherwise, false. + + + + + Gets or sets a value indicating whether this instance is formula. + + + true if this instance is formula; otherwise, false. + + + + + Gets or sets a value indicating whether to show text properties or not + + + + + Gets or sets a value indicating whether to show text size properties or not + + + + + Gets or sets a value indicating whether to show text bold properties or not + + + + + Gets or sets the Text Rotation + + + + + Data labels color. Read-only. + + + + + Returns font index. Read-only. + + + + + Returns FontImpl for current font. Read-only. + + + + + Indicates whether the serie type is pie + + + + + Indicates whether to enable the data labels respect to version. + + + + + Parent Workbook + + + + + Gets / Sets the string array + + + + + Indicates whether the font is changed or not + + + + + Represents data point in the chart. + + + + + Represents data point in the chart. + + + + + Gets the object for the . Read-only. + + + The following code illustrates how to access the for a particular . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set serie + IChartSerie serie = chart.Series[0]; + + //Set data labels value visibility + serie.DataPoints.DefaultDataPoint.DataLabels.IsValue = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets index of the in the collection. + + + The following code illustrates how to access the of a in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set serie + IChartSerie serie = chart.Series[0]; + + //Get index + Console.WriteLine(serie.DataPoints[0].Index); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + + + + Gets or sets the data format. + + + The property is used to set chart serie formats. Here for example, we access and set + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set marker style + format.MarkerStyle = ExcelChartMarkerType.Star; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the is a default one. otherwise False. Read-only. + + + The following code illustrates how to access the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set serie format + IChartDataPoints dataPoints = chart.Series[0].DataPoints; + + //Check default Datapoint + Console.WriteLine(dataPoints.DefaultDataPoint.IsDefault); + Console.WriteLine(dataPoints[0].IsDefault); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + //False + + + + + + True if the data point has default marker object. otherwise False. + + + The following code illustrates how to access the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["D1"].Text = "Apr"; + sheet.Range["E1"].Text = "May"; + sheet.Range["F1"].Text = "Jun"; + sheet.Range["A2"].Value = "5"; + sheet.Range["B2"].Value = "21"; + sheet.Range["C2"].Value = "15"; + sheet.Range["D2"].Value = "12"; + sheet.Range["E2"].Value = "28"; + sheet.Range["F2"].Value = "9"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set serie data format + IChartSerieDataFormat format = chart.Series[0].DataPoints.DefaultDataPoint.DataFormat; + + //Set marker style + format.MarkerStyle = ExcelChartMarkerType.Circle; + + //Check default marker + Console.Write(chart.Series[0].DataPoints.DefaultDataPoint.IsDefaultmarkertype); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + True if the data point is considered as Subtotals or Totals. otherwise False. + + Applies only to Waterfall charts. + + By default in chart data is plotted as floating columns. If we mark a particular column as total or subtotal + by setting property then that particular column starts from zero in horizontal axis and it won't float. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.WaterFall; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set SetAsTotal + chart.Series[0].DataPoints[2].SetAsTotal = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Data labels. + + + + + Point index. + + + + + Data format. + + + + + Represents parent chart. + + + + + Represents whether the series has datapoint or not + + + + + Represent whether it's having the seperate seperate marker + + + + + Indicates whether bubbles have a 3-D effect applied to them or not + + + + + Represents the amount the data shall be moved from the center of the pie. + + + + + Represents whether the pie has explosion + + + + + Set the data point as total + Used only in waterfall chart + + + + + Initializes new instance and sets its application and parent objects. + + Application object. + Parent object. + Index of the data point. + + + + Serializes data labels data. + + List to serialize into. + + + + Serializes used data formats. + + List to serialize into. + + + + Sets data labels text area format. + + Text area to set. + + + + Creates data labels object if necessary. + + + + + Creates a new object that is a copy of the current instance. + + Parent object for the cloned object. + New font indexes. + Dictionary with new worksheet names. + A new object that is a copy of this instance. + + + + Updates Series index. + + + + + Changes data format to create ChartStockHighLowClose chart type. + + + + + Changes data format to create ChartStockHighLowClose chart type. + + + + + Changes intimate bubble series. + + Type to change. + + + + Changes intimate bubble series. + + Type to change. + + + + Updates current data format. + + Represents data format for update. + + + + Updates current data labels. + + + + + + Clears data formats. + + Represents format to update. + + + + This method is called during dispose operation. + + + + + Gets the data labels object for the data point. Read-only. + + + + + Gets or sets the data format. + + + + + Gets /sets inner data format. + + + + + Gets index of the point in the points collection. + + + + + Returns data format or null. + + + + + True if the data point is a default one. otherwise False. Read-only. + + + + + Indicates whether data labels object was created for this data point. Read-only. + + + + + Indicates whether the series has datapoint or not. + + + + + True if the data point has default marker object. otherwise False. + + + + + Indicates whether bubbles have a 3-D effect applied to them or not + + + + + Gets or sets the amount the data shall be moved from the center of the pie. + + + + + Gets the boolean value which represents whether the pie has explosion + + + + + True if the data point is considered as Subtotals or Totals. otherwise False. + + Applies only to Waterfall charts. + + + + Represents a collection of data points in the series. + + + + + Represents a collection of data points in the series. + + + + + Gets the default data point. Read-only. + + + To customize the properties of all the in the collection at the same time, we can + use property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set serie + IChartSerie serie = chart.Series[0]; + + //Set data labels value visibility + serie.DataPoints.DefaultDataPoint.DataLabels.IsValue = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the data point with the specified index. Read-only. + + + The following code illustrates how a particular can be accessed from collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set serie + IChartSerie serie = chart.Series[0]; + + //Set data labels value visibility + serie.DataPoints[0].DataLabels.IsValue = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Format for data points without explicit format. + + + + + Collection of used data points, key - int index, value - data point. + + + + + Parent chart series. + + + + + Parent chart + + + + + Initializes new instance of the collection and sets its parent and application properties. + + Application object. + Parent object. + + + + Finds parent objects. + + + + + Finds parent objects for chart common data points + + + + + Serializes data labels data. + + List to serialize into. + + + + Serializes all used data formats. + + List to serialize into. + + + + Creates a new object that is a copy of the current instance. + + Parent object for the cloned object. + Parent workbook. + Dictionary with new font indexes. + Dictionary with new worksheet names. + A new object that is a copy of this instance. + + + + Adds new data point to the collection. + + Data point to add. + + + + Removes all elements from the collection. + + + + + Clear the data points and the formats of the individual and default data points are preserved + + + + + Updates index of the parent Series. + + + + + Clears all series data formats. + + Represents format to update. + + + + Returns an enumerator that iterates through a collection. + + An IEnumerator object that can be used to iterate through the collection. + + + + Check for data labels on data points + + retuns true,if single data point have data labels,otherwise false + + + + This method is called during dispose operation. + + + + + Gets the data point with the specified index. Read-only. + + + + + Gets the default data point. Read-only. + + + + + Indicates whether workbook is loading. Read-only. + + + + + Gets default data format or null. Read-only. + + + + + Returns number of defined (created) data points. Read-only. + + + + + Class used for Chart DataTable implementation. + + + + + Represents the chart data table. + + + + + True if the data table has inline horizontal border. otherwise False. + The default value is True. + + + The following code illustrates how to remove horizontal border for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Enabling the data table + chart.HasDataTable = true; + + //Get data table of the chart + IChartDataTable dataTable = chart.DataTable; + + //Set false to remove the horizontal border in data table + dataTable.HasHorzBorder = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the data table has inline vertical border. otherwise False. + The default value is True. + + + The following code illustrates how to remove vertical border for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Enabling the data table + chart.HasDataTable = true; + + //Get data table of the chart + IChartDataTable dataTable = chart.DataTable; + + //Set false to remove the vertical border in data table + dataTable.HasVertBorder = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the data table has outline borders. otherwise False. + The default value is True. + + + The following code illustrates how to outline borders of object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Enabling the data table + chart.HasDataTable = true; + + //Get data table of the chart + IChartDataTable dataTable = chart.DataTable; + + //Set false to remove the borders in data table + dataTable.HasBorders = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True to show series keys in the data table. otherwise False. + + + The following code illustrates how to show series keys in the object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Enabling the data table + chart.HasDataTable = true; + + //Get data table of the chart + IChartDataTable dataTable = chart.DataTable; + + //Set true to show series keys in the data table + dataTable.ShowSeriesKeys = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the of the data table. Read-only. + + + The following code illustrates how to get and format the of the object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Enabling the data table + chart.HasDataTable = true; + + //Get data table of the chart + IChartDataTable dataTable = chart.DataTable; + + //Get text area object of the data table + IChartTextArea textArea = chart.DataTable.TextArea; + + //Set text area font color + textArea.Color = ExcelKnownColors.BlueCustom; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + This record stores options for the chart data table. + + + + + Records that were read (if data table was not created but loaded). + + + + + Represents chart text record and sub records. + + + + + Represents data table has shape properties or not. + + + + + This is used to hold data table's shape properties. + + + + + Creates default data table. + + Application object for the new data table. + Parent object for the new data table. + + + + Extracts data table's data from the array of BiffRecords. + + Application object for the new data table. + Parent object for the new data table. + Array of BiffRecords that contains the data table's data. + Position of the ChartData record. + + + + Extracts data table from the array of BiffRecords. + + BiffRecords with data table records. + Position of the ChartData record. + + When specified record is not ChartData record + or when next record is not Begin record. + + + + + Serializes data table. + + + OffsetArrayList that will receive all data table records. + + + When specified OffsetArrayList is NULL. + + + + + Clone current Record. + + Parent object for create new instance. + Returns clone of current object. + + + + True if the data table has horizontal border. otherwise False. + + + + + True if the data table has vertical border. otherwise False. + + + + + True if the data table has borders. otherwise False. + + + + + True to show legend keys in the data table. otherwise False. + + + + + Boolean value indicates whether the text area object is initialized or not. + + + + + Gets the text area of the data table. Read-only. + 9 + + + + Represents up or down bars for the line chart. + + + + + Represents up or down bars for the line chart. + + + + + Provides formatting options for area elements in the chart. + + + + + True if the chart element has interior formatting. otherwise False. Read-only. + + + To know more about charts refer this link. + + The following code illustrates the use of HasInterior property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a fill border and set interior value + IChartFillBorder fillBorder = chart.ChartArea; + chart.ChartArea.Interior.ForegroundColor = System.Drawing.Color.AliceBlue; + + //True if the chart element has interior formatting + if (fillBorder.HasInterior) + { + //Your Code Here + } + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True if the chart element has line formatting. otherwise False. Read-only. + + + To know more about charts refer this link. + + The following code illustrates the use of HasLineProperties property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a fill border and set line border value + IChartFillBorder fillBorder = chart.ChartArea; + chart.ChartArea.Border.LineColor = System.Drawing.Color.DarkOrange; + + //True if the chart element has line formatting + if (fillBorder.HasLineProperties) + { + //Your Code Here + } + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True if the chart element has 3D formatting. otherwise False. Read-only. + + + To know more about charts refer this link. + + The following code illustrates the use of Has3dProperties property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a fill border and set 3D formatting value + IChartFillBorder fillBorder = chart.ChartArea; + chart.ChartArea.ThreeD.BevelTop = Excel2007ChartBevelProperties.Slope; + + //True if the chart element has 3D formatting + if (fillBorder.Has3dProperties) + { + //Your Code Here + } + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True if the chart element has shadow formatting properties. otherwise False. Read-only. + + + To know more about charts refer this link. + + The following code illustrates the use of HasShadowProperties property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a fill border and set line border value + IChartFillBorder fillBorder = chart.ChartArea; + chart.ChartArea.Shadow.ShadowOuterPresets = Excel2007ChartPresetsOuter.OffsetBottom; + + //True if the chart element has shadow formatting properties + if (fillBorder.HasShadowProperties) + { + //Your Code Here + } + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets line formatting properties for the chart element. Read-only. + + The following code illustrates the use of LineProperties. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Gets line formatting properties for the chart element + IChartBorder border = chart.PlotArea.Border; + border.LinePattern = ExcelChartLinePattern.DashDotDot; + border.LineColor = System.Drawing.Color.Orange; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets interior formatting properties for the chart element. Read-only. + + The following code illustrates the use of Interior property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Gets interior formatting properties for the chart element + IChartInterior chartInterior = chart.ChartArea.Interior; + chartInterior.BackgroundColor = System.Drawing.Color.Beige; + chartInterior.Pattern = ExcelPattern.DarkDownwardDiagonal; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets fill options for the chart element. Read-only. + + The following code illustrates the use of Fill property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Gets fill options for the chart element + IFill fillChart = chart.ChartArea.Fill; + fillChart.FillType = ExcelFillType.Gradient; + fillChart.BackColor = System.Drawing.Color.FromArgb(205, 217, 234); + fillChart.ForeColor = System.Drawing.Color.White; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets 3D-effect properties for the chart element. Read-only. + + The following code illustrates the use of ThreeD property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Gets 3D-effect properties for the chart element + IThreeDFormat threeDFromat = chart.ChartArea.ThreeD; + threeDFromat.BevelTop = Excel2007ChartBevelProperties.Slope; + threeDFromat.BevelTopHeight = 16; + threeDFromat.BevelTopWidth = 7; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets shadow formatting properties for the chart element. Read-only. + + The following code illustrates the use of Shadow property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Gets shadow formatting properties for the chart element + IShadow shadowChart = chart.ChartArea.Shadow; + shadowChart.ShadowPrespectivePresets = Excel2007ChartPresetsPrespective.Below; + shadowChart.ShadowColor = System.Drawing.Color.Aqua; + shadowChart.Blur = 22; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the gap width of the drop bar in percent (0 to 500%). + + + The following code illustrates how to access and set Gap value for chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set chart drop bar + IChartDropBar dropBar = chart.Series[0].SerieFormat.CommonSerieOptions.FirstDropBar; + + //Set gap + dropBar.Gap = 90; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents interface, that synchronize chart fill color properties and interior colors. + + + + + Represents foreground color. + + + + + Represents background color. + + + + + Represents pattern. + + + + + Represents is automatic format. + + + + + Represents fill properties. + + + + + Represents visible. + + + + + Represents chart drop bar record. + + + + + Represents drop bar line format. + + + + + Represents drop bar area format. + + + + + Represents parent workBook. + + + + + Represents drop bar filling options. + + + + + Represents the 3D features + + + + + Represents Shadow + + + + + Initialize new instance. + + Current application. + Parent object. + + + + Sets parent objects. + + + + + Parses current block of records. + + Offset array list. + Current position in offset array list. + + + + Serializes DropBar. + + OffsetArrayList that will receive all records. + + + + Clones current object. + + Parent object. + Returns cloned object. + + + + This property indicates whether interior object was created. Read-only. + + + + + Represents the Shadow.Read-only + + + + + Gets a value indicating whether this instance has shadow properties. + + + true if this instance has shadow properties; otherwise, false. + + + + + Gets the chart3 D options. + + The chart3 D options. + + + + This property Indicates whether the Shadow object has been created(which includes the 3D properties) + + + + + This property indicates whether border formatting object was created. Read-only. + + + + + Gets or sets the gap width of the drop bar in percent (0 to 500%). + + + + + Returns interior object. Read-only. + + + + + Returns object, that represents line properties. Read-only. + + + + + Represents fill options. Read-only. + + + + + Represents foreground color. + + + + + Represents background color. + + + + + Represents pattern. + + + + + Represents if use automatic format. + + + + + Represents visibility. + + + + + Represent error bars on the chart series. + + Error bars indicate the degree of uncertainty for chart data. Only series in area, bar, column, line, + and scatter groups on a 2-D chart can have error bars. + Only series in scatter groups can have x and y error bars. + + + + + Represent error bars on the chart series. + + Error bars indicate the degree of uncertainty for chart data. Only series in area, bar, column, line, + and scatter groups on a 2-D chart can have error bars. + Only series in scatter groups can have x and y error bars. + + + + + Clears the formats of the error bars. + + + The following code illustrates how to clear the formats of + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + sheet.Range["D2"].Value = "4"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Enabling the Y Error bars + serie.HasErrorBarsY = true; + + //Get Y Error Bars + IChartErrorBars errorBars = serie.ErrorBarsY; + + //Set Error bars border color + errorBars.Border.ColorIndex = ExcelKnownColors.Red; + + //Set error amount to custom + errorBars.Type = ExcelErrorBarType.Custom; + + //Set minus range + errorBars.MinusRange = sheet["D2"]; + + //Check error bar contains formats + Console.WriteLine("Is default line color applied in Error bars:" + errorBars.Border.IsAutoLineColor); + Console.WriteLine("Error bar type:" + errorBars.Type); + + //Clear the Error bar formats + errorBars.ClearFormats(); + + //Check error bar contains formats + Console.WriteLine("Is default line color applied in Error bars:"+ errorBars.Border.IsAutoLineColor); + Console.WriteLine("Error bar type:"+ errorBars.Type); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + // Output will be + // Is default line color applied in Error bars:False + // Error bar type:Custom + // Is default line color applied in Error bars:True + // Error bar type:Fixed + + + + Deletes the error bars. + + + The following code illustrates how to delete the + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Enabling the Y Error bars + serie.HasErrorBarsY = true; + + //Get Y Error bars + IChartErrorBars errorBars = serie.ErrorBarsY; + + //Check series contains Error bars + Console.WriteLine("Is serie contains Error bars:" + serie.HasErrorBarsY); + + //Removing the Error bars + errorBars.Delete(); + + //Check series contains Error bars + Console.WriteLine("Is serie contains Error bars:" + serie.HasErrorBarsY); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + // Output will be + // Is serie contains Error bars:True + // Is serie contains Error bars:False + + + + Gets the border for the drop bars. Read-only. + + + The following code illustrates how to access and format the for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Enabling the Y Error bars + serie.HasErrorBarsY = true; + + //Get Y Error Bars + IChartErrorBars errorBars = serie.ErrorBarsY; + + //Set Error bars border color + errorBars.Border.ColorIndex = ExcelKnownColors.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the error bar include type. + + + The following code illustrates how to set include type for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Enabling the Y Error bars + serie.HasErrorBarsY = true; + + //Get Y Error Bars + IChartErrorBars errorBars = serie.ErrorBarsY; + + //Set negative error only to include + errorBars.Include = ExcelErrorBarInclude.Minus; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating end style for the error bars. + + + The following code illustrates how to remove end style for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Enabling the Y Error bars + serie.HasErrorBarsY = true; + + //Get Y Error Bars + IChartErrorBars errorBars = serie.ErrorBarsY; + + //Set false to remove the end style + errorBars.HasCap = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the error bar type. + + + The following code illustrates how to set the error bar type for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Enabling the Y Error bars + serie.HasErrorBarsY = true; + + //Get Y Error Bars + IChartErrorBars errorBars = serie.ErrorBarsY; + + //Set error amount to standard deviation + errorBars.Type = ExcelErrorBarType.StandardDeviation; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the number value for applicable . + + + The following code illustrates how to set the error value for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Enabling the Y Error bars + serie.HasErrorBarsY = true; + + //Get Y Error Bars + IChartErrorBars errorBars = serie.ErrorBarsY; + + //Set error amount to fixed value + errorBars.Type = ExcelErrorBarType.Fixed; + + //Set error value + errorBars.NumberValue = 3.0; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets object with positive error value for custom error bar. + + + The following code illustrates how to set the plus range for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + sheet.Range["D2"].Value = "4"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Enabling the Y Error bars + serie.HasErrorBarsY = true; + + //Get Y Error Bars + IChartErrorBars errorBars = serie.ErrorBarsY; + + //Set error amount to custom + errorBars.Type = ExcelErrorBarType.Custom; + + //Set plus range + errorBars.PlusRange = sheet["D2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets object with negative error value for custom error bar. + + + The following code illustrates how to set the minus range for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + sheet.Range["D2"].Value = "4"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Enabling the Y Error bars + serie.HasErrorBarsY = true; + + //Get Y Error Bars + IChartErrorBars errorBars = serie.ErrorBarsY; + + //Set error amount to custom + errorBars.Type = ExcelErrorBarType.Custom; + + //Set minus range + errorBars.MinusRange = sheet["D2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the object. Read-only. + + + The following code illustrates how to access and format the for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Enabling the Y Error bars + serie.HasErrorBarsY = true; + + //Get Y Error Bars + IChartErrorBars errorBars = serie.ErrorBarsY; + + //Set Error bars shadow color + errorBars.Shadow.ShadowColor = System.Drawing.Color.Red; + + //Set Error bars shadow outer presets + errorBars.Shadow.ShadowOuterPresets = Excel2007ChartPresetsOuter.OffsetDiagonalTopRight; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the object. Read-only.[Deprecated] + + + + + Represents default value for X error bar. + + + + + Represents default value for Y axis. + + + + + Serialize Series record. + + Represents record holder. + Values number. + + + + Serialize data format records. + + Represents record holder. + Represents border object. + Represents Series index. + Represents Series indexes. + + + + Represents border object. + + + + + Represents error bar record. + + + + + Represents Shadow + + + + + Represents error include. + + + + + Represents parent Series. + + + + + Represents positive range of custom values. + + + + + Represents negative range of custom values. + + + + + Indicates that is on Y axis. + + + + + ChartAI record containing referred range. + + + + + Preserved marker formta record + + + + + Represents the 3D features + + + + + Represents the chart ErrorBar plus range values + + + + + Represents the chart ErrorBar minus range values + + + + + Creates new instance of error bars implementation. + + Application object. + Represents parent object. + Indicates if it's Y axis bar. + + + + Parses new instance of error bars from stream. + + Application object. + Represents parent object. + Represents data holder. + + + + Finds parent objects. + + + + + Clears the formats of the error bars. + + + + + Deletes the error bars. + + + + + Parses error bars object from stream. + + Represents record holder. + + + + Serializes records to biff stream + + Represents record holder. + + + + Serializes AI records. + + Represents records holder. + If true than plus sub bar; otherwise minus. + + + + Serializes single error bar to biff stream. + + Represents record holder. + Indicates if in Y axis. + Indicates if Plus error bar. + Represents Series index. + + + + Gets native PTG. + + Indicates if it plus error bar. + Returns PTG. + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Checks include value. + + Represents include value. + Returns true if class support current inclure; otherwise false. + + + + Clones current object. + + Represents parent object for new cloned instance. + Represents new names. + Returns cloned object. + + + + Gets the border for the drop bars. Read-only. + + + + + Gets or sets the error bar include type. + + + + + Gets or sets a boolean value indicating end style for the error bars. + + + + + Gets or sets the error bar type. + + + + + Gets or sets the number value for applicable . + + + + + Gets or sets a value indicating whether this instance is plus number literal. + + + true if this instance is plus number literal; otherwise, false. + + + + + Gets or sets a value indicating whether this instance is minus number literal. + + + true if this instance is minus number literal; otherwise, false. + + + + + Gets or sets object with positive error value for custom error bar. + + + + + Gets or sets object with negative error value for custom error bar. + + + + + Gets the object. Read-only. + + + + + This property indicates whether the shadow object has been created + + + + + Gets the chart3D options. Read-only. + + + + + This property Indicates whether the Shadow object has been created(which includes the 3D properties) + + + + + If true, error bar is on Y axis; otherwise - on X axis. + + + + + Represents the chart ErrorBar plus range values + + + + + Represents the chart ErrorBar minus range values + + + + + Represents fill format in chart object. + + + + + Represents fill format in shape object. + + + + + Represents fill format. + + + + + Sets user defined picture. + + Path to image. + + + + Sets user defined picture. + + Represents user defined image. + Represents name of user defined image. + + + + Sets user defined texture. + + Represents user defined texture. + Represents name of user defined texture. + + + + Sets user defined texture. + + Path to image. + + + + Sets the specified fill to a pattern. + + Pattern to set. + + + + Sets the specified fill to a preset gradient. + + Represents preset gradient type. + + + + Sets the specified fill to a preset gradient. + + Represents preset gradient type. + Represents gradient style, for preset gradient. + + + + Sets the specified fill to a preset gradient. + + Represents preset gradient type. + Represents gradient style, for preset gradient. + Represents gradient variant for preset gradient. + + + + Sets the specified fill format to a preset texture. + + Represents texture to set. + + + + Sets the specified fill to a two-color gradient. + + + + + Sets the specified fill to a two-color gradient. + + Represents shading shading style. + + + + Sets the specified fill to a two-color gradient. + + Represents shading shading style. + Represents shading variant. + + + + Sets the specified fill to a one-color gradient. + + + + + Sets the specified fill to a one-color gradient. + + Represents shading shading style. + + + + Sets the specified fill to a one-color gradient. + + Represents shading shading style. + Represents shading variant. + + + + Sets the specified fill to a uniform color. + + + + + Represents shape fill type. + + + + + Represents gradient shading style. + + + + + Represents current shading variant. + + + + + Returns or sets the degree of transparency of the specified fill as + a value from 0.0 (opaque) through 1.0 (clear). + + + + + Returns or sets the degree of transparency of the specified fill as + a value from 0.0 (opaque) through 1.0 (clear). + + + + + Represents gradient style. + + + + + Represents gradient pattern + + + + + Represents gradient texture + + + + + Represents background color index. + + + + + Represents foreground color index. + + + + + Represents background color. + + + + + Represents foreground color. + + + + + Represents preset gradient type. + + + + + Gets or Sets the Transparency for specified picture_only. + + + + + Represents user defined picture or texture. Read-only. + + + + + Returns user defined picture of texture name. Read-only. + + + + + Represents if fill style visible. + + + + + Returns the gradient degree of the specified one-color shaded fill as a floating-point + value from 0.0 (dark) through 1.0 (light) + + + + + Returns the transparency level of the specified Solid color shaded fill as a floating-point + value from 0.0 (Clear) through 1.0(Opaque) + + + + + Gets or Sets the TextureVerticalScale for specified fill + + + + + Gets or Sets the TextureHorizontalScale for specified fill + + + + + Represents the offset X for the texture fill + + + + + Represents the offset Y for the texture fill + + + + + Represents Internal Fill + + + + + Represents background color. + + + + + Represents foreground color. + + + + + Represents whether picture is tiled or stretched. + + + + + Preserved Gradient + + + + + Is Gradient Supported + + + + + It's define Alphamodfix for bilp(tranparency) + + + + + It's define the Texture properties + + + + + Texture Horizontal Scale + + + + + Texture OffsetX + + + + + Texture OffsetY + + + + + Alignment + + + + + Tile Flipping + + + + + Interface used to get gradient fill effects. + + + + + Compares with gradient. + + Gradient to compare with. + Zero if gradients are equal. + + + + Sets the specified fill to a two-color gradient. + + + + + Sets the specified fill style with fill to a two-color gradient. + + Represents shading shading style. + Represents shading variant. + + + + Represents background color object. + + + + + Represents background color. + + + + + Represents background color index. + + + + + Represents foreground color object. + + + + + Represents foreground color. + + + + + Represents foreground color index. + + + + + Represents gradient shading style. + + + + + Represents gradient shading variant. + + + + + Represents default vertical shading style. + + + + + Represents default vertical shading style in Excel 2007 generated xls files. + + + + + Represents default diagonal up shading style. + + + + + Represents default diagonal down shading style. + + + + + Represents color constant. + + + + + Represents default value for one color. + + + + + Represents pattern prefix. + + + + + Represents texture prefix. + + + + + Represents preset gradient prefix. + + + + + Represents pattern enum prefix. + + + + + Represents value, that indicate that fill doesn't visible. + + + + + Represents index, that represents default comment color. + + + + + Represents corner gradient style. + + + + + Represents center gradient style. + + + + + Represents default offset. + + + + + Maximum value for such attributes like Alpha, Tint, Shade. + + + + + Represents horizontal angle of fill. + + + + + Represents vertical angle of fill. + + + + + Represents Diagonal up angle of fill. + + + + + Represents Diagonal down angle of fill. + + + + + Represents default shade variant array value. + + + + + Represents default shade third variant array value. + + + + + Represents default shade variant array value. + + + + + Represents additional data for center variants. + + + + + Represents additional data for corner variants. + + + + + Represents array, that indicate, that current picture is bitmap. + + + + + Represents default comment fill color. + + + + + Represents rectangular structure fill from center. + + + + + Represents rectangular structure fill from corner. + + + + + Dictionary to access to resource data. Key - string, resource id, value - byte[], resource data. + + + + + Represents fill type. + + + + + Represents shading style. + + + + + Represents the indicate wheather gradient style change or not. + + + + + Represents current shading variants. + + + + + Represents transparency to. + + + + + Represents transparency from. + + + + + Represents gradient style. + + + + + Represents gradient pattern. + + + + + Represents gradient texture. + + + + + Represents parent book. + + + + + Represents background color index. + + + + + Represents foreground color index. + + + + + Represents preset gradient. + + + + + Represents indicate wheather preset gradient style change or not. + + + + + Represents user defined picture of texture. + + + + + Represents picture name. + + + + + Represents if fill style is visible. + + + + + Represents image index. + + + + + Represents gradient degree. + + + + + Represents picture data to parse. + + + + + Indicates if this instance of object is shape fill. + + + + + Represent the fillrectangle + + + + + Represent the source rectangle + + + + + It's define the alphamodfix value + + + + + Preset gradient. + + + + + Indicates whether gradient is supported. + + + + + It's define the texture attributes + + + + + Specifies whether FillType is Texture + + + + + Represents the multi color gradient stops object. + + + + + Represents the two color gradient stops object. + + + + Represents the one color gradient stops object. + + + + + + Represents the preset color gradient stops object. + + + + + Represents current assembly. + + + + + Represent array, that contain all preset gradient types. + + + + + This collection contains gradient stops collection for preset gradients. + + + + + Initialize all static members. + + + + + Gets picture from resources file by id. + + Represents unique id in resource file. + Returns picture from resource file by unique id. + + + + Parses color. + + Represents parent book. + Color value to parse. + Extracted color. + + + + Parses color. + + Represents parent book. + Color value to parse. + + + + Returns collection of gradient stops that stores specified preset color. + + Gradient preset to return gradient stops collection for. + Corresponding gradient stops collection. + + + + Returns binary data for collection of gradient stops that stores specified preset color. + + Gradient preset to return gradient stops collection for. + Corresponding gradient stops binary data. + + + + Creates new instance of this class. + + Represents current application. + Represents parent object. + + + + Creates new instance of this class. + + Represents current application. + Represents parent object. + Fill type. + + + + Creates new instance of this class. AutoShapeImplementation + + Represents current application. + Represents parent object. + Fill type. + + + + Finds parent objects. + + + + + This method tries to detect gradient color settings (One or Two color gradient). + + Gradient stops to detect gradient color + Detected gradient color or -1 if it is neither one nor two color gradient. + + + + Sets user defined picture. + + Path to image. + This method is not supported in WinRT, Windows Phone, Universal and Portable platforms. + + + + + Sets user defined picture. + + Represents user defined image. + Represents name of user defined image. + + + + Sets user defined texture. + + Path to image. + This method is not supported in WinRT, Windows Phone, Universal and Portable platforms. + + + + + Sets user defined texture. + + Represents user defined texture. + Represents name of user defined texture. + + + + Sets the specified fill to a pattern. + + Pattern to set. + + + + Sets the specified fill to a preset gradient. + + Represents preset gradient type. + + + + Sets the specified fill to a preset gradient. + + Represents preset gradient type. + Represents gradient style, for preset gradient. + + + + Sets the specified fill to a preset gradient. + + Represents preset gradient type. + Represents gradient style, for preset gradient. + Represents gradient variant for preset gradient. + + + + Sets the specified fill format to a preset texture. + + Represents texture to set. + + + + Sets the specified fill to a two-color gradient. + + + + + Sets the specified fill to a two-color gradient. + + Represents shading shading style. + + + + Sets the specified fill to a two-color gradient. + + Represents shading shading style. + Represents shading variant. + + + + Sets the specified fill to a one-color gradient. + + + + + Sets the specified fill to a one-color gradient. + + Represents shading shading style. + + + + Sets the specified fill to a one-color gradient. + + Represents shading shading style. + Represents shading variant. + + + + Sets the specified fill to a uniform color. + + + + + Compares with shape fill impl. + + Shape fill to compare with. + Zero if shape fills are equal. + + + + Parses fill options. + + Record to parse. + Value indicating fill option. + + + + Parses fill type. + + Represents fill type value. + + + + Parses shading style. + + Represents option value byte array. + + + + Parse shading variant. + + Represents variant value. + + + + Parses pattern or texture name. + + Represents addition data, that contain name. + + + + Parses gradient color. + + Represents gradient color value to parse. + + + + Parses preset gradient type. + + Represents data to parse. + + + + Parses picture or user defined texture. + + Represents name of picture. + If true - parses picture otherwise user defined texture. + + + + Parse picture or texture + + + + + + Updates bitmap header to stream. + + Represents memory stream. + Represents bitmap data. + + + + Updates bitmap header to stream. + + Represents memory stream. + Represents bitmap data. + + + + Parses visible property. + + Represents data value. + + + + Serialize fill properties. + + Option holder. + Returns updated option holder. + + + + Serialize gradient as gradient style. + + Option holder. + Returns updated option holder. + + + + Serialize gradient as pattern style. + + Option holder. + Returns updated option holder. + + + + Serialize gradient as picture style. + + Option holder. + Returns updated option holder. + + + + Serialize gradient as solid color style. + + Option holder. + Returns updated option holder. + + + + Serialize fill type. + + Options holder. + Returns updated options holder. + + + + Serialize shading style. + + Represents fopte option. + Serialized option. + + + + Serialize shading variant. + + Options holder. + Returns updated options holder. + + + + Serialize center shad variants. + + Represents options holder. + Returns updated option holder. + + + + Serialize corner shad variants. + + Represents options holder. + Returns updated option holder. + + + + Serialize gradient style. + + Represents options holder. + Returns updated options holder. + + + + Serialize gradient preset type. + + Represents option holder. + Returns updated option holder. + + + + Serialize visible. + + Represents option holder. + Returns updated visible. + + + + Serialize gradient degree to biff stream + + Represents option holder. + Returns updated option holder. + + + + Indicates if fill type is gradient. If not throw NotSupportedException. + the condition (m_preseredGradient.Count>2) is made by considering that gradient stops should be more than two for multicolor type. + here compared with 2 by considering the Excel behaviour. + + + + + Indicates if fill type is user defined texture or picture. If not throw NotSupportedException. + + + + + Indicates if fill type is pattern. If not throw NotSupportedException. + + + + + Indicates if fill type is texture. If not throw NotSupportedException. + + + + + Validates the type of the solid. + + + + + Convert name to byte array. + + Represents name to convert. + Returns converted name in byte array. + + + + Parses gradient degree. + + Represents value to parse. + Returns parsed gradient degree. + + + + Parses corner variants. + + Represents value to parse. + + + + Fills internal collection with preset gradients default data. + + + + + Sets picture to option storage. + + Represents option storage. + Returns updated option storage. + + + + Sets picture to bse collection. + + Image to set. + Represent name of image. + Return index of image. + + + + Serialize transparency to option holder. + + Represents option holder. + Returns updated option holder. + + + + If need changes visible. + + + + + Clones current object. + + Represents parent object. + Returns cloned methods. + + + + Copies filling settings from. + + Object to copy settings from. + + + + Returns true if colors should be placed in inverted order. + + Gradient style. + Gradient variant. + True if colors should be placed in inverted order. + + + + Evaluates whether colors should be placed in inverted order for DiagonalDown gradient style. + + Gradient variant to check. + True if colors should be placed in inverted order. + + + + Evaluates whether colors should be placed in inverted order for the most + of gradient styles (Horizontal, Vertical, DiagonalUp and FromCenter). + + Represents gradient variant. + Value indicating whether colors placed in inverted order. + + + + Detects whether color sequence should be doubled or not. + + Gradient style. + Gradient variant. + True if color sequence should be doubled. + + + + Detects whether color sequence should be doubled for the most of gradient + styles (all except From_Corner). + + Gradient variant. + True if color sequence should be doubled. + + + + Evaluates gradient angle based on gradient style. + + Gradient style. + Gradient angle, or -1 when gradient style is not linear gradient. + + + + Evaluates fillToRect value for gradient. + + Gradient style. + Gradient variant. + Value of the fillToRect rectangle or Rectangle.Empty if gradient style doesn't need it. + + + + Returns gradient type value based on gradient style. + + Gradient style. + Gradient type value that correspond to the specified gradient style. + + + + Set the group shape property value to all the inner shapes. + + Property value to set. + Property name. + + + + Set the group shape fill visible to all the inner shapes. + + + + + Set ColorObject to BackColorObject. + + ColorObject value to set. + + + + Set ColorObject to ForeColorObject. + + ColorObject value to set. + + + + Returns collection of gradient stops that stores gradient fill settings. Read-only. + + + + + Represents whether picture is tiled or stretched. + + + + + Preserved Gradient + + + + + Gets or Sets the fillrect values + + + + + Gets or Sets the sourcerect values + + + + + Gets parsed picture data. + + + + + Gets or sets if the gradient is supported. + + + + + Represents shape fill type. + + + + + Represents gradient shading style. + + + + + Represents current shading variant. + + + + + Returns or sets the degree of transparency of the specified fill as + a value from 0.0 (opaque) through 1.0 (clear). + + + + + Returns or sets the degree of transparency of the specified fill as + a value from 0.0 (opaque) through 1.0 (clear). + + + + + It Gets or Sets the TransparencyColor value + + + + + Returns the transparency level of the specified Solid color shaded fill as a floating-point + value from 0.0 (opaque) through 1.0(transparent) + + + + + + Represents gradient style. + + + + + Represents gradient pattern + + + + + Represents gradient texture + + + + + Represents background color index. + + + + + Represents foreground color index. + + + + + Represents background color. + + + + + Represents foreground color. + + + + + Represents background color. + + + + + Represents foreground color. + + + + + Represents preset gradient type. + + + + + Represents user defined picture or texture. Read-only. + + + + + Returns user defined picture of texture name. Read-only. + + + + + Represents if fill style visible. + + + + + Returns the gradient degree of the specified one-color shaded fill as a floating-point + value from 0.0 (dark) through 1.0 (light) + + + + + Gets or Sets the TextureVerticalScale for specified fill + + + + + Gets or Sets the TextureHorizontalScale for specified fill + + + + + Gets or Sets the offset X for the specified fill + + + + + Gets or Sets the offset Y for the specified fill + + + + + Define Alignment value + + + + + Define TileFlipping value + + + + + Represents gel record. + + + + + It's define the series color with invertifnegative attribute + + + + + Initialize new instance of fill class. + + Represents current application. + Represents parent object. + + + + Initialize new instance of fill class. + + Represents current application. + Represents parent object. + Represents gel record. + + + + Parses current properties. + + + + + Serialize fill properties. + + Represents records to serialize. + + + + Sets picture to option storage. + + Represents option storage. + Returns updated option storage. + + + + Sets picture to bse collection. + + Image to set. + Represent name of image. + Return index of image. + This method is not supported in WinRT, Windows Phone and Silverlight platforms. + + + + + Serialize transparency to option holder. + + Represents option holder. + Returns updated option holder. + + + + Changes if need visible. + + + + + Returns or sets the degree of transparency of the specified fill as + a value from 0.0 (opaque) through 1.0 (clear). + + + + + Returns or sets the degree of transparency of the specified fill as + a value from 0.0 (opaque) through 1.0 (clear). + + + + + Represents foreground color. + + + + + Represents background color. + + + + + Represents if fill format is visible. + + + + + Represent the invert option's + + + + + Represents collection of ChartFormatImpl. + + + + + Represents default array value. + + + + + Represents capacity of array. + + + + + Represents chart types that need secondary axis. + + + + + Key - ZOrder, value - index. + + + + + Represents parent axis. + + + + + Boolean value indicates whether the format is enabled for pareto chart + + + + + Creates new instance of collection. + + Application object. + Parent object. + + + + Sets parent objects. + + + + + Serializes current collection. + + OffsetArrayList that will receive all records. + + + + Adds chart format. + + + + + + + Adds new format. + + Chartformat to add. + Returns just added format. + + + + Checks whether similar format is already present in the collection + and returns it, otherwise it add new format. + + Format that should be placed in the collection. + Format from the collection. + + + + Checks for containing index in collection. + + Index to check. + If contains - returns true; otherwise - false. + + + + Removes formats by instance. + + Removes current instance. + + + + Updates indexes in collection after remove. + + Index of removed format. + + + + Changes Series chart group in all series. + + New index. + Old Index. + + + + Clears current collection. + + + + + Clones current object. + + Parent object. + Returns cloned object. + + + + Sets value by index. + + Index to set. + Value to set. + + + + Updates formats on adding format. + + Index to updates. + + + + Updates formats on removing. + + Index to update. + + + + Gets format by index, and shallow removes current format. + + Format order. + If true - delete current format. + Format by index. + + + + Shallow adds format to collection. + + Format to add. + + + + Returns single format by DrawingZOrder. Read-only. + + + + + If true - this collection represents formats for primary axis; + otherwise - secondary collection. + + + + + Returns true if this collection is primary and contain series that need + secondary axis. + + + + + Gets / Sets the Is Pareto format variable + + + + + Boolean value indicates whether the axis is depends on the bar series + + + + + Boolean value indicates whether the axis is stacked 100 series + + + + + Provides access to the formatting options for chart elements. + + + + + Provides access to the formatting options for chart elements. + + + + + Gets or sets a boolean value indicating whether to vary color for each data point. [Deprecated] + + + Please, use instead of this property. Sorry for inconvenience. + + + + + Gets or sets a boolean value indicating whether to vary color for each data point. + + + The following code illustrates how to set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set vary color + format.IsVaryColor = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the space between the bars/columns. Can be a value between - 100 and 100. + + Applies only to 2-D bar and 2-D column charts. + + The following code illustrates how to set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Stacked; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set overlap + format.Overlap = 20; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + + Gets or sets the angle of the first pie-chart or dough-nut chart slice, in degrees (clockwise from vertical). + Can be a value from 0 through 360. + + Applies only to pie, 3-D pie, and dough-nut charts. + + The following code illustrates how to set for chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Pie; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set first slice angle + format.FirstSliceAngle = 60; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the size of the hole in a chart. + The hole size is expressed as a percentage of the chart size, between 10 and 90 percent. + + The following code illustrates how to set for chart. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set serie + IChartSerie serie = chart.Series[0]; + + //Set chart type + chart.ChartType = ExcelChartType.Doughnut; + + //Set Doughnut hole size + serie.SerieFormat.CommonSerieOptions.DoughnutHoleSize = 60; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the scale factor for bubbles. Can be an integer value from 0 to 300, + corresponding to a percentage of the default size. + + For chart types other than chart. + + The following code illustrates how to set for chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value = "50"; + sheet.Range["B1"].Value = "60"; + sheet.Range["C1"].Value = "5"; + sheet.Range["A2"].Value = "1"; + sheet.Range["B2"].Value = "4"; + sheet.Range["C2"].Value = "2"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Bubble_3D; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set bubble scale + format.BubbleScale = 50; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating what the bubble size represents on a chart. + + + The property can be set to either or . By default + it is set to . Here for example, we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value = "50"; + sheet.Range["B1"].Value = "60"; + sheet.Range["C1"].Value = "5"; + sheet.Range["A2"].Value = "1"; + sheet.Range["B2"].Value = "4"; + sheet.Range["C2"].Value = "2"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Bubble_3D; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set bubble scale and size represents + format.BubbleScale = 50; + format.SizeRepresents = ExcelBubbleSize.Width; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True to show negative bubbles on bubble chart. otherwise False. + + + By default is set to "false" so negative values will not be plotted in charts. + Here for example, we load negative values to chart value axis and set to "true". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value = "50"; + sheet.Range["B1"].Value = "60"; + sheet.Range["C1"].Value = "5"; + sheet.Range["D1"].Value = "20"; + sheet.Range["A2"].Value = "1"; + sheet.Range["B2"].Value = "4"; + sheet.Range["C2"].Value = "2"; + sheet.Range["D2"].Value = "-2"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:D2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Bubble_3D; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set negative bubble visibility + format.ShowNegativeBubbles = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if a radar chart has axis labels. otherwise False. Applies only to radar charts. + + + The following code illustrates how to hide the axis labels of radar charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Radar; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set radar label visibility + format.HasRadarAxisLabels = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the way the two sections of either a chart or a + chart are split. + + + By default is set to . Here for example, we set + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["D1"].Text = "Apr"; + sheet.Range["E1"].Text = "May"; + sheet.Range["F1"].Text = "Jun"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["D2"].Value = "20"; + sheet.Range["E2"].Value = "25"; + sheet.Range["F2"].Value = "15"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart type + chart.ChartType = ExcelChartType.PieOfPie; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set split type + format.SplitType = ExcelSplitType.Value; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the threshold value separating the two sections of either a chart or a chart. + + + The following code illustrates how to set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["D1"].Text = "Apr"; + sheet.Range["E1"].Text = "May"; + sheet.Range["F1"].Text = "Jun"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["D2"].Value = "20"; + sheet.Range["E2"].Value = "25"; + sheet.Range["F2"].Value = "15"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart type + chart.ChartType = ExcelChartType.PieOfPie; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set split type + format.SplitType = ExcelSplitType.Value; + + //Set split value + format.SplitValue = 20; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the size of the secondary section of either a chart or a chart, + as a percentage of the size of the primary pie. ( 5 - 200 ). + + + The following code illustrates how to set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["D1"].Text = "Apr"; + sheet.Range["E1"].Text = "May"; + sheet.Range["F1"].Text = "Jun"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["D2"].Value = "20"; + sheet.Range["E2"].Value = "25"; + sheet.Range["F2"].Value = "15"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart type + chart.ChartType = ExcelChartType.PieOfPie; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set second pie size + format.PieSecondSize = 40; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the up bars on the chart. Read-only. + + + Up bars connect points on series one with higher values on the last series in the chart group + (the lines go up from series one). Only 2-D line groups that contain at least two series + can have up bars. This object isn't a collection. Theres no object that represents a single up bar; + you either have up bars turned on for all points in a chart group or you have them turned off. + + + The following code illustrates how to access and set for chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set chart drop bar + IChartDropBar dropBar = chart.Series[0].SerieFormat.CommonSerieOptions.FirstDropBar; + + //Set gap + dropBar.Gap = 90; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the down bars on the chart. Read-only. + + + Down bars connect points on the first series in the chart group with lower values on the last series + (the lines go down from the first series). Only 2-D line groups that contain at least two series + can have down bars. This object isn't a collection. Theres no object that represents a single down bar; + you either have up bars and down bars turned on for all points in a chart group or you have them turned off. + + + The following code illustrates how to access and set for chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set chart first drop bar + IChartDropBar dropBar = chart.Series[0].SerieFormat.CommonSerieOptions.FirstDropBar; + + //Set gap + dropBar.Gap = 20; + + //Set chart second drop bar + dropBar = chart.Series[0].SerieFormat.CommonSerieOptions.SecondDropBar; + + //Set gap + dropBar.Gap = 20; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the series line properties for or charts. Read-only. + + + The following code illusrates how to set color to property for chart + using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["D1"].Text = "Apr"; + sheet.Range["E1"].Text = "May"; + sheet.Range["F1"].Text = "Jun"; + sheet.Range["A2"].Value = "5"; + sheet.Range["B2"].Value = "21"; + sheet.Range["C2"].Value = "15"; + sheet.Range["D2"].Value = "12"; + sheet.Range["E2"].Value = "28"; + sheet.Range["F2"].Value = "9"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart type + chart.ChartType = ExcelChartType.PieOfPie; + + //Set pie series line border + IChartBorder border = chart.Series[0].SerieFormat.CommonSerieOptions.PieSeriesLine; + + //Set color + border.ColorIndex = ExcelKnownColors.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets drop lines or hi-low lines or series lines: + 0 = drop lines + 1 = hi-low lines + 2 = series lines (lines used in Pie of Pie and Bar of Pie charts) + + + The following code illustrates how to set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value = "Fruits"; + sheet.Range["B1"].Value = "Joey"; + sheet.Range["C1"].Value = "Mathew"; + sheet.Range["D1"].Value = "Peter"; + sheet.Range["A2"].Value = "Apples"; + sheet.Range["B2"].Value = "5"; + sheet.Range["C2"].Value = "3"; + sheet.Range["D2"].Value = "2"; + sheet.Range["A3"].Value = "Grapes"; + sheet.Range["B3"].Value = "4"; + sheet.Range["C3"].Value = "5"; + sheet.Range["D3"].Value = "2"; + sheet.Range["A4"].Value = "Bananas"; + sheet.Range["B4"].Value = "4"; + sheet.Range["C4"].Value = "4"; + sheet.Range["D4"].Value = "3"; + sheet.Range["A5"].Value = "Oranges"; + sheet.Range["B5"].Value = "2"; + sheet.Range["C5"].Value = "1"; + sheet.Range["D5"].Value = "5"; + sheet.Range["A6"].Value = "Melons"; + sheet.Range["B6"].Value = "2"; + sheet.Range["C6"].Value = "7"; + sheet.Range["D6"].Value = "6"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Data being charted on the X axis will move to the Y axis and vice versa + chart.IsSeriesInRows = false; + + //Set range + chart.DataRange = sheet.Range["A1:D6"]; + + //Set chart type + chart.ChartType = ExcelChartType.Stock_HighLowClose; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set drop line style + format.DropLineStyle = ExcelDropLineStyle.HiLow; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents High-low lines of Stock and Line Charts. Read-only. + + + The following code illustrates how to get for Stock and Line charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value = "Fruits"; + sheet.Range["B1"].Value = "Joey"; + sheet.Range["C1"].Value = "Mathew"; + sheet.Range["D1"].Value = "Peter"; + sheet.Range["A2"].Value = "Apples"; + sheet.Range["B2"].Value = "5"; + sheet.Range["C2"].Value = "3"; + sheet.Range["D2"].Value = "2"; + sheet.Range["A3"].Value = "Grapes"; + sheet.Range["B3"].Value = "4"; + sheet.Range["C3"].Value = "5"; + sheet.Range["D3"].Value = "2"; + sheet.Range["A4"].Value = "Bananas"; + sheet.Range["B4"].Value = "4"; + sheet.Range["C4"].Value = "4"; + sheet.Range["D4"].Value = "3"; + sheet.Range["A5"].Value = "Oranges"; + sheet.Range["B5"].Value = "2"; + sheet.Range["C5"].Value = "1"; + sheet.Range["D5"].Value = "5"; + sheet.Range["A6"].Value = "Melons"; + sheet.Range["B6"].Value = "2"; + sheet.Range["C6"].Value = "7"; + sheet.Range["D6"].Value = "6"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Data being charted on the X axis will move to the Y axis and vice versa + chart.IsSeriesInRows = false; + + //Set range + chart.DataRange = sheet.Range["A1:D6"]; + + //Set chart type + chart.ChartType = ExcelChartType.Stock_HighLowClose; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set drop line style + format.DropLineStyle = ExcelDropLineStyle.HiLow; + + //Initialize border and set high-low lines + IChartBorder border = format.HighLowLines; + border.LineColor = System.Drawing.Color.Yellow; + border.LinePattern = ExcelChartLinePattern.Dash; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents Drop lines of Stock, Line and Area Charts. Read-only. + + + The following code illustrates how to get for Stock, Line and Area charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value = "Fruits"; + sheet.Range["B1"].Value = "Joey"; + sheet.Range["C1"].Value = "Mathew"; + sheet.Range["D1"].Value = "Peter"; + sheet.Range["A2"].Value = "Apples"; + sheet.Range["B2"].Value = "5"; + sheet.Range["C2"].Value = "3"; + sheet.Range["D2"].Value = "2"; + sheet.Range["A3"].Value = "Grapes"; + sheet.Range["B3"].Value = "4"; + sheet.Range["C3"].Value = "5"; + sheet.Range["D3"].Value = "2"; + sheet.Range["A4"].Value = "Bananas"; + sheet.Range["B4"].Value = "4"; + sheet.Range["C4"].Value = "4"; + sheet.Range["D4"].Value = "3"; + sheet.Range["A5"].Value = "Oranges"; + sheet.Range["B5"].Value = "2"; + sheet.Range["C5"].Value = "1"; + sheet.Range["D5"].Value = "5"; + sheet.Range["A6"].Value = "Melons"; + sheet.Range["B6"].Value = "2"; + sheet.Range["C6"].Value = "7"; + sheet.Range["D6"].Value = "6"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Data being charted on the X axis will move to the Y axis and vice versa + chart.IsSeriesInRows = false; + + //Set range + chart.DataRange = sheet.Range["A1:D6"]; + + //Set chart type + chart.ChartType = ExcelChartType.Stock_HighLowClose; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set drop line style + format.DropLineStyle = ExcelDropLineStyle.Drop; + + //Initialize border and set drop lines + IChartBorder border = format.DropLines; + border.LineColor = System.Drawing.Color.Yellow; + border.LinePattern = ExcelChartLinePattern.Dash; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if stock, line or area charts has drop lines + + + The following code illustrates how to set drop lines for Stock, Line and Area charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value = "Fruits"; + sheet.Range["B1"].Value = "Joey"; + sheet.Range["C1"].Value = "Mathew"; + sheet.Range["D1"].Value = "Peter"; + sheet.Range["A2"].Value = "Apples"; + sheet.Range["B2"].Value = "5"; + sheet.Range["C2"].Value = "3"; + sheet.Range["D2"].Value = "2"; + sheet.Range["A3"].Value = "Grapes"; + sheet.Range["B3"].Value = "4"; + sheet.Range["C3"].Value = "5"; + sheet.Range["D3"].Value = "2"; + sheet.Range["A4"].Value = "Bananas"; + sheet.Range["B4"].Value = "4"; + sheet.Range["C4"].Value = "4"; + sheet.Range["D4"].Value = "3"; + sheet.Range["A5"].Value = "Oranges"; + sheet.Range["B5"].Value = "2"; + sheet.Range["C5"].Value = "1"; + sheet.Range["D5"].Value = "5"; + sheet.Range["A6"].Value = "Melons"; + sheet.Range["B6"].Value = "2"; + sheet.Range["C6"].Value = "7"; + sheet.Range["D6"].Value = "6"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Data being charted on the X axis will move to the Y axis and vice versa + chart.IsSeriesInRows = false; + + //Set range + chart.DataRange = sheet.Range["A1:D6"]; + + //Set chart type + chart.ChartType = ExcelChartType.Stock_HighLowClose; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set drop lines + format.HasDropLines = true; + + //Initialize border and set drop lines + IChartBorder border = format.DropLines; + border.LineColor = System.Drawing.Color.Yellow; + border.LinePattern = ExcelChartLinePattern.Dash; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if stock or line charts has high-low lines + + + The following code illustrates how to set high-low lines for Stock and Line charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value = "Fruits"; + sheet.Range["B1"].Value = "Joey"; + sheet.Range["C1"].Value = "Mathew"; + sheet.Range["D1"].Value = "Peter"; + sheet.Range["A2"].Value = "Apples"; + sheet.Range["B2"].Value = "5"; + sheet.Range["C2"].Value = "3"; + sheet.Range["D2"].Value = "2"; + sheet.Range["A3"].Value = "Grapes"; + sheet.Range["B3"].Value = "4"; + sheet.Range["C3"].Value = "5"; + sheet.Range["D3"].Value = "2"; + sheet.Range["A4"].Value = "Bananas"; + sheet.Range["B4"].Value = "4"; + sheet.Range["C4"].Value = "4"; + sheet.Range["D4"].Value = "3"; + sheet.Range["A5"].Value = "Oranges"; + sheet.Range["B5"].Value = "2"; + sheet.Range["C5"].Value = "1"; + sheet.Range["D5"].Value = "5"; + sheet.Range["A6"].Value = "Melons"; + sheet.Range["B6"].Value = "2"; + sheet.Range["C6"].Value = "7"; + sheet.Range["D6"].Value = "6"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Data being charted on the X axis will move to the Y axis and vice versa + chart.IsSeriesInRows = false; + + //Set range + chart.DataRange = sheet.Range["A1:D6"]; + + //Set chart type + chart.ChartType = ExcelChartType.Stock_HighLowClose; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set high-low lines + format.HasHighLowLines = true; + + //Initialize border and set high-low lines + IChartBorder border = format.HighLowLines; + border.LineColor = System.Drawing.Color.Yellow; + border.LinePattern = ExcelChartLinePattern.Dash; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if pie of pie or bar of pie charts has series lines + + + The following code illusrates how to set series lines for pie of pie and bar of pie charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["D1"].Text = "Apr"; + sheet.Range["E1"].Text = "May"; + sheet.Range["F1"].Text = "Jun"; + sheet.Range["A2"].Value = "5"; + sheet.Range["B2"].Value = "21"; + sheet.Range["C2"].Value = "15"; + sheet.Range["D2"].Value = "12"; + sheet.Range["E2"].Value = "28"; + sheet.Range["F2"].Value = "9"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart type + chart.ChartType = ExcelChartType.PieOfPie; + + //Set chart format + IChartFormat format = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set series lines + format.HasSeriesLines = true; + + //Set pie series line border + IChartBorder border = chart.Series[0].SerieFormat.CommonSerieOptions.PieSeriesLine; + + //Set color + border.ColorIndex = ExcelKnownColors.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Id for bar stacked chart type. + + + + + Represents default series number. + + + + + Represents the ChartChartFormatRecord + + + + + Represents the chart format of some series. + + + + + Represents chart 3d record. + + + + + Represents format link record. + + + + + Represents data labels record. + + + + + Represents chart chart line record. + + + + + Represents data format record and subrecords. + + + + + Represents stock chart outer shadow. + + + + + Represents first drop bar record and subrecords. + + + + + Represents second drop bar record and subrecords. + + + + + Represents series list record. + + + + + Parent chart object. + + + + + Parent axis object. + + + + + Represents chart Series line properties object + + + + + Represents chart High-low line properties object + + + + + Represents chart Drop line properties object + + + + + Boolean value indicates whether the format is in chart ex type + + + + + Create new instance. + + Current application. + Parent object. + + + + Finds parent objects. + + + + + Parsing chart chart format. + + Records offset. + Position in offset. + + + + Serialize current object. + + Records offset. + + + + Gets start Series type. + + Type to extract. + Returns start Series type. + + + + Changed chart type. + + Type to change. + Indicates whether we are in the process of series creation. + + + + Sets drop lines or hi-low lines or series lines: + 0 = drop lines + 1 = hi-low lines + 2 = series lines (lines used in Pie of Pie and Bar of Pie charts) + + + + + Sets null for some records. + + + + + Changes for chart stock. + + + + + Changes type for stock high low close type. + + + + + Changes type for stock open high low close type. + + + + + Change type for stock volume high low close type in primary axis. + + + + + Change type for stock volume high low close type in secondary axis. + + + + + Change type for stock volume open high low close type. + + + + + Changes Series type. + + Type to change. + Indicates whether we are in the process of series creation. + + + + Change Series type as one kind of doughnut. + + Type to change. + + + + Change Series type to one kind of bubble. + + Type to change. + Indicates whether we are in the process of series creation. + + + + Updates bubble series. + + Represents series collection. + + + + Change Series type as one kind of surface. + + Type to change. + Indicates whether we are in the process of series creation. + + + + Change Series type as one kind of radar. + + Type to change. + + + + Change Series type as one kind of bar clustered. + + Type to change. + + + + Change Series type as one kind of bar stacked. + + Type to change. + + + + Change Series type as one kind of line. + + Type to change. + + + + Change Series type as one kind of pie. + + Type to change. + + + + Change Series type as one kind of area. + + Type to change. + + + + Change Ticklabelposition value + + value from HasRadarAxisLabels property + + + + Change Series type as one kind of scatter. + + Type to change. + + + + Changes Series type for Cylinder or Pyramid, Cone. + + Type to change. + + + + Clones current object. + + Parent object for clone. + Returns just cloned object. + + + + Equal operator for two chart formats. + + + + + + + + Not Equal operator for two chart formats. + + + + + + + + Initialize the high-low lines,drop bar for stock chart at parsing + + + + + cloning the removed format from collection + + Parent object for clone + format to be cloned + If true clone the dataformat,else clone others + + + + Check on formats and apply the chart type by the formats + + the chart type on formats + + + + Gets or sets a boolean value indicating whether to vary color for each data point. + + + + + Gets or sets a boolean value indicating whether to vary color for each data point. + + + + + Returns data format. Read-only. + + + + + Gets or sets the space between the bars/columns. Can be a value between -100 and 100. + + Applies only to 2-D bar and 2-D column charts. + + + + + True for horizontal bars (bar chart). + False for vertical bars (column chart). + + + + + Stack the displayed values. + + + + + Each category is displayed as a percentage. + + + + + True if this bar has a shadow; otherwise False. + + + + + Stack the displayed values. + + + + + Each category is broken down as a percentage. + + + + + True if this line has a shadow. + + + + + + Gets or sets the size of the hole in a dough-nut chart. + The hole size is expressed as a percentage of the chart size, between 10 and 90 percent. + + + + + True if this pie has a shadow. + + + + + True to show leader lines to data labels. + + + + + Gets or sets the scale factor for bubbles. Can be an integer value from 0 to 300, + corresponding to a percentage of the default size. + + + + + Gets or sets a value indicating what the bubble size represents on a bubble chart. + + + + + True if this a bubble series. + + + + + True to show negative bubbles on bubble chart. otherwise False. + + + + + True if bubble series has a shadow. + + + + + Series in this group are stacked. + + + + + Each category is broken down as a percentage. + + + + + This area has a shadow. + + + + + True if chart contains color fill for surface. + + + + + True if this surface chart has shading. + + + + + True if this radar series has a shadow. + + + + + True if a radar chart has axis labels. otherwise False. Applies only to radar charts. + + + + + 0 = normal pie chart + 1 = pie of pie chart + 2 = bar of pie chart + + + + + True to use default split value; otherwise False. + + + + + Gets or sets the way the two sections of either a pie of pie chart or a bar + of pie chart are split. + + + + + Gets or sets the threshold value separating the two sections of either a pie of pie chart or a bar of pie chart. + + + + + For split = 2, what percentage should go to the other pie / bar. + + + + + Gets or sets the size of the secondary section of either a pie of pie chart or a bar of pie chart, + as a percentage of the size of the primary pie. ( 5 - 200 ). + + + + + Space between the first pie and the second. + + + + + For split = 1, what values should go to the other pie / bar. + + + + + 1 = the second pie / bar has a shadow. + + + + + If true Series has name. + + + + + If true category has name. + + + + + If true has value. + + + + + If true has percentage. + + + + + If true bubble has size. + + + + + Returns delimiter length. + + + + + Represents delimiter. + + + + + Gets or sets drop lines or hi-low lines or series lines: + 0 = drop lines + 1 = hi-low lines + 2 = series lines (lines used in Pie of Pie and Bar of Pie charts) + + + + + Gets or sets drop lines or hi-low lines or series lines: + 0 = drop lines + 1 = hi-low lines + 2 = series lines (lines used in Pie of Pie and Bar of Pie charts) + + + + + Gets the up bars on the line chart. Read-only. + + + Up bars connect points on series one with higher values on the last series in the chart group + (the lines go up from series one). Only 2-D line groups that contain at least two series + can have up bars. This object isnt a collection. There's no object that represents a single up bar; + you either have up bars turned on for all points in a chart group or you have them turned off. + + + + + Gets the down bars on the line chart. Read-only. + + + Down bars connect points on the first series in the chart group with lower values on the last series + (the lines go down from the first series). Only 2-D line groups that contain at least two series + can have down bars. This object isnt a collection. There's no object that represents a single down bar; + you either have up bars and down bars turned on for all points in a chart group or you have them turned off. + + + + + Gets the series line properties for pie of pie or pie of bar charts. Read-only. + + + + + Returns or sets the rotation of the 3-D chart view + (the rotation of the plot area around the z-axis, in degrees).(0 to 360 degrees). + + + + + Indicates whether rotation has default value. + + + + + Returns or sets the elevation of the 3-D chart view, in degrees (-90 to +90 degrees). + + + + + Indicates whether elevation has default value. + + + + + Returns or sets the perspective for the 3-D chart view.( 0 - 100 ) + + + + + Returns or sets the height of a 3-D chart as a percentage of the chart width + (between 5 and 500 percent). + + + + + Returns or sets the depth of a 3-D chart as a percentage of the chart width + (between 20 and 2000 percent). + + + + + Returns or sets the distance between the data series in a 3-D chart, as a percentage of the marker width.( 0 - 500 ) + + + + + True if the chart axes are at right angles, independent of chart rotation or elevation. + + + + + 3D columns are clustered or stacked. + + + + + Gets / Sets the chart type is chart ex or ot + + + + + True if Microsoft Excel scales a 3-D chart so that it's closer in size to the equivalent 2-D chart.. + + + + + True if gridlines are drawn two-dimensionally on a 3-D chart. + + + + + Try to convert m_serieFormat to chartBarRecord. + If can - returns chartBarRecord; otherwise rise exception. Read-only. + + + + + Try to convert m_serieFormat to chartLineRecord. + If can - returns chartLineRecord; otherwise rise exception. Read-only. + + + + + Try to convert m_serieFormat to chartPieRecord. + If can - returns chartPieRecord; otherwise rise exception. Read-only. + + + + + Try to convert m_serieFormat to chartScatterRecord. + If can - returns chartScatterRecord; otherwise rise exception. Read-only. + + + + + Try to convert m_serieFormat to chartAreaRecord. + If can - returns chartAreaRecord; otherwise rise exception. Read-only. + + + + + Try to convert m_serieFormat to chartSurfaceRecord. + If can - returns chartSurfaceRecord; otherwise rise exception. Read-only. + + + + + Try to convert m_serieFormat to chartRadarRecord. + If can - returns chartRadarRecord; otherwise rise exception. Read-only. + + + + + Try to convert m_serieFormat to chartRadarAreaRecord. + If can - returns chartRadarAreaRecord; otherwise rise exception. Read-only. + + + + + Try to convert m_serieFormat to chartBoppopRecord. + If can - returns chartBoppopRecord; otherwise rise exception. Read-only. + + + + + Returns data labels record. Read-only. + + + + + Returns chart data format. Read-only. + + + + + Returns chart chart format. Read-only. + + + + + Returns Chart3d record. Read-only. + + + + + If true then belong to primary axis; otherwise to secondary axis. + + + + + If true - format contains chart chart line record. Read-only. + + + + + If true - format contains line. Read-only. + + + + + If true - format contains drop bar record. Read-only. + + + + + Returns record that represents Series format. Read-only. + + + + + Drawing order (0 = bottom of the z-order). + + + + + Represents type code of major format record type. Read-only. + + + + + If true - Series 3D; otherwise Series 2D. Read-only. + + + + + Returns dataformat or null; Read-only. + + + + + If true - format has marker; otherwise false. Read-only. + + + + + If true - format has line; otherwise false. Read-only. + + + + + If true - format has smoothed line; otherwise false. Read-only. + + + + + Represents High Low line properties. ( For stock and line charts) + + + + + Represents High-low lines of Stock and Line Charts. Read-only. + + + + + Represents Drop lines of Stock, Line and Area Charts. Read-only. + + + + + True if stock, line or area charts has drop lines + + + + + True if stock or line charts has high-low lines + + + + + True if pie of pie or bar of pie charts has series lines + + + + + Gets or sets the outer shadow for stock chart. + + + + + Class provide the options for Box and Whisker series + + + + + It provide the options used for Box and Whisker series + + + + + Indicates whether the show mean line option is enabled + Bit position - 0 + + + + + Indicates whether the show mean marker option is enabled + Bit position - 1 + + + + + Indicates whether the show inner points option is enabled + Bit position - 2 + + + + + Indicates whether the show outlier points option is enabled + Bit position - 3 + + + + + Indicates quartile calculation is exclusive or inclusive + Bit position - 4 + + + + + Gets / Sets the options for the charts + + + + + Class provide the options for Histogram and Pareto Chart axis + + + + + byte value used as flag and boolean property for the values + + + + + Indicates the number of bins in the axis + + + + + Indicates the bin width for axis + + + + + Indicates the overflow bin value + + + + + Indicates the underflow bin value + + + + + Indicates whether the underflow value set or not. + + + + + Reset the member values respect to input value + + Input Bit position changed + + + + Clones the value from input object + + input object + + + + Check for the equals an object + + input another histogram object + the boolean value indicates whether the objects are equal or not. + + + + Get or Set the is Automatic Bin member value + Bit Position - 0 + + + + + Get or Set the isBinning by Category member value + Bit position - 1 + + + + + Get or Set the Bin width member value + flag Bit position - 2 + + + + + Get or Set the number of Bins member value + Flag Bit position - 3 + + + + + Get or Set the overflow bin member value + Flag Bit Position - 4 + + + + + Get or Set the underflow bin member value + Flag Bit position - 5 + + + + + Get or Set the value for interval is closed in left or right + Flag Bit position - 6 + + + + + Byte value shows the options used in this class + + + + + Get or Set the value for automatic value has been used in overflow + Flag Bit position - 7 + Used only in parsed workbook + + + + + Get or Set the value for automatic value has been used in underflow + Used only in parsed workbook + + + + + Represent the borders and layout options of the chart elements. + + + + + Represent the borders and layout options of the chart elements. + + + + + + Gets or sets the rectangle style for the chart element. + + + The RectangleStyle property works on Binary Excel format only. To know more about charts refer this link. + + The following code illustrates use of RectangleStyle property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the rectangle style for the chart element + chart.PlotArea.RectangleStyle = ExcelRectangleStyle.Shadowed; + + workbook.SaveAs("Charts.xls"); + workbook.Close(); + } + + + + + + True if the chart area has rounded corners. otherwise False. + + + This property works only on chart Area. To know more about charts refer this link. + + The following code illustrates use of IsBorderCornersRound property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //True if the chart area has rounded corners + IChartFrameFormat chartArea = chart.ChartArea; + chartArea.IsBorderCornersRound = true; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets the border of the chart element. Read-only. + + + To know more about charts refer this link. + + The following code illustrates use of Border property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //border of the chart element + chart.ChartTitleArea.Text = "Sample Chart"; + chart.ChartTitleArea.FrameFormat.Border.LineColor = System.Drawing.Color.Red; + chart.ChartTitleArea.FrameFormat.Border.LinePattern = ExcelChartLinePattern.DashDotDot; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the layout settings of chart text area. + + + To know more about charts refer this link. + + The following code illustrates use of Layout property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the layout settings of plot area + chart.PlotArea.Layout.Height = 300; + chart.PlotArea.Layout.Width = 430; + chart.PlotArea.Layout.Top = 40; + chart.PlotArea.Layout.Left = 10; + chart.PlotArea.Layout.LayoutTarget = LayoutTargets.inner; + chart.PlotArea.Layout.LeftMode = LayoutModes.edge; + chart.PlotArea.Layout.TopMode = LayoutModes.factor; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Chart frame. + + + + + Represents chart border. + + + + + Represents the 3D features + + + + + Represents chart interior. + + + + + Represents the beginning of a collection of records + + + + + Represents the shape formatting properties for chart elements + + + + + Represents the end of a collection of records + + + + + Represents Shadow + + + + + Represents fill format. + + + + + Parent chart. + + + + + Represents Excel 2007 layout data. + + + + + Plot area layout + + + + + Creates chart and sets its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + + + + Creates chart and sets its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + Indicates whether we should set defaults for fill and border properties. + + + + Creates chart and sets its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + Indicates is auto size. + Indicates is interior is gray. + Indicates whether we should set defaults for fill and border properties. + + + + Creates and parses current object. + + Application object for the chart. + Parent object for the chart. + Records storage. + Position in storage. + + + + Searches for all necessary parent objects. + + + + + Parses frame. + + Array with frame records. + Position of the frame records. + + + + Parses frame. + + Array with frame records. + Position of the frame records. + Position of the frame records. + + + + Checks whether specified record is begin. + + Record to check. + True if this is begin; false otherwise. + + + + Parses single record. + + Record to parse. + Number of not closed begin record. + + + + Saves chart frame as biff records. + + OffsetArrayList that will get biff records. + + + + Serializes single record. + + OffsetArrayList that will get biff records. + Record to serialize. + + + + Unwraps record. + + Record to unwrap. + Unwrapped record. + + + + Set variable to the default state. + + Indicates whether MS Excel should calculate size of the frame. + Indicates is default interior is gray. + + + + Updates known colors. + + Color to update. + Returns updated color. + + + + Clears the plot area. + + + + + Clone current Record. + + Parent object. + Returns clone of current object. + + + + Gets frame record. Read-only. + + + + + Returns parent workbook. Read-only. + + + + + Gets or sets the layout settings of chart text area. + + + + + This property indicates whether interior object was created. Read-only. + + + + + This property indicates whether border formatting object was created. Read-only. + + + + + Gets the border of the chart element. Read-only. + + + + + Represents frame interior. Read-only + + + + + Gets the chart3 D properties. + + The chart3 D properties. + + + + Represents fill gradient format. Read-only. + + + + + This property indicates whether the shadow object has been created + + + + + This property Indicates whether the Shadow object has been created(which includes the 3D properties) + + + + + Gets the shadow properties. + + The shadow properties. + + + + Gets or sets the rectangle style for the chart element. + + + + + Microsoft Excel calculates size. + + + + + Microsoft Excel calculates position. + + + + + True if the chart area has rounded corners. otherwise False. + + + + + Represents chart border. Read-only. + + + + + Represents foreground color. + + + + + Represents background color. + + + + + Represents pattern. + + + + + Represents if use automatic format. + + + + + Represents visibility. + + + + + Contains primary parent axis, secondary parent axis. + + + + + + + + + + + + + + + Represents primary parent axis. + + + + + Represents secondary parent axis. + + + + + Default constructor. + + + + + Creates object and initializes collections. + + Application object. + Parent object for primary collection. + Parent object for secondary collection. + + + + Parses ChartAxisParent record. + + Array of records containing record. + Position of the record to parse. + + When specified record is not ChartAxisParent record. + + + + + Serializes chart axes. + + + OffsetArrayList that will receive all records. + + + + + If can - removes format. + + Format to remove. + + + + Creates format collection. + + Application object. + Parent object for collection. + If true - primary collection; otherwise - secondary. + + + + Changes primary and secondary format collections. + + + + + Helper methods for adding new formats. + + Format to add. + Format order. + Format index. + If true - adds in primary format; otherwise - in secondary. + + + + + Removes format from collection. + + Index to remove. + Order to remove. + If true - removes in primary collection; otherwise - secondary. + + + + Returns collection by parameter. + + If true - returns primary collection; otherwise - secondary. + Returns one of collection. + + + + Clones current instance. + + Parent for primary collection. + Returns just cloned method. + + + + Clones secondary collection. + + Global collection. + Parent object. + + + + Detects chart type. + + Chart series collection. + Returns chart type. + + + + Detects chart type by primary formats only. + + Chart series collection. + Returns chart type. + + + + Clears all format collections. + + + + + Changes not intimate types. + + Type to change. + Current Series type. + Application object. + Chart object. + Returns format for current type. + + + + Change format in axis. + + If true - changes format to primary. otherwise - to secondary. + Format order. + If true - standard add; otherwise - shallow. + Represents new order. + + + + Changes format in axis collection. + + Collection from format gets. + Collection to format sets. + Formats order. + New order to set. + IF true - standard add; otherwise - shallow. + + + + Represents primary format collection. Read-only. + + + + + Represents secondary format collection. Read-only. + + + + + Represent grid lines of the chart. + + + + + Represent grid lines of the chart. + + + + + Clears the chart grid lines. + + + The following code illustrates how to delete the for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Deleting the major gridlines of value axis + chart.PrimaryValueAxis.MajorGridLines.Delete(); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the grid line border. Read-only. + + + The following code illustrates how to access and format the for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set value axis minor gridLines to visible + chart.PrimaryValueAxis.HasMinorGridLines = true; + + //Get value axis minor gridlines + IChartGridLine gridLine = chart.PrimaryValueAxis.MinorGridLines; + + //Set minor gridlines broder properties + gridLine.Border.ColorIndex = ExcelKnownColors.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents default color index. + + + + + Represents axis line record. + + + + + Represents parent axis. + + + + + Represents Shadow + + + + + Represents parent book. + + + + + Represents chart border. + + + + + Represents the 3D features + + + + + Creates ChartGridLine object. + + Application object. + Parent object. + Represents type of axisline record. + + + + Creates ChartGridLine object. Only for parsing. + + Application object. + Parent object. + Represents records storage. + Represents position in storage. + + + + Finds all parent objects. + + + + + Parses GridLine records. + + Offset array list. + Current position in offset array list. + + + + Serializes Grid lines. + + OffsetArrayList that will receive all records. + + + + Clears the chart grid lines. + + + + + Clones current object. + + Parent object. + Returns cloned object. + + + + Gets line border. Read-only. + + + + + Gets line border. Read-only. + + + + + This property indicates whether line formatting object was created. Read-only. + + + + + Represents the Shadow.Read-only + + + + + This property indicates whether the shadow object has been created + + + + + Gets the chart3 D options. + + The chart3 D options. + + + + This property Indicates whether the Shadow object has been created(which includes the 3D properties) + + + + + This property indicates whether interior object was created. Read-only. + + + + + Returns object, that represents area properties. Read-only. + + + + + Represents fill options. Read-only. + + + + + Gets or sets axis line type. + + + + + Returns parent axis. Read-only. + + + + + Represents a chart sheet in the workbook. + + + + + Base class for all worksheet objects (objects that have own tab in the workbook) + like worksheets and charts. + + + + + Supports parsing, which parses internal records and creates necessary objects. + + + + + Parses internal records. + + + + + Maximum length of the password. + + + + + Default password hash value. + + + + + Min column index. + + + + + Min row index. + + + + + Default tab color. + + + + + Maximum one-based index of the row. + + + + + Maximum one-based index of the column. + + + + + Maximum allowed worksheet name length. + + + + + Values of all options, helps to switch all enum to ExcelSheetProtection.All enum value. + + + + + Records that do not belong to mso part of the worksheet. + + + + + Default tab color. + + + + + Represents a boolean value to parse worksheets on demand + + + + + Represents to parse sheet on demand + + + + + Parent workbook. + + + + + Worksheet's name. + + + + + Indicates whether worksheet was changed and need saving. + + + + + Real worksheet's index in the workbook. + + + + + Starting index for Mso record. + + + + + Current index of the mso drawing object. + + + + + Parse options. + + + + + List with all mso drawing records in the worksheet. + + + + + List in which all records which belong to worksheet are stored. + + + + + Collection with all shapes in the worksheet. + + + + + Charts collection. + + + + + Collection of all pictures in the worksheet. + + + + + True - indicates that record extracted from stream can be used, by this + implementation, otherwise False. + + + + + Zoom of the current window. + + + + + Represents sheet protection record. + + + + + Represents Range Protection Record + + + + + Describes password entered by user to protect worksheet's data. + + + + + Code name. + + + + + Indicates whether worksheet was parsed. + + + + + Indicates whether object is currently being parsed. + + + + + Indicates whether to skip parsing. + + + + + Window two record. + + + + + Pagelayout view record. + + + + + One field from Worksheet dimension records. + + + + + One field from Worksheet dimension records. + + + + + One field from Worksheet dimension records. + + + + + One field from Worksheet dimension records + + + + + Index of the tab color. + + + + + Contains images used in header and footer. + + + + + Worksheet index. + + + + + Represents sheet protection for support old version. Using for parsing. + + + + + BOF record that will be serialized. + + + + + Indicates whether to keep record inside of internal storage. + + + + + Visibility of worksheet. + + + + + Data holder for 2007 Excel. + + + + + Indicates whether worksheet contains some unknown vml shapes. + + + + + Collection with all textboxes. + + + + + Collection with all checkboxes. + + + + + Collection with all OptionButton. + + + + + Collection with all comboboxes. + + + + + Custom height + + + + + + + + + + Collection of worksheet's error indicators. + + + + + Alogrithm name to protect/unprotect worksheet. + + + + + Hash value to ensure the sheet protected password. + + + + + Random generated Salt for the sheet password. + + + + + Spin count to loop the hash algorithm. + + + + + Represents the name of the shared background image + + + + + Stores the sheet layout option values + + + + + Initializes new instance and sets its application and parent properties. + + Application object for the new instance. + Parent object for the new instance. + + + + Initializes new instance and sets its application and parent properties. + + Application object for the new instance. + Parent object for the new instance. + BiffReader to extract data from. + Parse options. + Indicates whether to skip parsing. + + Dictionary with new extended format indexes for ignore styles mode. + + Object used to decrypt encrypted records. + + + + Add a Vba code module to the worksheet. + + + + + + Code name changes event + + sender + Code name + + + + Clears NameChanged event. + + + + + Returns true if visible sheet found. Also sets active sheet index and display tab. + + Workbook objects collection + Object index. + True if visible sheet found + + + + Searches for all necessary parent objects. + + + + + This method is called when Name of the worksheet was changed. + + Event arguments. + + + + This method raises NameChanged event. + + Event arguments. + + + + This method should be called after any changes in the worksheet. + Sets Saved property of the parent workbook to false. + + + + + Initializes all required collections. + + + + + Clear all internal collections but excluding mentioned flags. + + Allows to avoid clearing of some properties. + + + + Makes the current sheet the active sheet. + + Calling this method is equivalent to clicking the + sheet's tab in MS Excel. + + + + Selects current tab sheet. + + + + + Unselects current tab sheet if possible. + + + + + Unselects current tab sheet if possible. + + Indicates whether to allow unselect last sheet. + + + + Protects worksheet with password. + + Protection password. + + If worksheet is already protected. + + + If specified password is null. + + + If length of the password is more than 15 symbols. + + + + + Protects current worksheet. + + Represents password to protect. + Represents params to protect. + + + + Prepares protection options before setting protection. + + + + + + + Unprotects this worksheet without password. + + + + + Unprotects this worksheet using specified password. + + Password to unprotect. + + + + This method is called after RealIndex property change. + + Old index. + + + + Adds sheet tab to the selected tab. + + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + This method should be called immediately after extended format removal. + + Dictionary with updated extended formats. + + + + Creates copy of the current object. + + Parent object for the new object. + Copy of the current object. + + + + Creates copy of the current object and indicates whether we should copy the shapes or not. + + Parent object for the new object. + Indicates whether we should clone shapes or not. + Copy of the current object and indicates whether we should copy the shapes or not + + + + Create copy of the shapes collection inside specified worksheet object. + + Object to put shapes into. + + + + Updates style indexes. + + Array with changed style indexes. + + + + Protects worksheet. + + Password hash to use for protection. + Protection options. + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Method extracts biff records belonging to the worksheet. + + BiffReader that contains worksheet's records. + Parse options. + Indicates whether to skip parsing. + + Dictionary with new extended format indexes for ignore styles mode. + + Object used to decrypt encrypted records. + + + + Prepares protection variables. + + + + + Extracts next record from reader and parses it. + + Reader to extract record from. + Number of BOF records without closing EOF record. + Indicates whether styles information must be skipped. + Parsing options. + + Dictionary with new extended format indexes for ignore styles mode. + + Object used to decrypt encrypted records. + Updated number of BOF records without closing EOF record. + + + + Parses Protect record. + + Record to parse. + + + + Parses Password record. + + Record to parse. + + + + Parse ObjectProtect record. + + Record to parse. + + + + Parse ScenProtect record. + + Record to parse. + + + + Prepares variables to worksheet parsing. + + Parse options. + Indicates whether to skip parsing. + + + + Parse pagelayoutview + + Record to parse. + + + + Parse WindowTwo record. + + Record to parse. + + + + Parses single record. + + Record to parse. + Indicates whether to ignore styles. + + Dictionary with new extended format indexes for ignore styles mode. + + + + + Parses dimensions record. + + Record to parse. + + + + Parses WindowZoom record. + + Record to parse. + + + + Parses sheet layout record. + + Record to parse. + + + + Serializes records. + + Records to be serialized. + + + + Saves all shapes. + + List to save records into. + + + + Saves protection block. + + List to save records into. + + + + Serialize sheet protection. + + Represents record storage. + + + + Serializes header / footer pictures. + + List to save records into. + + + + Serializes WindowTwo record. + + List to save records into. + + + + Serializes page layout view + + List to save records into. + + + + Serializes macros support. + + List to save records into. + + + + Serializes WindowZoom. + + List to save records into. + + + + Serializes sheet layout record. + + List to save records into. + + + + Returns hash value for the password string. + + Password to hash. + Hash value for the password string. + + + + Converts character to 15 bits sequence + + Character to convert. + Array of values indicating 15 bit sequence. + + + + Converts bits array to UInt16 value. + + Array to convert. + Converted UInt16 value. + + + + Rotates (cyclic shift) bits in the array specified number of times + + Array to rotate + Number of times to rotate + Rotated array. + + + + Rounds value. + + Value to be rounded. + Represents degree used to round the given value. + Rounded value. + + + + Parses internal records. + + + + + Parses worksheet's data. + + + + + Parses worksheet's data. + + + + + Parses worksheet's data. + + + + + Extracts MsoDrawing records from internal array. + + Index to the first MsoDrawing record. + Parse options. + + + + Combines all MsoBase records into one array. + + Array of records. + + + + Extracts client data for mso records. + + Array of records. + + + + Combines several byte arrays into one. + + Size of the combined data. + List that contains byte arrays to combine. + Combined array. + + + + Copies all data from another worksheet. + + Parent worksheet. + Dictionary with style names. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Copy flags. + + Dictionary with extended format indexes, key - old index, value - new index. + + + + + Copies preserved header/footer images. + + Source worksheet. + Hash with new WorkSheet names. + Dictionary with new font indexes. + + + + Copies all shapes from a source worksheet. + + Source worksheet. + Hash with new WorkSheet names. + Dictionary with new font indexes. + + + + Copies different sheet options. + + Source sheet. + + + + Checkes whether the code name exist in the workbook + + Name getter + Code name + + + + + Generates unique name for the parent collection + + Name getter. + Proposed name + Generated unique name. + + + + Gets code name of the tabsheet. + + Tabsheet to get name from. + Code name of the tabsheet. + + + + Gets name of the tabsheet. + + Tabsheet to get name from. + Name of the tabsheet. + + + + Copies tab color from another worksheet. + + Worksheet to copy tab color from. + + + + Checks the worksheet for parse on demand load + + + + + Dispose + + + + + Protects the worksheet based on the Excel 2013. + + Password to generate the hash value. + + + + Creates random salt. + + Desired salt length. + Array with random data. + + + + This method is called during dispose operation of chart. + + + + + Worksheet Vba code module + + + + + Returns or sets the name of the object. Read / write String. + + + + + Indicates whether worksheet was saved. + + + + + Returns comments collection for this worksheet. Read-only. + + + + + Returns pictures collection. Read-only. + + + + + Returns embedded charts collection. Read-only. + + + + + Returns shapes collection. Read-only. + + + + + Gets shape collection in the worksheet. + + + + + Returns InnerShapes base collection. + + + + + Header / footer shapes collection. + + + + + Header / footer shapes collection. + + + + + Gets a Comments collection that represents all the comments for the worksheet. + + + + + Gets charts collection in the worksheet. Read-only. + + + + + Gets pictures collection in the worksheet. Read-only. + + + + + This event is raised after code name changed. + + + + + Name used by macros to access workbook items. Read-only. + + + + + Sheet window settings. + + + + + Indicates is current sheet is protected. + + + + + True if objects are protected. Read-only. + + + + + True if the scenarios of the current sheet are protected. Read-only. + + + + + Gets a value indicating whether worksheet is protected with password. + + + + + Indicates whether object was parsed. + + + + + Indicates whether object is currently being parsed. + + + + + Indicates whether worksheet was opened in skip parsing mode. Read-only. + + + + + Indicates whether worksheet type is supported. Read-only. + + + + + Gets parent workbook. Read-only. + + + + + Gets or sets one-based index of the first row of the worksheet. + + + + + Gets or sets one-based index of the first column of the worksheet. + + + + + Gets or sets one-based index of the last row of the worksheet. + + + + + Gets or sets one-based index of the last column of the worksheet. + + + + + Gets or sets the value that represents zoom factor of document. Value must be in range from 10 till 400. + + + + + Gets Tab color object. + + + + + Gets or Sets Tab color. + + + + + Gets or Sets Tab color RGB. + + + + + Gets or sets the color of the Grid line in the worksheet. + + + + + Indicates whether gridline color has default value. + + + + + Get parent workbook of current worksheet. + + + + + Indicates whether worksheet is displayed right to left. + + + + + Return page setup. Read-only. + + + + + Indicates whether tab of this sheet is selected. Read-only. + + + + + Gets the index number of the worksheet within the collection of + worksheet. Read-only. + + + + + Gets protected options. Read-only. To set protection options use "Protect" method. + + + + + Gets protected options. Read-only. For sets protection options use "Protect" method. + + + + + Returnd unprotected options + + + + + Returns internal BOF record. Read-only. + + + + + Controls end user visibility of worksheet. + + + + + Gets / sets worksheet data holder. + + + + + Gets or sets the top visible row of the worksheet. + + + + + Gets or sets the left visible column of the worksheet. + + + + + Describes password entered by user to protect worksheet's data. + + + + + Indicates whether worksheet contains some unknown vml shapes. + + + + + Gets inner textboxes collection. Read-only. + + + + + Gets inner textboxes collection. Read-only. + + + + + Gets inner textboxes collection. Read-only. + + + + + Returns inner checkboxes collection. Read-only. + + + + + Returns inner checkboxes collection. Read-only. + + + + + Returns inner comboboxes collection. Read-only. + + + + + Returns checkboxes collection for this sheet. Read-only. + + + + + Gets inner checkboxes collection in the sheet. Read-only. + + + + + Gets inner option buttons collection in the sheet. Read-only. + + + + + Gets inner combo boxes collection in the sheet. Read-only. + + + + + Indicates whether tabsheet contains any picture. Read-only. + + + + + Indicates whether tabsheet has charts. Read-only. + + + + + Indicates whether worksheet has vml shapes. Read-only. + + + + + Returns number of known vml shapes. Read-only. + + + + + Gets default protection options for the worksheet. + + + + + Indicates whether Protection property is direct (specified items are + protected) or indirect (specified items are unprotected). + + + + + Inidicates whether protection should be serialized. + + + + + Returns sheet protection record. + + + + + Gets or sets IsTransitionEvaluation + + + + + Gets or Sets a boolean value to parse worksheets on demand + + + + + Gets or sets the boolean value to load worksheets on demand + + + + + Alogrithm name to protect/unprotect worksheet. + + + + + Hash value to ensure the sheet protected password. + + + + + Random generated Salt for the sheet password. + + + + + Spin count to loop the hash algorithm. + + + + + This event is raised when name of the worksheet is changed. + + + + + Index of the worksheet in the workbook + (not necessary in Worksheets collection) + + + + + Returns index in the parent ITabSheets collection. Read-only. + + + + + Delegate to be used for getting name information from the worksheet. + + Worksheet to get name from. + Extracted name. + + + + Represents a chart sheet in the workbook. + + + + + Converts the chart to image stream. + + Stream object where the image is streamed. + + The following code illustrates how a chart in the worksheet/workbook can be converted to an image. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart to image converter + application.ChartToImageConverter = new Syncfusion.ExcelChartToImageConverter.ChartToImageConverter(); + application.ChartToImageConverter.ScalingMode = ScalingMode.Best; + + //Save as image + MemoryStream stream = new MemoryStream(); + chart.SaveAsImage(stream); + System.Drawing.Image image = System.Drawing.Image.FromStream(stream); + image.Save("Output.png"); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the chart type. + + + By default the is set to . Here for example, we set + to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = workbook.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Pyramid_Stacked; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the data range for the chart series. + + + If we want to give data for the chart series directly then we can use and + properties. To know more about giving data directly to series refer + Creating a Chart from directly entered Values. + + + The following code illustrates how to set the data range for the chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = workbook.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True to swap the data in over the axis. Series data is charted on the Y axis by default. + + Data being charted on the X axis will move to the Y axis and vice versa. + + The following code illustrates how to set property for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set IsSeriesInRows + chart.IsSeriesInRows = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the title of the chart. + + + The following code illustrates how to set the title for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set title + chart.ChartTitle = "Sample Chart"; + + //Set position + chart.XPos = 250; + chart.YPos = 30; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the area for chart title. Read-only. + + + To apply formats for chart title area we can use property to access . Here for example, + we access and set . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart area + IChartTextArea textArea = chart.ChartTitleArea; + + //Set text + textArea.Text = "Sample Chart"; + textArea.Size = 20; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the page setup for the chart. Read-only. + + + The following code illustrates how to set paper size. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = workbook.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart page setup + IChartPageSetup pageSetup = chart.PageSetup; + + //Set paper size + pageSetup.PaperSize = ExcelPaperSize.A3TransversePaper; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the X coordinate of upper-left corner of the chart in points (1/72 inch). + + + The following code illustrates how to set X coordinate of upper-left corner of the charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.Height = 300; + chart.Width = 300; + + //Set position + chart.XPos = 250; + chart.YPos = 30; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the Y coordinate of upper-left corner of the chart in points (1/72 inch). + + + The following code illustrates how to set Y coordinate of upper-left corner of the charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.Height = 300; + chart.Width = 300; + + //Set position + chart.XPos = 250; + chart.YPos = 30; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the width of the chart in points (1/72 inch). + + + To know more about resizing chart and chart elements refer Resizing Chart. + + + The following code illustrates how and for the chart can be set. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart height and width + chart.Height = 300; + chart.Width = 300; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the height of the chart in points (1/72 inch). + + + To know more about resizing chart and chart elements refer Resizing Chart. + + + The following code illustrates how and for the chart can be set. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart height and width + chart.Height = 300; + chart.Width = 300; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection of the chart. Read-only. + + + The following code illustrates how to access the collection of a chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = workbook.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Chart series + IChartSeries series = chart.Series; + + //Check count + Console.WriteLine(series.Count); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //1 + + + + + + Gets the primary category axis of the chart. Read-only. + + + Charts are plotted using X and Y axes. The Y axes typically have numerical scales, whereas the X axes typically have categorical scales. + Some charts, for example, have axes, and others, like PieChart don't. + Most charts have horizontal axis of type and vertical axis of type + but some, like BarChart, have the opposite. + represents an axis used for categories. Categories can include string, numeric, and date values. + + The following code illustrates how to set the visibility of . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Chart category axis + IChartCategoryAxis categoryAxis = chart.PrimaryCategoryAxis; + + //Set visibility + categoryAxis.Visible = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the primary value axis. Read-only. + + + Charts are plotted using X and Y axes. The Y axes typically have numerical scales, whereas the X axes typically have categorical scales. + Some charts, for example, have axes, and others, like PieChart don't. + Most charts have horizontal axis of type and vertical axis of type + but some, like BarChart, have the opposite. + represents an axis used for series values. + + The following code illustrates how to set visibility of . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Chart value axis + IChartValueAxis valueAxis = chart.PrimaryValueAxis; + + //Set visibility + valueAxis.Visible = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the primary series axis. Read-only. + + This is the depth axis showing the depth of the third dimension in 3D charts. + + The following code illustrates how to set visibility of . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Surface_3D; + + //Chart value axis + IChartSeriesAxis seriesAxis = chart.PrimarySerieAxis; + + //Set visibility + seriesAxis.Visible = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the secondary category axis of the chart. Read-only. + + + The most commonly used charts have a set of primary axes and may have a set of secondary axes. + You can enable and disable this through property. + + + The following code illustrates how to disable and set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "100"; + sheet.Range["B3"].Value = "200"; + sheet.Range["C3"].Value = "300"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set secondary axis + IChartSerie serie = chart.Series[1]; + serie.UsePrimaryAxis = false; + chart.SecondaryCategoryAxis.Visible = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the secondary value axis of the chart. Read-only. + + + The most commonly used charts have a set of primary axes and may have a set of secondary axes. + You can enable and disable this through property. + + + The following code illustrates how to disable and set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "100"; + sheet.Range["B3"].Value = "200"; + sheet.Range["C3"].Value = "300"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set secondary axis + IChartSerie serie = chart.Series[1]; + serie.UsePrimaryAxis = false; + chart.SecondaryValueAxis.Visible = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the chart area. Read-only. + + + The following code illustrates how to access using property and set foreground color + for the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart frame format + IChartFrameFormat frameFormat = chart.ChartArea; + + //Set color + frameFormat.Fill.ForeColor = System.Drawing.Color.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the plot area where the chart data is plotted. Read-only. + + The plot area on a 2-D chart contains the data markers, grid lines, data labels, trend lines, + and optional chart items placed in the chart area. The plot area on a 3-D chart contains all the above items + plus the walls and floor. + The plot area is surrounded by the chart area. + + The following code illustrates how to access using property and set foreground color + for the chart's . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart frame format + IChartFrameFormat frameFormat = chart.PlotArea; + + //Set color + frameFormat.Fill.ForeColor = System.Drawing.Color.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the walls of the 3D chart. Read-only. + + + The following code illustrates how to access using property and set foreground color + for the chart's . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered_3D; + + //Set chart wall or floor + IChartWallOrFloor wall = chart.Walls; + + //Set color + wall.Fill.FillType = ExcelFillType.SolidColor; + wall.Fill.ForeColor = System.Drawing.Color.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the side wall of the 3D chart. Read-only. + + + The following code illustrates how to access using property and set foreground color + for the chart's . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered_3D; + + //Set chart wall or floor + IChartWallOrFloor wall = chart.SideWall; + + //Set color + wall.Fill.FillType = ExcelFillType.SolidColor; + wall.Fill.ForeColor = System.Drawing.Color.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the back wall of the 3D chart. Read-only. + + + The following code illustrates how to access using property and set foreground color + for the chart's . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered_3D; + + //Set chart wall or floor + IChartWallOrFloor wall = chart.BackWall; + + //Set color + wall.Fill.FillType = ExcelFillType.SolidColor; + wall.Fill.ForeColor = System.Drawing.Color.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the floor of the 3D chart. Read-only. + + + The following code illustrates how to access using property and set foreground color + for the chart's . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered_3D; + + //Set chart wall or floor + IChartWallOrFloor wall = chart.Floor; + + //Set color + wall.Fill.FillType = ExcelFillType.SolidColor; + wall.Fill.ForeColor = System.Drawing.Color.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the of the chart. Read-only. + + + By default the visibility of data table is set to "false". Here for example, we set to "true" to enable data table + and set to "false" to hide the borders of data table. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set Chart data table + chart.HasDataTable = true; + IChartDataTable dataTable = chart.DataTable; + + //Set border + dataTable.HasBorders = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the chart has data table. otherwise False. + + + The following code illustrates how data table can be set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set Chart data table + chart.HasDataTable = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets legend in the chart. Read-only. + + + This is a key that identifies patterns, colors or symbols associated with the markers of a chart data series. + It shows data series name corresponding to each data marker. + + + The following code illustrates how to access using property and set + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart legend + IChartLegend legend = chart.Legend; + + //Set legend position + legend.Position = ExcelLegendPosition.Left; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets whether the chart has title. + + + The following code illustrates how to set property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set hasTitle + chart.HasTitle = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the chart has a legend object. otherwise False. + + + The following code illustrates how to set property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set hasLegend + chart.HasLegend = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the rotation of the 3D chart view + (the rotation of the plot area around the z-axis, in degrees)-(0 to 360 degrees). + + The value of this property must be from 0 to 360, except for 3-D bar charts, + where the value must be from 0 to 44. The default value is 20. Applies only to 3-D charts. + + The following code illustrates how to set for 3-D charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set Chart rotation + chart.Rotation = 10; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the elevation of the 3-D chart view, in degrees (-90 to +90 degrees). + + + The chart elevation is the height at which you view the chart, in degrees. + The default is 15 for most chart types. The value of this property must be between -90 and 90, except + for 3-D bar charts, where it must be between 0 and 44. + + + The following code illustrates how to set for 3-D charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set Chart elevation + chart.Elevation = 50; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the perspective for the 3D chart view (0 to 100). + + This property is ignored if the property is True. + + The following code illustrates how to set for the charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set Chart perspective + chart.Perspective = 70; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the height of a 3D chart as a percentage of the chart width + (5 - 500 percent). + + + The following code illustrates how can be set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set Chart height percent + chart.HeightPercent = 200; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the depth of a 3D chart as a percentage of the chart width + (20 - 2000 percent). + + + The following code illustrates how to set to a Column 3D chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set Chart depth percent + chart.DepthPercent = 300; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the distance between data series in a 3D chart, as a percentage of marker width ( 0 - 500 ). + + Similar to we can also use to set width between data series in 3D charts. + + The following code illustrates how to set to a Column 3D chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set gap depth + chart.GapDepth = 450; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the chart axes are at right angles, independent of chart rotation or elevation. otherwise False. + + + The following code illustrates how can be set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set perspective + chart.Perspective = 90; + + //Set RightAngleAxes + chart.RightAngleAxes = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True to automatically scale the chart. otherwise False. The property must be True. + + Excel scales a 3-D chart so that it is closer in size to the equivalent 2-D chart when this property is enabled. + + The following code illustrates how to set auto scaling for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set height percentage + chart.HeightPercent = 300; + + //Set auto scaling + chart.AutoScaling = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if grid lines are drawn two-dimensionally on a 3-D chart. otherwise False. + + + The following code illustrates how to set for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set wall lines + chart.WallsAndGridlines2D = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether the chart has plot area. + + + The following code illustrates how to set the visibility of . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set frame format + chart.ChartArea.IsBorderCornersRound = true; + + //Set HasPlotArea + chart.HasPlotArea = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value indicating how the blank cells are plotted on chart. + + + If cells within the chart's has no data then those are not plotted in charts. Because by default the + is set to . Here for example, we set + to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered_3D; + + //Set display as + chart.DisplayBlanksAs = ExcelChartPlotEmpty.Zero; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if only visible cells are plotted. False if both visible and hidden cells are plotted. + + + By default property is set to "true" so only cells which are visible within the chart's + will be plotted in chart. Here for example, we set to "false" so that chart plots all the cells within the chart's + . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Hide column + sheet.Columns[2].ColumnWidth = 0; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set Plot visible only + chart.PlotVisibleOnly = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the chart is resized to match the size of the chart sheet window. + False if the chart size is not attached to the window size. Applies only to chart sheets. + + + Used in older versions of Microsoft office. + + + + + Gets or sets the pivot source. + + The pivot source + + To know more about pivot tables refer Working with Pivot Tables. + + + The following code illustrates how to set data source for the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.ImportDataTable(getData(), true, 1, 1); + + //Create pivot table + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D21"]); + IPivotTable pivotTable = sheet.PivotTables.Add("PivotTable", sheet["F1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[1].Axis = PivotAxisTypes.Column; + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + IPivotField field = pivotTable.Fields[3]; + pivotTable.DataFields.Add(field, "Sum", PivotSubtotalTypes.Sum); + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set pivot source + chart.PivotSource = pivotTable; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + System.Data.DataTable getData() + { + System.Data.DataTable dt = new System.Data.DataTable(); + dt.Columns.Add("Region"); + dt.Columns.Add("Employee"); + dt.Columns.Add("Item"); + dt.Columns.Add("Units"); + dt.Rows.Add("Central", "Jones", "Pen Set", 700); + dt.Rows.Add("West", "Kivell", "Binder", 85); + dt.Rows.Add("East", "Gill", "Pen", 58); + dt.Rows.Add("Central", "Jones", "Pen Set", 46); + dt.Rows.Add("West", "Kivell", "Binder", 61); + dt.Rows.Add("Central", "Jones", "Pen", 90); + dt.Rows.Add("West", "Kivell", "Pen Set", 32); + dt.Rows.Add("East", "Gill", "Binder", 79); + dt.Rows.Add("Central", "Jones", "Pen Set", 27); + dt.Rows.Add("Central", "Jones", "Binder", 5); + dt.Rows.Add("East", "Gill", "Pen Set", 41); + dt.Rows.Add("East", "Gill", "Pen Set", 61); + dt.Rows.Add("East", "Gill", "Binder", 9); + dt.Rows.Add("Central", "Jones", "Pen Set", 75); + dt.Rows.Add("West", "Kivell", "Pen Set", 97); + dt.Rows.Add("West", "Kivell", "Pen Set", 86); + dt.Rows.Add("East", "Gill", "Pen Set", 90); + dt.Rows.Add("East", "Gill", "Pen Set", 25); + dt.Rows.Add("East", "Gill", "Binder", 68); + dt.Rows.Add("East", "Gill", "Binder", 19); + return dt; + } + + + + + + Gets or sets the type of the pivot chart. + + The type of the pivot chart. + + The following code illustrates how to set pivot chart type. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.ImportDataTable(getData(), true, 1, 1); + + //Create pivot table + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D21"]); + IPivotTable pivotTable = sheet.PivotTables.Add("PivotTable", sheet["F1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[1].Axis = PivotAxisTypes.Column; + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + IPivotField field = pivotTable.Fields[3]; + pivotTable.DataFields.Add(field, "Sum", PivotSubtotalTypes.Sum); + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set pivot source + chart.PivotSource = pivotTable; + + //Set pivot chart type + chart.PivotChartType = ExcelChartType.Pie; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + System.Data.DataTable getData() + { + System.Data.DataTable dt = new System.Data.DataTable(); + dt.Columns.Add("Region"); + dt.Columns.Add("Employee"); + dt.Columns.Add("Item"); + dt.Columns.Add("Units"); + dt.Rows.Add("Central", "Jones", "Pen Set", 700); + dt.Rows.Add("West", "Kivell", "Binder", 85); + dt.Rows.Add("East", "Gill", "Pen", 58); + dt.Rows.Add("Central", "Jones", "Pen Set", 46); + dt.Rows.Add("West", "Kivell", "Binder", 61); + dt.Rows.Add("Central", "Jones", "Pen", 90); + dt.Rows.Add("West", "Kivell", "Pen Set", 32); + dt.Rows.Add("East", "Gill", "Binder", 79); + dt.Rows.Add("Central", "Jones", "Pen Set", 27); + dt.Rows.Add("Central", "Jones", "Binder", 5); + dt.Rows.Add("East", "Gill", "Pen Set", 41); + dt.Rows.Add("East", "Gill", "Pen Set", 61); + dt.Rows.Add("East", "Gill", "Binder", 9); + dt.Rows.Add("Central", "Jones", "Pen Set", 75); + dt.Rows.Add("West", "Kivell", "Pen Set", 97); + dt.Rows.Add("West", "Kivell", "Pen Set", 86); + dt.Rows.Add("East", "Gill", "Pen Set", 90); + dt.Rows.Add("East", "Gill", "Pen Set", 25); + dt.Rows.Add("East", "Gill", "Binder", 68); + dt.Rows.Add("East", "Gill", "Binder", 19); + return dt; + } + + + + + + Gets or sets a boolean value indicating whether to show all field buttons on a pivot chart. + + + true to show all field buttons; false otherwise. + + + The following code illustrates how to set the visibility of all the field buttons in the pivot chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.ImportDataTable(getData(), true, 1, 1); + + //Create pivot table + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D21"]); + IPivotTable pivotTable = sheet.PivotTables.Add("PivotTable", sheet["F1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[1].Axis = PivotAxisTypes.Column; + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + IPivotField field = pivotTable.Fields[3]; + pivotTable.DataFields.Add(field, "Sum", PivotSubtotalTypes.Sum); + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set pivot source + chart.PivotSource = pivotTable; + + //Set button visibility + chart.ShowAllFieldButtons = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + System.Data.DataTable getData() + { + System.Data.DataTable dt = new System.Data.DataTable(); + dt.Columns.Add("Region"); + dt.Columns.Add("Employee"); + dt.Columns.Add("Item"); + dt.Columns.Add("Units"); + dt.Rows.Add("Central", "Jones", "Pen Set", 700); + dt.Rows.Add("West", "Kivell", "Binder", 85); + dt.Rows.Add("East", "Gill", "Pen", 58); + dt.Rows.Add("Central", "Jones", "Pen Set", 46); + dt.Rows.Add("West", "Kivell", "Binder", 61); + dt.Rows.Add("Central", "Jones", "Pen", 90); + dt.Rows.Add("West", "Kivell", "Pen Set", 32); + dt.Rows.Add("East", "Gill", "Binder", 79); + dt.Rows.Add("Central", "Jones", "Pen Set", 27); + dt.Rows.Add("Central", "Jones", "Binder", 5); + dt.Rows.Add("East", "Gill", "Pen Set", 41); + dt.Rows.Add("East", "Gill", "Pen Set", 61); + dt.Rows.Add("East", "Gill", "Binder", 9); + dt.Rows.Add("Central", "Jones", "Pen Set", 75); + dt.Rows.Add("West", "Kivell", "Pen Set", 97); + dt.Rows.Add("West", "Kivell", "Pen Set", 86); + dt.Rows.Add("East", "Gill", "Pen Set", 90); + dt.Rows.Add("East", "Gill", "Pen Set", 25); + dt.Rows.Add("East", "Gill", "Binder", 68); + dt.Rows.Add("East", "Gill", "Binder", 19); + return dt; + } + + + + + + Gets or sets a boolean value indicating whether to show value field buttons on a pivot chart. + + + true to show value field buttons; false otherwise. + + + The following code illustrates how to set the visibility of value field buttons in pivot chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.ImportDataTable(getData(), true, 1, 1); + + //Create pivot table + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D21"]); + IPivotTable pivotTable = sheet.PivotTables.Add("PivotTable", sheet["F1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[1].Axis = PivotAxisTypes.Column; + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + IPivotField field = pivotTable.Fields[3]; + pivotTable.DataFields.Add(field, "Sum", PivotSubtotalTypes.Sum); + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set pivot source + chart.PivotSource = pivotTable; + + //Set button visibility + chart.ShowValueFieldButtons = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + System.Data.DataTable getData() + { + System.Data.DataTable dt = new System.Data.DataTable(); + dt.Columns.Add("Region"); + dt.Columns.Add("Employee"); + dt.Columns.Add("Item"); + dt.Columns.Add("Units"); + dt.Rows.Add("Central", "Jones", "Pen Set", 700); + dt.Rows.Add("West", "Kivell", "Binder", 85); + dt.Rows.Add("East", "Gill", "Pen", 58); + dt.Rows.Add("Central", "Jones", "Pen Set", 46); + dt.Rows.Add("West", "Kivell", "Binder", 61); + dt.Rows.Add("Central", "Jones", "Pen", 90); + dt.Rows.Add("West", "Kivell", "Pen Set", 32); + dt.Rows.Add("East", "Gill", "Binder", 79); + dt.Rows.Add("Central", "Jones", "Pen Set", 27); + dt.Rows.Add("Central", "Jones", "Binder", 5); + dt.Rows.Add("East", "Gill", "Pen Set", 41); + dt.Rows.Add("East", "Gill", "Pen Set", 61); + dt.Rows.Add("East", "Gill", "Binder", 9); + dt.Rows.Add("Central", "Jones", "Pen Set", 75); + dt.Rows.Add("West", "Kivell", "Pen Set", 97); + dt.Rows.Add("West", "Kivell", "Pen Set", 86); + dt.Rows.Add("East", "Gill", "Pen Set", 90); + dt.Rows.Add("East", "Gill", "Pen Set", 25); + dt.Rows.Add("East", "Gill", "Binder", 68); + dt.Rows.Add("East", "Gill", "Binder", 19); + return dt; + } + + + + + + Gets or sets a boolean value indicating whether to show axis field buttons on a pivot chart. + + + true to show axis field buttons; false otherwise. + + + The following code illustrates how to set visibility of axis field buttons in pivot chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.ImportDataTable(getData(), true, 1, 1); + + //Create pivot table + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D21"]); + IPivotTable pivotTable = sheet.PivotTables.Add("PivotTable", sheet["F1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[1].Axis = PivotAxisTypes.Column; + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + IPivotField field = pivotTable.Fields[3]; + pivotTable.DataFields.Add(field, "Sum", PivotSubtotalTypes.Sum); + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set pivot source + chart.PivotSource = pivotTable; + + //Set button visibility + chart.ShowAxisFieldButtons = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + System.Data.DataTable getData() + { + System.Data.DataTable dt = new System.Data.DataTable(); + dt.Columns.Add("Region"); + dt.Columns.Add("Employee"); + dt.Columns.Add("Item"); + dt.Columns.Add("Units"); + dt.Rows.Add("Central", "Jones", "Pen Set", 700); + dt.Rows.Add("West", "Kivell", "Binder", 85); + dt.Rows.Add("East", "Gill", "Pen", 58); + dt.Rows.Add("Central", "Jones", "Pen Set", 46); + dt.Rows.Add("West", "Kivell", "Binder", 61); + dt.Rows.Add("Central", "Jones", "Pen", 90); + dt.Rows.Add("West", "Kivell", "Pen Set", 32); + dt.Rows.Add("East", "Gill", "Binder", 79); + dt.Rows.Add("Central", "Jones", "Pen Set", 27); + dt.Rows.Add("Central", "Jones", "Binder", 5); + dt.Rows.Add("East", "Gill", "Pen Set", 41); + dt.Rows.Add("East", "Gill", "Pen Set", 61); + dt.Rows.Add("East", "Gill", "Binder", 9); + dt.Rows.Add("Central", "Jones", "Pen Set", 75); + dt.Rows.Add("West", "Kivell", "Pen Set", 97); + dt.Rows.Add("West", "Kivell", "Pen Set", 86); + dt.Rows.Add("East", "Gill", "Pen Set", 90); + dt.Rows.Add("East", "Gill", "Pen Set", 25); + dt.Rows.Add("East", "Gill", "Binder", 68); + dt.Rows.Add("East", "Gill", "Binder", 19); + return dt; + } + + + + + + Gets or sets a boolean value indicating whether to show legend field buttons on a pivot chart. + + + true to show legend field buttons; false otherwise. + + + The following code illustrates how to set visibility of legend field buttons in pivot charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.ImportDataTable(getData(), true, 1, 1); + + //Create pivot table + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D21"]); + IPivotTable pivotTable = sheet.PivotTables.Add("PivotTable", sheet["F1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[1].Axis = PivotAxisTypes.Column; + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + IPivotField field = pivotTable.Fields[3]; + pivotTable.DataFields.Add(field, "Sum", PivotSubtotalTypes.Sum); + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set pivot source + chart.PivotSource = pivotTable; + + //Set button visibility + chart.ShowLegendFieldButtons = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + System.Data.DataTable getData() + { + System.Data.DataTable dt = new System.Data.DataTable(); + dt.Columns.Add("Region"); + dt.Columns.Add("Employee"); + dt.Columns.Add("Item"); + dt.Columns.Add("Units"); + dt.Rows.Add("Central", "Jones", "Pen Set", 700); + dt.Rows.Add("West", "Kivell", "Binder", 85); + dt.Rows.Add("East", "Gill", "Pen", 58); + dt.Rows.Add("Central", "Jones", "Pen Set", 46); + dt.Rows.Add("West", "Kivell", "Binder", 61); + dt.Rows.Add("Central", "Jones", "Pen", 90); + dt.Rows.Add("West", "Kivell", "Pen Set", 32); + dt.Rows.Add("East", "Gill", "Binder", 79); + dt.Rows.Add("Central", "Jones", "Pen Set", 27); + dt.Rows.Add("Central", "Jones", "Binder", 5); + dt.Rows.Add("East", "Gill", "Pen Set", 41); + dt.Rows.Add("East", "Gill", "Pen Set", 61); + dt.Rows.Add("East", "Gill", "Binder", 9); + dt.Rows.Add("Central", "Jones", "Pen Set", 75); + dt.Rows.Add("West", "Kivell", "Pen Set", 97); + dt.Rows.Add("West", "Kivell", "Pen Set", 86); + dt.Rows.Add("East", "Gill", "Pen Set", 90); + dt.Rows.Add("East", "Gill", "Pen Set", 25); + dt.Rows.Add("East", "Gill", "Binder", 68); + dt.Rows.Add("East", "Gill", "Binder", 19); + return dt; + } + + + + + + Gets or sets a boolean value indicating whether to show report filter field buttons on a pivot chart. + + + true to show report filter field buttons; false otherwise. + + + The following code illustrates how to set visibility of report filter field buttons in pivot charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.ImportDataTable(getData(), true, 1, 1); + + //Create pivot table + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D21"]); + IPivotTable pivotTable = sheet.PivotTables.Add("PivotTable", sheet["F1"], cache); + pivotTable.Fields[0].Axis = PivotAxisTypes.Row; + pivotTable.Fields[1].Axis = PivotAxisTypes.Column; + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + IPivotField field = pivotTable.Fields[3]; + pivotTable.DataFields.Add(field, "Sum", PivotSubtotalTypes.Sum); + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set pivot source + chart.PivotSource = pivotTable; + + //Set button visibility + chart.ShowReportFilterFieldButtons = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + System.Data.DataTable getData() + { + System.Data.DataTable dt = new System.Data.DataTable(); + dt.Columns.Add("Region"); + dt.Columns.Add("Employee"); + dt.Columns.Add("Item"); + dt.Columns.Add("Units"); + dt.Rows.Add("Central", "Jones", "Pen Set", 700); + dt.Rows.Add("West", "Kivell", "Binder", 85); + dt.Rows.Add("East", "Gill", "Pen", 58); + dt.Rows.Add("Central", "Jones", "Pen Set", 46); + dt.Rows.Add("West", "Kivell", "Binder", 61); + dt.Rows.Add("Central", "Jones", "Pen", 90); + dt.Rows.Add("West", "Kivell", "Pen Set", 32); + dt.Rows.Add("East", "Gill", "Binder", 79); + dt.Rows.Add("Central", "Jones", "Pen Set", 27); + dt.Rows.Add("Central", "Jones", "Binder", 5); + dt.Rows.Add("East", "Gill", "Pen Set", 41); + dt.Rows.Add("East", "Gill", "Pen Set", 61); + dt.Rows.Add("East", "Gill", "Binder", 9); + dt.Rows.Add("Central", "Jones", "Pen Set", 75); + dt.Rows.Add("West", "Kivell", "Pen Set", 97); + dt.Rows.Add("West", "Kivell", "Pen Set", 86); + dt.Rows.Add("East", "Gill", "Pen Set", 90); + dt.Rows.Add("East", "Gill", "Pen Set", 25); + dt.Rows.Add("East", "Gill", "Binder", 68); + dt.Rows.Add("East", "Gill", "Binder", 19); + return dt; + } + + + + + + Gets collection of the chart. Read-only. + + Charts are plotted using X and Y axes. X axes typically have categorical scales. + Categories can include string, numeric, and date values. + + The following code illustrates how to access collection of the chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart categories + IChartCategories categories = chart.Categories; + + //Get count + Console.WriteLine(categories.Count); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //3 + + + + + + Gets or sets a value referring to the source level for series names. + + + By default is set to . Here for example, we set to property to use autogenerated series labels. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Text = "Apr"; + sheet.Range["B2"].Text = "May"; + sheet.Range["C2"].Text = "Jun"; + + sheet.Range["A4"].Value = "10"; + sheet.Range["B4"].Value = "20"; + sheet.Range["C4"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "10"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C4"]; + + //Set series in rows + chart.IsSeriesInRows = false; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set Series name level + chart.SeriesNameLevel = ExcelSeriesNameLevel.SeriesNameLevelNone; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value referring to the source level for the category labels. + + + By default is set to . Here for example, we set to property to use autogenerated category labels. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set Categories level label + chart.CategoryLabelLevel = ExcelCategoriesLabelLevel.CategoriesLabelLevelNone; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a style value for the chart. + + + By default is set to 0. Here for example, we set property for style change. + + Chart style value must be between 1 to 48. Otherwise argument exception will be thrown. + Style value changes will not affect to 2016 charts. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set Chart Style + chart.Style = 14; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + INamedObject interface declaration - object with name, + index, and ability to serialize. + + + + + Serializes this object into OffsetArrayList. + + + OffsetArrayList that will receive records of the object. + + + + + Name of the object. + + + + + Index of the object in the collection. + + + + + + + + + + Represent default name for the chart title. + + + + + Represent default name for the first series of the chart. + + + + + Represents the default chart type. + + + + + Represents the prefix for 3D charts. + + + + + Represents the prefix for bar charts. + + + + + Represents the prefix for clustered charts. + + + + + Represents the prefix for contour charts. + + + + + Represents the prefix for exploded charts. + + + + + Represents the prefix for line charts. + + + + + Represents the prefix for charts with markers. + + + + + Represents the prefix for charts with no color. + + + + + Represents the prefix for 100% charts. + + + + + Represents the prefix for charts with smoothed lines. + + + + + Represents the prefix for stacked charts. + + + + + Represents the defined start for area charts. + + + + + Represents the defined start for bar charts. + + + + + Represents the defined start for bubble charts. + + + + + Represents the defined start for column charts. + + + + + Represents the defined start for cone charts. + + + + + Represents the defined start for cylinder charts. + + + + + Represents the defined start for doughnut charts. + + + + + Represents the defined start for line charts. + + + + + Represents the defined start for pie charts. + + + + + Represents the defined start for pyramid charts. + + + + + Represents the defined start for radar charts. + + + + + Represents the defined start for scatter charts. + + + + + Represents the defined start for surface charts. + + + + + Index of the primary axes. + + + + + Si value index. + + + + + Si category index. + + + + + Si bubble index. + + + + + Index of the secondary axes. + + + + + Maximum font count. + + + + + Represents the Defualt Plot Area Top Left X. + + + + + Represents the Default Plot Area Top Left Y. + + + + + Represents the Default Plot Area X Length. + + + + + Represents the Default Plot Area Y Length. + + + + + Represent start types of chart that support data point. + + + + + Represent the charts that support series axis. + + + + + Represent the charts that do not support pivot charts. + + + + + Represent the charts that support data table. + + + + + Represent the charts that support error bars. + + + + + Represent the charts that support trendlines. + + + + + Represent the charts that contain walls or floor. + + + + + Specifies default secondary axis types. + + + + + Represent types of charts that are not 3D. + + + + + Represent types of charts that allow serie change. + + + + + Represent serie types that does not support gridlines. + + + + + Represent serie types that must be in secondary axis. + + + + + Represent serie types that shall be in primary axis. + + + + + Represent chart types that are combination of two different charts. + + + + + Represents array of start serie types sorted by drawing order. + + + + + Represent chart types that can change as intimate types. + + + + + Represent chart start types that does not need plot or walls. + + + + + Represent pivot chart types which need view tag to be rendered. + + + + + Represent 100% charts. + + Here each value in a series is shown as a portion of 100%. + + + + Represent the stacked charts. + + + + + Represent 3D charts. + + + + + Represent line charts. + + + + + Represent bubble charts. + + These are variation of scatter charts in which + the data points are replaced with bubbles. + + + + Represent the charts that can be without category axis. + + + + + Represent charts that need different color for each value. + + + + + Represent exploded charts. + + + + + Charts that need series lines: + + + + + Represent scatter charts. + + + + + Represent charts with smoothed lines. + + + + + Represent stock charts. + + + + + Represent charts with perspective. + + + + + Represent clustered charts. + + + + + Represent charts with plot area (by default). + + + + + Represent the legend types that are displayed vertically. + + + + + Unknown bytes. Needed for data labels serialization. + + + + + Represent the charts with data labels stored in different ways. + + + + + Represent charts with percentage data labels. + + + + + Represents to parse sheet on demand + + + + + Specifies the contents of this attribute contain an integer between -100 and 100. + + + + + Specifies the contents + + + + + Represents whether datetime axis contains string reference + + + + + Represents whether to serialize gapwidth + + + + + If true than chart contain secondary axis. + + + + + Represents if chart in worksheet. + + + + + Chart type. + + + + + Pivot Chart type. + + + + + DataRange for the chart series. + + + + + True if series are in rows in DataRange; + otherwise False. + + + + + True if has data table; + otherwise False. + + + + + Page setup for the chart. + + + + + X coordinate of the upper-left corner + of the chart in points (1/72 inch). + + + + + Y coordinate of the upper-left corner + of the chart in points (1/72 inch). + + + + + Width of the chart in points (1/72 inch). + + + + + Height of the chart in points (1/72 inch). + + + + + Array of the fonts used in the chart. + + + + + Collection of all the series of this chart. + + + + + Collection of all the categories of this chart. + + + + + Chart's data table. + + + + + Chart sheet properties. + + + + + This record stores scale factors for font scaling. + + + + + Position of the plot area bounding box. The plot-area bounding box + includes the plot area, tick marks, and a small border around + the tick marks. + + + + + Chart frame format. + + + + + Frame for plot area. + + + + + Dictionary that contains information about default text. + Key - Object identifier for the text, + Value - List with text records. + + + + + Title area. + + + + + Represents primary parent axis record and subrecords. + + + + + Represents secondary parent axis record and subrecords. + + + + + Represents legend in chart. + + + + + True if has legend; + otherwise False. + + + + + Represents chart walls/back_walls. + + + + + Represents chart side_walls. + + + + + Represents chart floor. + + + + + Represents chart plot area. + + + + + Indicates if we change chart or Series type. + + + + + Indicates if we have a default chart title or not. + + + + + Indicates if we change chart or Series type. + + + + + Represents helper array for parse trends. Use only for parsing. + + + + + Represents list with pivot records; + + + + + WindowZoomRecord that was met inside ChartChartRecord block. + + + + + Relations collection. + + + + + Style index for Excel 2007 chart. + + + + + Stream with extracted pivot formats data. + + + + + + + + + + Dictionary with error bars which requires future reparsing. + + + + + Preserved band formats. + + + + + Pivot source string. + + + + + Since we don't parse pivot tables we can only preserve pivot source using string variable, this should be remove after we start pivot tables parsing. + + + + + represents the format id of the chart + + + + + Indicates the all button fields in a pivot chart. + + + + + Indicates the Axis button in a pivot chart. + + + + + Indicates the value button in a pivot chart. + + + + + Indicates the legend button in a pivot chart. + + + + + Indicates the ExpandCollapseField button in a pivot chart. + + + + + Indicates the filter button in a pivot chart. + + + + + Preserves the Chart's Default Text Property. + TODO: Need to support Chart default text proprety, should be remove after we start to parse. + + + + + Font used for chart drawing. + + + + + Plot area layout + + + + + Collect the filter from category + + + + + Collect the filter from series + + + + + Represents the Excel2013 series name filter + + + + + Represents the Excel2013 category Filter + + + + + Indicates whether the PlotVisOnly attribute exists or not + + + + + Indicates whether the chart is copied from another workbook + + + + + Dictionary with Data Points which has data labels for different chart groups. + + + + + Dictionary with imageCodec which has image raw formats. + + + + + Represents the common category label values. + + + + + Represents the category lable reference as range. + + + + + Indicates whether the chart type is Stock chart + + + + + Indicates whether Radar series type is changed on parsing + + + + + This stream stores xml text with overided themes. + + + + + Contains list of theme colors. + + + + + Boolean value indicates whether the color style element file (colors1.xml) is skipped on parsing + + + + + Boolean value indicates whether the chart style element file (style1.xml) is skipped on parsing + + + + + This stream stores xml text with color mapped override. + + + + + Contains list of series groups in the chart + + + + + Represents the chart is created or parsed + + + + + Represents the show data lables over max value. + + + + + Represents the show Display #N/A as blank. + + + + + short value indicates the chartEx element position + + + + + Boolean value indicates whether the title can be overlay or not + + + + + Boolean value indicates whether the external data need to be updated + Useful only in parsed workbook + + + + + Relation id denotes the external referenced Id + Useful only in parsed workbook + + + + + Initializes a new instance of class. + + Application object for the chart. + Parent object for the chart. + + + + Initializes a new instance of class from biff reader and specified decryptor. + + Application object for the chart. + Parent object for the chart. + BiffReader to extract data from. + Parse options. + Indicates whether to skip parsing. + + Dictionary with new extended format indexes for ignore styles mode. + + Object used to decrypt encrypted records. + + + + Initializes a new instance of class from the array of BiffRecords. + + Application object for the chart. + Parent object for the chart. + Array of BiffRecords with chart's data. + Position of the first chart's record. + Parse options. + + + + Searches for all necessary parent objects. + + + + + Creates chart title object. + + + + + Parses internal records. + + + + + Extracts chart from array of BiffRecords. + + Array of BiffRecords containing chart's data. + Position of the first chart's record. + Parse options. + + + + ParseBinaryData + + SST records + Data Holder + + + + Parses object's records. + + + + + Reparses error bars. + + + + + Parses ordinary chart record. + + Record to parse. + Record position - will be updated during this operation. + + + + Saves all chart records in the internal storage (without first BOF record). + + Array with chart records. + Position to the first chart record. + Array that will get all chart records. + Parse options. + + + + Extracts fonts from the BiffRecords array. + + BiffRecords array containing fonts. + Position of the first font record. + + If specified by parameter record is not ChartFbi record. + + + + + Parses ChartChartReacod and all its subrecords. + + Array of BiffRecords containing chart's data. + Position of the ChartChart record. + + When specified record is not ChartChart record + or the next record is not Begin record. + + + + + Extracts data from ChartChart record. + + Record with data. + + + + Parses ChartPlotGrowth record. + + Record to parse. + + + + Parses ChartSiIndex records. + + Array of records containing ChartSiIndex records. + Position of the first ChartSiIndex record. + + When specified record is not ChartSiIndex record. + + + + + Parses ChartSeries record and its subrecords. + Creates new series in the Series collection. + + Array of records containing ChartSeries data. + Position of the ChartSeries record. + + + + Parses sheet properties. + + Array of records containing sheet properties data. + Position of the ChartShtprops record. + + When specified record is not ChartShtprops record. + + + + + Parses ChartDefaultText record. + + Array of records containing default text data. + Position of the record. + + When specified record is not ChartDefaultText record. + + + + + Gets record of the text data block. + + Array of records containing text data. + Position of the first text record. + List with all text records. + + + + Parses ChartText record and all its subrecords. + + Array of records containing text data. + Position of the record. + ChartTextAreaImpl that represents parsed text area. + + When specified record is not ChartText record + or when next record is not Begin record. + + + + + Parses ChartAxesUsed record. + + Array of records containing record. + Position of the record to parse. + + When specified record is not ChartAxesUsed record. + + + + + Parses ChartAxisParent record. + + Array of records containing record. + Position of the record to parse. + + When specified record is not ChartAxisParent record. + + + + + Parses ChartData table records. + + Array of records containing data table records. + Position of the ChartData record in the data array. + + When specified record is not ChartData record. + + + + + Assigns text area to its owner. + + Text area to assign. + List with unassigned text areas. + + + + Parses chart's plot area and all its sub records. + + Array of records containing plot area data. + + Position of the ChartPlotArea record in the array. + + + When specified record is not ChartPlotArea record. + + + + + Parses chart frame records. + + Array of records containing axes names data. + Position of the ChartFrame record in the array. + + + + Detects the type of the chart. + + + When it is not possible to detect chart type. + + + + + Sets some important variables into initial state. + + + + + Parses ChartFontxRecord. + + Record to parse. + IFont corresponding to the fontx record. + + + + Parses the legend in the chart. + + Record storage. + Position in storage. + + + + Adds series records to subholder from global holder. + + Represents global record holder. + Represents record subholder. + Represents position in global holder + Gets series index for error bar. + Indicates parsing error bars. + If true - parse Series; otherwise - error bars or trend lines. + + + + Reparse trend line legend entries. + + + + + Saves chart into OffsetArrayList. + + + OffsetArrayList that will receive all chart's records. + + + When specified OffsetArrayList is NULL. + + + + + Saves all chart's fonts into OffsetArrayList. + + + OffsetArrayList that will receive all fonts records. + + + + + Saves ChartChart record and all its subrecords. + + + OffsetArrayList that will receive all records. + + Boolean value indicates whether the chart is chartEx or not + + + + Saves DefaultText. + + + OffsetArrayList that will receive all records. + + + + + Serializes chart's axes. + + + OffsetArrayList that will receive all records. + + + + + Serializes sheet properties. + + + OffsetArrayList that will receive all records. + + + + + Serializes ChartSiIndex records. + + + OffsetArrayList that will receive all records. + + + + + Serializes category labels. + + + OffsetArrayList that will receive all records. + + + + + Serializes series values. + + + OffsetArrayList that will receive all records. + + + + + Serializes data table if it is visible. + + + OffsetArrayList that will receive all records. + + + + + Serializes data labels. + + + OffsetArrayList that will receive all records. + + + + + Serializes Series list. + + + OffsetArrayList that will receive all records. + + + + + Serializes ChartSi members. + + OffsetArrayList that will receive all records. + SiIndex record index. + + + + Serialize the chart's legend. + + Represents record list to serialize into. + + + + Serialize chart walls. + + Records collection. + + + + Serialize the chart's floor. + + Records collection. + + + + Serialize plot area to stg stream. + + Represents record storage. + + + + from the data range it detects and assign the series and its values + + input chart type + + + + from given information it creates series and its values + + required rows count used series creation + required columns count used series creation + boolean value indicates whether the series ranges have any space + input series Ranges + input seriesName ranges + output modified serie value ranges + output modified serie named ranges + output axis ranges + the boolean value indicates whether the series in rows or not + + + + Calculate and retruns count of the required cells inside the range + + input migrant range + last index in the column or row wise + index in the column or row wise + constant column or row value + boolean value indicates whether the iteration in row or not + the number of required cells count + + + + Updates chart categories from the specified series collection. + + Series collection. + Boolean value indicating if the chart is from data range. + + + + Updates series filter from the specified series collection. + + Series collection. + + + + Finds the category range in the specified chart range. + + Range of chart values. + Outputted category range values. + Chart values count. + Boolean value indicating if series is in row. + Category range in the specified chart range. + + + + Getting the filter from series and categories + + + + + Filter is assigned to the categories/series. + + + + + Get chart title name + + return chart Title name + + + + Determines if the specified chart type is clustered chart. + + The chart type to check. + True if teh chart type is clustered. False otherwise. + + + + Determines if the chart is 100% in view. + + The type of the chart. + True if the chart is 100%. False otherwise. + + + + Determines if the specified chart type is stacked. + + The chart type to check. + True if the chart is clustered chart. False otherwise. + + + + Determines whether specified chart type is pie chart. + + The chart type to check. + Value indicating whether specified chart type is pie chart. + + + + Creates necessary primary axes. + + Value indicating whether axis is primary. + + + + Initializes all internal collections. + + + + + Checks whether chart support data table. + + + + + Checks whether data table is compatible with specified start type. + + Start type of the chart. + Boolean value indicating whether to throw exception. + True if data table is compatible with specified start type. False otherwise. + + When the chart type is not supported by the data table. + + + + + Initializes collection of default text objects. + + + + + This method is called if DataRange was changed. + + Represents chart type. + + + + Adds default row series to the series collection. + + + + + Adds default column series to the series collection. + + + + + Adds bubble row series to the series collection. + + + + + Adds bubble column series to the series collection. + + + + + Adds scatter row series to the series collection. + + + + + Adds scatter column series to the series collection. + + + + + Adds stock row series without volume to the series collection. + + Number of series to add. + + When data range rows count does not correspond to the specified count. + + + + + Adds stock column series without volume to the series collection. + + Number of series to add. + + When data range columns count does not correspond to the specified count. + + + + + Adds stock row series with volume to the series collection. + + Number of series to add. + + When data range rows count does not correspond to the specified count. + + + + + Adds stock column series with volume to the series collection. + + Number of series to add. + + When data range columns count does not correspond to the specified count. + + + + + Sets format of secondary axes for volume chart type. + + + + + Sets default format for the first stock Series. + + Series to set format. + + + + This method is called when IsSeriesInRows is changed. + + + + + Updates series in bubble chart. + + + + + This method is called when chart type is changed. + + Represents chart type. + Value indicating whether series needs to be created. + + + + Updates tick record in surface chart type. + + + + + Updates tick record in radar chart type. + + + + + Updates chart members on type changing. + + Represents new chart type. + + + + Check whether the input chart type is ChartEx type or not + + input chart type + the boolean value indicates whether the chart type is chart ex + + + + Change the chart to chart ex type + + Indicates the old chart type + input chart type to be modified + boolean value indicates whether the series is created or not + + + + Changes Chart type for one of stock types. + + Type to change. + + + + Returns Chart3D record for this chart. + + Chart3D record for this chart. + + + + This is event handler for ValueRangeChanged of each series of the chart. + + + + + Initializes chart frames. + + + + + Removes the specified chart format. + + Format to remove. + + + + Updates chart title on chart creation. + + + + + Detects start type of the chart. + + Returns null if cann't detect. + + + + Detects data range by series and category axis. + + Returns detected data range or null if cann't detect. + + + + Returns the axis and named range which lies within the data range + + output series named range + output category axis range + the boolean value indicates whether the valid range is available or not + + + + Detects if series in rows or in column. + + Represents data range to be detected. + Returns true if series is in rows; False if series is in columns. + + + + Gets data range that represents series name or category axis. + + Represents data range. + Represents if series in row. + Represents range that contain series value range. + Returns series name or category axis range, if possible; otherwise null. + + + + Gets data range that represents series name or category axis. + + Represents data range. + Represents if series in row. + Skip the first column from series range of scatter chart if the column has numbers + Represents range that contain series value range. + Returns series name or category axis range, if possible; otherwise null. + + + + Validates Series range for min Series count of custom chart type. + + Represents range, that contain Series values. + Represents chart type. + Returns true if can set data range, otherwise false. + + + + Updates series value by data range. + + Represents range, that contain series value. + Represents range, that contain series name. + axis range of the chart + Represents chart type. + Represents index. + boolean value indicates whether series in row or column + + + + Indicates if Series is in data range. + + Represents rec of first Series values. + Represents range of current Series values. + index of this Series in collection. + Represents sheet name. + Returns true if series values is equal. + + + + Gets range, that represents series value range. + + Represents last range. + Represents bubble range. + Represents parent sheet. + Represents name of worksheet in data range. + Returns detected series range. + + + + Gets range, that represents series name values. + + Represents first Series name range. + Represents bubble range. + Represents parent sheet. + Represents sheet name. + Sets out parameter to Series name range. + Value indicating range representing serie name values. + + + + Updates data range rectangle. + + Represents range to update. + Represents rec, that represents current data range. Ref parameter. + Indicates if values is in rows. + Returns true if can update data range; otherwise false. + + + + Detects if series in rows. + + Returns true if series values in row; otherwise - false. + + + + Changes chart type. + + Represents new chart type. + Value indicating whether to create series. + + + + Check and update the needed changes for chart to chartEx or chartEx to chart conversion + + previous chart type + new chart type + Value indicating whether to create series. + + + + Clear the stream which is to be ignored on chartEx and chart conversion + + + + + Prepares protection options before setting protection. + + + + + + + Calculate the serie name range by empty spaces + + Input data range to calculate + Input Data Range without series name range + boolean value indicates whether the chart is Excel 2016 or not + series name range + + + + Calculate and retruns the range after removing the input series name range + + The complete input range to calculate + Input series name range + Input series name range modified + the axis range + + + + + + + + + + + + + + + Update the chart categories by Range + + + + + Creates a copy of current instance. + + Parent object. + Returns clone of current object. + + + + Creates a copy of the current instance with the specified dictionary of worksheet names. + + Hash table with new Worksheet names. + Parent object. + Dictionary with new font indexes. + Cloned object which is a copy of the current object. + + + + Changes primary axis of the chart to secondary. + + If parsing - true; Otherwise false. + + + + Updates scalable font indexes in the chart sheet. + + Dictionary with new indexes. + + + + Updates font indexes in the chart sheet. + + Dictionary with new indexes. + + + + Checks for existing gridlines in chart. + + Returns true if gridlines exist; Otherwise false. + + + + Sets default chart grid lines on chart type or series type changing. + + Represents chart type to change. + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Returns the Boolean value indicates whether the chart is loading on sheet is parsing on demand. + + the boolean value + + + + Converts the chart to image stream. + + Stream object where the image is streamed. + + + + Converts the specified double value into 32-bits fixed-point value. + + Value to convert. + Converted 32-bits fixed-point value. + + + + Converts the specified 32-bits fixed-point value into double. + + Value to convert. + Converted double value. + + + + Creates primary series axis. + + Created axis. + + + + Check for if any series is bubble_3D,Assign SerieFormat + + Chart to be changed + + + + Returns the chart color respect to index on automatic format + + index of the series or data points + total count of series and data points + Indicates whether the parent workbook is binary or not + Indicates whether the color to be taken from color palette only for line,scatter,radar in binary files + the Color of the chart + + + + Get the chart color based on the color index + + input color theme index + the equivalent color based on the theme index + + + + This method is called during dispose operation. + + + + + Indicates the DateTime axis contains a string reference or not. + + + + + Specifies the contents of this attribute contain an integer between -100 and 100. + + + + + Represents whether to serialize gapwidth + + + + + Gets or sets the rotation of the 3D chart view + (the rotation of the plot area around the z-axis, in degrees)-(0 to 360 degrees). + + The value of this property must be from 0 to 360, except for 3-D bar charts, + where the value must be from 0 to 44. The default value is 20. Applies only to 3-D charts. + + + + Gets or sets the elevation of the 3-D chart view, in degrees (–90 to +90 degrees). + + + The chart elevation is the height at which you view the chart, in degrees. + The default is 15 for most chart types. The value of this property must be between -90 and 90, except + for 3-D bar charts, where it must be between 0 and 44. + + + + + Gets or sets the perspective for the 3D chart view (0 to 100). + + This property is ignored if the property is True. + + + + Gets or sets the type of the pivot chart. + + The type of the pivot chart. + + + + Gets or sets the pivot source. + + The pivot source. + + + + Gets or sets name of the preserved pivot source stream. + + + + + Gets or sets the format id of the chart. + + + + + True if the chart has pivot source. False otherwise. + + + + + Gets or sets a boolean value indicating whether to show all field buttons on a pivot chart. + + + true to show all field buttons; false otherwise. + + + + + Gets or sets a boolean value indicating whether to show value field buttons on a pivot chart. + + + true to show value field buttons; false otherwise. + + + + + Gets or sets a boolean value indicating whether to show axis field buttons on a pivot chart. + + + true to show axis field buttons; false otherwise. + + + + + Gets or sets a boolean value indicating whether to show legend field buttons on a pivot chart. + + + true to show legend field buttons; false otherwise. + + + + + Gets or sets a boolean value indicating whether to show ExpandCollapse field buttons on a pivot chart. + + + true to show ExpandCollapse field buttons; false otherwise. + + + + + Gets or sets a boolean value indicating whether to show report filter field buttons on a pivot chart. + + + true to show report filter field buttons; false otherwise. + + + + + Gets or sets the height of a 3D chart as a percentage of the chart width + (5 - 500 percent). + + + + + Gets or sets the depth of a 3D chart as a percentage of the chart width + (20 - 2000 percent). + + + + + Gets or sets the distance between data series in a 3D chart, as a percentage of marker width ( 0 - 500 ). + + + + + True if the chart axes are at right angles, independent of chart rotation or elevation. otherwise False. + + + + + True to automatically scale the chart. otherwise False. The property must be True. + + Excel scales a 3-D chart so that it is closer in size to the equivalent 2-D chart when this property is enabled. + + + + True if grid lines are drawn two-dimensionally on a 3-D chart. otherwise False. + + + + + Gets or sets the . + + + + + Gets or sets a value referring to the source level for series names. + + + + + Gets or sets a value referring to the source level for the category labels. + + + + + Gets or sets the data range for the chart series. + + + + + True to swap the data in over the axis. Series data is charted + on the Y axis by default. + + Data being charted on the X axis will move to the Y axis and vice versa. + + + + Gets or sets the title of the chart. + + + + + Gets the area for chart title. Read-only. + + + + + Gets the font used for title display. Read-only. + + + + + Gets or sets the title of the category axis. + + + + + Gets or sets the title of the value axis. + + + + + Gets or sets the title of the secondary category axis. + + + + + Gets or sets the title of the secondary value axis. + + + + + Gets or sets the title of the series axis. + + + + + Gets the primary category axis of the chart. Read-only. + + + Charts are plotted using X and Y axes. The Y axes typically have numerical scales, whereas the X axes typically have categorical scales. + Some charts, for example, have axes, and others, like PieChart don't. + Most charts have horizontal axis of type and vertical axis of type + but some, like BarChart, have the opposite. + represents an axis used for categories. Categories can include string, numeric, and date values. + + + + Gets the primary value axis. Read-only. + + + Charts are plotted using X and Y axes. The Y axes typically have numerical scales, whereas the X axes typically have categorical scales. + Some charts, for example, have axes, and others, like PieChart don't. + Most charts have horizontal axis of type and vertical axis of type + but some, like BarChart, have the opposite. + represents an axis used for series values. + + + + Gets the primary series axis. Read-only. + + This is the depth axis showing the depth of the third dimension in 3D charts. + + + + Gets the secondary category axis of the chart. Read-only. + + + The most commonly used charts have a set of primary axes and may have a set of secondary axes. + You can enable and disable this through property. + + + + + Gets the secondary value axis of the chart. Read-only. + + + The most commonly used charts have a set of primary axes and may have a set of secondary axes. + You can enable and disable this through property. + + + + + Gets the page setup for the chart. Read-only. + + + + + Gets or sets the X coordinate of upper-left corner + of the chart in points (1/72 inch). + + + + + Gets or sets the Y coordinate of upper-left corner + of the chart in points (1/72 inch). + + + + + Gets or sets the width of the chart in points (1/72 inch). + + + + + Gets or sets the height of the chart in points (1/72 inch). + + + + + Gets the collection of series of the chart. Read-only. + + + + + Gets a collection of categories of the chart. Read-only. + + Charts are plotted using X and Y axes. X axes typically have categorical scales. + Categories can include string, numeric, and date values. + + + + Gets chart format collection in primary axis. + + + + + Gets the chart format collection in secondary axis. + + + + + Gets the chart area. Read-only. + + + + + Gets or sets whether the chart has chart area. + + + + + Gets or sets a boolean value indicating whether the chart has plot area. + + + + + Gets the plot area where the chart data is plotted. Read-only. + + The plot area on a 2-D chart contains the data markers, grid lines, data labels, trend lines, + and optional chart items placed in the chart area. The plot area on a 3-D chart contains all the above items + plus the walls and floor. + The plot area is surrounded by the chart area. + + + + Gets the primary parent axis. Read-only. + + + + + Gets the secondary parent axis. Read-only. + + + + + Gets the walls of the 3D chart. Read-only. + + + + + Gets the side wall of the 3D chart. Read-only. + + + + + Gets the back wall of the 3D chart. Read-only. + + + + + Gets the floor of the 3D chart. Read-only. + + + + + Gets the data table of the chart. Read-only. + + + + + True if the chart has data table. otherwise False. + + + + + Gets legend in the chart. Read-only. + + This is a key that identifies patterns, colors or symbols associated with the markers of a chart data series. + It shows data series name corresponding to each data marker. + + + + + True if the chart has a legend object. otherwise False. + + + + + Gets or sets a value indicating how the blank cells are plotted on chart. + + + + + Gets or sets a value indicating how the displayNaAsblank on chart. + + + + + True if only visible cells are plotted. False if both visible and hidden cells are plotted. + + + + + Gets or sets a value indicating whether to show the PlotVisibleOnly attribute. + + + + + True if the chart is resized to match the size of the chart sheet window. + False if the chart size is not attached to the window size. Applies only to chart sheets. + + + + + Gets a Boolean value indicating whether this chart supports walls and floor. Read-only. + + + + + True if drawing objects in the tab sheet are protected. Read-only. + + + + + True if the scenarios of the current sheet are protected. False otherwise. Read-only. + + + + + Gets protected options. Read-only. + + For setting protection options use "Protect" method. + + + + Gets the plot area layout record. Read-only. + + + + + Represents the common category label values. + + + + + Represents the category lable reference as range + + + + + Represents the chart is created or parsed + + + + + Properties for list of theme colors. + + + + + Gets or sets the chart sheet tab color. + + + + + True if chart has a category axis. False otherwise. Read-only. + + + + + True if chart has a value axis. False otherwise. Read-only. + + + + + True if chart has a series axis. False otherwise. Read-only. + + + + + True if chart is stacked. False otherwise. Read-only. + + + + + True if chart is 100%. False otherwise. Read-only. + + The chart assumes that the values add up to 100%, so all the columns will occupy the entire area. + + + + True if chart is a 3D- chart. False otherwise. Read-only. + + + + + Gets a value indicating whether this instance is 3D pivot chart. + + + true if this instance is 3D pivot chart; false otherwise. Read-only. + + + + + True if chart is a line chart. False otherwise. Read-only. + + + + + True if chart needs data format to be saved. False otherwise. Read-only. + + + + + True if chart needs marker format to be saved. Read-only. + + + + + True if chart is a bar chart. False otherwise. Read-only. + + + + + True if chart is in a pyramid shape. False otherwise. Read-only. + + + + + True if chart is in a conical shape. False otherwise. Read-only. + + + + + True if chart is in a cylinder shape. False otherwise. Read-only. + + + + + True if chart is a bubble chart. False otherwise. Read-only. + + + + + True if chart is a doughnut shaped chart. False otherwise. Read-only. + + + + + True if chart should have a different color for each series value. False otherwise. Read-only. + + + + + True if chart is in in exploded view. False otherwise. Read-only. + + + + + True if the chart has series lines. False otherwise. Read-only. + + + + + True if chart has series lines. False otherwise. Read-only. + + + + + True if chart is a scatter chart. False otherwise. Read-only. + + + + + Gets the default line pattern for the chart. Read-only. + + + + + True if chart has smoothed lines. False otherwise. Read-only. + + + + + True if this is a stock chart. False otherwise. Read-only. + + + + + True if chart needs drop bars to be saved. False otherwise. Read-only. + + + + + True if chart is a stock chart with volume. False otherwise. Read-only. + + + + + True if chart has perspective. False otherwise. Read-only. + + + + + True if the chart is a clustered chart. False otherwise. Read-only. + + + + + True if chart has no plot area. False otherwise. Read-only. + + + + + True if chart is a radar chart. False otherwise. Read-only. + + + + + True if chart is a pie chart. False otherwise. Read-only. + + + + + True if chart has walls. False otherwise. Read-only. + + + + + True if chart has floor. False otherwise. Read-only. + + + + + Gets the serialized axis ids. + + The serialized axis ids. + + + + True if secondary category axis is present. False otherwise. Read-only. + + + + + True if secondary value axis is present. False otherwise. Read-only. + + + + + True if at least one of the secondary axes is present. False otherwise. Read-only. + + + + + True if chart needs special data labels serialization. False otherwise. + Read-only. + + + + + True if chart has percentage data labels. False otherwise. Read-only. + + + + + True if chart has bubble data labels. False otherwise. Read-only. + + + + + True if the chart is manually formatted. False otherwise. + + + + + This record stores scale factors for font scaling. + + + + + Plot are bounding box. Read-only. + + + + + Gets the parent workbook. Read-only. + + + + + Gets the inner chart area. Read-only. + + + + + Gets the inner plot area. Read-only. + + + + + Gets the start serie type of chart. Read-only. + + + + + Page setup for the chart. Read-only. + + + + + Gets the chart options. Read-only. + + + + + Gets the parsing status of chart. Read-only. + + + + + Gets chart format for 3-d charts. Read-only. + + + + + True if the chart or series type is changed. False otherwise. + + + + + Gets or sets the resulting chart type after type change operation. + + + + + Gets the collection of chart relations. Read-only. + + + + + Gets or sets the style index chart. + + + + + Gets a value indicating whether chart floor object is created. False otherwise. + + + + + True if the chart walls are present. False otherwise. Read-only. + + + + + Gets or sets pivot formats stream. + + + + + Gets or sets a Bolean value indicating whether chart sheet is zoom to fit window. + + + + + Gets default protection options for the worksheet. + + + + + Gets a value indicating whether chart is embeded into worksheet. False otherwise. Read-only. + + + + + Gets the font index from the default font records. Read-only. + + + + + Gets or sets preserved band formats for surface chart. + + + + + True if the chart has title. False otherwise. + + + + + True if the chart has title. False otherwise. Read-only. + + + + + Preserves the Chart's Default Text Property. + TODO: Need to support Chart default text proprety, should be remove after we start to parse. + + + + + Gets the font used for axis text display. Read-only. + + + + + Retruns the boolean value indicates whether the font is available + + + + + Gets or sets to specify the title shall not be shown for this chart. + + + + + Boolean value indicates whether the chart title area is null or not. + + + + + Gets or sets the boolean value to load worksheets on demand + + + + + Gets or sets to specify the title shall not be shown for this chart. + + + + + Boolean value indicates whether the chart Data holder is not worksheet's DataHolder.Read-Only + + + + + Properties for list of chart series groups. + + + + + Indicates the position and alignment of chart title + + + + + Indicates the chart title included in chart + + + + + Gets / Sets the Auto update member variable + + + + + Gets / Sets the ChartEx relation Id member variable + + + + + True if the chart type is treemap or sunburst. Otherwise false + + + + + True if the chart type is histogram or pareto. Otherwise false + + + + + Provides the data cache information + Used at parsing + + + + + formula referred for category values + + + + + formula referred for series values + + + + + Array of values used in series values + + + + + Array of values used in categories + + + + + Boolean value indicates category values interpreted in row-wise + + + + + Boolean value indicates series values interpreted in row-wise + + + + + format code used in series values + + + + + format code used in category values + + + + + Copy the current properties to chart serie + + series in which properties to be copied + Parent workbook + + + + Gets/Sets formula referred for category values + + + + + Gets / Sets formula referred for series values + + + + + Gets / SetsArray of values used in series values + + + + + Gets/Sets Array of values used in categories + + + + + Gets / SetsBoolean value indicates category values interpreted in row-wise + + + + + Gets / SetsBoolean value indicates series values interpreted in row-wise + + + + + Gets / Sets the format code for series values + + + + + Gets / Sets the format code for series categories + + + + + Represents chart interior. + + + + + Represents the chart interior. Interior of chart is supported in Chart area and Plot area only. + + + + + Gets or sets the foreground color of the chart. Foreground color values are from . + + + To know more about charts refer this link. + + The following code illustrates the use of ForegroundColor property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the foreground color of the chart + chart.ChartArea.Interior.ForegroundColor = System.Drawing.Color.AliceBlue; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the background color of the chart. Background color values are from . + + + Background color can be visible only if the Interior Pattern is enable. To know more about charts refer this link. + + The following code illustrates the use of BackgroundColor property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the backgroundColor color of the chart + chart.ChartArea.Interior.BackgroundColor = System.Drawing.Color.Red; + chart.ChartArea.Interior.Pattern = ExcelPattern.Angle; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the area pattern. Pattern property values are from . + + + To know more about charts refer this link. + + The following code illustrates the use of Pattern property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the pattern of the chart + chart.ChartArea.Interior.Pattern = ExcelPattern.Angle; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the index of foreground color in . + + + To know more about charts refer this link. + + The following code illustrates the use of ForegroundColorIndex property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the index of foreground color + chart.ChartArea.Interior.ForegroundColorIndex = ExcelKnownColors.Aqua; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the index of background color in . + + + Background color index can be visible only if the Interior Pattern is enable. To know more about charts refer this link. + + The following code illustrates the use of BackgroundColorIndex property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the backgroundColor color of the chart + chart.ChartArea.Interior.BackgroundColorIndex = ExcelKnownColors.Bright_green; + chart.ChartArea.Interior.Pattern = ExcelPattern.Angle; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True to use automatic format. False to use custom format. + + + To know more about charts refer this link. + + The following code illustrates the use of UseAutomaticFormat property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //True to use automatic format for interior + chart.ChartArea.Interior.UseAutomaticFormat = true; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True if foreground and background colors are swapped when the data value is negative. otherwise False. + + + The SwapColorsOnNegative property works on Binary Excel format only. To know more about charts refer this link. + + The following code illustrates the use of SwapColorsOnNegative property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = -92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = -55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.IsSeriesInRows = false; + + //True if foreground and background colors are swapped when the data value is negative + chart.Series[0].SerieFormat.Interior.SwapColorsOnNegative = true; + + workbook.SaveAs("Charts.xls"); + workbook.Close(); + } + + + + + + Represents area format record. + + + + + Represents parent book. + + + + + Represents parent Series format. + + + + + Represents series fore color. + + + + + Represents series back color. + + + + + Represents dictionary to convert excelPattern to excelgradient pattern. + key - ExcelPattern, value - ExcelGradientPattern. + + + + + Initialize all static members. + + + + + Creates chart interior instance. + + Represents current application. + Represents parent object. + + + + Creates chart interior instance. + + Represents current application. + Represents parent object. + Represents area record. + + + + Creates new instance of class. + + Represents current application. + Represents parent object. + Represents record storage. + Represents position in storage. + + + + Finds parent objects. + + + + + Finds parent objects. + + Represents chart interior record. + + + + Parsing current object. + + Records offset. + Position in offset. + + + + Serialize current object. + + Records offset. + + + + Updates foreground color. + + + + + Updated background color. + + + + + Initialize interior for frame format. + + Indicate is autosize interior. + Represents is 3d chart. + Indicates is interior is gray. + + + + Initialize interior for frame format. + + Indicate is autosize interior. + Represents is 3d chart. + Indicates is interior is gray. + Indicates is default color is gray_50. + + + + Clones current object. + + Represents parent object. + Returns cloned object. + + + + Makes copy of the current object and update its parent. + + Represents Parent object to set. + Cloned object. + + + + Foreground color (RGB). + + + + + Background color (RGB). + + + + + Gets or sets the foreground color of the chart. + + + + + Gets or sets the background color of the chart. + + + + + Gets or sets the area pattern. + + + + + Gets or sets the index of foreground color in . + + + + + Gets or sets the index of background color in . + + + + + True to use automatic format. False to use custom format. + + + + + True if foreground and background colors are swapped when the data value is negative. otherwise False. + + + + + Represents collection of ChartLegendEntries in chart legend. + + + + + Represents a collection of legend entries in the chart. + + + + + Gets the number of legend entries in the collection. Read-only. + + + To know more about charts refer this link. + + The following code illustrates use of LegendEntries Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Gets the count of legend entries. + int legendEntriesCount = chart.Legend.LegendEntries.Count; + if (legendEntriesCount != 0) + { + //Your code here + } + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets the legend entry with the specified index. Read-only. + + + To know more about charts refer this link. + + The following code illustrates use of iIndex property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a chartLegend + IChartLegend chartLegend = chart.Legend; + chartLegend.LegendEntries[1].TextArea.Color = ExcelKnownColors.Blue_grey; + chartLegend.LegendEntries[1].TextArea.Size = 10; + chartLegend.LegendEntries[1].TextArea.FontName = "Bernard MT Condensed"; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Represents global storage for legend entries. + Key - entry index; Value - legend entry. + + + + + Represents parent chart. + + + + + Creates new instance of Legend entry collection. + + Represents current application. + Parent object. + + + + Finds all parent objects. + + + + + Adds legend to collection by index. + + Represents index of new entry in collection.( Zero based ) + Returns added entry. + + + + Adds legend to collection by index. + + Represents index of new entry in collection.( Zero based ) + Represents entry to add. + Returns added entry. + + + + Checks for contain changed from default formatting legend entry by index. + + Represents legend entry index. + Returns true if contains otherwise false. + + + + Checks before deleting legend entry. + + Represents index in collection. + If true - can delete; otherwise false. + + + + Updates legend entries collection after removing series. + + Index of legend entry to remove. + + + + Clones current object. + + Parent for cloned object. + Represents list with new font indexes. + Dictionary with new worksheet names. + Returns cloned object. + + + + Clears current collection. + + + + + Adds value to entry indexes. + + Represents start entry index. + Represents value to add. + + + + Represents count of legend entries in collection. Read-only. + + + + + Gets legend entry object by index. Read-only. + + + + + Returns the chartlegendentries collections + + + + + Class used for Chart Legend entries implementation. + + + + + Represents a legend entry in a chart legend. + + + + + Clears the legend entry. + + + To know more about charts refer this link. + + The following code illustrates how to use Clear method for legend. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a chartLegend + IChartLegend chartLegend = chart.Legend; + chartLegend.LegendEntries[1].TextArea.Color = ExcelKnownColors.Blue_grey; + chartLegend.LegendEntries[1].TextArea.Size = 10; + chartLegend.LegendEntries[1].TextArea.FontName = "Bernard MT Condensed"; + + //Clear the legend entry + chartLegend.LegendEntries[1].Clear(); + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Deletes the legend entry. + + + To know more about charts refer this link. + + The following code illustrates how to use Delete method for legend. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a chartLegend + IChartLegend chartLegend = chart.Legend; + + // Delete the first legend entry out of five entires + chartLegend.LegendEntries[0].Delete(); + + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True if this entry is deleted. otherwise False. + + + To know more about charts refer this link. + + The following code illustrates use of IsDeleted property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a chartLegend + IChartLegend chartLegend = chart.Legend; + chartLegend.LegendEntries[0].Delete(); // Delete the first legend entry outof five entires + + //True if the entry is deleted + bool isDeletedEntry = chartLegend.LegendEntries[0].IsDeleted; + if(isDeletedEntry) + { + //Your Code here + } + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True if the legend entry is formatted. otherwise False. + + + To know more about charts refer this link. + + The following code illustrates use of IsFormatted property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a chartLegend + IChartLegend chartLegend = chart.Legend; + chartLegend.LegendEntries[1].TextArea.Color = ExcelKnownColors.Blue_grey; + + //True if the legend entry is formatted + bool isEntryFromatted = chartLegend.LegendEntries[1].IsFormatted; + if(isEntryFromatted) + { + //Your Code here + } + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets the text area of the legend entry. Read-only. + + + To know more about charts refer this link. + + The following code illustrates use of TextArea property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Create a chartLegend + IChartLegend chartLegend = chart.Legend; + chartLegend.LegendEntries[1].TextArea.Color = ExcelKnownColors.Blue_grey; + chartLegend.LegendEntries[1].TextArea.Size = 10; + chartLegend.LegendEntries[1].TextArea.FontName = "Bernard MT Condensed"; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Represents LegendXN record. + + + + + Represents text of legend entry. + + + + + Represents parent chart legend entry collection. + + + + + Represents index of legend entry in collection. + + + + + Creates new instance of legend entry. + + Application object. + Parent object. + Represents index in collection + + + + Creates new instance of legend entry by parsing from stream. + + Application object. + Parent object. + Represents index in collection. + Represents record holder. + Represents position in stream. + + + + Parses legend entry. + + Record storage. + Position in storage. + + + + Finds parent object for collection. + + + + + Serialize legend entry object. + + Record storage. + + + + Clears the legend entry. + + + + + Deletes the legend entry. + + + + + Clones current object. + + Parent object. + Dictionary with new font indexes. + Dictionary with new worksheet names. + Returns cloned object. + + + + True if this entry is deleted. otherwise False. + + + + + True if the legend entry is formatted. otherwise False. + + + + + Gets the text area of the legend entry. Read-only. + + + + + Legend-entry index. + + + + + Represents index in collection. + + + + + Represents ChartLegend. + + + + + Represents the legend of the chart. + + + + + Clears the chart legend. + + + To know more about charts refer this link. + + The following code illustrates how to use the Clear method for legend of chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Clears the legend of chart + sheet.Charts[0].Legend.Clear(); + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Deletes the chart legend. + + + To know more about charts refer this link. + + The following code illustrates how to use the Delete method for legend of chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Delete the legend of chart + sheet.Charts[0].Legend.Delete(); + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Represents object for the legend. + + + To know more about charts refer this link. + + The following code illustrates use of FrameFormat property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets frame fromat for the legend + chart.Legend.FrameFormat.Border.LineColor = System.Drawing.Color.Orange; + chart.Legend.FrameFormat.Border.LinePattern = ExcelChartLinePattern.DashDotDot; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets the text area of the legend. Read-only. + + + To know more about charts refer this link. + + The following code illustrates use of TextArea property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets text area for the legend + chart.Legend.TextArea.Color = ExcelKnownColors.Blue_grey; + chart.Legend.TextArea.Size = 10; + chart.Legend.TextArea.FontName = "Bernard MT Condensed"; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets the X co-ordinate of upper-left corner of the legend. 1/4000 of chart plot. + + + To know more about charts refer this link. + + The following code illustrates use of X co-ordinate of upper-left corner of the legend. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //X co-ordinate of upper-left corner of the legend + chart.Legend.X = -80; + chart.Legend.Y = 30; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets the Y co-ordinate of upper-left corner of the legend. 1/4000 of chart plot. + + + To know more about charts refer this link. + + The following code illustrates use of Y co-ordinate of upper-left corner of the legend. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Y co-ordinate of upper-left corner of the legend + chart.Legend.Y = 30; + chart.Legend.X = -80; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the position of legend on the chart. The position values on the chart from . + + + To know more about charts refer this link. + + The following code illustrates use of Position property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the position of legend on the chart. + chart.Legend.Position = ExcelLegendPosition.Top; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True if the legend is vertical. False if the legend is horizontal. + + Manual-sized legends always have this bit set to False. For right and left position IsVerticalLegent is true. For Top and Bottom position IsVerticalLegent is false. To know more about charts refer this link. + + The following code illustrates use of IsVerticalLegend property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + chart.Legend.Position = ExcelLegendPosition.Right; + + //True if the legend is vertical + if(chart.Legend.IsVerticalLegend) + { + //Your code here + } + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection of legend entries. Read-only. + + + To know more about charts refer this link. + + The following code illustrates use of LegendEntries property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //Gets the count of legend entries. + int legendEntriesCount = chart.Legend.LegendEntries.Count; + if (legendEntriesCount != 0) + { + //Your code here + } + + //Legent entry text area color + chart.Legend.LegendEntries[0].TextArea.Color = ExcelKnownColors.Blue_grey; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + True to show legend without overlapping the chart. otherwise False. + The default is True. + + Not applicable to Binary files. To know more about charts refer this link. + + The following code illustrates use of IncludeInLayout property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //True to show legend without overlapping the chart + IChartLegend chartLegend = chart.Legend; + chartLegend.IncludeInLayout = true; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the layout options of the legend. + + + To know more about charts refer this link. + + The following code illustrates use of Layout property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.LeftColumn = 5; + chart.RightColumn = 11; + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Cone_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the layout options of the legend + chart.Legend.Layout.Height = 100; + chart.Legend.Layout.Width = 60; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Represents top-left position in pos record. + + + + + Represents chart legend record. + + + + + Represents chart pos record. + + + + + Attached label layout + + + + + Represents chart text record and sub records. + + + + + Represents legend frame format. + + + + + Show legend without overlapping. Default is True. + + + + + Represents parent chart. + + + + + Represents collection of legend entries. + + + + + Represents Excel 2007 layout data + + + + + Represents the TextArea Paragraph + + + + + Represents the legend text properties stream + + + + + Represents the default ChartTextArea settings + + + + + Represents the default ChartTextArea settings + + + + + short value indicates the chartEx element position + + + + + Creates new instance. + + Current application. + Parent object. + + + + Finds all parent objects. + + + + + Parsing current object. + + Records offset. + Position in offset. + + + + The legend text area applied events into the legend properties + + The legend property position + The object of the legend properties events + + + + Serialize current object. + + Represents record to serialize + + + + Saves single record into list of biff records. + + OffsetArrayList that will receive necessary records. + Record to serialize. + + + + Clones current object. + + Parent object. + Array with new font indexes. + Dictionary with new worksheet names. + Returns cloned object. + + + + Clears the chart legend. + + + + + Deletes the chart legend. + + + + + Sets to default position + + + + + Sets legend to custom position. + + + + + Represents object for the legend. + + + + + Gets the text area of the legend. Read-only. + + + + + True to show legend without overlapping the chart. otherwise False. + The default is True. + + Not applicable to Binary files + + + + X-position of upper-left corner. 1/4000 of chart plot. + + + + + Gets the Y co-ordinate of upper-left corner of the legend. 1/4000 of chart plot. + + + + + Gets or sets the position of legend on the chart. + + + + + True if the legend is vertical. False if the legend is horizontal. + + Manual-sized legends always have this bit set to False. + + + + Gets the collection of legend entries. Read-only. + + + + + Represents the Default ChartTextArea Settings + + + + + Gets or Sets the value indicating whether the ChartTextArea settings are applied from the chart default text settings. + + + + + X-size. + + + + + Y-size. + + + + + True if chart contains data table. + + + + + Spacing: + 0 = close + 1 = medium + 2 = open + + + + + Automatic positioning (True if legend is docked). + + + + + Automatic series distribution (True in Microsoft Excel 5.0). + + + + + X positioning is automatic. + + + + + Y positioning is automatic. + + + + + Gets or sets the layout options of the legend. + + + + + Represents the Legend Paragraph + + + + + Return attached label layout record. Read-only + + + + + Indicates the position and alignment of chart legend + + + + + Returns legend record. Read-only. + + + + + Returns position record. Read-only. + + + + + Class allows users to configure Print setting of chart. + + + + + Summary description for PageSetupBaseImpl. + + + + + Base interface for all page setups. + + + + + Indicates whether FirstPageNumber is set to Auto or not. + + + To know more about page settings refer this link. + + The following code illustrates the use of AutoFirstPageNumber property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //True to set FirstPageNumber as Auto + sheet.PageSetup.AutoFirstPageNumber = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + True if elements of the document will be printed in black and white. + Read / write Boolean. + + + To know more about page settings refer this link. + + The following code illustrates the use of BlackAndWhite property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //True to document will be printed in black and white. + sheet.PageSetup.BlackAndWhite = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the size of the bottom margin, in inches. Default value of bottom margin is 0.75. + Read / write Double. + + + To know more about page settings property refer this link. + + The following code illustrates the use of BottomMargin property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //sets the size of the bottom margin + sheet.PageSetup.BottomMargin = 0.75; + sheet.PageSetup.FooterMargin = 0.4; + sheet.PageSetup.HeaderMargin = 0.4; + sheet.PageSetup.LeftMargin = 0.75; + sheet.PageSetup.RightMargin = 0.75; + sheet.PageSetup.TopMargin = 0.75; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the center part of the footer. Read / write String. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page setting refer this link. + + The following code illustrates the use of CenterFooter property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the center part of the footer + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets image for center part of the footer. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of CenterFooterImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Set image for center part of the footer + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.CenterFooter = "Center Footer &G"; + + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / set image for center part of the header. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of CenterHeaderImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Set image for center part of the header + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.CenterHeader = "Center Header &G"; + + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the center part of the header. Read / write String. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of CenterHeader property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the center part of the header + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + True if the sheet is centered horizontally on the page when it is + printed. Read / write Boolean. + + + To know more about page settings refer this link. + + The following code illustrates the use of CenterHorizontally property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //True to print the sheet is centered horizontally + sheet.PageSetup.CenterHorizontally = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + True if the sheet is centered vertically on the page when it is + printed. Read / write Boolean. + + + To know more about page settings refer this link. + + The following code illustrates the use of CenterVertically property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //True to print the sheet is centered vertically + sheet.PageSetup.CenterVertically = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Number of copies to print. + + + To know more about page settings refer this link. + + The following code illustrates the use of Copies property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //Number of Copies to be printed + sheet.PageSetup.Copies = 3; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + True if the sheet will be printed without graphics. + Read / write Boolean. + + + To know more about page settings refer this link. + + The following code illustrates the use of Draft property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //True to sheet will be printed without graphics + sheet.PageSetup.Draft = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the first page number that will be used when + this sheet is printed. If xlAutomatic, Microsoft Excel chooses the + first page number. The default is xlAutomatic. Read / write Long. + + + To know more about page settings refer this link. + + The following code illustrates the use of FirstPageNumber property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //Set the first page number to be printed + sheet.PageSetup.FirstPageNumber = 1; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the distance from the bottom of the page to the footer, + in inches. Read / write Double. Default value of FooterMargin is 0.3. + + + To know more about page settings refer this link. + + The following code illustrates the use of FooterMargin property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the distance from the bottom of the page to the footer + sheet.PageSetup.FooterMargin = 0.4; + + sheet.PageSetup.BottomMargin = 0.75; + sheet.PageSetup.HeaderMargin = 0.4; + sheet.PageSetup.LeftMargin = 0.75; + sheet.PageSetup.RightMargin = 0.75; + sheet.PageSetup.TopMargin = 0.75; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the distance from the top of the page to the header, + in inches. Read / write Double. The Default value of HeaderMargin is 0.3. + + + To know more about page settings refer this link. + + The following code illustrates the use of HeaderMargin property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the distance from the top of the page to the header + sheet.PageSetup.HeaderMargin = 0.4; + + sheet.PageSetup.BottomMargin = 0.75; + sheet.PageSetup.FooterMargin = 0.4; + sheet.PageSetup.LeftMargin = 0.75; + sheet.PageSetup.RightMargin = 0.75; + sheet.PageSetup.TopMargin = 0.75; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the left part of the footer. Read / write String. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of LeftFooter property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the left part of the footer + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets image for left part of the footer. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of LeftFooterImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Set image for left part of the footer + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets image for left part of the header. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings property refer this link. + + The following code illustrates the use of LeftHeaderImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Set image for left part of the header + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the left part of the header. Read / write String. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of LeftHeader property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the left part of the header + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the size of the left margin, in inches. + Read / write Double. Default value of left margin is 0.7. + + + To know more about page settings refer this link. + + The following code illustrates the use of LeftMargin property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the value for the left margin + sheet.PageSetup.LeftMargin = 0.75; + sheet.PageSetup.BottomMargin = 0.75; + sheet.PageSetup.FooterMargin = 0.4; + sheet.PageSetup.HeaderMargin = 0.4; + sheet.PageSetup.RightMargin = 0.75; + sheet.PageSetup.TopMargin = 0.75; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the order that Microsoft Excel uses to number + pages when printing a large worksheet. Read / write . + + + To know more about page settings refer this link. + + The following code illustrates the use of Order property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:J94"].Text = "PagePrint"; + sheet.Range["K48:M54"].Text = "page"; + + //Sets the order of the worksheets to be printed + sheet.PageSetup.Order = ExcelOrder.DownThenOver; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Portrait or landscape printing mode. Read / write . + + + To know more about page settings refer this link. + + The following code illustrates the use of Orientation property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:J94"].Text = "PagePrint"; + sheet.Range["K48:M54"].Text = "page"; + + //Sets a Portrait or landscape printing mode + sheet.PageSetup.Orientation = ExcelPageOrientation.Portrait; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the size of the paper. Read / write . Default value for size of paper is . + + + To know more about page settings refer this link. + + The following code illustrates the use of PaperSize property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:J94"].Text = "PagePrint"; + sheet.Range["K48:M54"].Text = "page"; + + //Sets the size of the paper + sheet.PageSetup.PaperSize = ExcelPaperSize.A2Paper; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the way of comments are printed with the sheet. + Read / write . We must include cell comments and print with the sheet. + + + To know more about page settings refer this link. + + The following code illustrates the use of PrintComments property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:J94"].Text = "PagePrint"; + sheet.Range["K48:M54"].Text = "page"; + + sheet.Range["A1"].AddComment().Text = "Sample Comments"; //Comment must be added + sheet.Range["A1"].Comment.IsVisible = true; //It is also must for PrintInPlace + + //Sets the way of comments are printed with the sheet + sheet.PageSetup.PrintComments = ExcelPrintLocation.PrintSheetEnd; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or returns an ExcelPrintErrors constant specifying the type of + print error displayed. This feature allows users to suppress the + display of error values when printing a worksheet. Read / write . + + + To know more about page settings refer this link. + + The following code illustrates the use of PrintErrors property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:J94"].Text = "PagePrint"; + sheet.Range["K48:M54"].Text = "page"; + sheet.Range["L1"].Number = 230; + sheet.Range["L2"].Number = 3722; + sheet.Range["L3"].Number = 987; + sheet.Range["L4"].Number = 5678; + sheet.Range["L5"].Formula = "ASIN(L1:L4)"; //Sets the sample formula with error value + sheet.Range["K5"].Text = "Cell Error"; + + //Specifying the type of print error to be displayed + sheet.PageSetup.PrintErrors = ExcelPrintErrors.PrintErrorsNA; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + True if cell notes are printed as end notes with the sheet. Applies + only to worksheets. Read / write Boolean. + + + To know more about page settings refer this link. + + The following code illustrates the use of PrintNotes property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:J94"].Text = "PagePrint"; + sheet.Range["K48:M54"].Text = "page"; + + //True if cell notes are printed as end notes with the sheet + sheet.PageSetup.PrintNotes = true; + sheet.Range["A1"].AddComment().Text = "Sample Comments"; + sheet.Range["A1"].Comment.IsVisible = true; + sheet.PageSetup.PrintComments = ExcelPrintLocation.PrintSheetEnd; //Notes are printed as end notes with the sheet + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the print quality in the dpi. Read / write ushort. + + + To know more about page settings refer this link. + + The following code illustrates the use of PrintQuality property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //Set the print quality in the dpi + sheet.PageSetup.PrintQuality = 600; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the right part of the footer. Read / write String. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of RightFooter property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the right part of the footer + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets image for right part of the footer. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of RightFooterImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Set image for right part of the footer + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets image for right part of the header. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of RightHeaderImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Set image for right part of the header + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + sheet.PageSetup.RightHeader = "Right Header &G"; + + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the right part of the header. Read / write String. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of RightHeader property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the right part of the header + sheet.PageSetup.RightHeader = "Right Header &G"; + sheet.PageSetup.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + + sheet.PageSetup.CenterFooter = "Center Footer &G"; + sheet.PageSetup.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.CenterHeader = "Center Header &G"; + sheet.PageSetup.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.LeftFooter = "Left Footer &G"; + sheet.PageSetup.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.LeftHeader = "Left Header &G"; + sheet.PageSetup.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.RightFooter = "Right Footer &G"; + sheet.PageSetup.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the size of the right margin, in inches. + Read / write Double. Default value of right margin is 0.7. + + + To know more about page settings refer this link. + + The following code illustrates the use of RightMargin property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the value for the right margin + sheet.PageSetup.RightMargin = 0.75; + + sheet.PageSetup.BottomMargin = 0.75; + sheet.PageSetup.FooterMargin = 0.4; + sheet.PageSetup.HeaderMargin = 0.4; + sheet.PageSetup.LeftMargin = 0.75; + sheet.PageSetup.TopMargin = 0.75; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the size of the top margin, in inches. + Read / write Double. Default value of top margin is 0.75. + + + To know more about page settings refer this link. + + The following code illustrates the use of TopMargin property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Sets the value of the top margin + sheet.PageSetup.TopMargin = 0.75; + + sheet.PageSetup.BottomMargin = 0.75; + sheet.PageSetup.FooterMargin = 0.4; + sheet.PageSetup.HeaderMargin = 0.4; + sheet.PageSetup.LeftMargin = 0.75; + sheet.PageSetup.RightMargin = 0.75; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a percentage (between 10 and 400 percent) by which + Microsoft Excel will scale the worksheet for printing. Applies only + to worksheets. Read / write ushort. + + + To know more about page settings refer this link. + + The following code illustrates the use of Zoom property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //Set a percentage to be zoom in print + sheet.PageSetup.Zoom = 200; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets the header and footer margins are aligned with page margins. + + + To know more about page settings refer this link. + + The following code illustrates the use of AlignHFWithPageMargins property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //True to sets the header and footer margins are aligned with page margins + sheet.PageSetup.AlignHFWithPageMargins = true; + + sheet.PageSetup.LeftMargin = 1.25; + sheet.PageSetup.RightMargin = 1.25; + sheet.PageSetup.CenterFooter = "Center Footer"; + sheet.PageSetup.CenterHeader = "Center Header"; + sheet.PageSetup.LeftFooter = "&D"; + sheet.PageSetup.LeftHeader = "&D"; + sheet.PageSetup.RightFooter = "&T"; + sheet.PageSetup.RightHeader = "&T"; + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets the header and footer of the is different with other pages. + + + To know more about page settings refer this link. + + The following code illustrates the use of DifferentFirstPageHF property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //True to sets the header and footer of the first page is different with other pages + sheet.PageSetup.DifferentFirstPageHF = true; + + sheet.PageSetup.CenterFooter = "Center Footer"; + sheet.PageSetup.CenterHeader = "Center Header"; + sheet.PageSetup.FirstPage.LeftFooter = "&T"; + sheet.PageSetup.FirstPage.LeftHeader = "&D"; + sheet.PageSetup.FirstPage.RightFooter = "&P"; + sheet.PageSetup.FirstPage.RightHeader = "&D"; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets the header and footer odd pages are differed with even page. + + + To know more about page settings refer this link. + + The following code illustrates the use of DifferentOddAndEvenPagesHF property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //True to sets the header and footer odd pages are differed with even page + sheet.PageSetup.DifferentOddAndEvenPagesHF = true; + + sheet.PageSetup.CenterFooter = "Center Footer"; + sheet.PageSetup.CenterHeader = "Center Header"; + sheet.PageSetup.EvenPage.LeftFooter = "&T"; + sheet.PageSetup.EvenPage.LeftHeader = "&D"; + sheet.PageSetup.EvenPage.RightFooter = "&P"; + sheet.PageSetup.EvenPage.RightHeader = "&D"; + sheet.PageSetup.HFScaleWithDoc = false; + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets the header and footer are scaled with document scaling. The default value of HFScaleWithDoc property is true. + + + To know more about page settings refer this link. + + The following code illustrates the use of HFScaleWithDoc property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.Range["A1:D20"].CellStyle.FillBackground = ExcelKnownColors.Aqua; + sheet.Range["F1:R40"].CellStyle.FillBackground = ExcelKnownColors.Light_orange; + sheet.Range["A54:T80"].CellStyle.FillBackground = ExcelKnownColors.Light_blue; + sheet.Range["E1:T30"].CellStyle.Font.Color = ExcelKnownColors.Brown; + sheet.Range["A1:C50"].CellStyle.Font.Color = ExcelKnownColors.Green; + sheet.Range["A54:T90"].CellStyle.Font.Color = ExcelKnownColors.Red; + + //sets the header and footer are scaled with document scaling + sheet.PageSetup.HFScaleWithDoc = true; + + sheet.PageSetup.IsFitToPage = true; + sheet.PageSetup.CenterFooter = "Center Footer"; + sheet.PageSetup.CenterHeader = "Center Header"; + sheet.PageSetup.LeftFooter = "&T"; + sheet.PageSetup.LeftHeader = "&D"; + sheet.PageSetup.RightFooter = "&P"; + sheet.PageSetup.RightHeader = "&D"; + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets values for even page. The EvenPage have a values from the properties of . If the input workbook have a even page, we can get the header and footer values from the Evenpage Property. Otherwise the EvenPage property values are null or empty. + + + To know more about page settings refer this link. + + The following code illustrates the use of EvenPage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Set value of EvenPage header and footer + sheet.PageSetup.DifferentOddAndEvenPagesHF = true; + sheet.PageSetup.EvenPage.CenterFooter = "Center Footer"; + sheet.PageSetup.EvenPage.CenterHeader = "Center Header"; + sheet.PageSetup.EvenPage.LeftFooter = "&T"; + sheet.PageSetup.EvenPage.LeftHeader = "&D"; + sheet.PageSetup.EvenPage.RightFooter = "&P"; + sheet.PageSetup.EvenPage.RightHeader = "&D"; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets values for first page. The FirstPage have a values from the properties of . If the input workbook have a first page, we can get the header and footer values from the FirstProperty. Otherwise the FirstPage property values are null or empty. + + + To know more about page settings refer this link. + + The following code illustrates the use of FirstPage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Set the vales of FirstPage header and footer + sheet.PageSetup.DifferentFirstPageHF = true; + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer"; + sheet.PageSetup.FirstPage.CenterHeader = "Center Header"; + sheet.PageSetup.FirstPage.LeftFooter = "&T"; + sheet.PageSetup.FirstPage.LeftHeader = "&D"; + sheet.PageSetup.FirstPage.RightFooter = "&P"; + sheet.PageSetup.FirstPage.RightHeader = "&D"; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets background image. + + + Except UWP, Xamarin and ASP.NET Core platforms the BackgoundImage property must be . For UWP, Xamarin and ASP.NET Core platforms the BackgoundImage property is . To know more about page settings refer this link. + + The following code illustrates the use of BackgoundImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:J94"].Text = "PagePrint"; + + //sets background image + sheet.PageSetup.BackgoundImage = (System.Drawing.Bitmap)System.Drawing.Image.FromFile("D:/WorkSpace/WF-40376-APIs_in_page_settings/Output_Files/nature2.jpg"); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Value of the top margin by default. + + + + + Value of the bottom margin by default. + + + + + Value of the left margin by default. + + + + + Value of the right margin by default. + + + + + Value of the top margin by default for XML. + + + + + Value of the bottom margin by default for XML. + + + + + Value of the left margin by default for XML. + + + + + Value of the right margin by default for XML. + + + + + Value of the header margin by default for XML. + + + + + Value of the footer margin by default for XML. + + + + + Whether to center between horizontal margins. + + + + + Whether to center between vertical margins. + + + + + Unknown record. This record contains additional information about + system printer. If such record is found, it is stored, otherwise we is skipped. + + + + + Stores print setup options. + + + + + This record contains information about worksheet bottom margin. + + + + + This record contains information about worksheet left margin. + + + + + This record contains information about worksheet right margin. + + + + + This record contains information about worksheet top margin. + + + + + Array of headers: 0 - left header, 1 - center header, 2 - right header. + + + + + Array of footers: 0 - left footer, 1 - center footer, 2 - right footer. + + + + + Parent sheet. + + + + + Contains background image. + + + + + Indicates whether page setup is in FitTo printing mode. + + + + + Dictionary which stores Max paper width + + + + + Dictionary which stores Max paper height + + + + + Stores print setup options. + + + + + Stores page options for even page. + + + + + Stores page options for odd page. + + + + + Stores page options for first page. + + + + + Fills the dictionaries with paper width size and height size + + + + + + Sets application and parent fields. + + Application object for the page setup. + Parent object for the page setup. + + + + Find parent Worksheet. + + + Can't find parent worksheet. + + + + + This function splits header or footer into three parts left, center, and right. + + + Header (footer) string that will be split into + parts: left, center, right. + + Array of split strings. + + + + Function combines header or footer strings array to one format string. + + Array which must contain only 3 elements. + Combined format string. + + When parameter is null. + + + When number of strings in parts is not 3. + + + + + Adds all records to OffsetArrayList. + + OffsetArrayList which will get all records. + + When at least one of the internal records is null. + + + + + Serializes some records before main page setup block. + + OffsetArrayList to serialize into. + + + + Serializes some records after main page setup block. + + OffsetArrayList to serialize into. + + + + Parses page setup. + + Array with biff records. + Starting position. + Position after parsing. + + + + Parses record. + + Record to parse. + True if record was successfully parsed, false otherwise. + + + + Returns record of the specified type from the array of Biff + records and sets its position after the returned record. + + Array of Biff records. + Starting from this position, record must be searched. + Type of the needed record. + Biff record if it was found, null otherwise. + + + + Returns current record from the Biff records array and updates its position by 1. + + Array of Biff records. + + Position of the record in the array that will be returned. + + Current record from array. + + + + Returns record of the specified type from the array of Biff + records and sets its position after the returned record. + + Array of Biff records. + Starting from this position, record must be searched. + Type of the needed record. + Biff record if it was found, null otherwise. + + + + Serializes margin. + + OffsetArrayList to serialize into. + Margin's code. + Margin value. + Default margin value. + + + + This method is called after changes to the page setup. + Sets Saved property of the parent workbook to the False state. + + + + + Clone current Record. + + Parent object for create new instance. + Returns clone of current object. + + + + Size of the required storage space. Read-only. + + + + + Save record data to stream. + + Writer that will receive record data. + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the record. + If writer is NULL. + + If m_iLength of internal record data array is less than zero. + + + + + Serializes header / footer string. + + Writer to write data into. + Object that gives access to the temporary buffer. + Object to encrypt data. + Record code to serialize (header or footer). + String value to serialize. + Position in the output stream, used to reduce Flush + calls of the writer.BaseStream. + + + + Writes record that contains single UInt16 value into the writer. + + Writer to write value into. + Object that gives access to the temporary buffer. + Object to encrypt data. + Record code to write. + Value to write. + Position in the output stream, used to reduce Flush + calls of the writer.BaseStream. + Size of the written data. + + + + Writes margin record into writer. + + Writer to write margin into. + Object that gives access to the temporary buffer. + Object to encrypt data. + Record code to write. + Margin value. + Default margin value. If value equals to defaultValue, + then record is not written into writer. + Position in the output stream, used to reduce Flush + calls of the writer.BaseStream. + Size of the written data. + + + + Fills stream with some records before main page setup records. + + Writer to write records into. + Object that gives access to the temporary buffer. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the serialized data. + + + + Fills stream with some records after main page setup records. + + Writer to write records into. + Object that gives access to the temporary buffer. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the serialized data. + + + + Dispose Page Setup Base + + + + + Indicates whether fit to page mode is selected. + + + + + Returns or sets the height of the pages that the worksheet will be scaled + to when it is printed. Applies only to worksheets. Read/write Boolean. + + + + + Returns or sets the width of the pages the worksheet will be scaled + to when it is printed. Applies only to worksheets. Read/write Boolean. + + + + + True if paper size, scaling factor, paper orientation (portrait / landscape), + print resolution, and number of copies are not initialized. + + + + + Indicates whether FirstPageNumber is set to Auto or not. + + + + + True if elements of the document will be printed in black and white. + Read/write Boolean. + + + + + Gets or sets the size of the bottom margin, in inches. + Read / write Double. + + + + + Gets or sets the center part of the footer. Read / write String. + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localised style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets / set image for center part of the footer. + + + + + Gets / set image for center part of the header. + + + + + Gets or sets the center part of the header. Read/write String. + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localised style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + True if the sheet is centered horizontally on the page when it is + printed. Read/write Boolean. + + + + + True if the sheet is centered vertically on the page when it is + printed. Read/write Boolean. + + + + + Number of copies to print. + + + + + True if the sheet will be printed without graphics. + Read/write Boolean. + + + + + Gets or sets the first page number that will be used when + this sheet is printed. + + + + + Gets or sets the distance from the bottom of the page to the footer, + in inches. Read/write Double. + + + + + Gets or sets the distance from the top of the page to the header, + in inches. Read/write Double. + + + + + Gets or sets the left part of the footer. Read/write String. + + + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localized style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets or sets the left part of the header. Read/write String. + + + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localised style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets / set image for left part of the footer. + + + + + Gets / set image for left part of the header. + + + + + Gets or sets the size of the left margin, in inches. + Read/write Double. + + + + + Gets or sets the order that Microsoft Excel uses to number + pages when printing a large worksheet. Read / write ExcelOrder. + + + + + Portrait or landscape printing mode. Read/write ExcelPageOrientation. + + + + + Gets or sets the size of the paper. Read / write ExcelPaperSize. + + + + + Gets or sets the way comments are printed with the sheet. + Read/write ExcelPrintLocation. + + + + + Sets or returns an ExcelPrintErrors constant specifying the type of + print error displayed. This feature allows users to suppress the + display of error values when printing a worksheet. Read/write. + + + + + True if cell notes are printed as end notes with the sheet. Applies + only to worksheets. Read/write Boolean. + + + + + Gets or sets the print quality. Read / write ushort. + + + + + Gets or sets the right part of the footer. Read / write String. + + + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localised style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets / set image for right part of the footer. + + + + + Gets or sets the right part of the header. Read / write String. + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localised style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets / set image for right part of the header. + + + + + Returns or sets the size of the right margin, in inches. + Read/write Double. + + + + + Gets or sets the size of the top margin, in points. + Read/write Double. + + + + + Gets or sets a percentage (between 10 and 400 percent) by which + Microsoft Excel will scale the worksheet for printing. Applies only + to worksheets. Read/write ushort. + + + + + Gets / sets background image. + + + + + Returns page width in points. Read-only. + + + + + Returns page width in points. Read-only. + + + + + Gets / sets horizontal resolution in dpi. + + + + + Gets / sets vertical resolution in dpi. + + + + + Gets values for even page + + + + + Gets values for odd page + + + + + Gets values for first page + + + + + Represents full header string. Read/write. + + + + + Gets footer full string. Read/write. + + + + + Indicates whether the header and footer margins are aligned with page margins. Read/Write Boolean. + + + + + True - The header / footer of the first page is different with other pages.False otherwise. + + + + + True - The header/footer odd pages are differed with even page. False otherwise. + + + + + Indicates whether the header and footer are scaled with document scaling.Read/Write Boolean. + + + + + Represents full even header string. Read/Write + + + + + Reoresents full even footer string. Read/Write + + + + + Represents full first header string. Read/Write + + + + + Represents full first footer string. Read/Write + + + + + Returns type code of the biff storage. Read-only. + + + + + Returns code of the biff storage. Read-only. + + + + + Indicates whether data array is required by this record. + + + + + Indicates record position in stream. This is a utility member of class and + is used only in the serialization process. Does not influence the data. + + + + + Set indexes as constants. + + + + + Left part of header or footer formatting. + + + + + Center part of header or footer formatting. + + + + + Right part of header or footer formatting. + + + + + Left part of even header or footer formatting. + + + + + Center part of even header or footer formatting. + + + + + Right part of even header or footer formatting. + + + + + Left part of first header or footer formatting. + + + + + Center part of first header or footer formatting. + + + + + Right part of first header or footer formatting. + + + + + This class contains size of the paper. + + + + + Paper width in points. + + + + + Paper height in points. + + + + + Default constructor. To prevent creation without arguments. + + + + + Initializes new instance of paper size entry. + + Paper width. + Paper height. + Units in which width and height are set. + + + + Represent page setup options for the chart sheet. + + + + + Gets or sets the number of pages tall the worksheet will be scaled + to when it is printed. Applies only to worksheets. + + + + + Gets or sets the number of pages wide the worksheet will be scaled + to when it is printed. Applies only to worksheets. + + + + + Informs how chart should be printed. + + + + + Sets application and parent fields. + + Application object for the page setup. + Parent object for the page setup. + + + + Recovers page setup from the stream and sets its application and parent fields. + The current record in the stream must be the PrintHeadersRecord. + + Application object for the page setup. + Parent object for the page setup. + BiffReader that contains page setup records. + + + + Recovers Page setup from the Biff Records array starting from position. + + Application object for the page setup. + Parent object for the page setup. + Array of Biff Records that contains all needed records. + Position of PrintHeadersRecord in the array. + + + + Recovers Page setup from the Biff Records list starting from position. + + Application object for the page setup. + Parent object for the page setup. + List which contains Biff Records. + Position of PrintHeadersRecord in the array. + + + + Parses record. + + Record to parse. + True if record was successfully parsed, false otherwise. + + + + Recovers page setup from the stream, first record must be PrintHeadersRecord. + + Stream that contains all needed records. + + + + Serializes some records after main page setup block. + + OffsetArrayList to serialize into. + + + + Clone current Record. + + Parent object for create new instance. + Returns clone of current object. + + + + Returns or sets the number of pages tall the worksheet will be scaled + to when it is printed. Applies only to worksheets. Read / write Boolean. + + + + + Returns or sets the number of pages wide the worksheet will be scaled + to when it is printed. Applies only to worksheets. Read / write Boolean. + + + + + Represents ChartParentAxis record and subrecords. + + + + + Represents chartAxisParent record. + + + + + Represents chart pos record. + + + + + Represents chart category axis. + + + + + Represents Chart value axis. + + + + + Represents Chart series axis. + + + + + Represents parent chart. + + + + + Represents formats coll. + + + + + Creates new instance of chart parent axis. + + Application object. + Parent object. + + + + Creates new instance of chart parent axis. + + Application object. + Parent object. + If true - creates primary axis; otherwise - secondary. + + + + Finds all parent objects. + + + + + Parses parent axis impl. + + Record storage. + Position in storage. + + + + Parsers category, value, series axis. + + Records storage. + Position in storage. + + + + Parses chart text. + + Record storage. + Position in storage. + + + + Parses chart format. + + Record storage. + Position in storage. + + + + Serialize current object. + + Record storage to serialize. + + + + Creates global format collection. + + + + + Using for creating secondary axis in Series type change. + + Value indicating whether to create new axis. + + + + Clones current object. + + Parent object. + Dictionary with new font indexes. + Dictionary with new sheet names. + Returns cloned object. + + + + Clears all walls, floor, gridLines. + + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + This method is called during dispose operation. + + + + + Represents chartAxisParent record. + + + + + Returns collection that contain chart format. Read-only. + + + + + If true this axis is primary axis; otherwise false. Read-only. + + + + + Gets or sets ChartCategoryAxis. + + + + + Gets or sets ValueAxis. + + + + + Gets or sets series axis. + + + + + Returns parent chart. Read-only. + + + + + Represents formats collection. Read-only. + + + + + Represents chart plot area object. + + + + + Represents chart plot area record. + + + + + Represents Excel 2007 layout data + + + + + Creates new instance. + + Represents current application + Represents parent object. + + + + Creates new instance. + + Represents current application + Represents parent object. + Represents chart type. + + + + Parses new instance from stg stream. + + Represents current application + Represents parent object. + Represents record storage. + Represents position in storage. + + + + Parses from stg stream. + + Record storage. + Represents position in storage. + + + + Serialize current records to stg stream. + + Represents list of records to serialize into. + + + + Gets or sets Excel 2007 layout data + + + + + Return attached label layout plot area record. Read-only + + + + + ChartSerieDataFormatImpl class. + + + + + Represents formatting options for the series data. + + + + + Gets the area properties of the chart. Read-only. + + + The following code illustrates how to access properties and set color to + property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set interior + IChartInterior interior = chart.Series[0].SerieFormat.AreaProperties; + + //Set color + interior.ForegroundColorIndex = ExcelKnownColors.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the base shape used with the 3-D bar or column chart. + + + By default is set to . Here for example, we set + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Bar_Stacked_3D; + + //Set Bar shape base + chart.Series[0].SerieFormat.BarShapeBase = ExcelBaseFormat.Circle; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents the top shape used with the 3-D bar or column chart. + + + By default is set to . Here for example, we set + to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Bar_Stacked_3D; + + //Set Bar shape base + chart.Series[0].SerieFormat.BarShapeTop = ExcelTopFormat.Sharp; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the marker fill color. + + + The following code illustrates how to set color to markers in charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set marker style + format.MarkerStyle = ExcelChartMarkerType.Circle; + + //Set color + format.MarkerBackgroundColor = System.Drawing.Color.Red; + format.MarkerForegroundColor = System.Drawing.Color.Black; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the marker fill color. + + + The following code illustrates how to set color for markers in charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set marker style + format.MarkerStyle = ExcelChartMarkerType.Circle; + + //Set color + format.MarkerBackgroundColor = System.Drawing.Color.Red; + format.MarkerForegroundColor = System.Drawing.Color.Black; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the marker style for a point or series in a line chart, scatter chart, or radar chart. + + + The following code illustrates how marker style can be applied to charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set marker style + format.MarkerStyle = ExcelChartMarkerType.Star; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the index of marker fill color from predefined colors (). + + + The following code illustrates how to set a color from enumeration to marker applied. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set marker style + format.MarkerStyle = ExcelChartMarkerType.Circle; + + //Set color + format.MarkerBackgroundColorIndex = ExcelKnownColors.Red; + format.MarkerForegroundColorIndex = ExcelKnownColors.Black; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the index of marker fill color from predefined colors (). + + + The following code illustrates how to set a color from enumeration to marker applied. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set marker style + format.MarkerStyle = ExcelChartMarkerType.Circle; + + //Set color + format.MarkerBackgroundColorIndex = ExcelKnownColors.Red; + format.MarkerForegroundColorIndex = ExcelKnownColors.Black; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the size of markers. + + + The following code illustrates how to set for applied markers in charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set marker style + format.MarkerStyle = ExcelChartMarkerType.Circle; + + //Set marker size + format.MarkerSize = 10; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the series has auto marker. otherwise False. + + + The following code illustrates how property can be used. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["D1"].Text = "Apr"; + sheet.Range["E1"].Text = "May"; + sheet.Range["F1"].Text = "Jun"; + sheet.Range["A2"].Value = "5"; + sheet.Range["B2"].Value = "21"; + sheet.Range["C2"].Value = "15"; + sheet.Range["D2"].Value = "12"; + sheet.Range["E2"].Value = "28"; + sheet.Range["F2"].Value = "9"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:F2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line_Markers; + + //Set serie data format + IChartSerieDataFormat format = chart.Series[0].DataPoints.DefaultDataPoint.DataFormat; + + //Check auto marker + Console.Write(format.IsAutoMarker); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Gets or sets the distance of pie slice from center of pie. + + + The following code illustrates how to set property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Pie; + + //Set percent + chart.Series[0].SerieFormat.Percent = 30; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True to draw bubbles with 3D effects. otherwise False. + + + The following code illustrates how property can be used. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value = "50"; + sheet.Range["B1"].Value = "60"; + sheet.Range["C1"].Value = "5"; + sheet.Range["A2"].Value = "1"; + sheet.Range["B2"].Value = "4"; + sheet.Range["C2"].Value = "2"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Bubble_3D; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Check type + Console.WriteLine(format.Is3DBubbles); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Gets the common series options. Read-only. + + + The following code illustrates how can be set by accessing property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Stacked_3D; + + //Set common serie options + IChartFormat commonSerieOptions = chart.Series[0].SerieFormat.CommonSerieOptions; + + //Set Gap width + commonSerieOptions.GapWidth = 400; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the marker is supported by this chart/series. otherwise False. Read-only. + + + The following code illustrates how to access the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "50"; + sheet.Range["B2"].Value = "60"; + sheet.Range["C2"].Value = "5"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Pie; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Check marker support + Console.WriteLine(format.IsMarkerSupported); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + + + + + + Gets / Sets the Display label position in Tree map chart + + + For chart by default is set to . Here for example, we set + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + + sheet.Range["A1"].Text = "Fall"; + sheet.Range["B1"].Text = "Month"; + sheet.Range["C1"].Text = "Total"; + sheet.Range["A2:A4"].Text = "Quarter1"; + sheet.Range["A5:A7"].Text = "Quarter2"; + sheet.Range["B2"].Text = "Jan"; + sheet.Range["B3"].Text = "Feb"; + sheet.Range["B4"].Text = "Mar"; + sheet.Range["B5"].Text = "Apr"; + sheet.Range["B6"].Text = "May"; + sheet.Range["B7"].Text = "Jun"; + sheet.Range["C2"].Value = "10"; + sheet.Range["C3"].Value = "20"; + sheet.Range["C4"].Value = "30"; + sheet.Range["C5"].Value = "35"; + sheet.Range["C6"].Value = "25"; + sheet.Range["C7"].Value = "15"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.TreeMap; + + //Set range + chart.DataRange = sheet.Range["A1:C7"]; + + //Set chart format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set label option + format.TreeMapLabelOption = ExcelTreeMapLabelOption.Banner; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets / Sets a boolean value indicating whether to display + Connector Lines between data points + + Applies only to Waterfall Charts + + The following code illustrates how to set connector line visibility for chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.WaterFall; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set visibility + format.ShowConnectorLines = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets / Sets a boolean value indicating whether to display Mean Line in chart + + + The following code illustrates how to set the visibility of mean lines in chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.BoxAndWhisker; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set visibility + format.ShowMeanLine = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets / Sets a boolean value indicating whether to display Mean Marker in chart. + + + The following code illustrates how to set the visibility of mean markers in chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.BoxAndWhisker; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set visibility + format.ShowMeanMarkers = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets / Sets a boolean value indicating whether to display Inner Points in chart. + + + The following code illustrates how to set the visibility of inner points in chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.ImportDataTable(GetData(), true, 1, 1); + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.BoxAndWhisker; + + //Set range + chart.DataRange = sheet.Range["B1:C17"]; + + //Set serie data format + IChartSerieDataFormat format = chart.Series[0].DataPoints.DefaultDataPoint.DataFormat; + + //Set ShowInnerPoints + format.ShowInnerPoints = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + System.Data.DataTable GetData() + { + System.Data.DataTable dt = new System.Data.DataTable(); + dt.Columns.Add("Book ID"); + dt.Columns.Add("Category"); + dt.Columns.Add("Price"); + dt.Rows.Add("SBA2465", "Children's", 26); + dt.Rows.Add("SBA3222", "Children's", 8); + dt.Rows.Add("SBA2391", "Children's", 9); + dt.Rows.Add("SBA3823", "Children's", 17); + dt.Rows.Add("SBA3197", "Children's", 32); + dt.Rows.Add("SBA1160", "Romance", 34); + dt.Rows.Add("SBA3092", "Romance", 20); + dt.Rows.Add("SBA1016", "Romance", 5); + dt.Rows.Add("SBA3266", "Romance", 12); + dt.Rows.Add("SBA3381", "Romance", 13); + dt.Rows.Add("SBA1870", "Romance", 4); + dt.Rows.Add("SBA2072", "Mystery", 61); + dt.Rows.Add("SBA3969", "Mystery", 15); + dt.Rows.Add("SBA3124", "Mystery", 40); + dt.Rows.Add("SBA3693", "Mystery", 19); + dt.Rows.Add("SBA2543", "Mystery", 72); + return dt; + } + + + + + + Gets / Sets a boolean value indicating whether to display Outlier Points in chart. + + + The following code illustrates how to set the visibility of outlier points in chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.ImportDataTable(GetData(), true, 1, 1); + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.BoxAndWhisker; + + //Set range + chart.DataRange = sheet.Range["B1:C17"]; + + //Set serie data format + IChartSerieDataFormat format = chart.Series[0].DataPoints.DefaultDataPoint.DataFormat; + + //Set ShowOutlierPoints + format.ShowOutlierPoints = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + System.Data.DataTable GetData() + { + System.Data.DataTable dt = new System.Data.DataTable(); + dt.Columns.Add("Book ID"); + dt.Columns.Add("Category"); + dt.Columns.Add("Price"); + dt.Rows.Add("SBA2465", "Children's", 26); + dt.Rows.Add("SBA3222", "Children's", 8); + dt.Rows.Add("SBA2391", "Children's", 9); + dt.Rows.Add("SBA3823", "Children's", 17); + dt.Rows.Add("SBA3197", "Children's", 32); + dt.Rows.Add("SBA1160", "Romance", 34); + dt.Rows.Add("SBA3092", "Romance", 20); + dt.Rows.Add("SBA1016", "Romance", 5); + dt.Rows.Add("SBA3266", "Romance", 12); + dt.Rows.Add("SBA3381", "Romance", 13); + dt.Rows.Add("SBA1870", "Romance", 4); + dt.Rows.Add("SBA2072", "Mystery", 61); + dt.Rows.Add("SBA3969", "Mystery", 15); + dt.Rows.Add("SBA3124", "Mystery", 40); + dt.Rows.Add("SBA3693", "Mystery", 19); + dt.Rows.Add("SBA2543", "Mystery", 72); + return dt; + } + + + + + + Gets / Sets whether the Quartile calculation is or . + + Applies only to Charts + + By default for is set to . + Here for example, we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.ImportDataTable(GetData(), true, 1, 1); + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.BoxAndWhisker; + + //Set range + chart.DataRange = sheet.Range["B1:C17"]; + + //Set serie data format + IChartSerieDataFormat format = chart.Series[0].DataPoints.DefaultDataPoint.DataFormat; + + //Set quartile calculation type + format.QuartileCalculationType = ExcelQuartileCalculation.InclusiveMedian; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + System.Data.DataTable GetData() + { + System.Data.DataTable dt = new System.Data.DataTable(); + dt.Columns.Add("Book ID"); + dt.Columns.Add("Category"); + dt.Columns.Add("Price"); + dt.Rows.Add("SBA2465", "Children's", 26); + dt.Rows.Add("SBA3222", "Children's", 8); + dt.Rows.Add("SBA2391", "Children's", 9); + dt.Rows.Add("SBA3823", "Children's", 17); + dt.Rows.Add("SBA3197", "Children's", 32); + dt.Rows.Add("SBA1160", "Romance", 34); + dt.Rows.Add("SBA3092", "Romance", 20); + dt.Rows.Add("SBA1016", "Romance", 5); + dt.Rows.Add("SBA3266", "Romance", 12); + dt.Rows.Add("SBA3381", "Romance", 13); + dt.Rows.Add("SBA1870", "Romance", 4); + dt.Rows.Add("SBA2072", "Mystery", 61); + dt.Rows.Add("SBA3969", "Mystery", 15); + dt.Rows.Add("SBA3124", "Mystery", 40); + dt.Rows.Add("SBA3693", "Mystery", 19); + dt.Rows.Add("SBA2543", "Mystery", 72); + return dt; + } + + + + + + Represents None color index. + + + + + Represents marker size mull prefix. + + + + + Represents start color. + + + + + Represents start pie type. + + + + + Represents start doughnut type. + + + + + Represents start surface type. + + + + + Represents start line type. + + + + + Represents start scatter type. + + + + + Represents default line size in marker record. + + + + + Represents default line size in marker record. + + + + + Represents default line color. + + + + + Represents default index for marker record. + + + + + Represents default color in marker record. + + + + + Represents types of chart that support data format properties. + + + + + Main series data format record. + + + + + 3-D data format. + + + + + Pie format. + + + + + Represents the 3D features + + + + + Represents the Chart Shadow + + + + + Marker format. + + + + + Attached label. + + + + + Represents the beginning of a collection of records + + + + + Represents the shape formatting properties for chart elements + + + + + Represents the end of a collection of records + + + + + Attached label layout + + + + + Series format. + + + + + Represents default data point. + + + + + Parent series. + + + + + Parent chart format. + + + + + Parent chart. + + + + + Represents border. + + + + + Represents chart area properties. + + + + + Represents if DataFormat is Formatted. + + + + + Represents fill properties. + + + + + Object that holds marker background color. + + + + + Object that holds marker foreground color. + + + + + Preserved marker gradient data. + + + + + Represents the marker fill transparency + + + + + Represents whether the marker properties exists or not + + + + + Represents whether the Barshape exists or not + + + + + Represents whether the data point is parsed or not + + + + + Represents whether the MarkerColor is Changed or Not + + + + + Indicates whether the MarkerColor is Solid Fill or Not. + + + + + Represents whether the connector lines shown between data points + Used only in waterfall Chart + + + + + It represents the label position in tree map chart + + + + + Object that holds the information required for Box and whisker series + + + + + Object that holds the information required for Histogram series + + + + + Used to store the border width value for the marker + Default value is 0.75 + + + + + Used to check whether automatic color is set for marker. + + + + + Represents whether the color is inverted. false by default + + + + + Creates series and set its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + + + + Initializes marker color variables. + + + + + Searches for all necessary parents. + + + + + Parses data format. + + Array with data format records. + Position of the first data format record. + Position after the last data format record. + + + + Serializes data format. + + Represents record list to serialize into. + + + + Sets default values. + + + + + Sets 3D data format to the default state. + + + + + Sets format fields to Null. + + + + + Clone current instance. + + Parent object. + Return cloned object. + + + + Copy the Back and Fore ground color objects from the seriedataformat + + + + + + Set the default values for the records related to serie formats + + + + + Updates Series index. + + + + + Updates data format in data points. + + + + + Changes data format to create radar chart. + + Type to change. + + + + Changes data format to create scatter chart. + + Type to change. + + + + Changes data format to create line chart. + + Type to change. + + + + Updates bar column properties in series and chartformat points. + + If true updates data format top property; otherwise data format base. + + + + Updates line color for line, radar, skater Series data format. + + Returns updated color index or -1. + + + + Updates color for line, markers and series. + + Represents series to update color. + Represents data point to update color. + Returns updated color index. + + + + Updates series formats for chartformat object. + + + + + Checks for default record. + + Record to check. + Returns true if not equal; otherwise false. + + + + Clears sub data formats on property change. + + + + + Validate marker properties. + + If true than marker properties valid for this chart type; otherwise false. + + + + Indicates whether interior object is supported. Read-only. + + Chart type to check whether interior object is supported. + Value indicating whether interior object is supported. + + + + Indicates whether border object is supported. Read-only. + + Chart type to check whether border is supported. + Vale indicating whether border is supported. + + + + Event handler for marker foreground color change. + + + + + Event handler for marker background color change. + + + + + Compares the data points color format + + Data point to be compared + bool value + + + + + Gets/sets value indicating whether line properties are created. + + + + + Gets a value indicating whether this instance has shadow properties. + + + true if this instance has shadow properties; otherwise, false. + + + + + Gets the chart3 D options. + + The chart3 D options. + + + + This property Indicates whether the Shadow object has been created(which includes the 3D properties) + + + + + Gets/sets value indicating whether interior object was created. + + + + + Gets the shadow. + + + + + Returns object, that represents line properties. Read-only. + + + + + Returns object, that represents area properties. Read-only. + + + + + Represents the base data format. + + + + + Represents the top data format. + + + + + Foreground color: RGB value (high byte = 0). + + + + + Background color: RGB value (high byte = 0). + + + + + Type of marker. + + + + + Index to color of marker border. + + + + + Index to color of marker fill. + + + + + Size of markers. + + + + + Automatic color. + + + + + True = "background = none". + + + + + True = "foreground = none". + + + + + Distance of pie slice from center of pie. + + + + + True if the line series has a smoothed line. + + + + + True to draw bubbles with 3D effects. + + + + + True if this series has a shadow. + + + + + Gets or sets value indicating whether to show label active value. + + + + + Show value as a percent of the total. This bit applies only to pie charts. + + + + + Show category label and value as a percentage (pie charts only). + + + + + Show smoothed line. + + + + + Show category label. + + + + + Show bubble sizes. + + + + + Represents fill options. Read-only. + + + + + Gets value indicating whether chart supports transparency. + + + + + Gets common Series options. Read-only. + + + + + Indicates whether marker is supported by this chart/series. + + + + + Returns object, that represents area properties. Read-only. + + + + + Indicates whether interior object is supported. Read-only. + + + + + Indicates whether border object is supported. Read-only. + + + + + Indicates whether the marker properties exists or not + + + + + Indicates whether the Barshape exists or not + + + + + Gets/ Sets the histogram axis format property for individual series + + + + + Gets or sets a boolean value indicating whether to display + Connector Lines between data points + + Applies only to Waterfall Charts + + + + Gets / Sets the Display label position in Tree map chart + + By Default the Label is overlapped + + + + Gets or sets a boolean value indicating whether to display + Mean Line in Box and Whisker chart + + + + + Gets or sets a boolean value indicating whether to display + Mean Marker in Box and Whisker chart + + + + + Gets or sets a boolean value indicating whether to display + Inner Points in Box and Whisker chart + + + + + Gets or sets a boolean value indicating whether to display + Outlier Points in Box and Whisker chart + + + + + Gets / Sets whether the Quartile calculation is Exclusive or Inclusive + + Applies only to Box and Whisker Charts + + + + Get or Set the isBinning by Category member value + + + + + Get or Set the is Automatic Bin member value + + + + + Get or Set the number of Bins member value + + + + + Get or Set the Bin width member value + + + + + Get or Set the overflow bin member value + + + + + Get or Set the underflow bin member value + + + + + Get or Set the value for interval is closed in left or right + + + + + Returns parent Series. Read-only. + + + + + Returns data format main record. + + + + + Returns pie format record. Read-only. + + + + + Returns marker format main record. Read-only. + + + + + Returns 3dData format main record. Read-only. + + + + + Returns Series format main record. Read-only. + + + + + Returns attached label record. Read-only. + + + + + Return attached label layout record. Read-only + + + + + If line not null - returns true; otherwise - false. Read-only. + + + + + If marker is not null returns marker format main record otherwise null. Read-only. + + + + + If 3dData not Null returns 3DData format main record; otherwise - returns null. Read-only. + + + + + if SerieFormat not Null returns Series format main record; otherwise - returns null. Read-only. + + + + + Returns pie format or null. Read-only. + + + + + Gets or sets Series number. + + + + + If true - format has marker; otherwise false. Read-only. + + + + + If true - format has line; otherwise false. Read-only. + + + + + If true - format has smoothed line; otherwise false. Read-only. + + + + + Gets Series type. Read-only. + + + + + Indicate if data format is formatted. + + + + + Represents parent chart. Read-only. + + + + + Gets object that holds marker background color. + + + + + Gets object that holds marker foreground color. + + + + + Gets or sets the transparency of the line marker. + + The transparency. + + + + Gets or sets the transparency of the line marker fill. + + The transparency. + + + + Gets or sets the marker line stream. + + + + + Gets or sets whether the data point is parsed or not. + If parsed, it will be serialized. + + + + + Indicates whether the MarkerColor is Changed or Not. + + + + + Indicates whether the MarkerColor is Solid Fill or Not. + + + + + Gets / Sets the line width of the marker + Stored on parsing only for Chart to Image Conversion + + + + + Checks whether Automatic color is set for marker. + + + + + Indicates whether the default properties are exist or not. + + + + + True if the RGB color values are inverted in the binary records else returns false. + + + + + Represents foreground color. + + + + + Represents background color. + + + + + Represents pattern. + + + + + Indicates, if automatic format is used for area. + + + + + Represents visibility. + + + + + This class represents ChartSeries object. + + + + + Represents a series in the chart. + + + + + Creates in the specified axis. + + If true - on Y axis; otherwise on X axis. + for the . + + The following code illustrates how to set on Y-axis of a particular . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set error bar + chart.Series[0].ErrorBar(true); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Creates in the specified axis with specified type. + + If true - on Y axis; otherwise on X axis. + Represents type. + for the . + + The following code illustrates how to set with on Y-axis of a + particular . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set error bar + chart.Series[0].ErrorBar(true, ExcelErrorBarInclude.Plus); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Creates of specified . + + If true - on Y axis; otherwise on X axis. + Represents type. + Represents . + for the . + + The following code illustrates how to set with + and on Y-axis of a particular . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set error bar + chart.Series[0].ErrorBar(true, ExcelErrorBarInclude.Plus, ExcelErrorBarType.Percentage); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Creates of specified with the specified number value. + + If true - on Y axis; otherwise on X axis. + Represents type. + Represents . + Represents number value for the applicable . + for the . + The number value is applicable for Percentage, Fixed and StandardDeviation error bar types. + + The following code illustrates how to set with + , and number value of "50" on Y-axis of a particular . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set error bar + chart.Series[0].ErrorBar(true, ExcelErrorBarInclude.Plus, ExcelErrorBarType.Percentage, 50); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Creates custom type. + + If true - on Y axis; otherwise on X axis. + Represents . + Represents . + for the . + + The following code illustrates how an can be created on X-axis with + and . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + sheet.Range["A3"].Value = "1"; + sheet.Range["B3"].Value = "1"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Scatter_Line; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set error bar + chart.Series[0].ErrorBar(false, sheet.Range["A3"], sheet.Range["B3"]); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value to specify the series to invert its colors if the value is negative. The default value is true. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "-10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.Series[0].SerieType = ExcelChartType.Column_Cluster; + chart.Series[0].InvertIfNegative =true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value to specify the series to invert its colors if the value is negative. + + + The following code illustrates how to set values for in charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "-10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.Series[0].SerieType = ExcelChartType.Column_Cluster; + chart.Series[0].InvertIfNegative =true; + chart.Series[0].InvertIfNegativeColor= Color.Red; + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the series values. + + + The following code illustrates how to set values for in charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add(); + + //Set category labels and values + serie.CategoryLabels = sheet.Range["A1:C1"]; + serie.Values = sheet.Range["A2:C2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets category labels for the series. + + + The following code illustrates how to set category labels for in charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add(); + + //Set category labels and values + serie.CategoryLabels = sheet.Range["A1:C1"]; + serie.Values = sheet.Range["A2:C2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets series values of the bubble chart. + + + For bubble chart both horizontal and vertical axes are value axes so for the first value axis we set serie value to property + and the next value axis we make use of property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value = "50"; + sheet.Range["B1"].Value = "60"; + sheet.Range["C1"].Value = "5"; + sheet.Range["A2"].Value = "1"; + sheet.Range["B2"].Value = "4"; + sheet.Range["C2"].Value = "2"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add(ExcelChartType.Bubble); + + //Set values + serie.Values = sheet.Range["A1:C1"]; + + //Set bubble chart range + serie.Bubbles = sheet.Range["A2:C2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the name of the series. + + + The following code illustrates how to access the name of the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add("BarSerie"); + + //Set category labels and values + serie.CategoryLabels = sheet.Range["A1:C1"]; + serie.Values = sheet.Range["A2:C2"]; + + //Get Serie name + Console.Write(serie.Name); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //BarSerie + + + + + + Gets or sets the series name range. + + + The following code illustrates how to access the name range of a particular in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Width"; + sheet.Range["A2"].Text = "Height"; + sheet.Range["B1"].Value = "50"; + sheet.Range["C1"].Value = "60"; + sheet.Range["D1"].Value = "5"; + sheet.Range["B2"].Value = "1"; + sheet.Range["C2"].Value = "4"; + sheet.Range["D2"].Value = "2"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Bubble; + + //Set range + chart.DataRange = sheet["A1:D2"]; + + //Get name range + Console.Write(chart.Series[0].NameRange.AddressLocal); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //A1 + + + + + + Gets or sets a boolean value indicating whether to use primary axis + for series drawing. False to use secondary axis. + + + The following code illustrates how the secondary axis can be used by disabling primary axis. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "100"; + sheet.Range["B3"].Value = "200"; + sheet.Range["C3"].Value = "300"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set secondary axis + IChartSerie serie = chart.Series[1]; + serie.UsePrimaryAxis = false; + chart.SecondaryCategoryAxis.Visible = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection in the series. Read-only. + + + The following code illustrates how to access the collection from . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set data points + IChartDataPoints dataPoints = chart.Series[0].DataPoints; + + //Set data labels value visibility + dataPoints.DefaultDataPoint.DataLabels.IsValue = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the of the series. + + + The following code illustrates how to access the from . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set marker style + format.MarkerStyle = ExcelChartMarkerType.Star; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the series type. + + + property can be used to create a combination chart by adding more series to the charts. Here for example, we create a + chart. By default the will be , here we change it by setting + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.Series[0].SerieType = ExcelChartType.Line; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the directly entered series values. + + The following code illustrates how series data can be directly given for charts. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add(ExcelChartType.Pie); + + //Set direct values + serie.EnteredDirectlyValues = new object[] { 2000, 1000, 1000 }; + + //Set direct category label + serie.EnteredDirectlyCategoryLabels = new object[] { "Total Income", "Expenses", "Profit" }; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the directly entered category values. + + The following code illustrates how series category labels can be directly given for charts. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add(ExcelChartType.Pie); + + //Set direct values + serie.EnteredDirectlyValues = new object[] { 2000, 1000, 1000 }; + + //Set direct category label + serie.EnteredDirectlyCategoryLabels = new object[] { "Total Income", "Expenses", "Profit" }; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the directly entered series values for chart. + + + The following code illustrates how series data for second value axis of charts can be directly given for charts. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add(ExcelChartType.Bubble); + + //Set direct values + serie.EnteredDirectlyValues = new object[] { 10, 20, 30 }; + + //Set bubble chart direct values + serie.EnteredDirectlyBubbles = new object[] { 1, 4, 2 }; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the error bars on Y-axis. Read-only. + + + The following code illustrates how on Y-axis can be accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Scatter_Line; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set error bar + chart.Series[0].HasErrorBarsY = true; + IChartErrorBars errorBar = chart.Series[0].ErrorBarsY; + + //Set error bar type + errorBar.Type = ExcelErrorBarType.Percentage; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if series contains Y error bars. otherwise False. + + The following code illustrates how property can be used. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Scatter_Line; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set error bar + chart.Series[0].HasErrorBarsY = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the error bars on the X-axis. Read-only. + + + The following code illustrates how in X-axis can be accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Scatter_Line; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set error bar + chart.Series[0].HasErrorBarsX = true; + IChartErrorBars errorBar = chart.Series[0].ErrorBarsX; + + //Set error bar type + errorBar.Type = ExcelErrorBarType.Percentage; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if series contains X error bars. otherwise False. + + + The following code illustrates how property can be used. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart type + chart.ChartType = ExcelChartType.Scatter_Line; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set error bar + chart.Series[0].HasErrorBarsX = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the collection of the series. Read-only. + + + The following code illustrates how collection can be accessed from a particular . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set trend line + IChartTrendLines trendLines = chart.Series[0].TrendLines; + IChartTrendLine trendLine = trendLines.Add(ExcelTrendLineType.Linear); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether the series has been filtered out from the chart. + + + By default all the series in the chart are shown because property is set to "false". Here for example, we set first + serie property to "true" so it is filtered out from the chart and it will not be shown in the chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Text = "Apr"; + sheet.Range["B2"].Text = "May"; + sheet.Range["C2"].Text = "Jun"; + + sheet.Range["A4"].Value = "10"; + sheet.Range["B4"].Value = "20"; + sheet.Range["C4"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "10"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C4"]; + + //Set chart type + chart.ChartType = ExcelChartType.Line; + + //Set IsFiltered + chart.Series[0].IsFiltered = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the Pareto line on the Pareto charts. Read-only. + + + The following code illustrates how to set pareto line properties of the chart. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set chart format + chart.ChartType = ExcelChartType.Pareto; + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set pareto line format + IChartFrameFormat format = chart.Series[0].ParetoLineFormat; + format.LineProperties.ColorIndex = ExcelKnownColors.Red; + + //Save the workbook + MemoryStream stream = new MemoryStream(); + workbook.SaveAs(stream); + } + + + + + + + + + + + + + + + + + + Index for format that corresponds to all points in the Series. + + + + + Represents default point number for surface chart type. + + + + + Represents default chart group. + + + + + Represents start radar type. + + + + + Represents true as string. + + + + + Represents false as string. + + + + + Represent the value form cells range values collection in datalabels. + + + + + Values range for the series. + + + + + Category labels for the series. + + + + + Bubble sizes for the series. + + + + + Name of the series. + + + + + Dictionary IndexIdentifier-to-ChartAiRecord + + + + + Index of the chart group this axis belongs to. + + + + + Parent workbook for the series. + + + + + ChartSeries record describing this series. + + + + + Parent chart for the series. + + + + + Parent series collection. + + + + + Index of the series. + + + + + Drawing order of the series. + + + + + Indicates whether series name has default value. + + + + + Data points collection. + + + + + Represents Series type. + + + + + Represents array of number or label records for value range. + + + + + Represents array of number or label records for category range. + + + + + Represents array of number or label records for bubble range. + + + + + Represents array of values for value range. + + + + + Represents array of values for category range. + + + + + Represents array of values for bubble range. + + + + + Represents series name range. + + + + + Represents not default series text for first Series on parsing. + + + + + Represents Y error bar. + + + + + Represents X error bar. + + + + + Represents trend line collection. + + + + + This element specifies the series + to invert its colors if the value is negative. + + + + + Represents the series name cache. + + + + + Represents the string reference formula + + + + + Represents the number reference formula + + + + + Represents the number reference formula + + + + + Preserve the drop lines + + + + + Reprsent the Filter option + + + + + Reprsent the category filter range + + + + + Reprsent the category value Range + + + + + Specifies the kind of grouping for a column, line or area chart + + + + + Represents chart gapWidth for the first series + + + + + Represents chart overlap for the first series + + + + + Represents whether to serialize gapwidth + + + + + Represents the stream for preserving the Extents node + + + + + Represents the invertifnegative color. + + + + + Represents the multi level string cache. + + + + + Represents the multi level cache point count. + + + + + Represents whether the series are reversed. + + + + + Indicates the format index of chart pareto line + Used only in loaded chart + + + + + Indicates whether the pareto line is hidden + + + + + Objects that holds the pareto line settings + + + + + Boolean value indicates category values interpreted in row-wise + + + + + Boolean value indicates series values interpreted in row-wise + + + + + format code used in series values + + + + + format code used in category values + + + + + ShowLeaderLines for the series. + + + + + Border settings for ShowleaderLines. + + + + + Creates series and set its Application and Parent + properties to specified values. + + Application object for the chart. + Parent object for the chart. + + + + Creates series from the array of BiffRecords. + + Application object for the series. + Parent object for the series. + Array of BiffRecords with series data. + Position of the first series record. + + + + Creates error bar object. + + If true - on Y axis; otherwise on X axis. + Return error bar object. + + + + Creates error bar object. + + If true - on Y axis; otherwise on X axis. + Represents include type. + Return error bar object. + + + + Creates error bar object. + + If true - on Y axis; otherwise on X axis. + Represents include type. + Represents error bar type. + Return error bar object. + + + + Creates error bar object. + + If true - on Y axis; otherwise on X axis. + Represents include type. + Represents error bar type. + Represents number value. + Returns error bar object. + + + + Sets custom error bar type. + + If true - on Y axis; otherwise on X axis. + Represents plus range. + Represents minus range. + Returns error bar object. + + + + Parses series data. + + Array of biff records that contains series data. + Position of the ChartSeries record in the array. + + Specified record is not ChartSeries record + or if next record is not Begin record. + + + + + Parses ChartSeries record. + + Record to parse. + + + + Parses ChartAI record. + + Array of BiffRecords that contains ChartAi record. + Position of the record in the data array. + + When specified record is not ChartAi record. + + + When ChartAI record with the same IndexIdentifier was + already added to the collection. + + + + + Parses ChartSertocrt record. + + Array of BiffRecords that contains necessary record. + + Position of the ChartSertocrt record in the data array. + + + + + Parses series title. + + ChartAi record describing chart title. + Array of BiffRecords that contains necessary records. + Position of the ChartAi record in the data array. + + + + Parses legend entry from biff stream. + + Array of BiffRecords that contains ChartAi record. + Position of the record in the data array. + + + + Parses error bars. + + Represents data holder. + + + + Set leader lines. + + bool value to set. + + + + Searches for all needed parent objects. + + + When parents cannot be found. + + + + + Initializes m_hashAI member. + + + + + Initializes all internal collections. + + + + + Sets data format. + + Data format to set. + + + + Return Chart3DDataFormat record for this series. + + Chart3DDataFormat record for this series. + + + + This method is called when the name of the series needs to be changed. + + New name of the series. + + + + Raises ValueRangeChanged event and sets new value to the ValueRange. + + + + + Sets new value to the CategoryRange. + + + + + Sets new value to the BubbleRange. + + + + + Clone current instance. + + Parent object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Cloned series. + + + + Update the name index of define names + + define name of the range + source workbook of the chart + + + + Gets worksheet name. + + Address of Range. + Returns name of parent worksheet. + + + + Changes axis. + + If true - to primary; otherwise - to secondary. + + + + Returns new series order. + + If true - to primary; otherwise - to secondary. + A new series order. + + + + Add entered record by si index. + + si index. + Record to add. + + + + Gets array by siIndex. + + Si index. + Returns array by si index. + + + + Gets values of entered directly values. + + Record storage. + Returns just created array of values. + + + + Gets type of Entered directly values. + + Array with entered directly values. + If true - type is Number; otherwise label. + + + + Gets array of records by values. + + If true - values type is number; otherwise - string. + Array list with values. + Returns created array with records. + + + + Updates in entered directly values Series index. + + Array to update. + + + + Detects name. + + Returns detected Series name. + + + + Gets series value from Range + + Series range + + + + + Gets relative cell. + + Row + Column + Range + Range + + + + Gets left adjecent cell. + + Range + + + + Gets text range value for Series name that supports cell, or row, or column. + + Range to gets text value. + Value representing text range. + + + + Sets default Series name. + + Represents Series name. + boolean value indicates whether to clear the name range of series + + + + Gets Series name range. + + Returns range, that represents Series name range. Can be null. + + + + Detects Series type. + + Extracted series type. + + + + Detects Series type. + + Detected string representationg of the series type. + + + + Detects Series type. + + Extracted series type. + + + + Detects the type of the series when describing record is ChartBar. + + Series format. + Returns series type. + + + + Gets bar start string. + + Format for detect start string. + Returns start string. + + + + Detects the type of the series when describing record is ChartPie. + + Series format. + Returns series type. + + + + Detects the type of the series when describing record is ChartArea. + + Series format. + Returns series type. + + + + Detects the type of the series when describing record is ChartSurface. + + Series format. + Returns series type. + + + + Detects the type of the series when describing record is ChartBoppop. + + Series format. + Returns series type. + + + + Detects the type of the series when describing record is ChartRadar. + + Series format. + Returns series type. + + + + Detects the type of the series when describing record is Chartline. + + Series format. + Returns series type. + + + + Detects the type of the series when describing record is ChartScatter. + + Series format. + Returns series type. + + + + This method changes series type. + + Series type to change to. + Indicates whether this change happens because of series creation process. + + + + This method changes series type. + + Series type to change to. + Indicates whether this change happens because of series creation process. + + + + Calls before series type changed. + + Type to change. + Indicates whether we are in the process of series creation. + Type of the series + Indicates whether the axis changes + + + + Changes not intimate type. + + Type to change. + + + + Checks is types are intimate. If intimate then change chart type. + + Format to change. + Type to change. + Returns true if changed type. otherwise false. + + + + Changes intimate line series. + + Format to change. + Type to change. + TypeToChange string representation. + + + + Initialize hash table for change intimate line type. + + HashTable to initialize. + + + + Changes series in combination charts. + + Type to change. + + + + Finds intimate format by type. + + Type to find. + Returns found format or null. + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Updates formulas after copy operation. + + Record with range info to update. + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + Updated range. + + + + Updates formulas after copy operation. + + Formula token to update. + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + Updated token. + + + + Updates formula token when only part of it was moved. + + Original token. + Source worksheet index. + Rectangle with token range. + Source rectangle. + Destination rectangle. + Token after move operation. + + + + Checks whether the source rectangle contains new range. + + Source Rectangle. + Represents Column Value. + Represents Row Value. + True-if the source rectangle contains range;otherwise False. + + + + Partially removes token. + + Token to shrink + Sheet index. + Range rectangle. + Source rectangle. + Destination rectangle. + Token after shrink operation. + + + + Updates error bars. + + Represents current error bar. + Represents error bar to update. + + + + Gets common series format. + + Returns common series format. + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Cheking whether the last series of the chart have the explosion value + + the boolean value whether chart format have explosion value + + + + Update the row wise or column wise members of chart series for chart Ex + + boolean values indicates whether the property of values need to be changed or not. + + + + Serializes series to the OffsetArrayList. + + OffsetArrayList that will receive records. + + When specified OffsetArrayList is NULL. + + + + + Serializes ChartAi records. + + OffsetArrayList that will receive records. + + + + Sets range value into the ChartAi record. + + ChartAi record that will contain specified range. + Range that will be assigned. + ReferenceType that should be written if range is NULL. + + When specified ChartAi record is NULL. + + + + + Fills and serializes ChartSeries record. + + OffsetArrayList that will receive records. + + + + Checks whether number of items inside single series is correct. + + + + + Serializes data labels data. + + List of biff records to serialize into. + + + + Serializes legend entries. + + Record storage. + + + + Serialize series name. + + Represents record storage. + + + + Reparses method. + + + + + Returns range from ChartAi record. + + ChartAi record that contains range. + Parsed range. + + When chartAi is NULL. + + + + + Gets IRange from current ptg. + + Current ptg. + Returns ptg. + + + + This method is called during dispose operation. + + + + + This event is raised when ValueRange was changed. + + + + + Name of the series. + + + + + Series Name range for the series. + + + + + + Values range for the series. + + + + + Category labels for the series. + + + + + Bubble sizes for the series. + + + + + Synonym for Index property. + + + + + Returns data points collection for the chart series. Read-only. + + + + + Returns format of current Series. + + + + + Represents Series type. + + + + + Indicates whether to use primary axis for series drawing. + + + + + Represents value as entered directly. + + + + + Represents category values as entered directly. + + + + + Represents bubble values as entered directly. + + + + + Gets and sets the value form range cells values collection in datalabels. + + + + + Represents Y error bars. Read-only. + + + + + Indicates if Series contains Y error bars. + + + + + Represents X error bars. Read-only. + + + + + Indicates if Series contains X error bars. + + + + + Represents Series trend lines collection. Read-only. + + + + + Gets or sets the value that represents the kind of grouping for a column, line or area chart + + + + + Gets or sets the value of chart gapWidth of first series + + + + + Gets or sets the value of chart overlap of first series + + + + + Represents whether to serialize gapwidth + + + + + Gets the Pareto line on the Pareto charts. Read-only. + + + + + Gets or Set the ShowLeaderLines if true. + + + + + Gets or Set the LeaderLines border settings. + + + + + This holds cache information of multi level category axis. + + + + + This holds multi level cache point count. + + + + + Represents whether the series are reversed. + + + + + Gets or sets a value to specify the series to invert its colors if the value is negative. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "-10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.Series[0].SerieType = ExcelChartType.Column_Cluster; + chart.Series[0].InvertIfNegative =true; + chart.Series[0].InvertIfNegativeColor= Color.Red; + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + This event is raised when name of the series changes. + + + + + Represents index of the series. + + + + + Represent series is Filter + + + + + Series drawing/settings order.//Number of the series. + + + + + Index of the chart group. + + + + + Returns parent chart. Read-only. + + + + + Indicates whether series has default title. + + + + + Returns number of points in the series. Read-only. + + + + + Returns parent workbook. Read-only. + + + + + Represent the filtered category label range + + + + + Represent the Filtered Category value + + + + + Returns series start type. Read-only. + + + + + Represents not default series text for first series. Read-only. + + + + + Gets parent series collection. Read - only. + + + + + Represents parent chart. Read - only. + + + + + Gets parent workbook. Read - only. + + + + + Indicates whether this is pie series. + + + + + Gets series name or formula value (not actual string value). + + + + + This element specifies the series + to invert its colors if the value is negative. + + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "-10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.Series[0].SerieType = ExcelChartType.Column_Cluster; + chart.Series[0].InvertIfNegative =true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the string reference formula + + + + + Gets or sets the number reference formula + + + + + Gets or sets the number reference formula + + + + + Gets or sets the chart's drop lines property as stream. + TODO: Need to add parsing support for drop lines. Should be removed after adding parsing support. + + + + + Gets/Sets the series name cache. + + + + + Gets / Sets the pareto line is hidden + + + + + Gets / Sets the series is hidden or not + + + + + Gets / Sets the format index of chart pareto line + Used only in loaded chart + + + + + Gets / SetsBoolean value indicates category values interpreted in row-wise + + + + + Gets / SetsBoolean value indicates series values interpreted in row-wise + + + + + Gets / Sets the format code for series values + + + + + Gets / Sets the format code for series categories + + + + + Class used for Chart Series Axis implementation. + + + + + Represents the chart series Axis. + + + + + Represents the number of categories or series between tick-mark labels.[Deprecated] + + + + + Represents the number of categories or series between tick-mark labels. + + + The following code illustrates how to set for . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_3D; + + //Set tick label spacing + chart.PrimarySerieAxis.TickLabelSpacing = 2; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents the number of categories or series between tick marks.[Deprecated] + + + + + Represents the number of categories or series between tick marks. + + + The following code illustrates how to set for . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_3D; + + //Set tick mark spacing + chart.PrimarySerieAxis.TickMarkSpacing = 2; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Specifies maximum spacing value. + + + + + Represents the XmlTkValue of multilevel label is enabled in binary file + + + + + Represents the XmlTkValue of automatic tick label is enabled in binary file + + + + + Catser range record. + + + + + Indicates whether tick label spacing value is automatically evaluated. + + + + + UnknownRecord that describes label intervals of this axis. + + + + + boolean value used for tick label spacing + + + + + Creates axis object. + + Application object for the axis. + Parent object for the axis. + + + + Creates primary axis of specified type. + + Application object for the axis. + Parent object for the axis. + Type of the new axis. + + + + Creates axis of specified type and specified IsPrimary value. + + Application object for the axis. + Parent object for the axis. + Type of the new axis. + + True if primary axis should be created; otherwise False. + + + + + Extracts primary axis from the array of BiffRecords. + + Application object for the axis. + Parent object for the axis. + Array of BiffRecords with axis data. + + Position of the first axis record in the data array. + + + + + Extracts axis from the array of BiffRecords. + + Application object for the axis. + Parent object for the axis. + Array of BiffRecords with axis data. + + Position of the first axis record in the data array. + + + True if it is primary axis; otherwise False. + + + + + Parse max cross. + + Represents MaxCross data. + + + + Parses walls or floors. + + Represents record storage. + Represents position in storage. + + + + Parses data. + + Represents record to parse. + Represents records storage. + Represents position in storage. + + + + Serializes axis. + + OffsetArrayList that will receive all records. + + + + Initializes variables. + + + + + Clone current object. + + Parent object. + Dictionary with new font indexes. + Dictionary with new worksheet names. + Returns cloned object. + + + + Check the CrtmlFrt record whether it have automatic tick labels and multilevel labels + + input record files to be checked + the boolean value indicates it have automatic tick labels and no multilevel labels + + + + Gets or sets whether or not the tick label spacing is automatic. + + + + + Represents the number of categories or series between tick-mark labels. + + + + + Represents the number of categories or series between tick-mark labels. + + + + + Represents the number of categories or series between tick marks. + + + + + Represents the number of categories or series between tick marks. + + + + + Display categories in reverse order. + + + + + Returns title area. Read-only. + + + + + Represents the point on the axis another axis crosses it. + + + + + Value axis crossing: + False if axis crosses mid-category. + True if axis crosses between categories. + + + + + IsLogScale + + + + + Returns or sets the base of the logarithm when you are using log scales. The default value is 10. + + + + + Maximum Value + + + + + Minimum Value + + + + + ChartSeriesCollection - collection of the chart series. + + + + + Represents the collection of chart series. + + + + + Adds a new to collection and Returns it. + + Newly created object. + + The following code illustrates how a can be created and added to collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add(); + + //Set category labels and values + serie.CategoryLabels = sheet.Range["A1:C1"]; + serie.Values = sheet.Range["A2:C2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Adds a new to collection and Returns it. + + Type of new . + Newly created object. + + The following code illustrates how a can be created and added to collection by passing + as a parameter. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add(ExcelChartType.Bar_Clustered); + + //Set category labels and values + serie.CategoryLabels = sheet.Range["A1:C1"]; + serie.Values = sheet.Range["A2:C2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Adds a new to collection and Returns it. + + Name of the new . + Newly created object. + + The following code illustrates how a can be created and added to collection by passing + type as a parameter. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add("BarSerie"); + + //Set category labels and values + serie.CategoryLabels = sheet.Range["A1:C1"]; + serie.Values = sheet.Range["A2:C2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Adds a new to collection and Returns it. + + Name of the new . + Type of new . + Newly created . + + The following code illustrates how a can be created and added to collection by passing + and type as parameters. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add("BarSerie", ExcelChartType.Bar_Clustered); + + //Set category labels and values + chart.Series["BarSerie"].CategoryLabels = sheet.Range["A1:C1"]; + chart.Series["BarSerie"].Values = sheet.Range["A2:C2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Removes a from collection. + + Index of the to remove. + + The following code illustrates how to remove a from collection by specfiying it's index. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add("BarSerie"); + + //Set category labels and values + serie.CategoryLabels = sheet.Range["A1:C1"]; + serie.Values = sheet.Range["A2:C2"]; + + //Remove Serie + chart.Series.RemoveAt(0); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Removes a from collection. + + name to remove. + + The following code illustrates how to remove a from collection by specfiying it's name. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add("BarSerie"); + + //Set category labels and values + serie.CategoryLabels = sheet.Range["A1:C1"]; + serie.Values = sheet.Range["A2:C2"]; + + //Remove Serie + chart.Series.Remove("BarSerie"); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Returns the number of in the collection. Read-only Long. + + + The following code illustrates how to get the number of in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Check count + Console.Write(chart.Series.Count); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //1 + + + + + + Returns a single object from collection. + + + The following code illustrates how access a in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C2"]; + + //Set chart type + chart.ChartType = ExcelChartType.WaterFall; + + //Set serie format + IChartSerieDataFormat format = chart.Series[0].SerieFormat; + + //Set visibility + format.ShowConnectorLines = false; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Returns a single object from collection. + + + The following code illustrates how access a in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set serie + IChartSerie serie = chart.Series.Add("BarSerie", ExcelChartType.Bar_Clustered); + + //Set category labels and values + chart.Series["BarSerie"].CategoryLabels = sheet.Range["A1:C1"]; + chart.Series["BarSerie"].Values = sheet.Range["A2:C2"]; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Start of the default series name. + + + + + Represents parent chart. + + + + + Represents record storage for serialize error bars and trend lines. Use only for serialize. + + + + + Array that helps to serialize trendlines labels. Use only for serialize. + + + + + Represents summary index for error bars and trends. Use only for serialize. + + + + + Represents trend line index. + + + + + Creates collection. + + Application object for the collection. + Parent object for the collection. + + + + Defines a new series. + + Returns a Series object. + + + + Defines a new series. Returns a Series object. + + Name of the new series. + Newly created series object. + + + + Defines a new series. Returns a Series object. + + Type of new series. + Newly created series object. + + + + Defines a new series. Returns a Series object. + + Name of the new series. + Type of new series. + Newly created series object. + + + + Removes Series object from the collection. + + Index of the series to remove. + + + + Removes series by name. + + Series name to remove. + + + + Parses ChartSiIndex records. + + Array of records containing ChartSiIndex records. + Position of the first ChartSiIndex record. + + When specified record is not ChartSiIndex record. + + + + + Serializes collection. + + OffsetArrayList that will receive all records. + + When specified OffsetArrayList is NULL. + + + + + Serializes data labels data. + + List of biff records to serialize into. + + + + Adds series to the collection. + + Series that should be added to the collection. + Series that was added. + + + + Performs additional operations before the Clear method. + + + + + Clone current instance. + + Parent object. + Hash table with new Worksheet names. + Dictionary with new font indexes. + Returns cloned instance. + + + + Clone current instance. + + Parent object. + Returns cloned instance. + + + + Gets count of series that has same chart group index. + + Parameter to check. + Returns count of found series. + + + + Gets series that has same chart group index. + + Parameter to check. + Returns list of found series. + + + + Gets count of series with same type in collection. + + Current type. + Returns count of same types. + + + + Gets count of series with same type in collection. + + Current type. + Returns count of same start types. + + + + Sets for default all series in chart. + + boolean value indicates whether the formats to be preserved or not + + + + Sets for default all series in chart. + + + + + Finds order by series type. + + Type to find. + Returns order. + + + + Updates data points for create one of Pyramid, Cylinder, Cone chart types. + + Base format for update. + Top format for update. + + + + Updates data points for create one of Pyramid, Cylinder, Cone chart types. + + Base format for update. + Top format for update. + + + + Adds record in some collection in some series. + + Collection index. + Record to add. + + + + Returns array of entered records. + + Si record index. + Returns array of entered records. + + + + Gets array by si index. + + Si index. + Returns array of arrays by si index. + + + + Updates series index after remove + + Remove index. + + + + Gets series type by order. + + Current order. + Returns found type. + + + + Clears all series data formats. + + Represents format to update. + + + + Gets default series name. + + Returns default series name. + + + + Gets default series name. + + Represents series index in collections. + Returns default series name. + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Returns legend offset. + + Represents series index. + Returns legend offset. + + + + Assign trend data label. + + Represents data label. + + + + Clears error bars. + + + + + Puts all series into correct order based on their index. + + Dictionary containing series axis. + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Returns a single Name object from a Names collection. + + + + + Returns a single Name object from a Names collection. + + + + + Represents record storage for serialize error bars and trend lines. Use only for serialize. + + + + + Represents summary index for error bars and trends. Use only for serialize. + + + + + Represents record storage for serialize trend labels. Use only for serialize. Read-only. + + + + + Represents count of trends + series count. + + + + + Represents text area in the chart. + + + + + Indicating whether chartTitlle element parsed or not. + + + + + Indicating whether display value from cells values to datalabels. + + + + + Indicating whether value form cells range in datalabels. + + + + + Text area font. + + + + + Chart text record. + + + + + Parent workbook. + + + + + Text frame. + + + + + Text. + + + + + Object link. + + + + + Data labels record. + + + + + Chart ai record. + + + + + Chart Al Runs record represents the rich text format + + + + + Represents chart position record. + + + + + Attached label layout + + + + + Indicates if current text assign to trend object. + + + + + Represents Excel 2007 layout data + + + + + Represents the TextArea Paragraph + + + + + Indicats whether to show text properties or not + + + + + Indicats whether to show text size properties or not + + + + + Indicats whether to show text bold properties or not + + + + + Represents RTF string. + + + + + Represents Vertical Text Rotation. + + + + + RichTextStream internally used as biff record + + + + + Indicats whether to text is parsed or not + + + + + The array stores the cache information + + + + + Boolean value indicates whether other elements in chart can overlap this text area. + + + + + The list stores the default paragraph properties + + + + + Unwraps specified record. + + Record to unwrap. + Unwrapped record. + + + + Creates objects sets its Application and Parent properties to specified values. + + Application object. + Parent object. + + + + Creates objects sets its Application and Parent properties to specified values. + + Application object. + Parent object. + Text link. + + + + Creates objects sets its Application and Parent properties to specified + values and parses object data. + + Application object. + Parent object. + Array with object's records. + Position of the first object's record in the data array. + + + + Searches for all necessary parent objects. + + + + + Generates .Net font object corresponding to the current font. + + Generated .Net font. + + + + Parses chart text area. + + BiffRecords array to parse. + Starting data position. + Position after parsing. + + + + Parses ChartFontxRecord. + + Record to parse. + + + + Parses single record. + + Record to parse. + Data array with records to parse (used for complex object parsing). + Position in data array after current record. + Position after record parsing. + + + + Extracts RichText XML stream from the record and its length + + RichText stream Record to be extracted + extracted XML stream + + + + parse the binary stream and convert it to XML stream + + the XML reader used to read the stream + the text area element which is to be parsed and assigned + + + + Saves chart text area into OffsetArrayList. + + + OffsetArrayList that will receive all chart's records. + + + When specified OffsetArrayList is NULL. + + + + + Saves chart text area into OffsetArrayList. + + + OffsetArrayList that will receive all chart's records. + + If true - serialize as legend entry text; otherwise false. + + + When specified OffsetArrayList is NULL. + + + + + Saves chart text area into OffsetArrayList. + + + + + + + + Saves fontx record. + + OffsetArrayList that will receive necessary records. + + + + Saves single record into list of biff records. + + OffsetArrayList that will receive necessary records. + Record to serialize. + + + + Creates frame format. + + Newly created frame format. + + + + Initializes frame format. + + + + + Sets internal font according to the font index. + + Font index to set. + + + + Creates data labels object if necessary. + + + + + Clone current record. + + Parent object for create new instance. + Dictionary with new font indexes. + Dictionary with new worksheet names. + Returns clone of current object. + + + + Creates object that is copy of the current instance. + + Parent object for create new instance. + Returns clone of current object. + + + + Updates Series index. + + Index to set. + + + + Updates record for serialize as trend line data label. + + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Attaches all necessary events. + + + + + Detaches all events. + + + + + Event handler for color change. + + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Creates rich text string. + + + + + True if the font is bold. Read / write Boolean. + + + + + Returns or sets the primary color of the object. Read / write ExcelKnownColors. + + + + + Gets / sets font color. If there is at least one free color, + define a new color; if not, search for the closest one in + workbook palette. + + + + + True if the font style is italic. Read / write Boolean. + + + + + True if the font is an outline font. Read / write Boolean. + + + + + True if the font is a shadow font or if the object has + a shadow. Read / write Boolean. + + + + + Returns or sets the size of the font. Read / write Variant. + + + + + True if the font is struck through with a horizontal line. + Read / write Boolean + + + + + Gets or sets the offset value of superscript and subscript + + + + + True if the font is formatted as subscript. + False by default. Read / write Boolean. + + + + + True if the font is formatted as superscript. False by default. + Read/write Boolean + + + + + Returns or sets the type of underline applied to the font. Can + be one of the following ExcelUnderlineStyle constants. + Read / write ExcelUnderline. + + + + + Returns or sets the font name. Read / write string. + + + + + Gets / sets font vertical alignment. + + + + + Gets and sets the indicating wheather chart title element parsed or not. + + + + + Text. + + + + + Gets rich text. + + + + + Return frame format. Read-only. + + + + + Gets object link record. Read-only. + + + + + Text rotation angle. + + + + + Gets value indicating whether TextRotation was changed. Read-only. + + + + + Represents Vertical Text Rotation. + + + + + Returns chart text record. Read-only. + + + + + Gets / sets number format for the text area. + + + + + Gets index to the number format. Read-only. + + + + + Returns ChartAIRecord for the text area (creates it if necessary). Read-only. + + + + + Return ChartAlRunsRecord for the text area (creates if necessary). Read-only. + + + + + Returns true if contain dataLabels otherwise false. Read-only. + + + + + Display mode of the background. + + + + + True if background is set to automatic. + + + + + Indicates if current text assign to trend object. + + + + + Indicates whether color has automatic color. Read-only. + + + + + Gets or sets Excel 2007 layout data + + + + + Returns parent workbook object. + + + + + Represents the TextArea Paragraph + + + + + Gets or sets a value indicating whether to show text properties or not + + + + + Gets or sets a value indicating whether to show text size properties or not + + + + + Gets or sets a value indicating whether to show text bold properties or not + + + + + Gets / Sets the string array + + + + + Gets / Sets the overlay boolean value + + + + + Indicates whether object should be serialized. Read-only. + + + + + Indicates whether text area contains text. + + + + + Gets or sets a value indicating whether this instance is formula. + + + true if this instance is formula; otherwise, false. + + + + + Indicats whether to text is parsed or not + + + + + Gets the font index. + + + + + Gets and sets boolean value indicating whether display to value from cells value to datalabels. + + + + + Gets and sets indicating whether value from cells range in datalables. + + + + + Indicates whether series name is in data labels. + + + + + Indicates whether category name is in data labels. + + + + + Indicates whether value is in data labels. + + + + + Indicates whether percentage is in data labels. + + + + + Indicates whether bubble size is in data labels. + + + + + Indicates whether Leader Lines is in data labels. + + + + + Delimiter. + + + + + Indicates whether legend key is in data labels. + + + + + Represents data labels position. + + + + + Return attached label layout record. Read-only + + + + + Gets or sets value indicating whether to show category label and value as percentage. + + + + + Returns textarea's color object. Read-only. + + + + + Returns font index. Read-only. + + + + + Returns FontImpl for current font. Read-only. + + + + + Represents Trend Line Collection. + + + + + Interface that represents trend line collection. + + + + + Adds a new to collection and Returns it. + + Returns added trend line object. + + The following code illustrates how to access and add new instance of to + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart serie trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add new trendline instance + IChartTrendLine trendLine = trendLines.Add(); + + //Set trendline name + trendLine.Name = "trendline"; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Adds a new with specified to collection and Returns it. + + Represents type of trend line. + Returns added trend line object. + + The following code illustrates how to access and add new instance of with specified to + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart serie trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add new trendline instance with logarithmic type + IChartTrendLine trendLine = trendLines.Add(ExcelTrendLineType.Logarithmic); + + //Set trendline name + trendLine.Name = "trendline"; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Removes a from collection. + + Index of the to remove. + + The following code illustrates how to remove by index from + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart serie trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendlines + IChartTrendLine trendLine1 = trendLines.Add(ExcelTrendLineType.Logarithmic); + IChartTrendLine trendLine2 = trendLines.Add(ExcelTrendLineType.Linear); + + Console.WriteLine("Before TrendLines Count is: " + trendLines.Count); + + //Remove the trendline from the collection + trendLines.RemoveAt(0); + + Console.WriteLine("After TrendLines Count is: " + trendLines.Count); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Before TrendLines Count is: 2 + //After TrendLines Count is: 1 + + + + + + Clears current collection. + + + The following code illustrates how to clear collection + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart serie trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendlines + IChartTrendLine trendLine1 = trendLines.Add(ExcelTrendLineType.Logarithmic); + IChartTrendLine trendLine2 = trendLines.Add(ExcelTrendLineType.Linear); + + Console.WriteLine("Before TrendLines Count is: " + trendLines.Count); + + //Clears the trendlines collection + trendLines.Clear(); + + Console.WriteLine("After TrendLines Count is: " + trendLines.Count); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Before TrendLines Count is: 2 + //After TrendLines Count is: 0 + + + + + + Gets single trend line by index. Read-only. + + + The following code illustrates how to access from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart serie trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendlines + trendLines.Add(ExcelTrendLineType.Logarithmic); + trendLines.Add(ExcelTrendLineType.Linear); + + //Accessing the first trendline from collection + IChartTrendLine trendline = trendLines[0]; + + //Set trendline Name + trendline.Name = "TrendLine 1"; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Returns the number of in the collection. Read-only + + + The following code illustrates how to get the number of in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart serie trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendlines + IChartTrendLine trendLine1 = trendLines.Add(ExcelTrendLineType.Logarithmic); + IChartTrendLine trendLine2 = trendLines.Add(ExcelTrendLineType.Linear); + + Console.WriteLine("Number of TrendLines created is: " + trendLines.Count); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Number of TrendLines created is: 2 + + + + + + Represents parent series. + + + + + Creates new instance of collection. + + Represents current application. + Represents parent object. + + + + Adds new instance of trend line to collection. + + Returns added trend line object. + + + + Adds new instance of trend line to collection. + + Represents type of trend line. + Returns added trend line object. + + + + Removes trend line object from collection. + + Represents + + + + Serialize all trend lines. + + Represents record holder. + + + + Checks if current trend line supported negative values. + + Represents trend line types. + + + + Adds trend object to trends collection. + + Represents trend object to add. + + + + Checks series type. If current type does not support trendlines throw exception. + + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Clones current object. + + Represents parent object for new cloned instance. + Represents new font indexes. + Dictionary with new worksheet names. + Returns cloned object. + + + + Gets single trend line by index. Read-only + + + + + Indicates whether object was parsed. + + + + + Represents chart trend line. + + + + + Represents ChartTrendLine interface. + + + + + Clears current trend line formats. + + + The following code illustrates how to clear the formats of object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set RSquared value for trendline + trendline.DisplayRSquared = true; + + //Set trendline border color + trendline.Border.ColorIndex = ExcelKnownColors.Red; + + //Set trendline name + trendline.Name = "trendline 1"; + + //Check trendline before clearing the formats + Console.WriteLine("Before clearing the formats\n------"); + Console.WriteLine("Is default line color applied in trendline:" + trendline.Border.IsAutoLineColor); + Console.WriteLine("Trendline name:" + trendline.Name); + Console.WriteLine("Is R-squared value displayed:" + trendline.DisplayRSquared); + + //Clear the trendline formats + trendline.ClearFormats(); + + //Check trendline after clearing the formats + Console.WriteLine("After clearing the formats\n------"); + Console.WriteLine("Is default line color applied in trendline:" + trendline.Border.IsAutoLineColor); + Console.WriteLine("Trendline name:" + trendline.Name); + Console.WriteLine("Is R-squared value displayed:" + trendline.DisplayRSquared); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + // Output will be + // Before clearing the formats + //------ + //Is default line color applied in trendline:False + //Trendline name:trendline 1 + //Is R-squared value displayed:True + //After clearing the formats + //------ + //Is default line color applied in trendline:True + //Trendline name:Linear (Serie3) + //Is R-squared value displayed:False + + + + + + Represents border object. Read-only. + + + The following code illustrates how to access and format the for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value2 = 10; + sheet.Range["B2"].Value2 = 20; + sheet.Range["C2"].Value2 = 30; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Add serie + IChartSerie serie = chart.Series.Add(); + + //Set serie Y Values + serie.Values = sheet.Range["A2:C2"]; + + //Set serie X Values + serie.CategoryLabels = sheet.Range["A1:C1"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set trendline broder properties + trendline.Border.ColorIndex = ExcelKnownColors.Red; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents number of periods that the trend line extends backward. + + + The following code illustrates how to set backward forecast value for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value2 = -1; + sheet.Range["B1"].Value2 = 0; + sheet.Range["C1"].Value2 = 1; + sheet.Range["A2"].Value2 = 10; + sheet.Range["B2"].Value2 = 20; + sheet.Range["C2"].Value2 = 30; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Add serie + IChartSerie serie = chart.Series.Add(); + + //Set serie Y Values + serie.Values = sheet.Range["A2:C2"]; + + //Set serie X Values + serie.CategoryLabels = sheet.Range["A1:C1"]; + + //Set chart type + chart.ChartType = ExcelChartType.Scatter_Markers; + + //Set X axis minimum and maximum values + chart.PrimaryCategoryAxis.MinimumValue = -2; + chart.PrimaryCategoryAxis.MaximumValue = 2; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set backward forecast value + trendline.Backward = 3; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents number of periods that the trend line extends forward. + + + The following code illustrates how to set Forward forecast value for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value2 = -1; + sheet.Range["B1"].Value2 = 0; + sheet.Range["C1"].Value2 = 1; + sheet.Range["A2"].Value2 = 10; + sheet.Range["B2"].Value2 = 20; + sheet.Range["C2"].Value2 = 30; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Add serie + IChartSerie serie = chart.Series.Add(); + + //Set serie Y Values + serie.Values = sheet.Range["A2:C2"]; + + //Set serie X Values + serie.CategoryLabels = sheet.Range["A1:C1"]; + + //Set chart type + chart.ChartType = ExcelChartType.Scatter_Markers; + + //Set X axis minimum and maximum values + chart.PrimaryCategoryAxis.MinimumValue = -2; + chart.PrimaryCategoryAxis.MaximumValue = 2; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set forward forecast value + trendline.Forward = 3; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the equation for the trend line is displayed on the chart. + + + The following code illustrates how to display equation for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set equation in trendline + trendline.DisplayEquation = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the R-squared value of the trend line is displayed on the chart. + + + The following code illustrates how to display RSquared value for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set RSquared value for trendline + trendline.DisplayRSquared = true; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents point where the trend line crosses the value axis. + + + The following code illustrates how to set intercept value for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value2 = 1; + sheet.Range["B1"].Value2 = 2; + sheet.Range["C1"].Value2 = 3; + sheet.Range["A2"].Value2 = 10; + sheet.Range["B2"].Value2 = 20; + sheet.Range["C2"].Value2 = 30; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Add serie + IChartSerie serie = chart.Series.Add(); + + //Set serie Y Values + serie.Values = sheet.Range["A2:C2"]; + + //Set serie X Values + serie.CategoryLabels = sheet.Range["A1:C1"]; + + //Set chart type + chart.ChartType = ExcelChartType.Scatter_Markers; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set intercept value + trendline.Intercept = 10; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + True if the point where the trend line crosses the value + axis is automatically determined by the regression. + + + The following code illustrates how to check whether the object intercept value is automatic or not. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Value2 = 1; + sheet.Range["B1"].Value2 = 2; + sheet.Range["C1"].Value2 = 3; + sheet.Range["A2"].Value2 = 10; + sheet.Range["B2"].Value2 = 20; + sheet.Range["C2"].Value2 = 30; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Add serie + IChartSerie serie = chart.Series.Add(); + + //Set serie Y Values + serie.Values = sheet.Range["A2:C2"]; + + //Set serie X Values + serie.CategoryLabels = sheet.Range["A1:C1"]; + + //Set chart type + chart.ChartType = ExcelChartType.Scatter_Markers; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set intercept value + trendline.Intercept = 10; + + //Check trendline intercept is automatic + Console.WriteLine("Is Trendline Intercept value is automatic:" + trendline.InterceptIsAuto.ToString()); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + // Output will be + // Is Trendline Intercept value is automatic:False + + + + + + Gets or Sets trend line type. + + + The following code illustrates how to set for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart serie trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set trendline type + trendline.Type = ExcelTrendLineType.Polynomial; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents for Moving Average and Polynomial trend line type order value. + + + The following code illustrates how to set order value for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value2 = 10; + sheet.Range["B2"].Value2 = 20; + sheet.Range["C2"].Value2 = 30; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Add serie + IChartSerie serie = chart.Series.Add(); + + //Set serie Y Values + serie.Values = sheet.Range["A2:C2"]; + + //Set serie X Values + serie.CategoryLabels = sheet.Range["A1:C1"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set trendline type + trendline.Type = ExcelTrendLineType.Polynomial; + + //Set trendline order + trendline.Order = 6; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents whether the trendline name is default or not. + + + The following code illustrates how to check whether the object name is default or not. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart serie trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(ExcelTrendLineType.Logarithmic); + + //Set trendline name + trendline.Name = "Trendline 1"; + + //Check trendline name is automatic + Console.WriteLine(trendline.NameIsAuto); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + // False + + + + + + Gets or Sets the name of trend line. + + + The following code illustrates how to access name from object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart serie trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(ExcelTrendLineType.Logarithmic); + + //Get trendline Name + Console.WriteLine(trendline.Name); + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + // Log. (Serie3) + + + + + + Returns data label. Read-only. + + + To get DataLabel or must be set to true. + Otherwise exception will be thrown. + + + The following code illustrates how to enable and set text for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart serie + IChartSerie serie = chart.Series[0]; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Enable trendline data label by DisplayRSquared + trendline.DisplayRSquared = true; + + //Set data label text + trendline.DataLabel.Text = "y=10*x"; + + //Get trendline data label Text + Console.WriteLine(trendline.DataLabel.Text); + + //Save and Dispose + workbook.SaveAs("Chart.xls"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + // y=10*x + + + + + + Gets the shadow.Read-only. + + + The following code illustrates how to access and format the for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value2 = 10; + sheet.Range["B2"].Value2 = 20; + sheet.Range["C2"].Value2 = 30; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Add serie + IChartSerie serie = chart.Series.Add(); + + //Set serie Y Values + serie.Values = sheet.Range["A2:C2"]; + + //Set serie X Values + serie.CategoryLabels = sheet.Range["A1:C1"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Get chart trendlines collection + IChartTrendLines trendLines = serie.TrendLines; + + //Add trendline + IChartTrendLine trendline = trendLines.Add(); + + //Set trendline shadow color + trendline.Shadow.ShadowColor = System.Drawing.Color.Red; + + //Set trendline shadow outer presets + trendline.Shadow.ShadowOuterPresets = Excel2007ChartPresetsOuter.OffsetDiagonalTopRight; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets the object. Read-only.[Deprecated] + + + + + Represents max order value for polynomial trend line type. + + + + + Represents name hash table + Key - trend line type, Value - legend string. + + + + + Represents the chart LegendEntry + + + + + Represents main trend line record. + + + + + Represents Shadow + + + + + Represents border object. + + + + + Represents trendline border object + + + + + Represents parent series. + + + + + Represents trend line type. + + + + + Indicates if name is auto. + + + + + Represents custom name. + + + + + Represents text area for data label. + + + + + Represents text area. + + + + + Represents some unique ID. + + + + + Represents the 3D features + + + + + Initialize all static members. + + + + + Creates new instance of object. + + Represents current application. + Represents parent object. + + + + Finds parent objects. + + + + + Creates new instance of trend object by parsing from stream. + + Represents application object. + Represents parent object. + Represents data holder. + Represents position in stream. + Represents parsed legend entry, or null. + + + + Clears current trend line. + + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Parse trend object from stream. + + Represents record holder. + Represents position in storage. + Represents legend entry. + + + + Serialize records to biff stream + + Represents record holder. + + + + Serialize chart ai records. + + Represents record holder. + + + + Serialize legend entry. + + Represents record storage. + + + + Serialize data labels. + + Represents records holder. + + + + Checks some records properties. + + + + + Check if current trend support intercept property, if failed throws exception. + + + + + Check if current trend support backward property, if failed throws exception. + + Represents value. + + + + Changes trend line type. + + Represents new trend line type. + + + + Check if current trend support backward property, if failed throws exception. + + Represents order value. + + + + Updates data labels + + Represents flag for updates. + + + + Updates trend type on parsing. + + + + + Sets current data label. + + Represents data label. + + + + Clones current object. + + Represents parent object for new cloned instance. + Represents new font indexes. + Dictionary with new worksheet names. + Returns cloned object. + + + + Represents LegendEntry object. + + + + + Represents border object. Read-only. + + + + + Represents trendline border object. + + + + + Represents the Shadow.Read-only + + + + + This property indicates whether the shadow object has been created + + + + + Gets the chart3 D options. + + The chart3 D options. + + + + This property Indicates whether the Shadow object has been created(which includes the 3D properties) + + + + + Represents number of periods that the trend line extends backward. + + + + + Represents number of periods that the trend line extends forward. + + + + + True if the equation for the trend line is displayed on the chart. + + + + + True if the R-squared value of the trend line is displayed on the chart. + + + + + Represents point where the trend line crosses the value axis. + + + + + True if the point where the trend line crosses the value + axis is automatically determined by the regression. + + + + + Represents trend line type. + + + + + Represents for Moving Average and Polynomial trend line type order value. + + + + + Indicates if name is default. + + + + + Represents trend line name. + + + + + Returns data label. Read-only. + + + + + Get the ChartTextAreaImpl object + + + + + Represents some unique id. + + + + + Represents chart walls or floor. + + + + + Interface that represents chart wall or floor. + + + + + Gets or Sets the thickness of the walls or floor. + + + The following code illustrates how to set Thickness for + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_3D; + + //Get BackWall + IChartWallOrFloor backwall = chart.BackWall; + + //Set wall thickness + backwall.Thickness = 30; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Gets or Sets the pictureType in walls or floor + + The following code illustrates how to set PictureUnit for + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_3D; + + //Get BackWall + IChartWallOrFloor backwall = chart.BackWall; + + //Set wall Texture to cork image + backwall.Fill.Texture = ExcelTexture.Cork; + + //Set picture unit to stackScale + backwall.PictureUnit = ExcelChartPictureType.stackScale; + + //Save and Dispose + workbook.SaveAs("Chart.xlsx"); + workbook.Close(); + } + + + + + + Represents default line color for walls or plot. + + + + + Represents default color index for walls or plot. + + + + + Represents default line color for floor. + + + + + Represents default foreground color for walls or plot. + + + + + Represents default background color index for walls or plot. + + + + + Represents default value background color index. + + + + + Represents default value foreground color index. + + + + + Indicates if wall or floor object. + + + + + Represents chart interior. + + + + + Represents parent chart + + + + + Represents the Shadow + + + + + Represents the 3D features + + + + + Represents fill properties. + + + + + Indicates if shape properties for the wall or flooe. + + + + + It specifies the thickness of the walls or floor as a percentage of the largest dimension of the plotarea. + + + + + It specifies the pictureformat struct or stretch + + + + + It specifies the picture stack unit + + + + + Creates ChartWallsOrFloor object. + + Application object. + Parent object. + If true - represents walls; otherwise - floor. + + + + Creates ChartWallsOrFloor object. + + Application object. + Parent object. + Indicates if it is walls. + Represents record storage. + Represents position in storage. + + + + Parses walls or floor records. + + Offset array list. + Current position in offset array list. + + + + Serializes wall or floor object. + + OffsetArrayList that will receive all records. + + + + Clears current walls or floor. + + + + + Sets to default floor or walls. + + + + + Sets as default line record in category axis. + + + + + Sets as default line record in value axis. + + + + + Sets as default area record in category axis. + + + + + Sets as default area record in value axis. + + + + + Clones current object. + + Parent object. + Returns cloned object. + + + + Represents chart interior. + + + + + Represents the Shadow.Read-only + + + + + + This property indicates whether the shadow object has been created + + + + + + Indicates whether Shape properties has been created. + + + true if this instance has shape properties; otherwise, false. + + + + + Returns or sets the thickness of the walls or floor as a percentage of the largest dimension of the plot area. + + The thickness. + + + + Gets or Sets the picture format of the walls or floor + + + + + Gets or Sets the picture format of the walls or floor + + + + + Gets the chart3 D options. + + The chart3 D options. + + + + This property Indicates whether the Shadow object has been created(which includes the 3D properties) + + + + + Represents fill properties. Read-only. + + + + + This property indicates whether interior object was created. Read-only. + + + + + Indicates if this object is walls or floor. + + + + + Represents foreground color. + + + + + Represents background color. + + + + + Represents pattern. + + + + + Represents if use automatic format. + + + + + Represents visible. + + + + + Represents frame format each record is wrapped by ChartWrapperRecord. + + + + + Initializes new instance of ChartWrappedFrameFormat. + + Application object. + Parent object. + + + + Checks whether specified record is begin. + + Record to check. + True if this is begin; false otherwise. + + + + Parses single record. + + Record to parse. + Number of not closed begin record. + + + + Unwraps record if necessary. + + Record to unwrap. + Unwrapped record. + + + + Serializes single record. + + OffsetArrayList that will get biff records. + Record to serialize. + + + + Represents chart text area, each record is wrapped into ChartWrappedRecord. + + + + + Unknown bytes. Needed for data labels serialization. + + + + + Unknown end. + + + + + Initializes new instance. + + Application object. + Parent object. + + + + Creates objects sets its Application and Parent properties to specified + values and parses object data. + + Application object. + Parent object. + Array with object's records. + Position of the first object's record in the data array. + + + + Creates objects sets its Application and Parent properties to specified values. + + Application object. + Parent object. + Text link. + + + + Creates frame format. + + Newly created frame format. + + + + Saves single record into list of biff records. + + OffsetArrayList that will receive necessary records. + Record to serialize. + + + + Serializes unknown section. + + + OffsetArrayList that will receive all chart's records. + + Unknown bytes to serialize. + + + + Indicates whether object should be serialized. Read-only. + + + + + Creates Clipboard provider for the Biff8 format. + + + + + ClipboardProvider is an abstract class that facilitates reading from + or writing to the clipboard workbook object. + + + + + Next element in the clipboard providers list. + + + + + Workbook that should be copied to the clipboard. + + + + + Worksheet that should be copied to the clipboard. + + + + + Name of the format that this ClipboardProvider can + read from or write to. + + + + + Default constructor. + + + + + Creates provider for the specified worksheet. + + Worksheet that should be copied to the clipboard. + + + + Creates provider for the specified workbook. + + Workbook that should be copied to the clipboard. + + + + Creates provider for the specified workbook and sets the Next property + to the specified value. + + Workbook that should be copied to the clipboard. + Next clipboard provider. + + + + Creates provider for the specified worksheet and sets the Next property + to the specified value. + + Worksheet that should be copied to the clipboard. + Next ClipboardProvider. + + + + Initializes clipboard provider for the specified workbook. + + Workbook that can be copied to the clipboard. + + + + Initializes clipboard provider for the specified worksheet. + + Worksheet that can be copied to the clipboard. + + + + Sets clipboard's data object to the value returned + by GetForClipboard method. + + + + + Sets clipboard's data object to the value returned + by GetForClipboard method. + + Range to copy to the clipboard. + + + + Reads workbook from the clipboard. + + Workbooks collection to add workbook to. + Workbook that was read if success in reading; otherwise NULL. + + When application is NULL. + + + + + Returns IDataObject (for copying to the clipboard) + that contains data from workbook or worksheet. + + IDataObject for copying to the clipboard. + + + + Returns IDataObject (for copying to the clipboard) + that contains data from workbook or worksheet. + + Range to copy to the clipboard. + IDataObject for copying to the clipboard. + + + + Extracts workbook from the data object. + + Data object that contains workbook data. + Workbooks collection to add workbook to. + Extracted workbook. + + + + Extracts the workbook. + + Data object to extract. + + + + Extracts the workbook. + + Data object to extract. + Range to copy into data object. + + + + Returns next clipboard provider. + + + + + Gets / sets name of the clipboard format. + + + + + Workbook that can be copied to the clipboard. + + + + + Worksheet that can be copied to the clipboard. + + + + + Default name of the format. + + + + + Default constructor. + + + + + Creates provider and sets its Next property to the specified value. + + Next clipboard provider in the provider's list. + + + + Creates provider and sets its Next property to the specified value. + + Worksheet to copy to the clipboard. + Next clipboard provider in the provider's list. + + + + Extracts workbook from the data object. + + Data object that contains workbook data. + Workbooks collection to add workbook to. + Extracted workbook. + + + + Fills the data object. + + DataObject to filling. + + + + Extracts the workbook. + + Data object to extract. + Range to copy into data object. + + + + Returns data for copying into clipboard. + + Clipboard range. + MemoryStream with data to copy into clipboard. + + + + Returns IDataObject (for copying to the clipboard) + that contains data from workbook or worksheet. + + IDataObject for copying to the clipboard. + + This method is not implemented yet. + + + + + Returns IDataObject (for copying to the clipboard) + that contains data from workbook or worksheet. + + Range to copy to the clipboard. + IDataObject for copying to the clipboard. + + This method is not implemented yet. + + + + + DelimiterClipboardProvider - derived from the ClipboardProvider. + Facilitates reading from and writing to the clipboard in unicode text + format when there is a specified string delimiter between worksheet + columns and another delimiter between rows. + + + + + Default format name. + + + + + Default delimiter between worksheet columns. + + + + + Default delimiter between worksheet rows. + + + + + String that will be copied to the clipboard, contains worksheet's data. + + + + + Delimiter between worksheet columns. + + + + + Delimiter between worksheet rows. + + + + + Default constructor - just for getting the workbook from the clipboard. + If data needs to be copied from the clipboard, then the Initialize + method or set Workbook or Worksheet properties should be called. + + + + + Creates provider for the specified worksheet. + + Worksheet that should be copied to the clipboard. + + + + Creates provider for the specified worksheet and + sets the next clipboard provider. + + Worksheet that should be copied to the clipboard. + Next clipboard provider in the list. + + + + Returns IDataObject (for copying to the clipboard) + that contains data from workbook or worksheet. + + IDataObject for copying to the clipboard. + + + + Returns IDataObject (for copying to the clipboard) + that contains data from workbook or worksheet. + + Range to copy. + IDataObject for copying to the clipboard. + + + + Fills internal string that will be copied to the clipboard. + + + + + Fills internal string that will be copied to the clipboard. + + Range to copy to the clipboard. + + + + Extracts workbook from the data object. + + Data object that contains workbook data. + Workbooks collection to add workbook to. + Extracted workbook. + + + + Fills the dataobject. + + Dataobject to extract. + + + + Extracts the workbook. + + Data object to extract. + Range to copy into data object. + + + + Converts string to the worksheet. + + String that should be converted. + Application object for the new worksheet. + Parent object for the new worksheet. + Newly created worksheet with values from the string. + + + + Converts string to the workbook. + + String that should be converted. + Workbooks collection to add workbook to. + Newly created workbook with values from the string. + + + + Converts memory stream data to the workbook. + + MemoryStream that contains data for the workbook. + Workbooks collection to add workbook to. + Newly created workbook with values from the MemoryStream. + + + + Fills a specified sheet with values from the specified string. + + Sheet that should receive data from the string. + String with worksheet data. + + When the sheet is NULL. + + + + + Returns index of the character after string + (sequence of characters inside "" or ''). + + Contains string. + Position of the opening " or '. + Index of the character after closing " or '. + + + + Delimiter between worksheet columns. + + + + + Delimiter between worksheet rows. + + + + + Represents a collection of AddInFunctions. + + + + + Represents a collection of custom Add In functions. + + + + + Adds new function to the collection. + + Name of the file that contains add-in function. + Function to add. + Index of the added function. + + + + Adds new local function to the collection. + + Function to add. + Index of the added function. + + + + Returns a single AddInFunction object from a AddInFunction collection based on index. + + + + + Returns number of elements in the collection. + + + + + Beginning of the file name with add-in function. + + + + + Local workbook index. + + + + + Dictionary with all file names with extern functions. + + + + + Parent workbook. + + + + + Extern workbook with unknown functions. + + + + + Creates a collection and sets its Application and Parent properties. + + Application object for the collection. + Parent object for the collection. + + + + Searches for all necessary parents. + + + + + Adds new add-in function to the collection. + + File with add-in function. + Function name. + Index of the new function. + + + + Adds new local function to the collection. + + Function to add. + Index of the added function. + + + + Adds new local function to the collection. + + External book index. + Name index. + + + + Removes add-in collection with specified index. + + Item to remove. + + + + Indicates whether collection contains workbook with specified name. + + Name to check. + True if collections contains book with specified name. + + + + Represents a copying of add-in functions. + + Add-in function to be copied. + + + + + + + + + + + Gets Add-in function from the collection based on index. + + + + + Represents an array list extension. + + + + + Represents item storage. + + + + + Represents count of elements. + + + + + Creates new instance of ArrayList extension collection. + + + + + Creates new instance of ArrayList extension collection with its count. + + Represents count. + + + + Updates count of storage array. + + Represents count of array to update. + + + + Reduces size of the internal array if necessary. + + Maximum size of the internal array. + + + + Inserts specified number of empty RowStorages into given position. + + Index to insert. + Number of items to insert. + Number of items after index position to preserve. + + + + Get Maximum Row Count + + + + + + Get Row Index in Row Storage Based on the row number + + RowNumber + RowIndex in RowStorage + + + + + Gets value by index. + + + + + Represents an AutoFilter collections + + + + + Represents a collection of Autofilters. + + + + + Range to be filtered. + + + To know more about filters refer Data Filtering. + + + The following code illustrates how to set the range for filters. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set filter range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Add filter + filter.AddTextFilter("Around the Horn"); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Number of columns to be filtered. Read-only. + + + property gets the number of columns present within the range set to . Here for example, We set + range "A1:C7" to property. Since there are only three columns within the range, property returns + three. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set filter range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Add filter + filter.AddTextFilter("Around the Horn"); + + //Check the filter count + Console.WriteLine(filters.Count); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //3 + + + + + + Gets the DataSorter. + + The DataSorter. + The following code illustrates how to access the DataSorter in AutoFilters. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set filter range + filters.FilterRange = worksheet["A1:C7"]; + + //Create sorter + IDataSort sorter = filters.DataSorter; + + //Add sortfield + ISortField sortField = sorter.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + + //Perform sort + sorter.Sort(); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filter.xlsx"); + workbook.Close(); + } + + + + + + Returns single autofilter object by column index. Read-only. + + + The following code snippet shows how can be accessed from collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data + worksheet["A1"].Text = "Products"; + worksheet["A2"].Text = "Alfreds Futterkiste"; + worksheet["A3"].Text = "Antonio Moreno Taqueria"; + worksheet["A4"].Text = "Around the Horn"; + worksheet["A5"].Text = "Bon app"; + worksheet["A6"].Text = "Eastern Connection"; + worksheet["A7"].Text = "Ernst Handel"; + worksheet["B1"].Text = "Qtr1"; + worksheet["B2"].Number = 744.6; + worksheet["B3"].Number = 5079.6; + worksheet["B4"].Number = 1267.5; + worksheet["B5"].Number = 1418; + worksheet["B6"].Number = 4728; + worksheet["B7"].Number = 943.89; + worksheet["C1"].Text = "Qtr2"; + worksheet["C2"].Number = 162.56; + worksheet["C3"].Number = 1249.2; + worksheet["C4"].Number = 1062.5; + worksheet["C5"].Number = 756; + worksheet["C6"].Number = 4547.92; + worksheet["C7"].Number = 349.6; + + //Create style for table number format + IStyle style1 = workbook.Styles.Add("CurrencyFormat"); + style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; + + //Apply number format + worksheet["B2:C7"].CellStyleName = "CurrencyFormat"; + + //Create filters collection + IAutoFilters filters = worksheet.AutoFilters; + + //Set filter range + filters.FilterRange = worksheet["A1:C7"]; + + //Set filter column + IAutoFilter filter = filters[0]; + + //Add filter + filter.AddTextFilter("Around the Horn"); + + //Apply AutoFit + worksheet.UsedRange.AutofitColumns(); + + //Save and Dispose + workbook.SaveAs("Filters.xlsx"); + workbook.Close(); + } + + + + + + Name of the named range for autofilter range. + + + + + Name of the named range for autofilter range in MS Excel 2007. + + + + + Range to be filtered. + + + + + Parent worksheet. + + + + + Parent ListObject. + + + + + Top most row in the filter range. + + + + + Left most column in the filter range. + + + + + Bottom most row in the filter range. + + + + + Right most column in the filter range. + + + + + Represents the presence of adjacent non-empty cells. + + + + + + Creates a new instance for AutoFilter collection. + + Excelengine application. + Parent object. + + + + Searches for all needed parents. + + + + + Parses filter records. Must be called after parsing of all names. + + Records to parse + + + + Serializes AutoFilter collection into set of records. + + Place where serialized records will be placed. + + + + Cleared event handler. + + + + + Clones AutoFilter collection. + + Parent object. + Returns cloned object. + + + + Clones ListObject AutoFilter collection. + + Parent object. + Returns cloned object. + + + + Changes Excel versions based on AutoFilter collection. + + Max last row. + Max last column. + Excel version to make conversion into. + + + + Updates internal range object that stores filtered range. + + + + + Updates the Filter Range for AutoFilters + + Range to filter. + + + + Updates internal range object that stores filtered range. + + + + + Includes adjacent non-empty cells in the internal range object that stores filtered range. + + + + + Includes adjacent non-empty cells in the bottom of the internal range object that stores filtered range. + + + + + Initializes the filter range values. + + First row in the filter range + First column in the filter range + Last row in the filter range + Last column in the filter range + + + + Checks for non-empty adjacent cells which are above the existing filter range to find the top most row in the filter range. + + + + + Checks for non-empty adjacent cells which are left to the existing filter range to find the left most column in the filter range. + + + + + Checks for non-empty adjacent cells which are below the existing filter range to find the bottom most row in the filter range. + + + + + Checks for non-empty adjacent cells which are right to the existing filter range to find the right most column in the filter range. + + + + + Checks for any adjacent non-empty cells to a single cell. + + + + + Checks whether the row in the filter range has no empty cells. + + + + + Checks whether the column in the filter range has no empty cells. + + + + + Range to be filtered. + + + + + Returns single autofilter object by column index. Read-only. + + + + + Gets address of filtered range in R1C1 style. Read-only. + + + + + Gets the DataSorter. + + The DataSorter. + The following code illustrates how to get the DataSorter from AutoFilters. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sorting.xlsx"); + + workbook.Worksheets[0].AutoFilters.FilterRange = workbook.Worksheets[0].UsedRange; + + //Create DataSorter for AutoFilters. + IDataSort filterSort = workbook.Worksheets[0].AutoFilters.DataSorter;; + + //Adding Sorting fields for DataSorter. + filterSort.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + + //Perform Sorting for AutoFilters. + filterSort.Sort(); + + workbook.SaveAs("SortedExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns parent worksheet. Read-only. + + + + + Indicates whether sheet contains filtered range. + + + + + Gets default autofilter named range name. + + + + + Represent a Borders collection. + + + + + A collection of four Border objects that represent the four + borders of a Range or Style object. + + + + + Returns or sets the color from or to all the in the collection. + + + To set color for individual borders, we can use or property. + + + The following code illustrates how to set color from enumeration to all the in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set borders + IBorders borders = worksheet["C2:D3"].Borders; + + //Set color + borders.Color = ExcelKnownColors.Red; + + //Set line style + borders.LineStyle = ExcelLineStyle.Thick; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets RGB color from or to all the in the collection. + + + The following code illustrates how to set RGB color from structure to all the in the + collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set borders + IBorders borders = worksheet["C2:D3"].Borders; + + //Set color + borders.ColorRGB = System.Drawing.Color.Red; + + //Set line style + borders.LineStyle = ExcelLineStyle.Thick; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns the number of objects in the collection. Read-only, Long. + + + The following code illustrates how to access Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set borders + IBorders borders = worksheet["C2"].Borders; + + //Check count + Console.Write(borders.Count); + + //Save and Dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //6 + + + + + + Returns a object that represents one of the of either a + of cells or a . + + + The following code illustrates how to access using from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + worksheet["D2"].Text = "text"; + worksheet["C3"].Text = "in"; + worksheet["D3"].Text = "cell"; + + //Set borders + IBorders borders = worksheet["C2:D3"].Borders; + + //Set color + borders.Color = ExcelKnownColors.Red; + + //Set line style + borders.LineStyle = ExcelLineStyle.Thick; + + //Set diagonal line visibility + borders[ExcelBordersIndex.DiagonalDown].ShowDiagonalLine = false; + borders[ExcelBordersIndex.DiagonalUp].ShowDiagonalLine = false; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the line style for the . Read / write ExcelLineStyle. + + + The following code illustrates how to set LineStyle to all the in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set borders + IBorders borders = worksheet["C2:D3"].Borders; + + //Set color + borders.Color = ExcelKnownColors.Red; + + //Set line style + borders.LineStyle = ExcelLineStyle.Thick; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Synonym for Borders.LineStyle. Read / write. + + + The following code illustrates how to set Value to all the in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set borders + IBorders borders = worksheet["C2:D3"].Borders; + + //Set color + borders.Color = ExcelKnownColors.Red; + + //Set line style + borders.Value = ExcelLineStyle.Thick; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Parent workbook. + + + + + Specifies a boolean value that indicate whether the border collection has a empty border + + + + + Creates collection and sets its application and parent properties. + + Application object for this collection. + The parent object for this collection. + Indicates whether null elements must be added to internal array. + + + + Creates collection and sets its application and parent properties. + + Application object for this collection. + The parent object for this collection. + + + + Creates collection taking borders from ExtendedFormatImplWrapper. + + The application object for the collection. + The parent object for the collection. + + ExtendedFormatImplWrapper from where all borders will be taken. + + + + + Checks whether both border collections are equal. + + Object to be compared. + True if both are equal. + + + + Generates hash code for BordersCollection. + + Hash code of the BorderCollection. + + + + Sets the parent for Border Collections. + + + + + + + + + + + + Returns or sets the primary color of the object. + Read / write ExcelKnownColors. + + + + + Returns or sets the primary color of the object. Use the RGB function to create a color value. + Read / write ExcelKnownColors. + + + + + Gets a Border object that represents one of the borders of either a + range of cells or a style. Read-only. + + + + + Gets or sets the line style for the border. + Read / write ExcelLineStyle. + + + + + Synonym for Borders.LineStyle. Read / write ExcelLineStyle. + + + + + Specifies a boolean value that indicate whether the border collection has a empty border + + + + + Represents a borders for range that contains more than one cell. + + + + + Default borders count. + + + + + All cells of the range. + + + + + Parent workbook. + + + + + Application. + + + + + Creates instances for specified range. + + Range for which instance must be created. + + + + Creates instances for specified range and sets its application. + + Range for which instance must be created. + >Application object for this collection. + + + + + + + + + Gets or sets the primary color of the object, as shown in the + following table. Use the RGB function to create a color value. + Read / write ExcelKnownColors. + + + + + Gets or sets the primary color of the object, as shown in the + following table. Use the RGB function to create a color value. + Read / write color. + + + + + Gets a Border object that represents one of the borders of either a + range of cells or a style. + + + + + Gets or sets the line style for the border. Read / write ExcelLineStyle. + + + + + Returns default borders count. + + + + + Synonym for Borders.LineStyle. Read / write Variant. + + + + + Represents the document properties in a MS Excel document. + + + + + Represents user interface for built-in document properties. + + + + + Removes all properties from the collection. + + + + + Indicates whether collection contains specified property. + + Property id. + True if collection contains required property. + + + + Returns single entry from the collection. Read-only. + + + + + Returns single entry from the collection. Read-only. + + + + + Returns number of elements in the collection. Read-only. + + + + + Title document property. + + + + + Subject document property. + + + + + Author document property. + + + + + Keywords document property. + + + + + Comments document property. + + + + + Template document property. + + + + + LastAuthor document property. + + + + + Revnumber document property. + + + + + EditTime document property. + + + + + LastPrinted document property. + + + + + CreationDate document property. + + + + + LastSaveDate document property. + + + + + PageCount document property. + + + + + WordCount document property. + + + + + CharCount document property. + + + + + ApplicationName document property. + + + + + Category. + + + + + Target format for presentation (35mm, printer, video, and so on). + + + + + ByteCount. + + + + + LineCount. + + + + + ParCount. + + + + + SlideCount. + + + + + NoteCount. + + + + + HiddenCount. + + + + + MmclipCount. + + + + + Manager. + + + + + Company. + + + + + Boolean value to indicate whether the custom links are + hampered by excessive noise, for all applications. + + + + + Options for property storage creation. + + + + + Guid for parsing/serialization summary properties. + + + + + Guid for parsing/serialization document properties. + + + + + Dictionary with document properties, key - property name/id, value - property object. + + + + + Dictionary with summary document properties, key - property id, value - property object. + + + + + Creates a new instance for Builtin documentation properties. + + Application object for this collection. + Parent object for this collection. + + + + Indicates whether collection contains specified property. + + Property id. + True if collection contains required property. + + + + Returns dictionary where property must be placed. + + Property id. + Dictionary where property must be placed. + + + + OnClear is invoked after Clear behavior. + + + + + Extract built-in document properties. + + DocumentPropertyCollection to extract properties from. + + + + Reads properties from PropertySection. + + PropertySection to read data from. + Dictionary that will receive new properties. + List to add properties to. + Indicates whether we are reading document summary properties. + Indicates whether property is built-in. + + + + Writes properties into specified property section with values. + + Property sections to be written. + Values to be written. + + + + Converts property into PropertyData structure. + + Property to convert. + Proposed property id. + Converted structure. + + + + Serializes built-in properties. + + IPropertySetStorage to serialize into. + + + + Extract built-in document properties. + + IPropertySetStorage to extract properties from. + + + + Writes properties into IPropertySetStorage. + + IPRopertySetStorage to write properties into. + Storage GUID. + Collection of properties to write. + + + + Reads properties from IPropertySetStorage. + + IPropertySetStorage to read from + Storage GUID. + Dictionary that will receive new properties. + List to add properties to. + Indicates whether we are reading document summary properties. + Indicates whether property is built-in. + + + + OnInsert is invoked after Insert behavior. + + Index to be inserted. + Value to be inserted. + + + + Serializes built-in properties with summary and document. + + Summary section to be serialized. + Document section to be serialized. + + + + Gets single entry from the collection. Read-only. + + + + + Gets single entry from the collection. Read-only. + + + + + Gets or sets title of the document. + + + + + Gets or sets subject of the document. + + + + + Gets or sets author of the document. + + + + + Gets or sets Keywords of the document. + + + + + Gets or sets comments of the document. + + + + + Gets or sets template of the document. + + + + + Gets or sets last author of the document. + + + + + Gets or sets revision number of the document. + + + + + Gets or sets edit time of the document. + + + + + Gets or sets last printed of the document. + + + + + Gets or sets creation date of the document. + + + + + Gets or sets last saved date of the document. + + + + + Gets or sets page count of the document. + + + + + Gets or sets word count of the document. + + + + + Gets or sets character count of the document. + + + + + Gets or sets application name of the document. + + + + + Indicates whether the file has Headpair tag. + + + + + Gets or sets security of the document. + + + + + Gets or sets category of the document. + + + + + Target format for presentation (35mm, printer, video, and so on). + + + + + Gets or sets byte count of the document. + + + + + Gets or sets line count of the document. + + + + + Gets or sets paragraph count of the document. + + + + + Gets or sets slide count of the document. + + + + + Gets or sets note count of the document. + + + + + Gets or sets hidden count of the document. + + + + + Gets or sets Mutlimedia clip count of the document. + + + + + Set to True when scaling of the thumbnail is desired. If not set, cropping is desired. + + + + + Gets or sets Manager of the document. + + + + + Gets or sets company of the document. + + + + + Gets or sets boolean value to indicate whether the custom links are + hampered by excessive noise, for all applications. + + + + + Represents the collection of CellRecord. + + + + + Table with cell records. + + + + + Table with created ranges. + + + + + Parent worksheet. + + + + + Parent workbook. + + + + + Indicates whether we should use ranges cache or not. + + + + + Record extractor to get Biff records from. + + + + + Initializes new instance of the collection. + + Application object for the collection. + Parent object for the collection. + + + + Searches for all necessary parent objects. + + + + + Removes all elements from the IDictionary. + + + + + Adds an element with the provided key and value to the IDictionary. + + The Object to use as the key of the element to add. + The Object to use as the value of the element to add. + + + + Returns an IDictionaryEnumerator for the IDictionary. + + An IDictionaryEnumerator for the IDictionary. + + + + Removes the element from the IDictionary with the specified key of object type. + + The key of the element to remove. + + + + Determines whether the RecordTable contains an element with the specified key of object type. + + The key to locate in the IDictionary. + True if the IDictionary contains an element with the key; otherwise, False. + + + + Returns an IDictionaryEnumerator for the IDictionary. + + An IDictionaryEnumerator for the IDictionary. + + + + Adds an element with the provided key and value to the IDictionary. + + The Object to use as the key of the element to add. + The Object to use as the value of the element to add. + + + + Adds an specified cell to the IDictionary. + + The Object to use as the value of the element to add. + + + + Removes the element from the IDictionary with the specified key of long type. + + The key of the element to remove. + + + + Removes the element from the IDictionary based on the row and column index. + + One-based row index of the cell to remove. + One-based column index of the cell to remove. + + + + Determines whether collection contains row. + + Zero-based row index. + True if the collection contains at least one element with specified row index; otherwise, False. + + + + Determines whether the RecordTable contains an element with the specified key of long type. + + The key to locate in the IDictionary. + True if the IDictionary contains an element with the key; otherwise, False. + + + + Determines whether the RecordTable contains an element with row and column. + + One-based row index of the cell to locate. + One-based column index of the cell to locate. + True if the IDictionary contains an element with the key; otherwise, False. + + + + Copies the elements of the ICollection to an Array, starting at a particular Array index. + + + The one-dimensional Array that is the destination of the elements copied + from ICollection. The Array must have zero-based indexing. + + The zero-based index in array at which copying begins. + + + + Saves all rows into specified OffsetArrayList. + + OffsetArrayList that will receive all rows. + List into which all DBCell record must be placed. + Number of DBCells. + + When records is null. + + + + + Prepares next block of rows. + + OffsetArrayList that will receive all rows. + List to add serialization data into. + Start row index. + Size of the records. + Offset to the first row. + One-based last row index to serialize. + One-based first column index in the worksheet. + One-based last column index in the worksheet. + Destination excel version. + Row index after block saving. + + + + Returns array of all cells in the specified row. + + One-based index of row. + One-based first column in the parent worksheet. + One-based last column in the parent worksheet. + Variable that receives first used column of the row. + Variable that receives last used column of the row. + Destination excel version. + Array of all cells in the specified row. + + When values is null. + + + + + Extracts ranges from the reader. + + Reader to extract ranges from. + Indicates whether to ignore styles. + Dictionary with new XF indexes when bIgnoreStyles is set to true. + Decryptor used to decrypt data if necessary. + + + + Extracts ranges from the reader. + + IndexRecord that contains all required information. + Reader to extract ranges from. + Indicates whether to ignore styles. + Dictionary with new XF indexes when bIgnoreStyles is set to true. + True if parsing succeeded. + + + + Adds record to the collection from BiffRecord with ignore style options. + + Record to add. + Indicates whether to ignore styles. + + + + Adds record to the collection from cell postion format with ignore style options. + + Record to add. + Indicates whether to ignore styles. + + + + Adds MulRKRecord to the records collection. + + Record to add. + Indicates whether to ignore styles. + + + + Adds MulBlankRecord to the records collection. + + Record to add. + Indicates whether to ignore styles. + + + + Adds formula record and its string value. + + Formula record to add. + String value to add. + Indicates whether styles should be ignored. + + + + Indicates whether specified formula is complex + and requires range object to be created for it. + + FormulaRecord to check. + + True if specified formula is complex and requires + range object to be created for it. + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Sets cell range with cell index. + + Cell key. + Range to set. + + + + Sets cell range with row and column index. + + One-based row index. + One-based column index. + Range to set. + + + + Returns cell range based on cell position. + + Cell key. + Corresponding cell range. + + + + Returns cell range based on row and column index. + + One-based row index. + One-based column index. + Corresponding cell range. + + + + Sets cell record based on cell index. + + Cell key. + Cell to set. + + + + Sets cell record based on row and column index. + + One-based row index. + One-based column index. + Cell to set. + + + + Returns cell record based on the key. + + Cell key. + Corresponding cell record. + + + + Returns cell record based on row and column index. + + One-based row index. + One-based column index. + Corresponding cell record. + + + + Clears range in the dictionary that corresponds to the specified range. + + Rectangle to clear. + + + + Copies cells from another worksheet. + + Source cells collection to copy cells from. + + Dictionary with changes in style indexes, + key - old style index, + value - new style index. + + Dictionary with changes in worksheet names. + Dictionary with new extended format indexes. + Dictionary with new name indexes. + Dictionary with new font indexes. + External sheet dictionary. + + + + Returns string value associated with specified cell index. + + Index to cell. + Indicates whether we are interested in correct height or width. + String value associated with specified cell index. + + + + Returns string value associated with specified cell index. + + Index to cell. + Indicates whether we are interested in correct height or width. + String object to fill. + String value associated with specified cell index. + + + + Gets the RTF string in LabelSST of the cell index. + + Cell index. + Indicates whether we are interested in correct height or width. + RTF in the cell index. + + + + Fills rich text string object with string data. + + Record to get data from. + Indicates whether we are interested in correct height or width. + String to fill. + + + + Returns text value. + + Cell index. + Text value if appropriate record was found; otherwise - empty string. + + + + Gets error value by cell index. + + Cell index. + Returns string that represents error value. + + + + Gets bool value by cellindex. + + Cell index. + Returns value by cell index. + If true than value is correct; otherwise incorrect. + + + + Indicates if collection by index contain number. + + Index of record. + Returns true if contain number; otherwise - false. + + + + Indicates if collection by index contain bool or error. + + Index of record. + Returns true if contain bool or error; otherwise - false. + + + + Indicates if collection by index contain number as formula value. + + Index of record. + Returns true if contain number; otherwise - false. + + + + Indicates if collection by index contain bool or error as formula value. + + Index of record. + Returns true if contain number; otherwise - false. + + + + Returns cell value by cell index. + + Cell index. + Cell value if appropriate record was found; otherwise returns double.MinValue. + + + + Returns cell value by cell index without formula value. + + Cell index. + Cell value if appropriate record was found; otherwise returns double.MinValue. + + + + Returns formula value. + + Cell index. + Formula value if appropriate record was found; otherwise double.MinValue. + + + + Sets string formula value. + + Cell index. + String value to set. + + + + Returns string formula value. + + Cell index. + String formula value. + + + + Gets date time by cell index. + + Cell index. + Returns date time or null. + + + + Copies cell into another worksheet. + + Cell to copy. + Formula string value of the cell. + + Dictionary with updated extended format indexes, + or Null if indexes were not updated. + + New cell index + Source workbook. + Dictionary with updated font indexes or Null if indexes were not updated. + Copy options. + True if the cell is copied else false. + + + + Create external workbook for the formula. + + The source workbook. + The destination workbook. + Cell formula array. + + + + Change the Name reference Index + + The source workbook. + The destination workbook. + Cell formula array. + + + + Get or create new external workbook for the formula. + + The source workbook. + The destination workbook. + External workbook index. + returns the get of created external workbook + + + + Get the named range index from workbook. + + The name to get index. + The destination workbook. + The destination worksheet. + returns the index of the named range. + + + + Caches intersection of the two ranges. + + The first range to intersect. + The second range to intersect. + Output intersection rectangle. + RecordTable with intersection. + + + + Returns minimum used row. + + Start column. + End column. + Minimum used row. + + + + Returns maximum used row. + + Start column. + End column. + maximum used row. + + + + Returns minimum used column. + + One-based index of the start row. + One-based index of the end row. + One-based index of the minimum used column. + + + + Returns maximum used column. + + Start row. + End row. + Maximum used column. + + + + Gets formula value by cell index. + + Cell index. + Returns formula value or null. + + + + Gets formula value by cell index with R1C1 notation. + + Cell index. + If true - returns in R1C1 notations. + Returns formula value or null. + + + + Gets formula value by cell index with number format information. + + Cell index. + If true - returns in R1C1 notations. + Represents number info. Can be null. + Returns formula value or null. + + + + Gets string value by cell index. + + Cell Index. + Row index + Column index + Range from which value to be returned + CSV seperator + Returns string value or empty string. + + + + Gets extended format index by cell index. + + Cell index. + Returns extended format index or int.MINVALUE. + + + + Gets extended format index by row and column index. + + One-based row index. + One-based column index + Returns extended format index or int.MinValue if not found. + + + + Gets extended format index of the row. + + One-based row index. + Returns extended format index or int.MinValue if not found. + + + + Gets extended format index of the column. + + One-based column index. + Returns extended format index or int.MinValue if not found. + + + + Gets font by cell index. + + Cell index. + Returns font or null. + + + + Copies style from one cell into another. + + One-based row index of the source cell. + One-based column index of the source cell. + One-based row index of the destination cell. + One-based column index of the destination cell. + + + + Creates new cell without adding it to the collection.. + + One-based row index of the cell to create. + One-based column index of the cell to create. + Record type. + Created cell. + + + + Creates new cell. + + One-based row index of the cell to create. + One-based column index of the cell to create. + Record type. + Created cell. + + + + Gets cell style by cell index. + + Cell index. + Returns cell index. + + + + Returns object containing cell formatting. + + Cell index to get formatting for. + An ojbect containing cell formatting. + + + + Sets number value with default extended format index. + + Represents column index. One-based. + Represents row index. One-based. + Represents number value. + + + + Sets number value in cell index. + + Cell index. + Represents number value. + + + + Sets number value with specified extended format index. + + Represents column index. One-based. + Represents row index. One-based. + Represents number value. + Represents xf index. + + + + Sets boolean value. + + Represents column index. One based + Represents row index. One based. + Represents boolean value. + + + + Sets boolean value in specified cell index. + + Cell index. + Represents boolean value. + + + + Sets boolean value with extended format. + + Represents column index. One-based. + Represents row index. One-based. + Represents boolean value. + Represents xf index. + + + + Sets error value with a string value and default extended format index. + + Represents column index. One based. + Represents row index. One based. + Represents error value. + + + + Sets error value with a string value in cell index. + + Cell index. + Represents error value. + + + + Sets error value with a string value and extended format index. + + Represents column index. One based. + Represents row index. One based. + Represents error value. + Represents xf index. + + + + Sets error value with error code and extended format index. + + Represents column index. One based. + Represents row index. One based. + Represents error code. + Represents xf index. + + + + Sets formula value with extended format index. + + Represents column index. One based. + Represents row index. One based. + Represents formula to set. + Represents extended format index. + + + + Sets formula value with extended format index, number format information and R1C1 notation. + + Represents column index. One based. + Represents row index. One based. + Represents formula to set. + Represents extended format index. + If true - value in R1C1 notation. + Represent number format info, can be null. + + + + Sets formula value with extended format index and R1C1 notation. + + Represents column index. One based. + Represents row index. One based. + Represents formula to set. + Represents extended format index. + If true - value in R1C1 notation. + + + + Sets formula value with extended format index, number format information, + R1C1 notation and parse formula. + + Represents column index. One based. + Represents row index. One based. + Represents formula to set. + Represents extended format index. + If true - value in R1C1 notation. + If true - parse formula. + Represent number format info, can be null. + + + + Sets blank value. + + Represents column index. One based. + Represents row index. One based. + Represents extended format index. + + + + Sets RTF value. + + Represents column index. One based. + Represents row index. One based. + Represents extended format index. + Represents rtf to set. + + + + Sets string value from existing SST collection. + + Represents column index. One based. + Represents row index. One based. + Represents extended format index. + Represents SST index + + + + Sets cell to the non-SST string record (LabelRecord). + + One-based row index. + One-based column index. + Extended format index. + String value to set. + + + + Free's range object. + + One-based row index of the range object to remove from internal cache. + One-based column index of the range object to remove from internal cache. + + + + Removes all data saving cells formatting. + + + + + Sets array formula. + + Record to set. + + + + Returns array record corresponding to the cell + + One-based row index of the cell to get ArrayRecord for. + One-based column index of the cell to get ArrayRecord for. + Corresponding array record. + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Removes last column from the worksheet. + + One-based column index. + + + + Removes last column from the worksheet. + + One-based column index. + + + + Updates indexes to named ranges from array of new index. + + Parent workbook. + New indexes. + + + + Updates indexes to named ranges from IDictionary. + + Parent workbook. + New indexes. + + + + Replaces all shared formula with ordinary formula. + + + + + Updates string indexes. + + List with new indexes. + + + + Finds the cell positions based on find value of byte type. + + Storage range. + Value to find. + If true - finds first value; otherwise - all values. + If findfirst - true then returns range; otherwise - array with all found values. + List with cell indexes that contains specified value. + + + + Finds the cell positions based on find value of string type with find option. + + Storage range. + Value to find. + If true - finds first value; otherwise - all values. + Way to find + If findfirst - true then returns range; otherwise - array with all found values. + + List with cell indexes that contains specified value. + + + + + Finds the cell positions based on find value of double type. + + Storage range. + Value to find. + If true - finds first value; otherwise - all values. + If findfirst - true then returns range; otherwise - array with all found values. + List with cell indexes that contains specified value. + + + + Finds the cell positions based on find value of byte type. + + Storage range. + Value to find. + Indicates whether we should look for error code or boolean value. + If findfirst - true then returns range; otherwise - array with all found values. + List with cell indexes that contains specified value. + + + + Finds the cell positions which has a given dictionary index. + + Dictionary index to be found. + List with cell indexes that contains specified value. + + + + Caches and removes specified rectangle from the table. + + Source range. + Row delta to add to the resulting table. + Column delta to add to the resulting table. + Output maximum zero-based row index. + Output maximum zero-based column index. + Boolean flag to indicate if a row is moved or inserted. + Cached table. + + + + This method should be called immediately after extended format removal with IDictionary. + + Dictionary with updated extended formats. + + + + This method should be called immediately after extended format removal. + + Array with updated extended formats. + + + + This method updates indexes to the extended formats after version change. + + New restriction for maximum possible XF index. + + + + Sets cell style with extended format index. + + One-based row index. + One-based column index. + Index of the extended format to set. + + + + Sets cell style in specified row and column. + + One-based row index. + Index of the extended format to set. + + + + Looks through all records and calls AddIncrease for each LabelSST record. + + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + + + + + + + + Parses bool or error value from formula value. + + Represents formula record. + Returns value string. + + + + Creates internal cache for range objects. + + + + + Updates sheet references in the formula. + + Formula to update. + Dictionary with new worksheet names. + Source workbook. + + + + Copies string records. + + Source collection with strings to copy. + + + + Returns format applied to the cell. + + Cell index. + Format applied to the cell. + + + + Returns font applied to the cell. + + Cell index. + Font applied to the cell. + + + + Gets new index of an extended format. + + Old index of the extended format. + Dictionary with new extended format indexes. + Copy range options. + New index of the extended format. + + + + Updates LabelSST indexes after SST record parsing. + + Dictionary with indexes to update, key - old index, value - new index. + + + + Fills string object with data. + + String object to fill. + Index in the shared strings table. + + + + Returns cell type. + + One-based row index. + One-based column index. + + + + This method is called when object is about to be disposed. + + + + + Searches for the record of specified type. + + Record type to look for. + One-based index to the row to look at. + One-based index of the column to start looking at. + One-based index of the column to end looking at. + Column index that contains record of the specified type or value beyond iLastCol if not found. + + + + Gets first used row. Read-only. + + + + + Gets last used row. Read-only. + + + + + Gets first used column. Read-only. + + + + + Gets last used column. Read-only. + + + + + Represents parent worksheet. + + + + + Gets or sets table with cell records. Read-only. + + + + + Indicates whether we should use ranges cache or not. Default value if false. + + + + + Gets or sets ExcelVersion of the collection. + + + + + Gets the record extractor of the cell record collection. + + + + + Gets number of elements in the collection. Read-only. + + + + + Gets a value indicating whether the IDictionary has a fixed size. Read-only. + + + + + Gets a value indicating whether the IDictionary is read-only. Read-only. + + + + + Gets an ICollection containing the keys of the IDictionary. Read-only. + + + + + Gets an ICollection containing the values in the IDictionary. Read-only. + + + + + Gets or sets the element with the specified key of object type. + + + + + Gets or sets the element with the specified key of long type. + + + + + Gets or sets the element with the specified one-based row and column indexes. + + + + + Gets a value indicating whether access to the ICollection is synchronized. Read-only. + + + + + Gets an object that can be used to synchronize access to the ICollection. Read-only. + + + + + Collection of the Charts object. + + + + + Represents a collection of charts in the workbook. + + /// The collection contains an object for each chart sheet in the workbook. + Use Charts(index), where index is the chart-sheet index number or name, to return a single object. + + + + Creates a new chart sheet. + + Newly created chart object. + + + + Creates a new chart sheet with the specified name. + + Name of the new chart sheet. + Newly created chart object. + + + + Removes the specified chart sheet from the workbook. + + Name of the object to remove from the collection. + + + + Adds copy of the specified chart to the collection. + + Chart to copy. + + + + Gets the number of charts in the workbook. Read-only. + + + + + Gets a single object with the specified index. + + + + + Gets a single object with the specified name. + + + + + Default start of the chart name. + + + + + Name-to-Chart dictionary. + + + + + Parent workbook. + + + + + Creates chart collection. + + Application object for the collection. + Parent object for the collection. + + + + Creates a new chart. + + Newly created chart object. + + + + Defines a new name. + + Name of the new chart's sheet. + Newly created chart object. + + + + Removes Chart object from the collection. + + Name of the object to remove from the collection. + + + + Adds specified chart to the collection. + + Chart that should be added to the collection. + Added chart object. + + + + Extracts chart object from the BiffReader. + + BiffReader that contains chart data. + Extracted chart. + + + + Extracts chart object from the BiffReader. + + BiffReader that contains chart data. + Parse options. + Indicates whether skip parsing. + + Dictionary with new extended format indexes for ignore styles mode. + + Object used to decrypt encrypted records. + Extracted chart. + + + + Sets all parents. + + + If one of the parent objects cannot be found. + + + + + Moves worksheet inside this collection only. + + Old index in the collection. + New index in the collection. + + + + Event handler for series NameChanged event + + Sender of the event. + Event arguments. + + + + Performs additional operations before Clear method execution. + + + + + Updates chart index after move/insert operation. + + Chart that was changed. + Old sheet index in the TabSheets collection. + + + + + + + + + + + Adds chart into internal collections. + + Chart to add. + + + + This method is called after tabsheet was moved. + + + + + + + Adds copy of the specified chart to the collection. + + Chart to copy. + + + + Returns a single Chart object from a Charts collection. + + + + + Collection stores all comments in the worksheet. + + + + + A collection of cell comments. Each comment is represented by a + Comment object. + + + + + Remove all from the collection. + + + The following code illustrates how to remove all the in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + worksheet["C2"].AddComment(); + worksheet["E2"].AddComment(); + + //Add text + worksheet.Comments[0].Text = "Comment1"; + worksheet.Comments[1].Text = "Comment2"; + + //Clear comments + worksheet.Comments.Clear(); + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + } + + + + + + Used without an object qualifier, this property returns an Application + object that represents the Microsoft Excel application. + + + The following code illustrates how to access the from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + ICommentShape comment = worksheet["C2"].AddComment(); + + //Access application object + Console.Write(comment.Application.DefaultVersion); + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Excel2013 + + + + + + Returns the number of objects in the collection. Read-only Long. + + + The following code illustrates how to access the Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + worksheet["C2"].AddComment(); + worksheet["E2"].AddComment(); + + //Get count + Console.Write(worksheet.Comments.Count); + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Returns the parent object for the specified object. + + + The following code illustrates how to access the parent of the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + ICommentShape comment = worksheet["C2"].AddComment(); + + //Access parent object + Console.Write(comment.Parent.ToString()); + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Syncfusion.XlsIO.Implementation.Collections.ShapesCollection + + + + + + Returns a single object from the collection. + + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + worksheet["C2"].AddComment(); + + //Set text + worksheet.Comments[0].Text = "Comment"; + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + } + + + + + + Returns single object from the collection by row and column one-based indexes. Read-only. + + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + worksheet["C2"].AddComment(); + + //Set text + worksheet.Comments[2, 3].Text = "Comment"; + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + } + + + + + + Gets single from the collection. + + Name of the item to get. + Single item from the collection. + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + ICommentShape comment = worksheet["C2"].AddComment(); + + //Set name + comment.Name = "Comment1"; + + //Set text + worksheet.Comments["Comment1"].Text = "Comment"; + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + } + + + + + + Default comment width. + + + + + Default comment height. + + + + + Columns count in new comment - 1. + + + + + Rows count in new comment - 1. + + + + + Parent worksheet. + + + + + Dictionary with all comments, + key - cell index (one-based), + value - corresponding comment object. + + + + + + + + + + Creates new instance of the collection and sets its parent and application properties. + + Application object for the collection. + Parent object for the collection. + + + + Remove all from the collection. + + + + + Adds comment to the specified range. + + Range that should be commented. + Newly created comment shape. + + + + Adds comment to the specified range. + + Row of the cell to add comment to. + Column of the cell to add comment to. + Newly created comment shape. + + + + Adds comment to the specified range. + + Row of the cell to add comment to. + Column of the cell to add comment to. + Indicates is parse comment fill line options. + Newly created comment shape. + + + + Adds comment to this collection only. + Should be called from Shapes collection only. + + Comment to add. + + + + Searches for all necessary parent objects. + + + If can't find parent worksheet. + + + + + Removes comment from the collection. + + Comment to remove from the collection. + + + + Removes specified comment only from internal storages (without removing it from shapes collection). + + Comment to remove. + + + + + + + + + OnClear is invoked before Clear behavior. + + + + + Performs additional processes after inserting + a new element into the collection. + + The zero-based index at which to insert value. + The new value of the element at index. + + + + Performs additional processes after removing + an element from the collection. + + The zero-based index at which the value can be found. + The value of the element to remove from index. + + + + OnClear is invoked after Clear behavior. + + + + + Performs additional processes after setting a value in the collection. + + The zero-based index at which oldValue can be found. + The value to replace with newValue. + The new value of the element at the index. + + + + Returns the number of comments in the collection + + + + + Returns single entry from the collection. Read-only. + + + + + Returns single entry from the collection by row and column one-based indexes. Read-only. + + + + + Gets single item from the collection. + + Name of the item to get. + Single item from the collection. + + + + This property indicates whether internal hashtable is invalid and must be filled + once again before accessing. + + + + + Dictionary with all comments, + key - cell index (one-based), + value - corresponding comment object. + + + + + Wrapper over conditional format collection for range. + + + + + Represents a collection of conditional formats. + + + + + Adds a condition format to the collection. + + Returns the newly added instance. + + To add a condition to the conditional formats we use method. It adds and returns a new conditional + format object, that we can use to set and get conditional format criteria and properties. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + IConditionalFormat format2 = formats.AddCondition(); + IConditionalFormat format3 = formats.AddCondition(); + + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + format2.FirstFormula = "30"; + format2.SecondFormula = "70"; + format2.Operator = ExcelComparisonOperator.Between; + + //Set color. + format2.BackColor = ExcelKnownColors.Blue; + + format3.FirstFormula = "30"; + format3.SecondFormula = "50"; + format3.Operator = ExcelComparisonOperator.Between; + + //Set color. + format3.BackColor = ExcelKnownColors.Green; + + //Check Count. + Console.WriteLine(formats.Count); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Removes all the conditional formats in the collection. + + + To remove a particular condition we can use by specifying the index of the conditional format in the collection. + + + The following code illustrates how to set the remove all the conditions applied from the conditional formats collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + + //Add conditions. + IConditionalFormat format = formats.AddCondition(); + IConditionalFormat format2 = formats.AddCondition(); + IConditionalFormat format3 = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + //Set Condition. + format2.FirstFormula = "30"; + format2.SecondFormula = "70"; + format2.Operator = ExcelComparisonOperator.Between; + + //Set color. + format2.BackColor = ExcelKnownColors.Blue; + + //Set Condition. + format3.FirstFormula = "30"; + format3.SecondFormula = "50"; + format3.Operator = ExcelComparisonOperator.Between; + + //Set color. + format3.BackColor = ExcelKnownColors.Green; + + //Remove conditions. + formats.Remove(); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Removes the conditional format at the specified index from the collection. + + Index of the conditional format to be removed. + + The following code illustrates how to remove a particular condition from the conditional formats collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + + //Add conditions. + IConditionalFormat format = formats.AddCondition(); + IConditionalFormat format2 = formats.AddCondition(); + IConditionalFormat format3 = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + //Set Condition. + format2.FirstFormula = "30"; + format2.SecondFormula = "70"; + format2.Operator = ExcelComparisonOperator.Between; + + //Set color. + format2.BackColor = ExcelKnownColors.Blue; + + //Set Condition. + format3.FirstFormula = "30"; + format3.SecondFormula = "50"; + format3.Operator = ExcelComparisonOperator.Between; + + //Set color. + format3.BackColor = ExcelKnownColors.Green; + + //Remove condition. + formats.RemoveAt(2); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + + Gets the number of conditional formats in the collection. Read-only. + + + returns the number of conditions applied. Here for example, we check value + before and after applying three conditions. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + IConditionalFormat format2 = formats.AddCondition(); + IConditionalFormat format3 = formats.AddCondition(); + + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + format2.FirstFormula = "30"; + format2.SecondFormula = "70"; + format2.Operator = ExcelComparisonOperator.Between; + + //Set color. + format2.BackColor = ExcelKnownColors.Blue; + + format3.FirstFormula = "30"; + format3.SecondFormula = "50"; + format3.Operator = ExcelComparisonOperator.Between; + + //Set color. + format3.BackColor = ExcelKnownColors.Green; + + //Check Count. + Console.WriteLine(formats.Count); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + //Output will be + //3 + + + + + + Gets a conditional format of the specified index from the collection. Read-only. + + + The following code illustrates how to access the first condition from . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + + //Add condition. + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. (Access the condition using index). + formats[0].FirstFormula = "60"; + formats[0].SecondFormula = "20"; + formats[0].Operator = ExcelComparisonOperator.Between; + + //Set color. + formats[0].BackColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Wrapped range object. + + + + + Wrapped conditional formats collection. + + + + + List with all wrapped conditions. + + + + + Indicates whether to get the conditional format or not. + + + + + To prevent creation without arguments. + + + + + Creates wrapper for the specified range object. + + Range to wrap conditional formats for. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object. + + + + + Adds new condition to the collection. + + Newly added condition. + + + + Removes the Condtional Format at the specified range + + + + + Removes the Condtional Format at the Specified Index + + + + + Returns an enumerator that can iterate through a collection. + + An enumerator that can iterate through a collection + + + + Creates conditional formats for read-only mode. + + + + + Creates copy of the current conditional formats collection to enable writing. + + + + + Creates wrappers for all conditions. + + + + + Returns unwrapped condition. + + Condition index. + Unwrapped condition. + + + + Returns number of elements in the collection. Read-only. + + + + + Returns single element from the collection. Read-only. + + + + + Application object for this object. + + + + + Parent object for this object. + + + + + Returns collection of worksheets conditional formats of + the parent worksheet. Read-only. + + + + + Gets the Conditional Formats. + + + + + Gets the range object. + + + + + Collection of conditional formats for the single-cell range. + + + + + Maximum number of conditional formats in the collection. + + + + + Record that contains collection data. + + + + + + + Ranges operations. + + + + + Normal rule count. + + + + + Advanced conditional format rule count. + + + + + Total rule count. + + + + + Index of the rule. + + + + + Specifies the future record. + + + + + Checks whether conditional format is applied in pivot table. + + + + + Checks whether conditional format is copying or not. + + + + + Creates new instance. + + Base application. + Parent object. + + + + Creates new instance. + + Base application. + Parent object. + Collection to clone. + + + + Copy Conditional format. + + Base application. + Parent object. + Collection to clone. + boolean value to copy conditional format + + + + Creates ConditionalFormats collection from array of BiffRecords. + + Application object for the collection. + Parent object for the collection. + Main conditional format record. + Array of CFRecords with conditional formats. + + + + Creates ConditionalFormats collection from array of BiffRecords. + + Application object for the collection. + Parent object for the collection. + Main conditional format12 record. + Array of CF12Records with conditional formats. + + + + Finds parent worksheet. + + + + + Adds new condition to the collection. + + + + + + Removes the Condtional Format at the specified range + + + + + Removes the Condtional Format at the Specified Index + + + + + Adds condition from CFRecord. + + + + + Serializes collection data into OffsetArrayList. + + OffsetArrayList that will get all data. + + + + + + + + + + + Serializes normal conditional formats. + + + + + Serializes advanced conditional formats. + + + + + Adds condition from CFRecord. + + CFRecord that contains condition data. + + + + Adds condition from CF12Record. + + CF12Record that contains condition data. + + + + Adds condition from CFExRecord. + + CFRecord that contains condition data. + + + + Compares this collection to another. + + Collection to compare. + True if collections are equal. + + + + Compares two ConditionalFormats. + + First conditional format to compare. + Second conditional format to compare. + True if they are equal. + + + + Adds cells from the collection. + + Formats collection to get cells from. + + + + Adds cells from the collection. + + Formats collection to get cells from. + + + + Indicates whether collection contains all specified ranges. + + Ranges to check. + True if collection contains all specified ranges. + + + + Indicates whether collection contains intersect ranges. + + Ranges to check. + True if collection contains intersect ranges. + + + + Returns contains count for specified range. + + Range to check. + Contains count + + + + Adds cells from the collection. + + Cells to add to the collection. + + + + Adds range to the collection. + + Range to add. + + + + Adds new cell range to the collection. + + Range to add. + + + + Removes range from the collection of conditional formats. + + Array of ranges to remove. + + + + Removes range from the collection of conditional formats. + + Array of ranges to remove. + + + + Removes all cells from the collection. + + + + + Converts collection to Excel97to03 version (reduces collection capacity to maximum three conditions). + + + + + Creates ConditionaFormats collection containing part of conditional formats. + + Index of the first row to get. + Index of the first column to get. + Number of rows to get. + Number of columns to get. + Indicates whether we should remove original items from the collection. + This value should be added to row index of every CF region. + This value should be added to column index of every CF region. + New parent object. + Created CF collection. + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Updates conditional format formulas. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Updates conditional format formulas. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + Represents workbook. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Serves as a hash function for a particular type, suitable for use in + hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + calculate and return the Range required in range address format + + boolean value indicate the first cell or enclosing range address required + the Range string required in range address format + + + + Get worksheet. Read only. + + + + + Returns maximum conditional formats number. Depends on current Excel version. + + + + + Indicates whether collection is empty. Read-only. + + + + + Checks whether conditional format is applied in pivot table. + + + + + Checks whether conditional format is copying or not. + + + + + Represents address of cf ranges. + + + + + Represents address of cf ranges in R1C1 notation. + + + + + Cell range address of the range enclosing all + conditionally formatted ranges. + + + + + return all rectanglecellslist for this CF + + + + + Returns all string ranges for this CF. + + + + + Gets list of rectangles describing cells with conditional formatting. + + + + + CondFMT record. + + + + + CondFMT record. + + + + + Specify whether the record is future record. + + + + + Summary description for CustomDocumentProperties. + + + + + Summary description for ICustomDocumentProperties. + + + + + Removes specified object from the collection. + + Property name. + + + + Checks whether collection contains property with specified name. + + Name to check. + True if property is contained by collection; false otherwise. + + + + Removes all elements from the collection. + + + + + Returns single entry from the collection. Creates new entry + if property with specified name is not found. Read-only. + + + + + Returns single entry from the collection. Read-only. + + + + + Returns number of elements in the collection. Read-only. + + + + + Custom guid string. + + + + + Guid used for parsing/serialization of custom properties. + + + + + Dictionary with document properties, key - property name/id, value - property value. + + + + + Default constructor. + + + + + Returns custom property by name. + + Custom property. + Custom property. + + + + Removes specified object from the collection. + + Property name. + + + + Adds element to the collection. + + Property name to add. + Newly created property. + + + + Checks whether collection contains property with specified name. + + Name to check. + True if property is contained by collection; false otherwise. + + + + Serializes built-in properties. + + IPropertySetStorage to serialize into. + + + + Serializes built-in properties. + + IPropertySetStorage to serialize into. + + + + Extract built-in document properties. + + IPropertySetStorage to extract properties from. + + + + Extract custom document properties. + + Collection to extract properties from. + + + + OnClear is invoked after Clear behavior. + + + + + Returns single entry from the collection. Read-only. + + + + + Returns single entry from the collection. Read-only. + + + + + Incapsulates one DValRecord and multiple DVRecords from xls file. + + + + + Single DValRecord from data validation block. + + + + + Parent data validation table. + + + + + Key - DVRecord, value - corresponding DataValidationImpl. + + + + + Represents array list that storage dv data. + + + + + Indicates is delay parsing. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Searches and sets all necessary parents. + + + + + Adds data validation to the collection. + Checks if same data validation exists in the collection, + updates and returns it (if found). + + Data validation to add. + Data validation that was added or that was updated. + + + + Saves collection into list of BiffRecords. + + OffsetArrayList with BiffRecords. + + If records parameter is NULL. + + + + + Creates collection from array. + + Array of Biff records. + Start offset in the array (will be updated after parsing). + Indicates is parse on create or delay for first usage. + + + + + + + + + + + + + + + + Clones current instance. + + Parent object. + Returns new object. + + + + Returns data validation for specified cell. + + Cell index. + Data validation for specified cell. + + + + Updates indexes to named ranges. + + New indexes. + + + + Updates indexes to named ranges. + + New indexes. + + + + Adds new DVRecord to the collection. + + DVRecord to add. + + If dv is NULL. + + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Updates collection. + + Array of Biff records. + Start offset in the array (will be updated after parsing). + Represents count of records in collection. + + + + Adds local data validation record. + + Represents record to add. + Returns new instance of data validation. + + + + Returns data validation records. + + + + + + + + + + + + + + + + + + + + + + + + + Parent workbook. + + + + + Parent worksheet. + + + + + Gets parent table. Read-only. + + + + + Gets DValRecord representing this collection. Read-only. + + + + + Returns single entry from the collection. Read-only. + + + + + Gets number of required shapes objects. + + + + + Key - DVRecord, value - corresponding DataValidationImpl. + + + + + Table of all data validation in the worksheet. + + + + + Parent worksheet. + + + + + Dictionary, key - DValRecord, value - DataValidationCollection. + + + + + Creates DataValidationTable. + + Application object for the collection. + Parent object for the collection. + + + + Creates DataValidationTable. + + Application object for the collection. + Parent object for the collection. + List with data validation records. + Offset to the first data validation record. + + + + Searches for all necessary parents. + + + + + Extracts data validation table from array of records. + + List with data validation records. + Offset to the first data validation record. + + + + Adds new data validation collection. + + Collection to add. + Newly added data validation collection + + + + Adds new data validation to the collection. + + DValRecord to add. + Newly added data validation collection. + + + + Clones current instance. + + Parent object. + Returns clone of current object. + + + + Searches for corresponding data validation. + + Cell index. + Found data validation or null. + + + + Searches for corresponding data validation. + + One-based row index. + One-based column index. + Found data validation or null. + + + + Updates indexes to named ranges. + + New indexes. + + + + Updates indexes to named ranges. + + New indexes. + + + + Removes specified rectangles from the collection. + + Rectangles to remove. + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Gets first Key value pair + + + + + + + Clears all the content. + + + + + Gets parent worksheet. Read-only. + + + + + Gets parent workbook. Read-only. + + + + + Returns single entry from the collection. Read-only. + + + + + Gets number of required shapes objects. + + + + + Summary description for ErrorIndicatorsCollection. + + + + + Dictionary with error indicators. Used to check whether indicator is unique. + + + + + Initializes new instance of the collection. + + Application object for the new collection. + Parent object for the new collection. + + + + Adds new item to collection. + + Error indicator to add. + Added error indicator. + + + + Searches for error indicator that contains all specified ranges. + + Ranges to find error indicator for. + Error indicator if found, else null. + + + + Removes specified range from collection. + + Range to remove. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Get errorIndicator in collection of worksheet errorIndicators + + Rectangle of the source row and column + return errorIndicator from errorIndicator collection + + + + Represents collection of all extended formats in the workbook. + + + + + Number of default extended formats. + + + + + Dictionary with all formats in the collection. + Key - ExtendedFormatImpl, value - same format. + + + + + Creates collection and sets its Application and Parent values. + + + Application object that represents the Excel application. + + Parent object of this collection. + + + + Adds format into collection. + + Format to add. + + If there is same format in the collection, this method will return it; + otherwise format that was passed as argument will be added. + + + + + Adds format into collection. + + Format to add. + The count is repersent the named style index count + + If there is same format in the collection, this method will return it; + otherwise format that was passed as argument will be added. + + + + + Adds format into collection. + + Format to add. + Format that was added. + + + + Imports single extended format to the collection. + + Format to import. + + Dictionary with new xf indexes, key - old xf index, value - new xf index. + + Index of the new format. + + + + Merges extended formats collection with formats from another collection. + + Collection to get formats from. + Container for new font indexes. + Dictionary with new indexes. + + + + Adds extended formats to the collection. + + Formats to add. + Dictionary with new indexes. + + + + Adds index to the collection. + + Dictionary to add index to. + List with extended formats. + Index to add. + + + + Gather two formats borders. + + First xf indexes to gathered. + End xf indexes to gathered. + Returns gathered two extended formats.. + + + + Removes item at the specified position. + + Item to remove. + + Dictionary with new xf indexes. + key - old index + value - new index. + Only those formats that had parent index set + to xfIndex will be placed in this dictionary. + + + + + Creates copy of the current instance. + + Parent object for the new collection. + Copy of the current instance. + + + + Sets maximum possible count of extended formats in the collections. + Updates ParentIndex and overall number of extended formats if necessary. + + New value of maximum possible extended formats. + + + + + + + + + + + Adds copy of the format to the collection. + + Formats to add. + Updated font indexes. + Dictionary with new format indexes. + Dictionary with new indexes. + + + + Adds copy of the format to the collection. + + Format to add. + Dictionary with new format indexes. + Updated font indexes, key - old index, value - new index. + Dictionary with new format indexes. + + + + Marks the used extended cell styles and their formats in the workbook. + + All the extended formats in the workbook. + The workbook which is to be processed. + + + + Returns array with new font indexes used by specified extended formats. + + List with used extended formats. + Updated font indexes, key - old font index, value - new font index. + + + + Returns hashtable with new format indexes used by specified extended formats. + + List with used extended formats. + Dictionary with new format indexes, key - old format index, value - new format index. + + + + OnClear is invoked after Clear behavior. + + + + + Returns single entry from the collection. Read-only. + + + + + Returns parent workbook object. Read-only. + + + + + Collection of external workbooks in the worksheet. + + + + + Default options of StdDocumnt extern name. + + + + + Sheet index for non-existing sheet. + + + + + This URL is written by MS Excel 2003 when referenced file is closed before saving workbook. + + + + + Parent workbook. + + + + + Dictionary key - extern workbook url, value - corresponding extern workbook. + + + + + Dictionary key - short name of the workbook, value - workbook. + + + + + Creates collection with specified Application and Parent. + + Application object for the collection. + Parent object for the collection. + + + + Parses array of biff records. + + Array to parse. + Offset to collection data. + Offset value after parsing all workbooks. + + + + Extracts extern workbooks from the BiffReader. + + Reader to extract records from. + Object used to decrypt encrypted records. + + + + Serializes collection of external workbooks as biff records. + + OffsetArrayList to serialize into. + + + + Adds workbook into collection. + + Book to add. + Index of the new workbook. + + + + Adds new workbook into collection + + Workbook to add. + Index of the new workbook. + + + + Adds new workbook into collection + + Workbook to add. + Index of the new workbook. + + + + + + + + + + + + + + Adds new workbook into collection + + Workbook to add. + Index of the new workbook. + + + + Inserts SupbookRecord describing this workbook. + + + Index to the SupBookRecord that describes current workbook. + + + + + Checks whether any of books in this collection contains extern name. + + Name to search. + True if name was found; false otherwise. + + + + Checks whether any of books in this collection contains extern name. + + Name to search. + Output extern workbook index. + Output name index. + True if name was found; false otherwise. + + + + Returns index of the extern name. + + Name to search. + Reference index. + Returns index to extern workbook containing required name. + + + + Returns extern workbook with specified short name. + + Short name to find. + + Extern workbook that corresponds to the specified short name; + or Null if there isn't such workbook. + + + + + Sets all necessary parent objects. + + + + + Returns first index of current book in collection. + + Returns first index of current book in collection. + + + + + + + + + + + Copies subbook collection. + + Represents parent subbook collection. + Returns sub book indexes hash. Key - old indexes; Value - new indexes. + + + + Tries to find corresponding workbook or creates new if not found. + + Name of the workbook file. + Path to the workbook. + Found or created extern workbook. + + + + Frees all allocated unmanaged resources. + + + + + Checks whether this collection contains the external workbook. + + External workbook to search. + True if the external workbook was found; false otherwise. + + + + Returns the index of the external workbook from this collection. + + External workbook to search. + Index of the external workbook. + + + + Returns single extern workbook from the collection. + + + + + Returns single extern workbook from the collection. + + + + + Returns parent workbook. Read-only. + + + + + Summary description for ExternNamesCollection. + + + + + Parent extern workbook. + + + + + Hash table with all names. + + + + + Sometimes different applications (not MS Excel) can create duplicated + extern names, we have to remember all of them and after parsing remove it. + + + + + Creates collection with specified Application and Parent. + + Application object for the collection. + Parent object for the collection. + + + + Searches for all necessary parents. + + + + + Adds new name to the collection. + + Name to add. + Index of added extern name. + + + + Adds new name to the collection. + + Name to add. + Index of added extern name. + + + + Adds new name to the collection. + + Name to add. + Index of added extern name. + + + + Checks if collection contains extern name with specified name. + + Name to find. + Boolean value indicating whether collection contains extern name. + + + + + + + + + + Return index to the extern name. + + Name to locate. + Index to the extern name, or -1 if name was not found. + + + + Get new index for extern name (to remove duplicated extern names). + + Name index. + Updated name index. + + + + Creates copy of the collection. + + Parent object for the new collection. + + + + + Adds new item to the collection. + + Name to add. + Index of the added item. + + + + + + + + + + + + + + + + + + Returns extern name. Read-only. + + + + + Returns extern name. Read-only. + + + + + Returns parent workbook. Read-only. + + + + + Summary description for FontsCollection. + + + + + Parent workbook. + + + + + + + + + + Creates collection with specified Application and Parent. + + Application object for the collection. + Parent object for the collection. + + + + Parses font record and adds new font to the collection. + + Font record to parse. + Added font. + + + + Adds font to collection. + + Font to add. + Added font. + + + + Inserts default fonts into collection. + + + + + Searches for all necessary parents. + + + + + Forces add to the collection even if same font is already in the collection. + + Font to add. + + + + Saves fonts collection as a set of biff records. + + OffssetArrayList that will receive biff records. + + + + Indicates whether such font is in collection. + + Font to search. + True if such font is present in the collection, false otherwise. + + + + Merges fonts with fonts from another fonts collection. + + Fonts collection to merge fonts from.. + Dictionary with updated indexes. + + + + Adds fonts range from other fonts collection. + + Collection with font indexes to add. + Collection with fonts to add. + Dictionary with updated fonts indexes: key - old font index, value - new font index. + + + + Adds copy of the font. + + Font to copy. + Index of the new font. + + + + OnClear is invoked after Clear behavior. + + + + + Creates copy of the fonts collection. + + Parent workbook for the new collection. + Copy of this collection. + + + + Returns single font from collection. + + + + + Represents collection of formats in the workbook. + + + + + Represents the Decimal Seprator. + + + + + Represents the Thousand seprator. + + + + + Represents the percentage in decimal numbers. + + + + + Represents the fraction symbol. + + + + + Represents the index of the date format. + + + + + Represents the time separator. + + + + + Represents the Exponenet Symbol. + + + + + Represents the Minus symbol. + + + + + Represents the Currency Symbol. + TODO: support currency based on the Culture. + + + + + Represents the default exponential. + + + + + Index to the first user-defined number format. + + + + + Japan code. + + + + + Maximum number formats count in a workbook. 36 Default + 206 Custom formats. + + + + + Represents the collection of DateFormats. + + + + + Default format strings. + + + + + Default currency format strings. + + + + + Default currency format . + + + + + Index-to-FormatImpl. + + + + + Dictionary. Key - format string, value - FormatImpl. + + + + + Format parser. + + + + + Represent the indexes of the Raw Formats. + + + + + Number Formats Taken. + + + + + Dictionary. Key - currency symbol , value - currency format string. + + + + + Initializes new instance and sets its application and parent objects. + + Application object to set. + Parent object to set. + + + + Parses list of biff records. + + Records to parse. + Offset to the format records. + Position after format records. + + + + Saves formats into list of biff records. + + List to save into. + + + + Adds new format to the collection. + + Format to add. + + + + + + + + + + + + + + + + + Creates copy of the current instance. + + Parent object for the new collection. + Copy of the current instance. + + + + Method that creates format object based on the format string + and registers it in the workbook. + + Format string for the new format record. + Index of created format. + + + + Gets customized datetime format string of user input format string, inaccordance with MS Excel behaviour + + + + + + + Indicate whether given number format as data time or not. + + current index of the separator to be checked + the source character array + True if number format is string, otherwise false + + + + Gets the formatted string (IE replace the month and date token into lower case and left the string token) + + Number formats string. + Replaced lower case string. + + + + Replace the upper case formats into lower case formats for year, month, day, hour, minutes, seconds as per MS Excel behavior. + + Number formats string. + Replaced lower case string. + + + + Determines whether the IDictionary contains an element with the specified format. + + Format to locate in the collection. + True if the collection contains an element with the key; otherwise, False. + + + + Searches for format with specified format string + and creates one if a match is not found. + + String describing needed format. + Found or created format. + + + + Inserts all default formats into list. + + + + + Gets all used formats. + + Array that contains all used format records. + + + + Copies all formats from the source collection. + + Collection to copy formats from. + Dictionary old format index - to - new format index. + + + + Adds format range to the collection. + + Dictionary with format indexes to add. + Source collection. + Dictionary with updated indexes: key - old index, value - new index. + + + + Tries to add format to the collection. + + Format to add. + New format index. + + + + Tries to add format to the collection. + + Format to add. + New format index. + + + + + + Fills the format indexes based on the format types. + + + + + Detects the DateFormat from the string. + + string value to detect. + NumberFormat of the given string. + + + + Detects the Time Format from the string. + + string to detect the format. + Number Format of the given string. + + + + Returns True, if strValue contains the time format with seconds. + + Time format in string. + boolean value + + + + Returns True, if the string format of time contains 12 Hours format. + + Time format in string. + returns boolean. + + + + Detects the Number format. + + number as string to detect the number format. + Number Format of given value. + + + + Try parse the number format of the given value. + + number as string to parse. + NumberFormat of the given value. + + + + Check whether the separator character is in between the date format symbols + + current index of the separator to be checked + the source character array + retuns true if the format is correct, otherwise not + + + + Returns an IDictionaryEnumerator for the IDictionary. + + An IDictionaryEnumerator for the IDictionary. + + + + Removes the element with the specified key from the IDictionary. + + The key of the element to remove. + + + + Determines whether the IDictionary contains an element with the specified key. + + The key to locate in the IDictionary. + True if the IDictionary contains an element with the key; otherwise, False. + + + + Removes all elements from the IDictionary. + + + + + Copies the elements of the collection to an Array, starting at a particular Array index. + + + The one-dimensional Array that is the destination of the elements + copied from ICollection. The Array must have zero-based indexing. + + The zero-based index in array at which copying begins. + + + + Returns single entry from the collection. Read-only. + + + + + Gets or Sets a value indicating whether worksheet contains number formats. + + + + + Returns single entry from the collection by format string. Read-only. + + + + + Returns format parser. Read-only. + + + + + Gets currency format string. Read-only. + + + + + Gets a value indicating whether the IDictionary is read-only. Read-only. + + + + + + + + + + Gets an ICollection containing the keys of the collection. Read-only. + + + + + Gets a value indicating whether the collection has a fixed size. Read-only. + + + + + Gets a value indicating whether access to the collection is synchronized (thread-safe). + + + + + Gets the number of elements contained in the collection. Read-only + + + + + Gets an object that can be used to synchronize access to the collection. + + + + + Summary description for BorderGroup. + + + + + Border index. + + + + + Parent style group. + + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + Border index. + + + + Searches for all necessary parent objects. + + + + + Returns single entry from the group. Read-only. + + + + + Returns number of elements in the group. Read-only. + + + + + Returns or sets the primary color of the object. + Read/write Long. + + + + + Returns or sets the primary color of the object. + Read/write Long. + + + + + Returns color of the border. + + + + + Returns or sets the line style for the border. Read/write ExcelLineStyle. + + + + + This property is used only by Diagonal borders. For any other border + index property will have no influence. + + + + + Summary description for BordersGroup. + + + + + Parent style group. + + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + + + + Searches for all necessary parent objects. + + + + + Returns single entry from the group. Read-only. + + + + + Returns number of elements in the group. Read-only. + + + + + Returns or sets the primary color of the object. + Read / write ExcelKnownColors. + + + + + Returns or sets the primary color of the object, as shown in the + following table. Use the RGB function to create a color value. + Read / write Color. + + + + + Returns the number of objects in the collection. Read-only, Long. + + + + + Returns a Border object that represents one of the borders of either a + range of cells or a style. + + + + + Returns or sets the line style for the border. Read / write ExcelLineStyle. + + + + + Synonym for Borders.LineStyle. Read / write. + + + + + Summary description for ConditionalFormatsGroup. + + + + + Parent range group. + + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + + + + Searches for all necessary parent objects. + + + + + Synchronizes all collections. + + + + + Adds new condition to the collection. + + Newly added condition. + + + + Removes the Condtional Format at the specified range + + + + + Removes the Condtional Format at the Specified Index + + + + + Returns an enumerator that can iterate through a collection. + + An IEnumerator that can iterate through the collection. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Returns single entry from the group. Read-only. + + + + + Returns number of elements in the group. Read-only. + + + + + Returns number of elements in the collection. Read-only. + + + + + Returns single element from the collection. Read-only. + + + + + Summary description for FontGroup. + + + + + Parent range group. + + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + + + + Searches for all necessary parent objects. + + + + + Generates .Net font object corresponding to the current font. + + Generated .Net font. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Returns single entry from the group. Read-only. + + + + + Returns number of elements in the group. Read-only. + + + + + True if the font is bold. Read / write Boolean. + + + + + Returns or sets the primary color of the object. Read / write ExcelKnownColors. + + + + + Gets / sets font color. Searches for the closest color in + the workbook palette. + + + + + True if the font style is italic. Read / write Boolean. + + + + + True if the font is an outline font. Read / write Boolean. + + + + + True if the font is a shadow font or if the object has + a shadow. Read / write Boolean. + + + + + Returns or sets the size of the font. Read / write Variant. + + + + + True if the font is struck through with a horizontal line. + Read / write Boolean + + + + + True if the font is formatted as subscript. + False by default. Read / write Boolean. + + + + + True if the font is formatted as superscript. False by default. + Read/write Boolean + + + + + Returns or sets the type of underline applied to the font. Can + be one of the following ExcelUnderlineStyle constants. + Read / write ExcelUnderline. + + + + + Returns or sets the font name. Read / write string. + + + + + Gets / sets font vertical alignment. + + + + + Indicates whether color is automatically selected. Read-only. + + + + + Summary description for MigrantRangeGroup. + + + + + Summary description for RangeGroup. + + + + + First row. + + + + + First column. + + + + + Last row. + + + + + Last column. + + + + + Parent group of worksheets. + + + + + Rich text string group. + + + + + Value of End property. + + + + + Style group. + + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + The first row of the range. + The first column of the range. + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + The first row of the range. + The first column of the range. + The last row of the range. + The last column of the range. + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + String representation of the range. + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + String representation of the range. + Indicates is name in R1C1 notation. + + + + Searches for all necessary parent objects. + + + + + Returns range for specific sheet. + + Sheet index in the group. + + + + + Returns a Range object that represents a range thats offset from the specified range. + + The number of rows (positive, negative, or 0 (zero)) by which the range is to be offset + The number of columns (positive, negative, or 0 (zero)) by which the range is to be offset + + + + + Resizes the specified range + + The number of rows in new range + The number of columns in new range + + + + + Activates a single cell, which must be inside the current selection. + To select a range of cells, use the Select method. + + + + + + Activates a single cell, scroll to it and activates the corresponding sheet. + To select a range of cells, use the Select method. + + True to scroll to the cell + + + + + This method groups current range. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + Current range after grouping. + + + + This method groups current range. + + + This parameter specifies whether grouping should + be performed by rows or by columns. + + Indicates whether group should be collapsed. + Current range after grouping. + + + + Creates Subtotal for the corresponding ranges + + GroupBy + ConsolidationFunction + TotalList + + + + Creates SubTotal for the corresponding Ranges + + GroupByGroupBy + ConsolidationFunction + TotalList + Replace exisiting SubTotal + Insert PageBreaks + SummaryBelowData + + + + Creates SubTotal for the corresponding Ranges + + Columns to GroupBy + ConsolidationFunction + TotalList + Replace exisiting SubTotal + Insert PageBreaks + SummaryBelowData + + + + Returns sum of numeric cells in the range. + + + + + Returns sum of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns average of numeric cells in the range. + + + + + Returns average of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns minumum value from numeric cells in the range. + + + + + Returns minumum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns maximum value from numeric cells in the range. + + + + + Returns maximum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Trim the empty rows at top and bottom of the range, the empty columns at left and right of the range. + + Returns the range after trim. + + + + Creates a merged cell from the specified Range object. + + + + + Creates a merged cell from the specified Range object. + + Indicates whether to clear unnecessary cells. + + + + Ungroups current range. + + Indicates type of ungrouping. Ungroup by columns or by rows. + Current range after ungrouping. + + + + Separates a merged area into individual cells. + + + + + Freezes pane at the current range. + + + + + Clear the contents of the Range. + + + + + Clear the contents of the Range with formatting. + + True if formatting should also be cleared. + + + + Clear the contents of the Range and shifts the cells Up or Left + without formula or merged ranges update. + + Cells shift direction Up/Left. + + + + Clears the contents, formats and comments of the cell, based on clear options. + + + + + + Clear the contents of the Range and shifts the cells Up or Left. + + Cells shift direction Up/Left. + Cells shifting options. + + + + Moves the cells to the specified Range (without updating formulas). + + Destination Range. + + + + Moves the cells to the specified Range. + + Destination Range + Indicates whether to update formula after move operation. + + + + Copies the range to the specified destination Range (without updating formulas). + + Destination range. + Range were this range was copied. + + + + Copies this range into another location. + + Destination range. + Indicates whether update formula during copy. + + + + Copies this range into another location. + + Destination range. + Copy range options. + Destination range. + + + + Copies the Range to the specified destination Range with copy options and skip blank option. + + Represents the destination Range to copy. + Represents the copy Range options. + Represents the skip blank cells in the source. + Returns the copied Range. + + + + Returns intersection of this range with the specified one. + + The Range with which to intersect. + Range intersection; if there is no intersection, NULL is returned. + + + + Returns merge of this range with the specified one. + + The Range to merge with. + Merged ranges or NULL if wasn't able to merge ranges. + + + + Autofits all rows in the range. + + + + + Autofits all columns in the range. + + + + + Adds comment to the range. + + Range's comment. + + + + Creates a threaded comment for the current cell with the specified text. + + Threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . + + + + Creates a threaded comment for the current cell with the specified text and author. + + Threaded comment text + The author of the threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . + + + + This method searches for the first cell with specified string value. + + Value to search. + Flag that represent type of search. + + + + + This method searches for the first cell with specified double value. + + Value to search. + Flag that represent type of search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified bool value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified DateTime value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified TimeSpan value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the all cells with specified string value. + + Value to search. + Flag that represent type of search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified double value. + + Value to search. + Flag that represent type of search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified bool value. + + Value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified DateTime value. + + Value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified TimeSpan value. + + Value to search. + All found cells, or Null if value was not found. + + + + Replaces the string with the specified string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + + Replaces the string with the specified string value based on the given . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + + + + Replaces the string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + + + + Replaces the string with the specified DateTime value. + + The string to be replaced. + The datetime value to replace all occurrences of oldValue. + + + + Replaces the string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified datatable. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Replaces the string with the specified datacolumn. + + The string to be replaced. + DataColumn with new data. + Indicates whether field name must be shown. + + + + Copies range to the clipboard. + + + + + Sets around border for current range. + + + + + Sets around border for current range. + + Represents border line. + + + + Sets around border for current range. + + Represents border line. + Represents border color. + + + + Sets around border for current range. + + Represents border line. + Represents border color as ExcelKnownColors. + + + + Sets inside border for current range. + + + + + Sets inside border for current range. + + Represents border line. + + + + Sets inside border for current range. + + Represents border line. + Represents border color. + + + + Sets inside border for current range. + + Represents border line. + Represents border color as ExcelKnownColors. + + + + Sets none border for current range. + + + + + Collapses current group. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + + + + Expands current group. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + + + + Expands current group. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + Additional option flags. + + + + Gets the dependent cells which refer to other cells. + + Returns the dependent cells or null if value was not found. + + + + Gets the dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the dependent cells with a specified bool value or null if value was not found. + + + + Gets the precedent cells which are referred by a formula in another cell. + + Returns the precedent cells or null if value was not found. + + + + Gets the precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the precedent cells with a specified bool value or null if value was not found. + + + + Gets the direct dependent cells which refer to other cells. + + Returns the direct dependent cells or null if value was not found. + + + + Gets the direct dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the direct dependent cells with a specified bool value or null if value was not found. + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Returns the direct precedent cells or null if value was not found. + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the direct precedent cells with a specified bool value or null if value was not found. + + + + Returns an enumerator that iterates through the Range. + + + + + + Returns number of ranges in the group. Read-only. + + + + + Returns range from the specified worksheet in the range. Read-only. + + + + + Returns parent workbook object. Read-only. + + + + + Gets or sets HTML string. + + + + + Returns hyperlinks for this range group. + + + + + Returns the range reference in the language of the macro. + Read-only String. + + + + + Returns the range reference for the specified range in the language + of the user. Read-only String. + + + + + Returns range Address in format "'Sheet1'!$A$1". + + + + + Returns the range reference using R1C1 notation. + Read-only String. + + + + + Returns the range reference using R1C1 notation. + Read-only String. + + + + + Gets / sets boolean value that is contained by this range. + + + + + Returns a Borders collection that represents the borders of a style + or a range of cells (including a range defined as part of a + conditional format). + + + + + Returns a Range object that represents the cells in the specified range. + Read-only. + + + + + Returns the number of the first column in the first area in the specified + range. Read-only. + + + + + Column group level. Read-only. + -1 - Not all columns in the range have same group level. + 0 - No grouping, + 1 - 7 - Group level. + + + + + Returns or sets the width of all columns in the specified range. + Read/write Double. + + + + + Returns the number of objects in the collection. Read-only. + + + + + Gets / sets DateTime contained by this cell. Read-write DateTime. + + + + + Returns cell value after number format application. Read-only. + + + + + Returns a Range object that represents the cell at the end of the + region that contains the source range. + + + + + Returns a Range object that represents the entire column (or + columns) that contains the specified range. Read-only. + + + + + Returns a Range object that represents the entire row (or + rows) that contains the specified range. Read-only. + + + + + Gets / sets error value that is contained by this range. + + + + + Returns or sets the object's formula in A1-style notation and in + the language of the macro. Read/write Variant. + + + + + Returns or sets the object's formula in R1C1-style notation and in + the language of the macro. Read/write Variant. + + + + + Represents array-entered formula. + + + + + Returns or sets the object's formula in R1C1-style notation and in + the language of the macro. Read/write Variant. + + + + + True if the formula will be hidden when the worksheet is protected. + False if at least part of formula in the range is not hidden. + + + + + Get / set formula DateTime value contained by this cell. + DateTime.MinValue if not all cells of the range have same DateTime value. + + + + + Indicates whether specified range object has data validation. + If Range is not single cell, then returns true only if all cells have data validation. Read-only. + + + + + Indicates whether range contains bool value. Read-only. + + + + + Indicates whether range contains DateTime value. Read-only. + + + + + Indicates if current range has formula bool value. Read-only. + + + + + Indicates if current range has formula error value. Read-only. + + + + + Indicates if current range has formula value formatted as DateTime. Read-only. + + + + + Indicates if the current range has formula number value. Read-only. + + + + + Indicates if the current range has formula string value. Read-only. + + + + + True if all cells in the range contain formulas; False if + at least one of the cells in the range doesn't contain a formula. + Read-only Boolean. + + + + + Indicates whether range contains array-entered formula. Read-only. + + + + + Indicates whether the range contains number. Read-only. + + + + + Indicates whether cell contains formatted rich text string. + + + + + Indicates whether the range contains String. Read-only. + + + + + Indicates whether range has default style. False means default style. + Read-only. + + + + + Returns or sets the horizontal alignment for the specified object. + Read/write ExcelHAlign. + + + + + Returns or sets the indent level for the cell or range. Can be an integer + from 0 to 15 for Excel 97-2003 and 250 for Excel 2007. Read/write Integer. + + + + + Indicates whether the range is blank. Read-only. + + + + + Indicates whether range contains boolean value. Read-only. + + + + + Indicates whether range contains error value. + + + + + Indicates whether this range is grouped by column. Read-only. + + + + + Indicates whether this range is grouped by row. Read-only. + + + + + Indicates whether cell is initialized. Read-only. + + + + + Returns last column of the range. Read-only. + + + + + Returns last row of the range. Read-only. + + + + + Gets / sets double value of the range. + + + + + Format of current cell. Analog of Style.NumberFormat property. + + + + + Returns the number of the first row of the first area in + the range. Read-only Long. + + + + + Row group level. Read-only. + -1 - Not all rows in the range have same group level. + 0 - No grouping, + 1 - 7 - Group level. + + + + + Returns the height of all the rows in the range specified, + measured in points. Returns Double.MinValue if the rows in the specified range + aren't all the same height. Read / write Double. + + + + + For a Range object, returns an array of Range objects that represent the + rows in the specified range. + + + + + For a Range object, returns an array of Range objects that represent the + columns in the specified range. + + + + + Returns a Style object that represents the style of the specified + range. Read/write IStyle. + + + + + Returns name of the Style object that represents the style of the specified + range. Read/write String. + + + + + Gets / sets string value of the range. + + + + + Gets / sets time value of the range. + + + + + Returns or sets the value of the specified range. + Read/write Variant. + + + + + Returns the calculated value of a formula using the most current inputs. + + + + + Returns or sets the cell value. Read/write Variant. + The only difference between this property and the Value property is + that the Value2 property doesn't use the Currency and Date data types. + + + + + Returns or sets the vertical alignment of the specified object. + Read/write ExcelVAlign. + + + + + Returns a Worksheet object that represents the worksheet + containing the specified range. Read-only. + + + + + Gets / sets cell by row and column index. Row and column indexes are one-based. + + + + + Get cell range. Row and column indexes are one-based. Read-only. + + + + + Get cell range. Read-only. + + + + + Get cell range. Read-only. + + + + + Collection of conditional formats. + + + + + Data validation for the range. + + + + + Gets / sets string value evaluated by formula. + + + + + Gets / sets number value evaluated by formula. + + + + + Gets / sets number value evaluated by formula. + + + + + Returns the calculated value of the formula as a string. + + + + + Comment assigned to the range. Read-only. + + + + + Get the threaded comment. + + + + + String with rich text formatting. Read-only. + + + + + Indicates whether this range is part of merged range. Read-only. + + + + + Returns a Range object that represents the merged range containing + the specified cell. If the specified cell isn't in a merged range, + this property returns NULL. Read-only. + + + + + True if Microsoft Excel wraps the text in the object. + Read/write Boolean. + + + + + Indicates is current range has external formula. Read-only. + + + + + Represents ignore error options. If not single cell returs concatenateed flags. + + + + + Indicates whether all values in the range are preserved as strings. + + + + + Gets/sets built in style. + + + + + Represents range object for the single cell. Coordinates of such object can be changed. + There should be only one such object for single worksheet. + + + + + Resets row and column values. + + One-based row index of the new cell address. + One-based column index of the new cell address. + + + + Assigns integer value to the Merged region. + + Value to be assigned + + + + Assigns double value to the Merged region. + + Value to be assigned + + + + Assigns DateTime value to the Merged region. + + Value to be assigned + + + + Assigns bool value to the Merged region. + + Value to be assigned + + + + Assigns string value to the Merged region. + + Value to be assigned + + + + Returns a Range object that represents a range thats offset from the specified range. + + The number of rows (positive, negative, or 0 (zero)) by which the range is to be offset + The number of columns (positive, negative, or 0 (zero)) by which the range is to be offset + + + + + Resizes the specified range. + + The number of rows in new range + The number of columns in new range + + + + + Returns an enumerator that iterates through the Range. + + + + + + Initializes new instance of the object. + + Application object for the new object. + Parent object for the new object. + + + + Resets row and column values. + + One-based row index of the new cell address. + One-based column index of the new cell address. + + + + Set integer value + + + + + + Set double value + + + + + + Set date time value + + + + + + Set boolean value + + + + + + Set string value + + + + + + Summary description for PageSetupGroup. + + + + + Represents the page setup description. The PageSetup object + contains all page setup attributes (left margin, bottom margin, + paper size, and so on) as properties. + + + + + Returns or sets the height of the pages that the worksheet will be scaled + to when it is printed. Applies only to worksheets. Read/write Boolean. + + + To know more about page setting refer this link. + + The following code illustrates how to fit all rows on one page. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + //Sets the fit to page tall as true. + sheet.PageSetup.FitToPagesTall = 1; + sheet.PageSetup.FitToPagesWide = 0; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the width of the pages the worksheet will be scaled + to when it is printed. Applies only to worksheets. Read/write Boolean. + + + To know more about page settings refer this link. + + The following code illustrates how to fit all columns on one page. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + //Sets the fit to page wide as true. + sheet.PageSetup.FitToPagesWide = 1; + sheet.PageSetup.FitToPagesTall = 0; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + True if cell gridlines are printed on the page. Applies only to + worksheets. + + + To know more about page settings refer this link. + + The following code illustrates the use of PrintGridlines property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + //True to cell gridlines are printed on the page + sheet.PageSetup.PrintGridlines = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + True if row and column headings are printed with this page. Applies + only to worksheets. + + + To know more about page settings refer this link. + + The following code illustrates the use of PrintHeadings property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + //True to row and column headings are printed on page + sheet.PageSetup.PrintHeadings = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the range to be printed, as a string using A1-style + references in the language of the macro. Read / write . + + + To know more about page settings refer this link. + + The following code illustrates the use of PrintArea property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + //Sets the range to be printed + sheet.PageSetup.PrintArea = "A1:M20"; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the columns that contain the cells to be repeated + on the left side of each page, as a string in A1-style notation + in the language of the macro. Read / write . + + + To know more about page settings refer this link. + + The following code illustrates the use of PrintTitleColumns property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + //Sets the columns to be repeated on the left side of each page + sheet.PageSetup.PrintTitleColumns = "C1:C20"; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the rows that contain the cells to be repeated at + the top of each page, as a string in A1-style notation in the + language of the macro. Read / write . + + + To know more about page settings refer this link. + + The following code illustrates the use of PrintTitleRows property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + //Sets the rows to be repeated at the top of each page + sheet.PageSetup.PrintTitleRows = "A1:M1"; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether summary rows will appear below detail in outlines. To enable SummaryRowBelow property the page must be Portrait and property value must be 0 and property must be true. + + + To know more about page settings refer this link. + + The following code illustrates the use of IsSummaryRowBelow property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + //True to summary rows will appear below detail in outlines + sheet.PageSetup.IsSummaryRowBelow = true; + sheet.PageSetup.FitToPagesWide = 0; + sheet.PageSetup.Orientation = ExcelPageOrientation.Portrait; + sheet.PageSetup.IsFitToPage = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether summary columns will appear right of the detail in outlines. To enable SummaryColumnRight property the page must be Portrait and property value must be 0 and property must be true. + + + To know more about page settings refer this link. + + The following code illustrates the use of IsSummaryColumnRight property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + //True to summary columns will appear right of the detail in outlines + sheet.PageSetup.IsSummaryColumnRight = true; + sheet.PageSetup.Orientation = ExcelPageOrientation.Portrait; + sheet.PageSetup.FitToPagesTall = 0; + sheet.PageSetup.IsFitToPage = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether fit to page mode is selected. This property used to fit the page content before printing. + + + To know more about page settings refer this link. + + The following code illustrates the use of IsFitToPage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + // True to fit the content before printing + sheet.PageSetup.IsFitToPage = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Parent group of worksheets. + + + + + Initializes new instance and sets its application and parent properties. + + Application object for the new instance. + Parent object for the new instance. + + + + Looks for all necessary parent objects. + + + + + Indicates whether summary rows will appear below detail in outlines. + + + + + Returns or sets the number of pages tall the worksheet will be scaled + to when it is printed. Applies only to worksheets. Read / write int. + + + + + Returns or sets the number of pages wide the worksheet will be scaled + to when it is printed. Applies only to worksheets. Read / write int. + + + + + True if cell gridlines are printed on the page. Applies only to + worksheets. Read / write Boolean. + + + + + True if row and column headings are printed with this page. Applies + only to worksheets. Read / write Boolean. + + + + + Returns or sets the range to be printed, as a string using A1-style + references in the language of the macro. Read / write String. + + + + + Returns or sets the columns that contain the cells to be repeated + on the left side of each page, as a string in A1-style notation + in the language of the macro. Read / write String. + + + + + Returns or sets the rows that contain the cells to be repeated at + the top of each page, as a string in A1-style notation in the + language of the macro. Read / write String. + + + + + Indicates whether summary rows will appear below detail in outlines. + + + + + Indicates whether summary columns will appear right of the detail in outlines. + + + + + Indicates whether fit to page mode is selected. + + + + + True if elements of the document will be printed in black and white. + Read / write Boolean. + + + + + Returns or sets the size of the bottom margin, in inches. + Read / write Double. + + + + + Returns or sets the center part of the footer. Read / write String. + + + + + Gets / set image for center part of the footer. + + + + + Returns or sets the center part of the header. Read / write String. + + + + + Gets / set image for center part of the header. + + + + + True if the sheet is centered horizontally on the page when it is + printed. Read / write Boolean. + + + + + True if the sheet is centered vertically on the page when it is + printed. Read / write Boolean. + + + + + Number of copies to print. + + + + + True if the sheet will be printed without graphics. + Read / write Boolean. + + + + + Returns or sets the first page number that will be used when + this sheet is printed. If xlAutomatic, Microsoft Excel chooses the + first page number. The default is xlAutomatic. Read / write Long. + + + + + Returns or sets the distance from the bottom of the page to the footer, + in inches. Read / write Double. + + + + + Returns or sets the distance from the top of the page to the header, + in inches. Read / write Double. + + + + + Returns or sets the left part of the footer. Read / write String. + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + + + + + Gets / set image for left part of the footer. + + + + + Returns or sets the left part of the header. Read / write String. + + + + + Gets / set image for left part of the header. + + + + + Returns or sets the size of the left margin, in inches. + Read / write Double. + + + + + Returns or sets the order that Microsoft Excel uses to number + pages when printing a large worksheet. Read / write ExcelOrder. + + + + + Portrait or landscape printing mode. Read / write ExcelPageOrientation. + + + + + Returns or sets the size of the paper. Read / write ExcelPaperSize. + + + + + Returns or sets the way comments are printed with the sheet. + Read / write ExcelPrintLocation. + + + + + Sets or returns an ExcelPrintErrors constant specifying the type of + print error displayed. This feature allows users to suppress the + display of error values when printing a worksheet. Read / write. + + + + + True if cell notes are printed as end notes with the sheet. Applies + only to worksheets. Read / write Boolean. + + + + + Returns or sets the print quality. Read / write ushort. + + + + + Returns or sets the right part of the footer. Read / write String. + + + + + Returns or sets the right part of the header. Read / write String. + + + + + Gets / set image for right part of the footer. + + + + + Gets / set image for right part of the header. + + + + + Returns or sets the size of the right margin, in inches. + Read / write Double. + + + + + Returns or sets the size of the top margin, in inches. + Read / write Double. + + + + + Returns or sets a percentage (between 10 and 400 percent) by which + Microsoft Excel will scale the worksheet for printing. Applies only + to worksheets. Read / write ushort. + + + + + Indicates whether the header and footer margins are aligned with page margins. Read/Write Boolean. + + + + + True - The header / footer of the first page is different with other pages.False otherwise. + + + + + True - The header/footer odd pages are differed with even page. False otherwise. + + + + + Indicates whether the header and footer are scaled with document scaling.Read/Write Boolean. + + + + + Gets / sets values for even page. + + + + + Gets / sets values for First page. + + + + + Gets / sets background image. + + + + + Summary description for RichTextStringGroup. + + + + + Represents a Rich Text String that can be used to apply several styles inside a single cell. + + + + + Returns font which is applied to character at the specified position. + + Character index. + Font which is applied to character at the specified position. + Since the object returned by GetFont method is read-only + Argument out of range exception will occur if it is modified. + + Font style can be changed by cloning the font obtained using GetFont method and to be set using + method. + + + The following code illustrates how to access GetFont method. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set text + worksheet["C2"].Text = "Sample text"; + + //Set RichText + IRichTextString richText = worksheet["C2"].RichText; + + //Get font + IFont font = richText.GetFont(1); + + //Get font name + Console.Write(font.FontName); + + //Save and Dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Calibri + + + + + + Sets font for range of characters. + + First character of the range. + Last character of the range. + Font to set. + + To know more about Rich-Text refer Rich-Text Formatting + + + The following code illustrates how a font can be set to a substring of the RichText. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set rich text + IRichTextString richText = worksheet["C2"].RichText; + + //Set text + richText.Text = "Sample text"; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set rich text font + richText.SetFont(0, 5, font); + + //Set color + font.Color = ExcelKnownColors.Blue; + + //Set rich text font + richText.SetFont(6, 10, font); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Clears string formatting. + + + The following code illustrates how to clear the formatting applied to the RichText. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set rich text + IRichTextString richText = worksheet["C2"].RichText; + + //Set text + richText.Text = "Sample text"; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set rich text font + richText.SetFont(0, 5, font); + + //Set color + font.Color = ExcelKnownColors.Blue; + + //Set rich text font + richText.SetFont(6, 10, font); + + //Clear format + richText.ClearFormatting(); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Clears text and formatting. + + + The following code illustrates how to clear RichText's text and formatting applied. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set text + worksheet["C2"].Text = "Sample text"; + + //Set RichText + IRichTextString richText = worksheet["C2"].RichText; + + //Get font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set format to RichText + richText.SetFont(0, 5, font); + + //Clear RichText + richText.Clear(); + + //Save and Dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Appends rich text string with specified text and font. + + Text to append. + Font to use. + + The following code illustrates how to append RichText to an existing RichText. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set rich text + IRichTextString richText = worksheet["C2"].RichText; + + //Set text + richText.Text = "Sample"; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set rich text font + richText.SetFont(0, 5, font); + + //Set color + font.Color = ExcelKnownColors.Blue; + + //Append text + richText.Append("Text", font); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets text of the string. + + + The following code illustrates how to set Text for the RichText. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set rich text + IRichTextString richText = worksheet["C2"].RichText; + + //Set text + richText.Text = "Sample text"; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set rich text font + richText.SetFont(0, 5, font); + + //Set color + font.Color = ExcelKnownColors.Blue; + + //Set rich text font + richText.SetFont(6, 10, font); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Returns text in rtf format. Read-only. + + + The following code illustrates how to access the RtfText of the RichText. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set rich text + IRichTextString richText = worksheet["C2"].RichText; + + //Set text + richText.Text = "Sample"; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set rich text font + richText.SetFont(0, 5, font); + + //Get rtf text string + Console.Write(richText.RtfText); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset1 Calibri;}}{\colortbl;\red255\green0\blue0;}{\f0\fs22\cf1\u83*\u97*\u109*\u112*\u108*\u101*}} + + + + + + Indicates whether rich text string has formatting runs. Read-only. + + + The following code illustrates how to access IsFormatted property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set rich text + IRichTextString richText = worksheet["C2"].RichText; + + //Set text + richText.Text = "Sample"; + + //Set font + IFont font = style.Font; + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set rich text font + richText.SetFont(0, 5, font); + + //Check IsFormatted + Console.Write(richText.IsFormatted); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Parent group of ranges. + + + + + Represents an RTF string. + + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + + + + Searches for all necessary parent objects. + + + + + Returns font which is applied to character at the specified position. + + Character index. + Font which is applied to character at the specified position. + + + + Sets font for range of characters. + + First character of the range. + Last character of the range. + Font to set. + + + + Clears string formatting. + + + + + Appends rich text string with specified text and font. + + Text to append. + Font to use. + + + + Clears text and formatting. + + + + + + + + + + + + + + + Returns single RichTextString from the group. Read-only. + + + + + Returns number of elements in the group. Read-only. + + + + + Gets / sets text of the string. + + + + + Returns text in rtf format. Read-only. + + + + + Indicates whether rich text string has formatting runs. Read-only. + + + + + Summary description for StyleGroup. + + + + + Parent range group. + + + + + Font group. + + + + + Borders group. + + + + + Creates new instance of the group. + + Application object for the new group. + Parent object for the new group. + + + + Searches for all necessary parent objects. + + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object. + + + + + Returns single entry from the group. Read-only. + + + + + Returns number of elements in the group. Read-only. + + + + + Returns parent workbook object. Read-only. + + + + + Returns a Borders collection that represents the borders of a + style or a range of cells (including a range defined as part of + a conditional format). + + + + + True if the style is a built-in style. Read-only Boolean. + + + + + Gets / sets fill pattern. + + + + + Gets / sets index of fill background color. + + + + + Gets / Sets fill background color. + + + + + Gets / sets index of fill foreground color. + + + + + Gets / sets fill foreground color. + + + + + Returns a Font object that represents the font of the specified + object. + + + + + Returns Interior object that represents interior of the specified object. + + + + + True if the formula will be hidden when the worksheet is protected. + Read/write Boolean. + + + + + Returns or sets the horizontal alignment for the specified object. + For all objects, this can be one of the following ExcelHAlign constants. + Read/write ExcelHAlign. + + + + + True if the style includes the AddIndent, HorizontalAlignment, + VerticalAlignment, WrapText, and Orientation properties. + Read/write Boolean. + + + + + True if the style includes the Color, ColorIndex, LineStyle, + and Weight border properties. Read/write Boolean. + + + + + True if the style includes the Background, Bold, Color, + ColorIndex, FontStyle, Italic, Name, OutlineFont, Shadow, + Size, Strikethrough, Subscript, Superscript, and Underline + font properties. Read/write Boolean. + + + + + True if the style includes the NumberFormat property. + Read/write Boolean. + + + + + True if the style includes the Color, ColorIndex, + InvertIfNegative, Pattern, PatternColor, and PatternColorIndex + interior properties. Read / write Boolean. + + + + + True if the style includes the FormulaHidden and Locked protection + properties. Read/write Boolean. + + + + + Returns or sets the indent level for the style. Read/write. + + + + + True if the object is locked, False if the object can be + modified when the sheet is protected. Read/write Boolean. + + + + + Returns or sets the name of the object. Read-only String. + + + + + Returns or sets the format code for the object. Read/write String. + + + + + Returns or sets the format code for the object. Read/write String. + + + + + Gets / sets index of the number format. + + + + + Returns object that describes number format. Read-only. + + + + + Text rotation angle: + 0 Not rotated + 1-90 1 to 90 degrees counterclockwise + 91-180 1 to 90 degrees clockwise + 255 Letters are stacked top-to-bottom, but not rotated. + + Thrown when value is more than 0xFF. + + + + True if text automatically shrinks to fit in the available + column width. Read/write Boolean. + + + + + Returns or sets the vertical alignment of the specified object. + Read/write ExcelVAlign. + + + + + True if Excel wraps the text in the object. + Read/write Boolean. + + + + + Indicates whether style is initialized (differs from Normal style). + Read-only. + + + + + Text direction, the reading order for far east versions. + + + + + If true then first symbol in cell is apostrophe. + + + + + For far east languages. Supported only for format. Always False for US. + + + + + Gets / sets index of fill background color. + + + + + Gets / Sets fill background color. + + + + + Gets / sets index of fill foreground color. + + + + + Returns or sets the cell shading color. + + + + + Gets value indicating whether format was modified, compared to parent format. + + + + + Gets whether borser is present. + + + + + Gets format index in m_book.InnerFormats. + + + + + Represents group of worksheets. + + + + + Represents a worksheet group. + + + + + Adds new worksheet to the collection. + + Worksheet to add. + Index of the added worksheet. + When sheet is Null. + + + + Returns single entry from the collection. Read-only. + + + + + Indicates whether collection is empty. Read-only. + + + + + Number of selected worksheets. + + + + + Parent workbook. + + + + + Page setup. + + + + + Used range. + + + + + Migrant range - row and column of this range object can be changed by user. + + + + + Represents the slicers in the worksheet. + + + + + Represents the scenarios in the worksheet. + + + + + Represents the threaded comments collection in the worksheet + + + + + Creates new instance of the worksheet group. + + Application object for the new group. + Parent object for the new group. + + + + Searches for all necessary parent objects. + + + + + Adds new worksheet to the collection. + + Worksheet to add. + Index of the added worksheet. + When sheet is Null. + + + + Saves worksheet with specified filename. + + File to save. + + + + Saves worksheet as stream. + + Stream to save. + + + + Saves worksheet with specified filename and .. + + File to save. + Save Options + + + + Saves worksheet as stream with the specified . + + Stream to save. + Save Options + + + + Removes worksheet from the collection. + + Worksheet to remove. + When sheet is Null. + + + + Selects single tab sheet. + + Sheet to select. + + + + Creates migrant range. + + + + + Enables the calculation support. + + Enabling this method will initialize objects and retrieves calculated values of formulas in a worksheet. + + + + + Disables the calculation support in this workbook and disposes of the associative objects. + + + + + Returns the formula string if the cell contains a formula, or the value if + the cell cantains anything other than a formula. + + The row of the cell. + The column of the cell. + The formula string or value. + + + + Sets the value of a cell. + + The value to be set. + The row of the cell. + The column of the cell. + + + + Not implemented. + + + + + Raises the event. + + The row of the change. + The column of the change. + The changed value. + + + + Makes the current sheet the active sheet. Equivalent to clicking the + sheet's tab. + + + + + Copies worksheet data to the clipboard. + + + + + Import XML document with specified cell position to the worksheet using file path. + + FilePath of the speciifed xml file. + Row where the data to be imported. + Column where the data to be imported. + + + + Imports XML data into a worksheet at the specified row and column from a given XML data stream. + + Stream data of the xml file. + Row where the data to be imported. + Column where the data to be imported. + The stream should be passed as file stream to bind the xml + + + + + Clears worksheet data. Removes all formatting and merges. + + + + + Clears the worksheet data. + + + + + Checks whether the specified cell is initialized or accessed. + + One-based row index of the cell. + One-based column index of the cell. + Value indicating whether the cell was initialized or accessed by the user. + + + + Filters or copies data from a list based on a criteria range.. + + Whether filter in the place or copy to another place. + The filter range. + The criteria range. + The destination range for the copied rows if ExcelFilterAction is FilterCopy. Otherwise, this argument is ignored. + True to filter unique records; Otherwise filters all the records that meet the criteria. The default value is False. + + + + Creates a new instance of the . + + New instance of ranges collection. + + + + Creates a named ranges with the specified named range's value as a name for the specified range. + + Existing named ranged. + Address of the named range to be created. + True if the named range values are vertically placed in the sheet. + This method is used to access the discontinuous ranges. + + + + Create an instance of that can be used for template markers processing. + + Object that can be used for template markers processing. + + + + Returns True if the specified column is visible to end user. + + One-based column index. + True if column is visible; otherwise, False. + + + + Shows the specified column. + + Index at which the column should be hidden. + True - Column is visible; False - hidden. + + + + Hides the specified column. + + One-based column index. + + + + Hides the specified row. + + One-based row index. + + + + Returns True if the specified row is visible to end user. + + One-based row index. + True if row is visible; otherwise, False. + + + + Shows or Hides the specified row. + + Index at which the row should be hidden. + True - Row is visible; False - hidden. + + + + Shows or Hides the specified range. + + Range specifies the particular range to show / hide. + True - Row is visible; False - hidden. + + + + Shows/ Hides the collection of range. + + Ranges specifies the range collection. + True - Row is visible; false - hidden. + + + + Shows or Hides an array of range. + + Ranges specifies the range array. + True - Row is visible; False - hidden. + + + + Inserts an empty row in the specified row index. + + Index at which new row should be inserted. + + + + Inserts an empty rows in the specified row index based on row count. + + Index at which new row should be inserted. + Number of rows to insert. + + + + Inserts an empty row in the specified row index with specified based on row count. + + Index at which new row should be inserted. + Number of rows to insert. + Insert options. + + + + Inserts an empty column for the specified column index. + + Index at which new column should be inserted. + + + + Inserts an empty column in the specified column index based on column count. + + Index at which new column should be inserted. + Number of columns to insert. + + + + Inserts an empty column with default formatting (without formulas update). + + Index at which new column should be inserted. + Number of columns to insert. + Insert options. + + + + Removes specified row (without updating formulas). + + One-based row index to remove. + + + + Removes specified row (without updating formulas). + + One-based row index to remove. + Number of rows to remove. + + + + Removes the specified column. + + One-based column index. + + + + Removes the specified number of columns from the given index. + + One-based column index. + Number of columns to remove. + + + + Imports an array of objects into a worksheet with specified alignment. + + Array of object. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of string values into a worksheet. + + Array of string value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of integer values into a worksheet. + + Array of int value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of double values into a worksheet. + + Array of double value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of DateTime values into a worksheet. + + Array of datetime value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of objects into a worksheet. + + Array of object. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + Number of imported rows. + + + + Imports data from class objects into a worksheet with specified row and column. + + IEnumerable object with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if class properties names must be imported. + Number of imported rows. + + + + Imports data from class objects into a worksheet with specified row and column along with import data options. + + IEnumerable object with desired data. + Import data options for when importing nested collection data. + Number of imported rows. + + + + Imports data from class objects into a worksheet with specified row and column along with import data options. + + IEnumerable object with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if class properties names must be imported. + TRUE if parent class properties names must be imported. + Import data options for when importing nested collection data. + Indicates whether XlsIO should preserve column types from Data. + Number of imported rows. + + + + Imports data from DataReader into worksheet from the specified row and column. + + The or object which contains data. + TRUE if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Imports data from DataReader into worksheet from the specified row and column along with save option. + + The or object which contains data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data must be serialized directly on save. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Imports data from DataReader into worksheet from the specified row and column along with the preserve type. + + The or object which contains data. + TRUE if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + + Indicates whether XlsIO should preserve column types from DataReader. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + + Imports data from a DataColumn into a worksheet. + + DataColumn with desired data. + True if column name must be imported. + Row of the first cell where Data Table should be imported. + Column of the first cell where Data Table should be imported. + Number of imported rows. + + + + Imports data from a DataColumn into a worksheet. + + DataColumn with desired data. + True if column name must be imported. + Row of the first cell where Data Table should be imported. + Column of the first cell where Data Table should be imported. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + + + + Imports data from MS DataGrid into worksheet. + + DataGrid with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + Imports data from MS DataGrid (web) into worksheet. + + DataGrid with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + Imports data from MS GridView into worksheet. + + GridView with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + Imports data from MS DataGridView into worksheet. + + DataGridView with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + + Imports data from a DataTable into a worksheet with specified row and column along with the preserve type. + + DataTable with desired data. + True if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into a worksheet with the specified row and column along with save option. + + Data Table with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data table must be serialized directly on save. + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into a worksheet with the specified row and column along with save option. + + Data Table with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data table must be serialized directly on save. + TRUE if column names must be imported. + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into a worksheet with the specified range. + + DataTable with desired data. + True if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into a worksheet with specified range along with the specified preserve type. + + DataTable with desired data. + True if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Maximum number of rows to import. + Maximum number of columns to import. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from DataTable into the specified NamedRange of current worksheet. + + Data Table with desired data. + Represents named range. + TRUE if column names must be imported. + Number of imported rows. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Imports data from DataTable into the specified NamedRange of current worksheet with row and column offset. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Data Table with desired data. + Represents named range. + TRUE if column names must also be imported. + Represents row offset into named range to import. + Represents column offset into named range to import. + Number of imported rows. + + + + Imports data from DataTable into the specified NamedRange of current worksheet with row and column offset. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + DataTable with desired data. + Represents named range. + TRUE if column names must be imported. + Represents row offset into named range to import. + Represents column offset into named range to import. + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + + + + Imports data from DataReader into the specified NamedRange of current worksheet with row and column offset. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + DataTable with desired data. + Represents named range. + TRUE if column names must be imported. + Represents row offset into named range to import. + Represents column offset into named range to import. + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + + + + Imports data from a DataView into worksheet with the specified row and column. + + DataView with desired data. + TRUE if column names must also be imported. + + Row of the first cell where Data View should be imported. + + + Column of the first cell where Data View should be imported. + + Number of imported rows. + + + + Imports data from a DataView into a worksheet with the specified range and preserve type. + + DataView with desired data. + TRUE if column names must be imported. + + Row of the first cell where DataView should be imported. + + + Column of the first cell where DataView should be imported. + + Indicates whether to preserve column types. + Number of imported rows. + + + + Imports data from a DataView into a worksheet with specified row, column and preserve type. + + Data View with desired data. + TRUE if column names must be imported. + + Row of the first cell where DataView should be imported. + + + Column of the first cell where DataView should be imported. + + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + + + + Imports data from a DataView into a worksheet with specified range and preserve type. + + DataView with desired data. + TRUE if column names must also be imported. + + Row of the first cell where DataView should be imported. + + + Column of the first cell where DataView should be imported. + + Maximum number of rows to import. + Maximum number of columns to import. + Indicates whether XlsIO should try to preserve types in Data Table, i.e. if it is set to False (default) and in Data Table we have in + string column value that contains only numbers, it would be converted to number. + Number of imported rows. + + + + Removes panes from a worksheet. + + + + + Exports worksheet data in the specified row and column into a DataTable. + + Row of the first cell from where DataTable should be exported. + Column of the first cell from where DataTable should be exported. + Maximum number of rows to export. + Maximum number of columns to export. + Export options. + DataTable with worksheet data. + + + + + Exports worksheet data in the specified range into a DataTable. + + Range to export. + Export options. + DataTable with worksheet data. + + + + Exports worksheet data in the specified row and column into a DataTable based on the export Options. + + Range to export. + Export options. + Export data options + DataTable with worksheet data. + + + + + Exports worksheet data into a DataTable only for Pivot engine. + + Range to export. + Export options. + DataTable with worksheet data. + + + + Exports worksheet data in the specified row and column and get as a list of CLR objects. + + Row of the first cell should be exported. + Column of the first cell should be exported. + LastRow is used to find the upto lastRow of data to export. + lastColumn is used to find the upto lastColumn of data to export. + clrObject List with worksheet data. + + + + Exports worksheet data in the specified row and column and get as a list of CLR objects.copyran + + Row of the first cell should be exported. + Column of the first cell should be exported. + LastRow is used to find the upto lastRow of data to export. + lastColumn is used to find the upto lastColumn of data to export. + Property names mapping collection. You should give headers as key and properties names as value to the dictionary. + clrObject List with worksheet data. + + + + Protects worksheet's content with password. + + Password to protect with. + + + + Protects current worksheet. + + Represents password to protect. + Represents params to protect. + + + + Unprotects worksheet's content with password. + + Password to unprotect. + + + + Intersects two ranges. + + First range to intersect. + Second range to intersect. + Intersection of two ranges or NULL if there is no range intersection. + + When range1 or range2 is NULL. + + + + + Merges two ranges. + + First range to merge. + Second range to merge. + Merged ranges or NULL if is not able to merge ranges. + + When range1 or range2 is NULL. + + + + + Changes the height of the specified row to achieve the best fit. + + One-based row index. + + + + Changes the width of the specified column to achieve the best fit. + + One-based column index. + + + + Replaces string with the specified another string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + + Replaces string with the specified string value based on the given . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + + + + Replaces string with the specified double value. + + String value to replace. + The string to replace all occurrences of oldValue. + + + + Replaces the string with the specified DateTime value. + + The string to be replaced. + The DateTime to replace all occurrences of oldValue. + + + + Replaces specified string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces specified string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces specified string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces string with the specified datatable value. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Replaces string with the specified datacolumn value. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Removes worksheet from parent worksheet collection. + + + + + Moves worksheet to the specified index. + + New index of the worksheet. + + + + Converts the specified column width from points to pixels. + + Width in points. + Column width in pixels. + + + + Converts the specified column width from pixels to points. + + Width in pixels. + Width in points. + + + + Sets column width for the specified column. + + One-based column index. + Width to set. + + + + Sets column width in pixels for the specified column. + + One-based column index. + Width in pixels to set. + + + + Sets column width in pixels to the given number of columns from the specified column index. + + Start Column index + No of Column to be set width + Value in pixel to set + + + + Sets row height for the specified row. + + One-based row index. + Height to set. + + + + Sets row height in pixels for the specified row. + + One-based row index. + Value in pixels to set. + + + + Sets row height in pixels to the given number of rows from the specified row index. + + Starting row index. + No of Row to be set width. + Value in pixels to set. + + + + Returns the width of the specified column. + + One-based column index. + Width of the specified column. + + + + Returns the width of the specified column in pixels. + + One-based column index. + Width in pixels of the specified column. + + + + Returns the height of the specified row. + + Otherwise it gets the StandardHeight + One-based row index. + + Returns height of the specified row. + Otherwise returns StandardHeight. + + + + + Returns the height of the specified row in pixels. + + Otherwise it gets the StandardHeight in pixels + One-based row index. + + Returns height of the specified row in pixels. + Otherwise returns StandardHeight. + + + + + Returns the first occurrence of the specified string value with the specified . + + Value to search. + Type of value to search. + Returns the first cell with a specified string value, or null if value was not found. + + + + Returns the first occurrence of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search the value. + Returns the first cell with a specified string value and specified find options , or null if value was not found. + + + + Returns the first occurrence that starts with the specified string value. + + Value to search. + Type of value to search. + Returns the first occurrence that starts with the specified string value, or null if value was not found. + + + + Returns the first occurrence that starts with the specified string value which ignores the case. + + Value to search. + Type of value to search. + true to ignore case wen comparing this string to the value;otherwise,false + Returns the first occurrence that starts with the specified string value, or null if value was not found. + + + + Returns the first occurrence that ends with the specified string value. + + Value to search. + Type of value to search. + Returns the first occurrence that ends with the specified string value, or null if value was not found. + + + + Returns the first occurrence that ends with the specified string value which ignores the case. + + Value to search. + Type of value to search. + True to ignore case when comparing this string to the value; otherwise, False. + Returns the first occurrence that ends with the specified string value, or null if value was not found. + + + + Returns the first occurrence of the specified double value with the specified . + + Value to search. + Type of value to search. + Returns the first cell with a specified double value, or null if value was not found. + + + + Returns the first occurrence of the specified bool value. + + Value to search. + Returns the first cell with a specified bool value, or null if value was not found. + + + + Returns the first occurrence of the specified DateTime value. + + Value to search. + Returns the first cell with a specified DateTime value, or null if value was not found. + + + + Returns the first occurrence of the specified TimeSpan value. + + Value to search. + Returns the first cell with a specified TimeSpan value, or null if value was not found. + + + + Returns the cells of the specified string value with the specified . + + Value to search. + Type of value to search. + Returns the cells with a specified string value, or null if value was not found. + + + + Returns the cells of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search. + + Returns the cells with a specified string value and specified find options , or null if value was not found. + + + + + Returns the cells of the specified double value with the specified . + + Value to search. + Type of value to search. + All found cells, or Null if value was not found. + + + + Returns the cells of the specified bool value. + + Value to search. + Returns the cells with a specified bool value, or null if value was not found. + + + + Returns the cells of the specified DateTime value. + + Value to search. + Returns the cells with a specified DateTime value, or null if value was not found. + + + + Returns the cells of the specified TimeSpan value. + + Value to search. + Returns the cells with a specified TimeSpan value, or null if value was not found. + + + + Saves worksheet with specified file name using separator. Used only for CSV files. + + File to save. + Current separator. + + + + Saves worksheet using separator with specified file name and encoding. Used only for CSV files. + + File to save. + Current separator. + Encoding to use. + + + + Saves worksheet as stream using separator. Used only for CSV files. + + Stream to save. + Current separator. + + + + Saves worksheet as stream using separator with specified encoding. Used only for CSV files. + + Stream to save. + Current separator. + Encoding to use. + + + + Sets the default column style for the specified column. + + One-based column index. + Default style. + + + + Sets the default column style for the specified starting and ending column. + + Starting column index. + Ending column index. + Default style. + + + + Sets the default row style for the specified row. + + One-based row index. + Default style. + + + + Sets the default row style for the specified starting and ending row. + + Starting row index. + Ending row index. + Default style. + + + + Returns default row style for the specified row. + + One-based row index. + Default row style for the specified row or null if style wasn't set. + + + + Returns the default column style for the specified column. + + One-based column index. + Default column style for the specified column or null if style wasn't set. + + + + Frees range object. + + Range to remove from internal cache. + + + + Frees range object for the specified row and column. + + One-based row index of the range object to remove from internal cache. + One-based column index of the range object to remove from internal cache. + + + + Sets value for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets number for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets boolean value for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets text for the specified cell. + + One-based row index. + One-based column index. + Text to set. + + + + Sets formula for the specified cell. + + One-based row index. + One-based column index. + Formula to set. + + + + Sets error for the specified cell. + + One-based row index. + One-based column index. + Error to set. + + + + Blanks the specified cell. + + One-based row index. + One-based column index. + + + + Sets formula number value for the specified cell. + + One-based row index. + One-based column index. + Represents formula number value. + + + + Sets formula error value for the specified cell. + + One-based row index. + One-based column index. + Represents formula error value. + + + + Sets formula bool value for the specified cell. + + One-based row index. + One-based column index. + Represents formula bool value. + + + + Sets formula string value for the specified cell. + + One-based row index. + One-based column index. + Represents formula string value. + + + + Returns string value from the specified row and column. + + One-based row index. + One-based column index. + String contained by the cell. + + + + Returns number value from the specified row and column. + + One-based row index. + One-based column index. + Number contained by the cell. + + + + Returns formula value from specified row and column. + + One-based row index. + One-based column index. + Indicates whether R1C1 notation should be used. + Returns formula string. + + + + Returns error value from the specified row and column. + + One-based row index. + One-based column index. + Returns error value or null. + + + + Returns bool value from the specified row and column. + + One-based row index. + One-based column index. + Returns found bool value. If cannot found returns false. + + + + Returns formula string value from the specified row and column. + + One-based row index. + One-based column index. + String contained by the cell. + + + + Returns formula number value from the specified row and column. + + One-based row index. + One-based column index. + Number contained by the cell. + + + + Returns formula error value from the specified row and column. + + One-based row index. + One-based column index. + Returns error value or null. + + + + Returns formula bool value from the specified row and column. + + One-based row index. + One-based column index. + True if bool value is found. otherwise False. + + + + Converts the specified range into image. Default image type is Bitmap. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + + Converts the specified range into image with the specified type. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Type of the image to create. + Output stream. It is ignored if null. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + + Converts the specified range into Metafile. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Metafile EmfType. + Output stream. It is ignored if null. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + + Converts the specified range into image along with Metafile. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Type of the image to create. + Output stream. It is ignored if null. + Metafile EmfType. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + + Calculate all the formulas in worksheet. + + + + + Selects current tab sheet. + + + + + Unselects current tab sheet. + + + + + Event handler for Inserted event. + + Event sender. + Event arguments. + + + + Event handler for Removing event. + + Event sender. + Event arguments. + + + + This method is called before clearing all elements. + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Performs additional operations before the Clear method. + + + + + Imports HTML table of a HTML file into worksheet from the specified row and column. + + Specifies the HTML file. + Specifies the starting row index. + Specifies the starting column index. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + sheet.ImportHtmlTable("HTMLtable.html", 1, 1); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports HTML table of a file stream into worksheet from the specified row and column. + + Specifies the HTML filestream. + Specifies the starting row index. + Specifies the starting column index. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + FileStream html = new FileStream("HTMLtable.html", FileMode.Open, FileAccess.ReadWrite); + + sheet.ImportHtmlTable(html, 1, 1); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports tables from HTML document into Excel worksheet from the specified row and column with HTML import options. + + Specifies the HTML file. + Specifies the starting row index. + Specifies the starting column index. + Specifies the html import options. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + sheet.ImportHtmlTable("HTMLtable.html", 1, 1, HtmlImportOptions.DetectFormulas); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports HTML table of a file stream into worksheet from the specified row and column. + + Specifies the HTML filestream. + Specifies the starting row index. + Specifies the starting column index. + Specifies the html import options. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + FileStream html = new FileStream("HTMLtable.html", FileMode.Open, FileAccess.ReadWrite); + + sheet.ImportHtmlTable(html, 1, 1, HtmlImportOptions.DetectFormulas); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Occurs when the value of a cell changes. + + + + + Event to choose an action while exporting data from Excel to data table. + + + + + Event raised when an unknown function is encountered. + + + + + Indicates whether collection is empty. Read-only. + + + + + Returns parent workbook. Read-only. + + + + + Returns the slicers present in the worksheet + + + + + Get the scenarios collection for the current worksheet. + + + + + Get the threaded comments collection for a current worksheet. + + + + + Gets or sets the a object associated with implementation. + + + + + An event raised on the IWorksheet whenever a value changes. + + + + + Gets the auto filters collection in the worksheet. Read-only. + + + + + Get parent workbook of current worksheet. Read-only. + + + + + Gets the used cells in the worksheet. Read-only. + + + + + Gets or sets the view setting of the worksheet. + + + + + Gets the sparkline groups. + + The sparkline groups. + + + + Gets or sets a value that indicates whether page breaks (both automatic and manual) + on the worksheet are displayed. + + + + + Gets whether the OLE object is present in the worksheet. Read-only. + + + True if this instance is OLE object; otherwise, False. + + + + + Gets the index number of the worksheet within the collection of + worksheet. Read-only. + + + + + Gets index in the parent ITabSheets collection. Read-only. + + + + + True if objects are protected. Read-only. + + + + + True if the scenarios of the current sheet are protected. Read-only. + + + + + Gets all the merged ranges in the worksheet. Read-only. + + + + + Returns or sets the name of the object. Read / write String. + + + + + Gets a Names collection that represents + the worksheet-specific names (names defined with the "WorksheetName!" + prefix) in the worksheet. Read-only. + + + + + Name that is used by macros to access the workbook items. + + + + + + Gets a object that contains all the page setup settings + for the specified object. Read-only. + + + + + Gets a Range object that represents a cell or a range of cells in the worksheet. + + + + + Gets a Range object that represents the rows in the specified worksheet. Read-only. + + + + + Gets a Range object that represents all the columns in the specified worksheet. Read-only. + + + + + Gets or sets the standard (default) height of all the rows in the worksheet, + in points. + + + + + Gets or sets the standard (default) height option flag. + + + Which defines that standard (default) row height and book default font height do not match. + + + + + Gets or sets the standard (default) width of all the columns in the + worksheet. + + + + + Gets the worksheet type. Read-only ExcelSheetType. + + + + + Gets a Range object that represents the used range on the + specified worksheet. Read-only. + + + + + Gets or sets the value that represents zoom factor of document. Value must be in range from 10 till 400. + + + + + Control visibility of worksheet to end user. + + + + + Gets or sets the position of vertical split in the worksheet. + + + Position of the vertical split (px, 0 = No vertical split): + Unfrozen pane: Width of the left pane(s) (in twips = 1/20 of a point) + Frozen pane: Number of visible columns in left pane(s) + + + + + Gets or sets the position of horizontal split in the worksheet. + + + Position of the horizontal split (by, 0 = No horizontal split): + Unfrozen pane: Height of the top pane(s) (in twips = 1/20 of a point) + Frozen pane: Number of visible rows in top pane(s) + + + + + Gets or sets the first visible row index. + + + + + Gets or sets the first visible column index. + + + + + Gets or sets index of the active pane. + + + + + True if zero values to be displayed. otherwise, False. + + + + + True if grid lines are visible. otherwise, False. + + + + + Gets or sets the color of the Grid line in the worksheet. + + + + + True if row and column headers are visible. otherwise, False. + + + + + Gets a that represents the vertical page + breaks on the sheet. Read-only. + + + + + Gets a that represents the horizontal + page breaks in the worksheet. Read-only. + + + + + True if all values in the worksheet are preserved as strings. otherwise, False. + + + + + Indicates if the worksheet is password protected. + + + + + Gets a comments collection in the worksheet. + + + + + Gets or sets cell range by row and column index. Row and column indexes are one-based. + + One-based row index. + One-based column index. + + + + Get cell Range. Row and column indexes are one-based. Read-only. + + First row index. One-based. + First column index. One-based. + Last row index. One-based. + Last column index. One-based. + + + + Gets cell Range. Read-only. + + + + + Gets cell Range with R1C1Notation flag. Read-only. + + + + + Gets a hyperlink collections in the worksheet. Read-only. + + + + + Gets all not empty or accessed cells. Read-only. + + + WARNING: This property creates Range object for each cell in the worksheet + and creates new array each time user calls to it. It can cause huge memory + usage especially if called frequently. + + + + + Gets a collection of custom properties of the worksheet. Read-only. + + + + + Gets instance of migrant range. Read-only. + + The IMigrantRange interface can also be used to access a single cell + or group of cells and manipulate it. You can prefer IMigrantRange instead of IRange + while writing large amount of data which is an optimal way. + Row and Column index can be changed by using method. + + + + + Indicates whether all created range objects should be cached or not. + + + + + Gets protected options. Read-only. For sets protection options use "Protect" method. + + + + + Indicates is current sheet is protected. + + + + + Gets or sets the top visible row of the worksheet. + + + + + Gets or sets the left visible column of the worksheet. + + + + + Gets or sets whether used range should include cells with formatting. + + + There are two different algorithms to create UsedRange object: + 1) Default. This property = true. The cell is included into UsedRange, + even data is empty (maybe some formatting + changed, maynot be - cell was accessed and record was created). + 2) This property = false. In this case XlsIO tries to remove empty rows and + columns from all sides to make UsedRange smaller. + + + + + Gets a collection of pivot tables in the worksheet. Read-only. + + + + + Gets a collection of list objects in the worksheet. Read-only. + + + + + Gets a collection of OleObjects in the worksheet. + + The OLE objects. + + + + Defines whether freezed panes are applied. + + + + + Gets split cell range. + + + + + Gets or Sets Tab color. + + + + + Gets / sets tab color. + + + + + Gets charts collection in the worksheet. Read-only. + + + + + Gets pictures collection in the worksheet. Read-only. + + + + + Gets shape collection in the worksheet. + + + + + Indicates whether worksheet is displayed right to left. + + + + + Indicates whether tab of this sheet is selected. Read-only. + + + + + Gets inner textboxes collection. Read-only. + + + + + Gets inner checkboxes collection in the worksheet. Read-only. + + + + + Gets inner option buttons collection in the worksheet. Read-only. + + + + + Returns collection with all comboboxes inside this worksheet. Read-only. + + + + + Summary description for HeaderFooterShapesCollection. + + + + + Summary description for ShapeCollectionBase. + + + + + Default id increment when group changes. + + + + + Shapes count would be rounded to this value. + + + + + Container of all worksheet's shapes. + + + + + Parent worksheet. + + + + + Index of the collection. + + + + + Id of the last shape. + + + + + Id of the first shape. + + + + + + + + + + + + + + + + + Parse options. + + + + Initializes collection. + + + + + Searches for all necessary parent objects. + + + + + Parses shapes group container. + + Container to parse. + Parse options. + + + + Parses shapes group description record. + + Record to parse. + + + + Parses MsoDrawing records. + + Array of MsoDrawing records. + Parse options. + + + + Parses MsofbtDgContainer. + + Container to parse. + Parse options. + + + + Parses MsofbtDg record. + + Record to parse. + + + + Adds shape copy to the collection. + + Shape to copy. + Added shape. + + + + Adds shape copy to shapes collection. + + Shape to copy. + Dictionary with new names of worksheets. + Dictionary with new font indexes. + Added shape. + + + + Update Marco name for the shape. + + Source shape. + Shape to be updated. + Current Macro name + + + + + Adds shape copy to the collection. + + Shape to copy. + Added shape. + + + + Adds shape copy to shapes collection. + + Shape to copy. + Dictionary with new names of worksheets. + List with new font indexes. + Added shape. + + + + Adds new shape to the collection. + + Shape to add. + Newly added shape. + + + + Adds new shape to the collection. + + Shape record to add. + Parse options. + Newly added shape. + + + + Adds the group container shapes. + + Group Shape record to add. + Parse options. + Newly added shape. + + + + Create the group container shapes. + + Group Shape record to create. + Parse options. + Newly created shape. + + + + Adds new child shape to the collection. + + Shape container to add. + Parse options. + Newly added shape. + + + + Adds new shape to the collection. + + Shape container to add. + Parse options. + Newly added shape. + + + + Creates new shape object. + + Object type to create. + Shape container. + Parse options. + Subrecords of the shape's OBJRecord. + Index to the cmo record inside subrecords. + + + + Removes shape from the collection. + + Shape to remove. + + + + Creates copy of the collection. + + Parent object for the new collection. + Copy of the collection. + + + + Registers in the parent worksheet. + + + + + Serializes shapes collection. + + Array of records that will receive all shapes. + + + + Loops each shape in the shape collection for chartEx + + returns the chartEx indexes list + + + + Converts array of records with break indexes into bytes sequence. + + Stream to put resulting data into. + Container. + List with break indexes. + List with records to serialize. + Corresponding byte array. + + + + + + + + + + + + + + Returns parent WorksheetBase. Read-only. + + + + + Returns parent worksheet. Read-only. + + + + + Returns parent workbook. Read-only. + + + + + Returns single shape from the collection by its index. Read-only. + + + + + Returns single shape from the collection by its name or null when cannot find. Read-only. + + + + + Gets or sets the shape layout stream. + + The shape layout stream. + + + + Code of the Biff record in which all data is stored. Read-only. + + + + + Returns shared shape data for all shapes in this collection. Read-only. + + + + + Index of the collection. + + + + + Id of the last shape. + + + + + Id of the first shape. + + + + + + + + + + + + + + + + + Parse options. + + + + Creates new shape object. + + Object type to create. + Shape container. + Parse options. + Subrecords of the shape's OBJRecord. + Index to the cmo record inside subrecords. + + + + Converts array of records with break indexes into bytes sequence. + + Stream to put record data into. + Container. + List with break indexes. + List with records to serialize. + Corresponding byte array. + + + + Adds new shape to the collection. + + Shape container to add. + Parse options. + Newly added shape. + + + + Registers in the parent worksheet. + + + + + Parses record with image data. + + Record to parse. + Parse options. + + + + Sets picture. + + Shape name. + Image to set. + + + + Sets picture. + + Shape name. + Image to set. + Represents new shape blip id index. If set -1 - auto indicate. + + + + Sets picture. + + Shape name. + Image to set. + Represents new shape blip id index. If set -1 - auto indicate. + Indicates is current picture include options. + + + + Code of the Biff record in which all data is stored. Read-only. + + + + + Returns shared shape data for all shapes in this collection. Read-only. + + + + + The collection of horizontal page breaks within the print area. + Each horizontal page break is represented by an HPageBreak object. + + + + + The collection of horizontal page breaks within the print area. + Each horizontal page break is represented by an object. + + + + + Adds a horizontal page break. Returns an object. + + Location of the page break. + which was added. + + To know more about page setting refer this link. + + The following code illustrates how to add a horizontal page break. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Set Horizontal Page Breaks. + sheet.HPageBreaks.Add(sheet.Range["A5"]); + sheet.HPageBreaks.Add(sheet.Range["C18"]); + sheet.HPageBreaks.Add(sheet.Range["H32"]); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + + + + + + Removes a pagebreak from the specified location. + + Range to remove the page break. + Horizontal page break in location after removing. + + To know more about page setting refer this link. + + The following code illustrates how to Remove a horizontal page break. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Remove Horizontal Page Breaks. + sheet.HPageBreaks.Remove(sheet.Range["A5"]); + sheet.HPageBreaks.Remove(sheet.Range["A18"]); + sheet.HPageBreaks.Remove(sheet.Range["A32"]); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + + + + + + Returns page break at the specified row. + + One-based row index. + Page break with corresponding row or null if not found. + + To know more about page setting refer this link. + + The following code illustrates how to get page break with corresponding row. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Get Page break with corresponding row + IHPageBreak hPageBrk = sheet.HPageBreaks.GetPageBreak(5); + if(hPageBrk != null) + { + //Your code here + } + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + + + + + + Clears horizontal page breaks from HPageBreaks collection. + + + To know more about page setting refer this link. + + The following code illustrates how to clear a horizontal page break. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //clear Horizontal Page Breaks + sheet.HPageBreaks.Clear(); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + + + + + + Used without an object qualifier, this property returns an + object that represents the Excel . + + The following code illustrates how to access the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Property returns an Application object that represents the Excel application + IApplication hPageBreakApplication = sheet.HPageBreaks.Application; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns the number of objects in the collection. Read-only. + + The following code illustrates the use of Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Number of objects in the collection + int hPageBreakCount = sheet.HPageBreaks.Count; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns a single object from a collection. Read-only. + + + To know more about page setting refer this link. + + The following code illustrates how to get an object from a collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add PageBreaks + sheet.Range["A1:S65"].Text = "PagePrint"; + sheet.HPageBreaks.Add(sheet.Range["A3"]); + sheet.HPageBreaks.Add(sheet.Range["G10"]); + sheet.HPageBreaks.Add(sheet.Range["F24"]); + sheet.HPageBreaks.Add(sheet.Range["C37"]); + + //Get the Horizontal page break location using index + IRange hPageBreakLocation1 = sheet.HPageBreaks[0].Location; + IRange hPageBreakLocation2 = sheet.HPageBreaks[1].Location; + IRange hPageBreakLocation3 = sheet.HPageBreaks[2].Location; + IRange hPageBreakLocation4 = sheet.HPageBreaks[3].Location; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns a single object from a collection. Read-only. + + + To know more about page setting refer this link. + + The following code illustrates how to get a object from location. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add PageBreaks + sheet.Range["A1:S65"].Text = "PagePrint"; + sheet.HPageBreaks.Add(sheet.Range["A3"]); + sheet.HPageBreaks.Add(sheet.Range["G10"]); + sheet.HPageBreaks.Add(sheet.Range["F24"]); + sheet.HPageBreaks.Add(sheet.Range["C37"]); + + //Get the Horizontal page break location as index + IRange pageBreakLocation = sheet.HPageBreaks[0].Location; + IRange hPageBreakLocation = sheet.HPageBreaks[pageBreakLocation].Location; + IRange hPageBreakLocation2 = sheet.HPageBreaks[sheet.Range["G10"]].Location; + IParentApplication pageBreakApplication = sheet.HPageBreaks[sheet.Range["F24"]].Application; + object pageBreakParent = sheet.HPageBreaks[sheet.Range["C37"]].Parent; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns the parent object for the specified object. + + The following code illustrates the use of Parent property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Parent object for the specified object + object hPageBreakParent = sheet.HPageBreaks.Parent; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Parent workbook. + + + + + Adds a horizontal page break. Returns an HPageBreak object. Read-only. + + Object after which new page break must be inserted. + HPageBreak which was added. + + If specified object couldn't be found in the collection. + + + + + + + + + + + + Returns page break at the specified row. + + One-based row index. + Page break with corresponding row or null if not found. + + + + Returns index of the page break + + Location of the break to find. + Index of the page break in the collection or -1 if not found. + + + + Clears horizontal page breaks from HPageBreaks collection. + + + + + Creates collection and sets its Application and Parent properties. + + + Application object that represents the Microsoft Excel application. + + The parent object for the specified object. + + + + Looks for all necessary parent objects. + + + + + Parses breaks record. + + Record to parse. + + + + Serializes collection into as set of Biff records. + + OffsetArrayList to serialize into. + + + + Converts collection into biff record. + + Null if collection is empty; created record otherwise. + + + + Creates copy of the collection. + + Parent for new collection. + A clone of the current collection. + + + + Adds page break to the collection. + + Page break to add. + + + + Converts pagebreaks to Excel97to03 version. + + + + + Size of the required storage space. Read-only. + + + + + Save record data to stream. + + Writer that will receive record data. + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the record. + If writer is NULL. + + If m_iLength of internal record data array is less than zero. + + + + + + + + + + Returns manual breaks count. Read-only. + + + + + Returns type code of the biff storage. Read-only. + + + + + Returns code of the biff storage. Read-only. + + + + + Indicates whether data array is required by this record. + + + + + Indicates record position in stream. This is a utility member of class and + is used only in the serialization process. Does not influence the data. + + + + + Collection of hyperlinks. + + + + + Represents collection of hyperlinks. + + + + + Defines a new hyperlink. + + + Range object that represents the range new hyperlink is attached to. + + A hyperlink in the range + + + + Defines a new hyperlink for the range object. + + Range object. + The type of the hyperlink. + The address of the hyperlink. + The screen tip to be displayed when the mouse pointer is paused over the hyperlink. + Returns hyperlink initialized object. + + + + Defines a new hyperlink. + + + Shape object that represents the new hyperlink is attached to. + + A hyperlink in the shape + + + + Defines a new hyperlink for the shape object. + + Shape object. + The type of the hyperlink. + The address of the hyperlink. + The screen tip to be displayed when the mouse pointer is paused over the hyperlink. + Returns hyperlink initialized object. + + + + Removes HyperLink object from the collection. + + HyperLink index to remove. + + + + Returns the number of objects in the collection. Read-only. + + + + + Returns a single hyperlink object from the collection. Read-only. + + + + + Parent workbook. + + + + + Indicates whether collection is in read-only mode. + + + + + Cell to index dictionary: key - cell index, value - List of hyperlinks. + + + + + Hyperlinks list for Read-only mode. + + + + + Creates collection and sets its Application and Parent values. + + + Application object that represents the Excel application. + + Parent object of this collection. + + + + Creates collection and sets its Application and Parent values. + + + Application object that represents the Excel application. + + Parent object of this collection. + Indicates whether read-only collection should be created. + + + + Searches for all necessary parents. + + + + + Defines a new hyperlink. + + Name object to add. + + + + Defines a new hyperlink for the range object. + + Range object. + The type of the hyperlink. + The address of the hyperlink. + The screen tip to be displayed when the mouse pointer is paused over the hyperlink. + Returns hyperlink initialized object. + + + + Defines a new hyperlink. + + shape object to add. + + + + Defines a new hyperlink for the shape object. + + Shape object. + The type of the hyperlink. + The address of the hyperlink. + The screen tip to be displayed when the mouse pointer is paused over the hyperlink. + Returns hyperlink initialized object. + + + + Removes item at the specified index. + + Item index to remove. + + + + Removes hyperlink at the specified index without clearing its format. + + Item index to remove hyperlink. + + + + Adds new hyperlink to the collection. + + Hyperlink to add. + Index in the collection of the new hyperlink. + + + + Creates collection from IList. + + IList with necessary Biff records. + Start offset in the array. + Index of the first record after hyperlinks records. + + + + Saves collection into list of BiffRecords. + + OffsetArrayList with BiffRecords. + + If records parameter is NULL. + + + + + Creates hyperlink styles if necessary. + + + + + Gets collection of hyperlinks for the specified range. + + Range to get hyperlinks for. + Collection of hyperlinks for the specified range. + + + + + + + + + + + + + + + + Gets last hyperlink by cell index. + + Cell index. + Returns Hyper link if contain; otherwise null. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Removes the specified hyperlink from the collection. + + Hyperlink link object. + + + + Returns single entry from the collection. Read-only. + + + + + Indicates whether collection is in read-only mode. Read-only. + + + + + Suitable Node colors used for 2-3-4 nodes detection. + + + + + Red color of node. + + + + + Black color of node. + + + + + Node class used for proper storing of data in the Map Collection. + + + + + Reference on left branch. + + + + + Reference on right branch. + + + + + Reference on parent branch. + + + + + Color of node branch. + + + + + Is current node Nil element or not? + + + + + Key part of stored in node data. + + + + + Value part of stored in node data. + + + + + Create red colored Tree node. + + Reference on left branch. + Reference on parent branch. + Reference on right branch. + Key value of node. + Value part of node. + + + + Main constructor of class. + + Reference on left branch. + Reference on parent branch. + Reference on right branch. + Key value of node. + Value part of node. + Color of node. + + + + Reference on left branch. + + + + + Reference on right branch. + + + + + Reference on parent branch. + + + + + Color of node branch. + + + + + Is current node Nil element or not? + + + + + Key part of stored in node data. + + + + + Value part of stored in node data. + + + + + Is current node set to red color? + + + + + Is current node set to black color? + + + + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + Create collection with specified comparer for Key values. + + Comparer for key values. + + + + Create Empty node for collection. + + + + + Clear collection. + + + + + Add item into collection. + + Key part. + Value. + + + + Check whether collection contains specified key. + + True if node with specified key is found; otherwise False. + Key for check. + + + + Remove from collection item with specified key. + + Key to identify item. + + + + TODO: place correct comment here + + + TODO: place correct comment here + + + + + Get minimum value for specified branch. + + Branch start node. + Reference on minimum value node. + + + + Get maximum value for specified branch. + + Branch start node. + Reference on maximum value node. + + + + Go to to next item in collection. + + Start node. + Reference on next item in collection or this.Empty if nothing found. + + + + Get previous item from collection. + + Start node. + Reference on previous item in collection. + + + + Find node in collection by key value (search in lower side). + + Key of node to find. + Reference on found node, otherwise this.Empty value. + + + + Find node in collection by key value (search in upper side). + + Key of node to find. + Reference on found node, otherwise this.Empty value. + + + + Rotate branch into left side. + + Branch start node. + + + + Rotate branch into right side. + + Branch start node. + + + + Erase node from collection. + + Item to erase. + + + + Insert item into collection. + + Add into left side of tree or right. + Node for placement. + Key part of node. + Value part of node. + + + + Returns enumerator. + + Returns enumerator of current interface. + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + + + + + + + + + TODO: place correct comment here + + + + + TODO: place correct comment here + + + + + + + + + + A collection of cell comments. Each comment is represented by a + Comment object. + + + + + Adds a to the collection. + + Picture to add. + Picture name. + Added picture. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get image + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(image,"Image"); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Picture to add. + Picture name. + Image format to use for picture storing. + Added picture. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get image + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(image,"Image", ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds from the specified file to the collection. + + Picture file name. + Added picture. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a from the specified file to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture("Image.png"); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds from the specified file to the collection. + + Picture file name. + Image format to use for picture storing. + Added picture. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a from the specified file to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture("Image.png", ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Image. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get image + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(4, 5, image); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Image to add. + Image format to use for picture storing. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get image + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(4, 5, image, ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Stream with the picture. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, stream); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Creates a from the specified svg, its fallback image stream and adds the to the collection. + + Top row of a new picture. + Left column. + Svg with the picture. + The of fallback image. + Added picture. + + To know more about adding images of type SVG to worksheet refer Adding SVG Images. + + + The following code illustrates how to add a created with to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream from svg + Stream svgStream = new FileStream("image.svg", FileMode.Open); + + //Create image stream from png + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, svgStream, stream); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Creates a from the specified svg, its fallback image stream and adds the to the collection with the provided scaling. + + Top row of a new picture. + Left column. + Svg stream with the picture. + The instance of fallback image. + Width scale in percents. + Height scale in percents. + Added picture. + + To know more about adding images of type SVG to worksheet refer Adding SVG Images. + + + The following code illustrates how to add a created with to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream from svg + Stream svgStream = new FileStream("image.svg", FileMode.Open); + + //Create image stream from png + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, svgStream, stream, 50, 50); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Stream with the picture. + Image format to use for picture storing. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, stream, ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds a from the Url specified to the collection. + + Top row of the picture to start with. + Left column of the picture to start with. + Bottom row of the picture to end with. + Right column of the picture to end with. + Url of the picture. + Added picture. + + To know more about adding images from web refer Adding Images from External Link. + + + The following code illustrates how to add a from an url specified to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add image + IPictureShape picture = worksheet.Pictures.AddPictureAsLink(1, 1, 5, 7, "https://cdn.syncfusion.com/content/images/company-logos/Syncfusion_Logo_Image.png"); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Name of the shape. + Added picture. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(4, 5, "image.png"); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Name of the shape. + Image format to use for picture storing. + Added picture. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(4, 5, "image.png", ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Image. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get image + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, 30, 8, image); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Image to add. + Image format to use for picture storing. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get image + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, 30, 8, image, ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Stream with the picture. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, 30, 8, stream); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Stream with the picture. + Image format to use for picture storing. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, 30, 8, stream, ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Name of the shape. + Added picture. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, 30, 8, "image.png"); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Name of the shape. + Image format to use for picture storing. + Added picture. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, 30, 8, "image.png", ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Image. + Width scale in percents. + Height scale in percents. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get image + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, image, 50, 50); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Image. + Width scale in percents. + Height scale in percents. + Image format to use for picture storing. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get image + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, image, 50, 50, ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Stream with the picture. + Width scale in percents. + Height scale in percents. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, stream, 50, 50); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Stream with the picture. + Width scale in percents. + Height scale in percents. + Image format to use for picture storing. + Added picture. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, stream, 50, 50, ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Name of the shape. + Width scale in percents. + Height scale in percents. + Added picture. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, "image.png", 50, 50); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds to the collection. + + Top row of a new picture. + Left column. + Name of the shape. + Width scale in percents. + Height scale in percents. + Image format to use for picture storing. + Added picture. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, "image.png", 50, 50, ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Returns the number of objects in the collection. Read-only Long. + + + The following code illustrates how to access Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add pictures + worksheet.Pictures.AddPicture("image.png"); + worksheet.Pictures.AddPicture("image.png"); + + //Get count + Console.Write(worksheet.Pictures.Count); + + //Save and dispose + workbook.SaveAs("Pictures.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + + + + Returns a single object from the collection. + + + To know more about changing the dimensions of the added to refer Positioning and Re-Sizing Pictures. + + + The following code illustrates how to access an object in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add picture + worksheet.Pictures.AddPicture("image.png"); + + //Set picture + IPictureShape picture = worksheet.Pictures[0]; + + //Set dimension + picture.Left = 3; + picture.Top = 3; + picture.Height = 50; + picture.Width = 50; + + //Save and dispose + workbook.SaveAs("Pictures.xlsx"); + workbook.Close(); + } + + + + + + Gets single from the collection. + + Name of the item to get. + Single item from the collection. + + The following code illustrates how to access a object from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add picture + worksheet.Pictures.AddPicture("image.png"); + + //Set picture + IPictureShape picture = worksheet.Pictures["image"]; + + //Set dimension + picture.Left = 3; + picture.Top = 3; + picture.Height = 50; + picture.Width = 50; + + //Save and dispose + workbook.SaveAs("OLEObjects.xlsx"); + workbook.Close(); + } + + + + + + Default prefix for picture name. + + + + + Parent worksheet. + + + + + Adds picture to the collection. + + Picture to add. + Picture name. + Added picture. + + + + Adds picture to the collection. + + Picture to add. + Picture name. + Image format to use for picture storing. + Added picture. + + + + Adds picture from the specified file. + + Picture file name. + Added picture. + + + + Adds picture from the specified file. + + Picture file name. + Image format to use for picture storing. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Image. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Image to add. + Image format to use for picture storing. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Stream with the picture. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Svg stream with the picture. + The instance of fallback image. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Svg stream with the picture. + The instance of fallback image. + Width scale in percents. + Height scale in percents. + Added picture. + + + + Adds image from the given external link. + + Top row of the picture to start with. + Left column of the picture to start with. + Bottom row of the picture to end with. + Right column of the picture to end with. + Url of the picture. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Stream with the picture. + Image format to use for picture storing. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Name of the shape. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Name of the shape. + Image format to use for picture storing. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Image. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Image to add. + Image format to use for picture storing. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Stream with the picture. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Stream with the picture. + Image format to use for picture storing. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Name of the shape. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Bottom row. + Right column. + Name of the shape. + Image format to use for picture storing. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Image. + Width scale in percents. + Height scale in percents. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Image. + Width scale in percents. + Height scale in percents. + Image format to use for picture storing. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Stream with the picture. + Width scale in percents. + Height scale in percents. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Stream with the picture. + Width scale in percents. + Height scale in percents. + Image format to use for picture storing. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Name of the shape. + Width scale in percents. + Height scale in percents. + Added picture. + + + + Adds image to the collection. + + Top row of a new picture. + Left column. + Name of the shape. + Width scale in percents. + Height scale in percents. + Image format to use for picture storing. + Added picture. + + + + + + + + + + + Removes picture from this collection only. + + Picture to remove. + + + + Adds picture to this collection only. + Should be called from Shapes collection only. + + Picture to add. + + + + + + + Can't find parent worksheet. + + + + + Generate Picture name + + + + + Gets single item from the collection. + + Name of the item to get. + Single item from the collection. + + + + Represents range that references invalid worksheet. + + + + + Parent object. + + + + + Application object. + + + + + First row index. + + + + + Last row index. + + + + + First column index. + + + + + Last column index. + + + + + Returns a Range object that represents a range thats offset from the specified range. + + The number of rows (positive, negative, or 0 (zero)) by which the range is to be offset + The number of columns (positive, negative, or 0 (zero)) by which the range is to be offset + + + + + Resizes the specified range + + The number of rows in new range + The number of columns in new range + + + + + Activates a single cell, scroll to it and activates the corresponding sheet. + To select a range of cells, use the Select method. + + True to scroll to the cell + + + + + Creates Subtotal for the corresponding ranges + + GroupBy + ConsolidationFunction + TotalList + + + + Creates SubTotal for the corresponding Ranges + + GroupByGroupBy + ConsolidationFunction + TotalList + Replace exisiting SubTotal + Insert PageBreaks + SummaryBelowData + + + + Creates SubTotal for the corresponding Ranges + + Columns to GroupBy + ConsolidationFunction + TotalList + Replace exisiting SubTotal + Insert PageBreaks + SummaryBelowData + + + + Returns sum of numeric cells in the range. + + + + + Returns sum of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns average of numeric cells in the range. + + + + + Returns average of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns minumum value from numeric cells in the range. + + + + + Returns minumum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns maximum value from numeric cells in the range. + + + + + Returns maximum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Trim the empty rows at top and bottom of the range, the empty columns at left and right of the range. + + Returns the range after trim. + + + + Clears the Content, formats, comments based on clear option. + + + + + + Copies the Range to the specified destination Range with copy options and skip blank option. + + Represents the destination Range to copy. + Represents the copy Range options. + Represents the skip blank cells in the source. + Returns the copied Range. + + + + Copies this range into another location using pasteLinkOptions. + + Destination range. + Check to implement the pasteLink option. + Method not implement error. + + + + Creates a threaded comment for the current cell with the specified text. + + Threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . + + + + Creates a threaded comment for the current cell with the specified text and author. + + Threaded comment text + The author of the threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . + + + + Replaces the string with the specified string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + + Replaces the string with the specified string value based on the given . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + + + + Replaces the string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + + + + Replaces the string with the specified DateTime value. + + The string to be replaced. + The datetime value to replace all occurrences of oldValue. + + + + Replaces the string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified datatable. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Replaces the string with the specified datacolumn. + + The string to be replaced. + DataColumn with new data. + Indicates whether field name must be shown. + + + + Gets the dependent cells which refer to other cells. + + Returns the dependent cells or null if value was not found. + + + + Gets the dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the dependent cells with a specified bool value or null if value was not found. + + + + Gets the precedent cells which are referred by a formula in another cell. + + Returns the precedent cells or null if value was not found. + + + + Gets the precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the precedent cells with a specified bool value or null if value was not found. + + + + Gets the direct dependent cells which refer to other cells. + + Returns the direct dependent cells or null if value was not found. + + + + Gets the direct dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the direct dependent cells with a specified bool value or null if value was not found. + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Returns the direct precedent cells or null if value was not found. + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the direct precedent cells with a specified bool value or null if value was not found. + + + + Returns an enumerator that iterates through the Range. + + + + + + Gets or sets HTML string. + + + + + Returns the calculated value of a formula using the most current inputs. + + + + + Get the threaded comment. + + + + + Filter operator + + + + + Equal operator of filter + + + + + Greater than operator of filter + + + + + Greater of than equal of filter + + + + + Less than filter of filter + + + + + Less than or equal filter + + + + + Not equal filter + + + + + Filter operator + + + + + Equal operator of filter + + + + + Greater than operator of filter + + + + + Greater of than equal of filter + + + + + Less than filter of filter + + + + + Less than or equal filter + + + + + Not equal filter + + + + + Pivot filter type + + + + + Indicates the "begins with" filter for field captions. + + + + + Indicates the "is between" filter for field captions. + + + + + Indicates the "contains" filter for field captions. + + + + + Indicates the "ends with" filter for field captions. + + + + + Indicates the "equal" filter for field captions. + + + + + Indicates the "is greater than" filter for field captions + + + + + Indicates the "is greater than or equal to" filter for field captions. + + + + + Indicates the "is less than" filter for field captions. + + + + + Indicates the "is less than or equal to" filter for field captions. + + + + + Indicates the "does not begin with" filter for field captions. + + + + + Indicates the "is not between" filter for field captions. + + + + + Indicates the "does not contain" filter for field captions. + + + + + Indicates the "does not end with" filter for field captions. + + + + + Indicates the "not equal" filter for field captions. + + + + + Indicates the "Value between" filter for text and numeric values. + + + + + Indicates the "value equal" filter for text and numeric values. + + + + + Indicates the "value greater than" filter for text and numeric values. + + + + + Indicates the "value greater than or equal to" filter for text and numeric values. + + + + + Indicates the "value less than" filter for text and numeric values. + + + + + Indicates the "value less than or equal to" filter for text and numeric values + + + + + Indicates the "value not between" filter for text and numeric values. + + + + + Indicates the "value not equal" filter for text and numeric values. + + + + + Indicates the "count" filter. + + + + + Indicates the "dateNewerThan" filter. + + + + + Indicates the "yearToDate" filter. + + + + + Indicates the "unknown" filter. + + + + + Indicates the "sum" filter. + + + + + Indicates the "percent" filter. + + + + /// + Indicates the "dateEqual" filter. + + + + /// + Indicates the "dateNewerThanOrEqual" filter. + + + + /// + Indicates the "dateBetween" filter. + + + + /// + Indicates the "dateNotBetween" filter. + + + + /// + Indicates the "dateNotEqual" filter. + + + + /// + Indicates the "dateOlderThan" filter. + + + + /// + Indicates the "dateOlderThanOrEqual" filter. + + + + /// + Indicates the "nextMonth" filter. + + + + /// + Indicates the "thisMonth" filter. + + + + /// + Indicates the "lastMonth" filter. + + + + /// + Indicates the "nextYear" filter. + + + + /// + Indicates the "thisYear" filter. + + + + /// + Indicates the "lastYear" filter. + + + + /// + Indicates the "nextWeek" filter. + + + + /// + Indicates the "thisWeek" filter. + + + + /// + Indicates the "lastWeek" filter. + + + + /// + Indicates the "M1" filter. + + + + /// + Indicates the "M2" filter. + + + + /// + Indicates the "M3" filter. + + + + /// + Indicates the "M4" filter. + + + + /// + Indicates the "M5" filter. + + + + /// + Indicates the "M6" filter. + + + + /// + Indicates the "M7" filter. + + + + /// + Indicates the "M8" filter. + + + + /// + Indicates the "M9" filter. + + + + /// + Indicates the "M10" filter. + + + + /// + Indicates the "M11" filter. + + + + /// + Indicates the "M12" filter. + + + + /// + Indicates the "Q1" filter. + + + + /// + Indicates the "Q2" filter. + + + + /// + Indicates the "Q3" filter. + + + + /// + Indicates the "Q4" filter. + + + + /// + Indicates the "nextQuarter" filter. + + + + /// + Indicates the "thisQuarter" filter. + + + + /// + Indicates the "lastQuarter" filter. + + + + /// + Indicates the "tomorrow" filter. + + + + /// + Indicates the "today" filter. + + + + /// + Indicates the "yesterday" filter. + + + + + Filter type + + + + + Indicates the "caption begins with" filter for text and numeric values + + + + + Indicates the "caption between" filter for text and numeric values + + + + + Indicates the "caption contains" filter for text and numeric values + + + + + Indicates the "caption ends with" filter for text and numeric values + + + + + Indicates the "caption equal" filter for field captions. + + + + + Indicates the "caption greater than" filter for field captions. + + + + + Indicates the "caption greater than or equal to" filter for field captions. + + + + + Indicates the "caption less than" filter for field captions. + + + + + Indicates the "caption less than or equal" filter for field captions. + + + + + Indicates the "caption not begins with" filter for field captions. + + + + + Indicates the "caption not between" filter for field captions. + + + + + Indicates the "caption not contains" filter for field captions. + + + + + Indicates the "caption not ends with" filter for field captions. + + + + + Indicates the "Caption not equal" filter for field captions. + + + + + Indicates the "value between" filter for text and numeric values + + + + + Indicates the "value equal" filter for text and numeric values + + + + + Indicates the "value Greater than " filter for text and numeric values + + + + + Indicates the "value greater than or equal to" filter for text and numeric values + + + + + Indicates the "value less than " filter for text and numeric values + + + + + Indicates the "value less than or equal to" filter for text and numeric values + + + + + Indicates the "value not between" filter for text and numeric values. + + + + + Indicates the "value not equal" filter for text and numeric values. + + + + + Indicates the "count" filter. + + + + + + + Indicates the "unknown" filter. + + + + + Indicates the "sum" filter. + + + + + Indicates the "percent" filter. + + + + + /// + Indicates the "dateNewerThanOrEqual" filter. + + + + /// + Indicates the "dateNotBetween" filter. + + + + /// + Indicates the "dateBetween" filter. + + + + /// + Indicates the "dateNotEqual" filter. + + + + /// + Indicates the "dateOlderThan" filter. + + + + /// + Indicates the "dateOlderThanOrEqual" filter. + + + + /// + Indicates the "nextMonth" filter. + + + + /// + Indicates the "thisMonth" filter. + + + + /// + Indicates the "lastMonth" filter. + + + + /// + Indicates the "nextYear" filter. + + + + /// + Indicates the "thisYear" filter. + + + + /// + Indicates the "lastYear" filter. + + + + /// + Indicates the "nextWeek" filter. + + + + /// + Indicates the "thisWeek" filter. + + + + /// + Indicates the "lastWeek" filter. + + + + /// + Indicates the "M1" filter. + + + + /// + Indicates the "M2" filter. + + + + /// + Indicates the "M3" filter. + + + + /// + Indicates the "M4" filter. + + + + /// + Indicates the "M5" filter. + + + + /// + Indicates the "M6" filter. + + + + /// + Indicates the "M7" filter. + + + + /// + Indicates the "M8" filter. + + + + /// + Indicates the "M9" filter. + + + + /// + Indicates the "M10" filter. + + + + /// + Indicates the "M11" filter. + + + + /// + Indicates the "M12" filter. + + + + /// + Indicates the "Q1" filter. + + + + /// + Indicates the "Q2" filter. + + + + /// + Indicates the "Q3" filter. + + + + /// + Indicates the "Q4" filter. + + + + /// + Indicates the "nextQuarter" filter. + + + + /// + Indicates the "thisQuarter" filter. + + + + /// + Indicates the "lastQuarter" filter. + + + + /// + Indicates the "tomorrow" filter. + + + + /// + Indicates the "today" filter. + + + + /// + Indicates the "yesterday" filter. + + + + + Represents Axis types in the pivot table. + + + + + Represents the None axis type. + + + + + Represents the Row axis type. + + + + + Represents the Column axis type. + + + + + Represents the Page axis type. + + + + + Represents the Data axis type. + + + + + Represents Axis types in the pivot table equivalent to Excel 2007. + + + + + Represents the Row axis type. + + + + + Represents the Column axis type. + + + + + Represents the Page axis type. + + + + + Represents the Data axis type. + + + + + Represents the Subtotal types. + + + + + Represents the None type. + + + + + Represents the Default type. + + + + + Represents the Sum type. + + + + + Represents the Counta type. + + + + + Represents the Average type. + + + + + Represents the Max type. + + + + + Represents the Min type. + + + + + Represents the Product type. + + + + + Represents the Count type. + + + + + Represents the Stdev type. + + + + + Represents the Stdevp type. + + + + + Represents the Var type. + + + + + Represents the Varp type. + + + + + Axis types in Excel 2007 file format notation. + + + + + Represents the Average type. + + + + + Represents the Count type. + + + + + Represents the Counta type. + + + + + Represents the Max type. + + + + + Represents the Min type. + + + + + Represents the Product type. + + + + + Represents the Stdev type. + + + + + Represents the Stdevp type. + + + + + Represents the Sum type. + + + + + Represents the Var type. + + + + + Represents the Varp type. + + + + + Axis types in Excel 2007 file format notation. + + + + + Represents the Average type. + + + + + Represents the Count type. + + + + + Represents the Counta type. + + + + + Represents the Max type. + + + + + Represents the Min type. + + + + + Represents the Product type. + + + + + Represents the Stdev type. + + + + + Represents the Stdevp type. + + + + + Represents the Sum type. + + + + + Represents the Var type. + + + + + Represents the Varp type. + + + + + Represent data types for pivot table cache fields. + + + + + Indicates whether field contains number. + + + + + Indicates whether field contains integer numbers. + + + + + Indicates whether field contains strings. + + + + + Indicates whether field contains blank values. + + + + + Indicates whether field contains dates. + + + + + Indicates whether field contains booleans. + + + + + Indicates whether field contains float numbers. + + + + + Indicates whether filed contains long Text. + + + + + Represents pivot table built in styles equivalent to Excel 2007. + + + + + Represents PivotStyleMedium28 style. + + + + + Represents PivotStyleMedium27 style. + + + + + Represents PivotStyleMedium26 style. + + + + + Represents PivotStyleMedium25 style. + + + + + Represents PivotStyleMedium24 style. + + + + + Represents PivotStyleMedium23 style. + + + + + Represents PivotStyleMedium22 style. + + + + + Represents PivotStyleMedium21 style. + + + + + Represents PivotStyleMedium20 style. + + + + + Represents PivotStyleMedium19 style. + + + + + Represents PivotStyleMedium18 style. + + + + + Represents PivotStyleMedium17 style. + + + + + Represents PivotStyleMedium16 style. + + + + + Represents PivotStyleMedium15 style. + + + + + Represents PivotStyleMedium14 style. + + + + + Represents PivotStyleMedium13 style. + + + + + Represents PivotStyleMedium12 style. + + + + + Represents PivotStyleMedium11 style. + + + + + Represents PivotStyleMedium10 style. + + + + + Represents PivotStyleMedium9 style. + + + + + Represents PivotStyleMedium8 style. + + + + + Represents PivotStyleMedium7 style. + + + + + Represents PivotStyleMedium6 style. + + + + + Represents PivotStyleMedium5 style. + + + + + Represents PivotStyleMedium4 style. + + + + + Represents PivotStyleMedium3 style. + + + + + Represents PivotStyleMedium2 style. + + + + + Represents PivotStyleMedium1 style. + + + + + Represents PivotStyleLight28 style. + + + + + Represents PivotStyleLight27 style. + + + + + Represents PivotStyleLight26 style. + + + + + Represents PivotStyleLight25 style. + + + + + Represents PivotStyleLight24 style. + + + + + Represents PivotStyleLight23 style. + + + + + Represents PivotStyleLight22 style. + + + + + Represents PivotStyleLight21 style. + + + + + Represents PivotStyleLight20 style. + + + + + Represents PivotStyleLight19 style. + + + + + Represents PivotStyleLight18 style. + + + + + Represents PivotStyleLight17 style. + + + + + Represents PivotStyleLight16 style. + + + + + Represents PivotStyleLight15 style. + + + + + Represents PivotStyleLight14 style. + + + + + Represents PivotStyleLight13 style. + + + + + Represents PivotStyleLight12 style. + + + + + Represents PivotStyleLight11 style. + + + + + Represents PivotStyleLight10 style. + + + + + Represents PivotStyleLight9 style. + + + + + Represents PivotStyleLight8 style. + + + + + Represents PivotStyleLight7 style. + + + + + Represents PivotStyleLight6 style. + + + + + Represents PivotStyleLight5 style. + + + + + Represents PivotStyleLight4 style. + + + + + Represents PivotStyleLight3 style. + + + + + Represents PivotStyleLight2 style. + + + + + Represents PivotStyleLight1 style. + + + + + Represents PivotStyleDark28 style. + + + + + Represents PivotStyleDark27 style. + + + + + Represents PivotStyleDark26 style. + + + + + Represents PivotStyleDark25 style. + + + + + Represents PivotStyleDark24 style. + + + + + Represents PivotStyleDark23 style. + + + + + Represents PivotStyleDark22 style. + + + + + Represents PivotStyleDark21 style. + + + + + Represents PivotStyleDark20 style. + + + + + Represents PivotStyleDark19 style. + + + + + Represents PivotStyleDark18 style. + + + + + Represents PivotStyleDark17 style. + + + + + Represents PivotStyleDark16 style. + + + + + Represents PivotStyleDark15 style. + + + + + Represents PivotStyleDark14 style. + + + + + Represents PivotStyleDark13 style. + + + + + Represents PivotStyleDark12 style. + + + + + Represents PivotStyleDark11 style. + + + + + Represents PivotStyleDark10 style. + + + + + Represents PivotStyleDark9 style. + + + + + Represents PivotStyleDark8 style. + + + + + Represents PivotStyleDark7 style. + + + + + Represents PivotStyleDark6 style. + + + + + Represents PivotStyleDark5 style. + + + + + Represents PivotStyleDark4 style. + + + + + Represents PivotStyleDark3 style. + + + + + Represents PivotStyleDark2 style. + + + + + Represents PivotStyleDark1 style. + + + + + Represents the data formats for a field in the PivotTable + + + + + Indicates the field is shown as the "difference from" a value. + + + + + Indicates the field is shown as the "index. + + + + + Indicates that the field is shown as its normal data type. + + + + + Indicates the field is show as the "percentage of". + + + + + Indicates the field is shown as the "percentage difference from" a value. + + + + + Indicates the field is shown as the percentage of column. + + + + + Indicates the field is shown as the percentage of row. + + + + + Indicates the field is shown as percentage of total. + + + + + Indicates Percentage of parent total. + + + + + Indicates Percentage of parent column total. + + + + + Indicates Percentage of parent row total. + + + + + Indicates Rank descending. + + + + + Indicates Percentage of running total. + + + + + Indicates the field is shown as running total in the table. + + + + + Indicates Rank ascending. + + + + + Excel 2007 table built in styles. + + + + + Represents TableStyleMedium28 style. + + + + + Represents TableStyleMedium27 style. + + + + + Represents TableStyleMedium26 style. + + + + + Represents TableStyleMedium25 style. + + + + + Represents TableStyleMedium24 style. + + + + + Represents TableStyleMedium23 style. + + + + + Represents TableStyleMedium22 style. + + + + + Represents TableStyleMedium21 style. + + + + + Represents TableStyleMedium20 style. + + + + + Represents TableStyleMedium19 style. + + + + + Represents TableStyleMedium18 style. + + + + + Represents TableStyleMedium17 style. + + + + + Represents TableStyleMedium16 style. + + + + + Represents TableStyleMedium15 style. + + + + + Represents TableStyleMedium14 style. + + + + + Represents TableStyleMedium13 style. + + + + + Represents TableStyleMedium12 style. + + + + + Represents TableStyleMedium11 style. + + + + + Represents TableStyleMedium10 style. + + + + + Represents TableStyleMedium9 style. + + + + + Represents TableStyleMedium8 style. + + + + + Represents TableStyleMedium7 style. + + + + + Represents TableStyleMedium6 style. + + + + + Represents TableStyleMedium5 style. + + + + + Represents TableStyleMedium4 style. + + + + + Represents TableStyleMedium3 style. + + + + + Represents TableStyleMedium2 style. + + + + + Represents TableStyleMedium1 style. + + + + + Represents TableStyleLight21 style. + + + + + Represents TableStyleLight20 style. + + + + + Represents TableStyleLight19 style. + + + + + Represents TableStyleLight18 style. + + + + + Represents TableStyleLight17 style. + + + + + Represents TableStyleLight16 style. + + + + + Represents TableStyleLight15 style. + + + + + Represents TableStyleLight14 style. + + + + + Represents TableStyleLight13 style. + + + + + Represents TableStyleLight12 style. + + + + + Represents TableStyleLight11 style. + + + + + Represents TableStyleLight10 style. + + + + + Represents TableStyleLight9 style. + + + + + Represents TableStyleLight8 style. + + + + + Represents TableStyleLight7 style. + + + + + Represents TableStyleLight6 style. + + + + + Represents TableStyleLight5 style. + + + + + Represents TableStyleLight4 style. + + + + + Represents TableStyleLight3 style. + + + + + Represents TableStyleLight2 style. + + + + + Represents TableStyleLight1 style. + + + + + Represents TableStyleDark11 style. + + + + + Represents TableStyleDark10 style. + + + + + Represents TableStyleDark9 style. + + + + + Represents TableStyleDark8 style. + + + + + Represents TableStyleDark7 style. + + + + + Represents TableStyleDark6 style. + + + + + Represents TableStyleDark5 style. + + + + + Represents TableStyleDark4 style. + + + + + Represents TableStyleDark3 style. + + + + + Represents TableStyleDark2 style. + + + + + Represents TableStyleDark1 style. + + + + + Represents Empty style. + + + + + Element type of Excel Table Style + + + + + Represents the whole table. + + + + + Represents the first column stripe. + + + + + Represents the second column stripe. + + + + + Represents the first row stripe. + + + + + Represents the second row stripe. + + + + + Represents the first column of the table. + + + + + Represents the last column of the table. + + + + + Represents the header row of the table. + + + + + Represents the total row of the table. + + + + + Represents the first cell in the header row of the table. + + + + + Represents the last cell in the header row of the table. + + + + + Represents the first total cell of the table. + + + + + Represents the last total cell of the table. + + + + + sort orders that can be applied to fields in a PivotTable. + + + + + Indicates the field is sorted in ascending order. + + + + + Indicates the field is sorted in descending order. + + + + + Indicates the field is sorted manually. + + + + + This simple type defines the pivot type for a pivotItem. + + + + + Represents the Average. + + + + + Represent the Blank line in the pivot Table. + + + + + Represent the count aggregate functions. + + + + + Represent the count number aggregate functions. + + + + + Represent the data + + + + + Represent the default type of Pivot Table. + (total aggregate is default) + + + + + Represent the grand total. + + + + + Represent the maximum aggregate function. + + + + + Represent the minimum aggregate function. + + + + + Represent the product functions. + + + + + Represents the "standard deviation" aggregate function. + + + + + Represents the "standard deviation population" aggregate function. + + + + + Represents the "sum" aggregate value. + + + + + Represents the "variance" aggregate value. + + + + + Represents the "variance population" aggregate value. + + + + + This simple type defines the Open Xml Pivot type for a pivotItem. + + + + + Represents the Average. + + + + + Represent the Blank line in the pivot Table. + + + + + Represent the count aggregate functions. + + + + + Represent the count number aggregate functions. + + + + + Represent the data. + + + + + Represent the default type of Pivot Table. + (total aggregate is default) + + + + + Represent the grand total. + + + + + Represent the maximum aggregate function. + + + + + Represent the minimum aggregate function. + + + + + Represent the product functions. + + + + + Represents the "standard deviation" aggregate function. + + + + + Represents the "standard deviation population" aggregate function. + + + + + Represents the "sum" aggregate value. + + + + + Represents the "variance" aggregate value. + + + + + Represents the "variance population" aggregate value. + + + + + Represents data grouping that can be performed on a PivotTable. + + + + + Indicates no auto grouping group + + + + + Indicates a grouping on "hours" for date values. + + + + + Indicates a grouping on "minutes" for date values. + + + + + Indicates a grouping on "months" for date values. + + + + + Indicates a grouping on "quarters" for date values + + + + + Indicates a grouping by numeric ranges for numeric values. + + + + + Indicates a grouping on "seconds" for date values. + + + + + Indicates a grouping on "years" for date values. + + + + + Indicates a grouping on "days" for date values. + + + + + Indicates the type of rule being used to describe an area or aspect of the PivotTable. + + + + + Refers to the whole PivotTable. + + + + + Refers to a field button. + + + + + Refers to something in the data area. + + + + + Refers to no Pivot area. + + + + + Refers to a header or item. + + + + + Refers to the blank cells at the top-left of the PivotTable. + + + + + Refers to the blank cells at the top of the PivotTable, + on its trailing edge + + + + + Refers to the blank cells at the top right of the PivotTable, + on its trailing edge + + + + + Represents the scope of conditional formatting applied in the PivotTable. + + + + + Represents that the conditional formatting is applied to the selected data fields. + + + + + Represents that the conditional formatting is applied to the + selected PivotTable field intersections. + + + + + Represents that the conditional formatting is applied to the + selected cells. + + + + + Represents the possible types that defines the values for the Top N conditional formatting evaluation for the PivotTable. + + + + + Represents Top N conditional formatting is evaluated across the entire scope range. + + + + + Represents Top N conditional formatting is evaluated for each column. + + + + + Represents Top N conditional formatting is not evaluated. + + + + + Represents Top N conditional formatting is not evaluated. + + + + + Represents the Page field area order when there are + multiple page fields in the page area + + + + + The page fields are laid, Down then over order. + + + + + The page fields are laid, over then down order. + + + + + Specifies the pivot table row layout. + + + + + Represents compact row. + + + + + Represents outline row. + + + + + Represents tabular row. + + + + + Summary description for PivotCacheFieldsCollection. + + + + + Initializes new instance of the pivot cache fields collection. + + + + + Reads collection records from the BiffReader. + + BiffReader to get records from. + Number of fields to read. + + + + Saves collection as Biff records. + + OffsetArrayList that should get all collection's records. + + + + Adds new field to the collection. + + Field to add. + Index of the newly added field. + + + + + + + + + + + + + + + + + + Gets the pivot cache fields count + + + + + + Gets the pivot cache field + + + + + + + List of info records. + + + + + Default constructor. + + + + + Extracts pivot cache data from the records array. + + List of records to get data from. + Starting index. + + + + Extracts required data from the records list. + + List of records to get data from. + Starting index. + + + + Saves pivot cache info into OffsetArrayList. + + OffsetArrayList to save data into. + + + + Creates a copy of the current object. + + A copy of the current object. + + + + Gets stream id record. + + + + + Gets or sets stream id described by this pivot cache info. + + + + + Represents the collection of memory caches from the PivotTable reports in a workbook. + + + + + Name of sub-storage in input file which contains pivot table cache data. + + + + + Parent workbook. + + + + + Dictionary with pivot caches. Key - cache id, value - cache. + + + + + List with caches order. + + + + + Initializes a new instance of pivot cache collection. + + + Application object that represents the Excel application. + + Parent object of this collection. + + + + Initializes a new instance of pivot cache collection with the specified cache storage and dectyptor. + + + Application object that represents the Excel application. + + Parent object of this collection. + Pivot caches storage. + Object used to decrypt encrypted records. + + + + Parses pivot caches storage. + + Storage to parse. + Object used to decrypt encrypted records. + + + + Clears all the pivot caches from the collection. + + + + + Serializes the pivot cache. + + Storage to serialize into. + Object that is used to encrypt data. + + + + Adds specified cache item to the collection. + + Item to add. + + + + Adds specified cache item to the collection at the specifed index. + + Item to add. + + + + Searches for the first available pivot cache index. + + Cache to search index for. + Found free index. + + + + Adds a new PivotTable cache to a PivotCaches collection. + + Range that contains data to cache. + Returns a pivot cache. + + Following code snippet illustrates how to add a pivot cache. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + // Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + + + + + + Adds new cache to the collection. + + Name of the stream. + Cache object to add. + + + + Checks whether cache exist in the collection and adds its copy if necessary. + + + + + + + + Removes the Pivot cache from the collection at the specified index. + + + + + + Get Cache indexes + + cache indexes + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Searches for the parent workbook. + + Parent workbook to start searching from. + Found workbook. + + + + Gets the IEnumerable list of pivot cache elements. + + + + + + Returns single entry of pivot cache from the collection. Read-only. + + Item id to return. + An entry from the collection. + + + + Gets a pivot cache with the specified index from the collection. Read-only. + + Zero-based index of the cache to return. + + + + Gets number of pivot cache items in the collection. Read-only. + + + + + Gets the application object. Read-only. + + + + + Gets the parent object. Read-only. + + + + + Gets the ordered list of pivot caches. Read-only. + + + + + Represents pivot table data field. + + + + + Default value for base item previous. + + + + + Default value for base item next. + + + + + Name of the data field. + + + + + Subtotal function used for data field. + + + + + Base field. + + + + + + + + + + + + + + + + + + + + + + + + + Extended view fields record. + + + + + Initializes a new instance of the data field. + + Name of the data field. + Subtotal function. + Parent field. + + + + Set the previous value to BaseItem. + + + + + Set the next value to BaseItem. + + + + + Initializes the show data. + + + + + Initializes the excel2010 data. + + + + + Sets the show data. + + The value. + + + + + Gets the show data. + + The value. + + + + + Determines whether [is excel2010 data]. + + + true if [is excel2010 data]; otherwise, false. + + + + + Creates a new object that is a copy of the current instance. + + Represents parent object. + A new object that is a copy of this instance. + + + + Gets or sets name of the data field. + + + + + Gets or sets the subtotal function used for data field. + + + + + Gets the parent field. Read-only. + + + + + Gets or sets number format index for the pivot data field. + + + + + Gets or sets the number format for the pivot data field. + + + + + Gets or sets the pivot table format indicating how the pivot data is shown. + + + + + Gets or sets the base item for a custom calculation. + + Valid only for data fields. + + + + Gets or sets the base field for a custom calculation. + + Valid only for data fields. + + + + Represents pivot table data fields collection. + + + + + Initializes new instance of pivot table data fields collection. + + Application object for the new instance. + Parent object for the new instance. + + + + Adds a new data field to the PivotDataField collection. + + The parent field to use. + The name for the new data field. + The subtotal function for the new data field. + Returns a pivot data field. + + Following code snippet illustrates how to add a pivot data field to the pivot table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + //Create "PivotTable1" with the cache at the specified range + IPivotTable pivotTable = worksheet.PivotTables.Add("PivotTable1", worksheet["A1"], cache); + //Add Pivot table fields (Row and Column fields) + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + pivotTable.Fields[6].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + + //Add data field + IPivotField field = pivotTable.Fields[5]; + pivotTable.DataFields.Add(field, "Sum", PivotSubtotalTypes.Sum); + + + + + + Gets a pivot data field with the specified index from the collection. Read-only. + + Zero-based index of the data field to return. + + + + Gets a with the specified name from the collection. Read-only. + + Pivot data field name + + The following code illustrates how to get the pivot table data field by data field name. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["D1"].Text = "Student City"; + sheet.Range["A1:D1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + sheet.Range["D2"].Text = "Chennai"; + sheet.Range["D3"].Text = "Bangalore"; + sheet.Range["D4"].Text = "Chennai"; + sheet.Range["D5"].Text = "Mysore"; + sheet.Range["D6"].Text = "Bangalore"; + IPivotCache cache = workbook.PivotCaches.Add(sheet["A1:D6"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[1].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotTable.Fields[2]; + pivotTable.DataFields.Add(datafield, "Sum of Marks", PivotSubtotalTypes.Sum); + + //Gets a pivot data field with the specified name from the collection + IPivotDataField pivotDataField = pivotTable.DataFields["Sum of Marks"]; + pivotDataField.Name = "SUM Marks"; + pivotDataField.Subtotal = PivotSubtotalTypes.Average; + + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium20; + workbook.SaveAs("PivotTables.xlsx"); + workbook.Close(); + } + + + + + + Represents a collection of pivot fields in the pivot table. + + + + + Initializes a new instance of pivot fields collection. + + + + + + + Initializes new instance of the pivot fields collection with the specified parent pivot table.. + + Parent table. + + + + Adds new field based on the cached field. + + Base cache field. + Parent workbook. + + + + Creates a copy of this collection. + + New parent for the created object. + + + + + Gets the pivot field from the collection with the specified index. Read-only. + + Item index to return. + + + + Gets the pivot field from the collection with the specified name. Read-only. + + Name of the item to return. + + + + Represents collection of in the worksheet. + + + + + Initializes a new instance of PivotTableCollection. + + + Application object that represents the Excel application. + + Parent object of this collection. + + + + Parses collection of pivot tables. + + Records with pivot table data. + Offset to the first pivot table record. + Offset to the record after + + + + Saves the collection of pivot tables into OffsetArrayList. + + OffsetArrayList that will get all collection's records. + + + + Adds specified table to the collection. + + Table to add. + + + + Adds a pivot table to the collection. + + Name of the pivot table. + Pivot table location. + Pivot cache of the pivot table. + Returns the pivot table object. + + Following code snippet illustrates how to add a pivot table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + // Create Pivot cache with the given data rangeS + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + //Create "PivotTable1" with the cache at the specified range + IPivotTable pivotTable = worksheet.PivotTables.Add("PivotTable1", worksheet["A1"], cache); + + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Creates copy of the current collection. + + Parent worksheet for the new collection. + Created collection. + + + + Removes pivot table with specified name from this collection. + + Name of the pivot table to remove. + + + + Removes a pivot table with the specified index from this collection. + + Index of the pivot table to remove. + + + + Cleans the cache and worksheet data before remove the Pivot Table + + pivot Table to remove + + + + Clears the pivot table without checks the pivot caches. + + + + + Returns the IEnumerable list of pivot tables in the worksheet. + + + + + + Gets a pivot table from the collection with the specified index. + + Zero-based index of the pivot table. + + + + Gets a pivot table from the collection with the specified name. + + Name of the pivot table. + + + + Gets the parent worksheet of this collection. Read-only. + + + + + Summary description for RangesCollection. + + + + + Represents a collection of ranges. + + + + + Adds new range to the collection. + + Range to add. + + + + Removes range from the collection. + + Range to remove. + + + + Returns the Range by index from the collection. + + + + + Error message for wrong worksheet exception. + + + + + Initilize object for HtmlStringParser. + + + + + Parent worksheet. + + + + + One-based first row index. + + + + + One-based first column index. + + + + + One-based last row index. + + + + + One-based last column index. + + + + + Rich text string. + + + + + Creates new instance of RangesCollection. + + Application object. + Parent object. + + + + Searches for all necessary parents of this collection. + + + If can't find parent of some class. + + + + + Activates a single cell, which must be inside the current selection. + To select a range of cells, use the Select method. + + + + + + Activages a single cell, scroll to it and activates the respective sheet + To select a range of cells, use the Select method. + + True to scroll to the cell + + + + + This method groups current range. + + + This parameter specifies whether the grouping should + be performed by rows or by columns. + + Current range after grouping. + + + + This method groups current range. + + + This parameter specifies whether grouping should + be performed by rows or by columns. + + Indicates whether group should be collapsed. + Current range after grouping. + + + + Creates Subtotal for the corresponding ranges + + GroupBy + ConsolidationFunction + TotalList + + + + Creates SubTotal for the corresponding Ranges + + GroupByGroupBy + ConsolidationFunction + TotalList + Replace exisiting SubTotal + Insert PageBreaks + SummaryBelowData + + + + Creates SubTotal for the corresponding Ranges + + Columns to GroupBy + ConsolidationFunction + TotalList + Replace exisiting SubTotal + Insert PageBreaks + SummaryBelowData + + + + Returns sum of numeric cells in the range. + + + + + Returns sum of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns average of numeric cells in the range. + + + + + Returns average of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns minumum value from numeric cells in the range. + + + + + Returns minumum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns maximum value from numeric cells in the range. + + + + + Returns maximum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Trim the empty rows at top and bottom of the range, the empty columns at left and right of the range. + + Returns the range after trim. + + + + Creates a merged cell from the specified Range object. + + + + + Creates a merged cell from the specified Range object. + + Indicates whether to clear unnecessary cells. + + + + Ungroups current range. + + + Indicates type of ungrouping. Ungroup by columns or by rows. + + Current range after ungrouping. + + + + Separates a merged area into individual cells. + + + + + Freezes pane at the current range. + + + + + Clear the contents of the Range. + + + + + Clear the contents of the Range with formatting. + + True if formatting should also be cleared. + + + + Clears the cell based on clear options. + + + + + + Clear the contents of the Range and shifts the cells Up or Left + without formula or merged ranges update. + + Cells shift direction Up/Left. + + + + Clear the contents of the Range and shifts the cells Up or Left. + + Cells shift direction Up/Left. + Cells shifting options. + + + + Moves the cells to the specified Range (without updating formulas). + + Destination Range. + + + + Copies the range to the specified destination Range (without updating formulas). + + Destination range. + Range were this range was copied. + + + + Copies this range into another location. + + Destination range. + Copy range options. + Destination range. + + + + Copies the Range to the specified destination Range with copy options. + + Represents the destination Range to copy. + Represents if the pasteLinkOptions implement or not . + Returns the copied Range. + + The following code illustrates how to copy the Range with pasteLink options. + + ExcelEngine engine = new ExcelEngine(); + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + IRange sourceRange1 = sheet.Range["A1:A3"]; + IRange sourceRange2 = sheet.Range["A5"]; + IRange sourceRange3 = sheet.Range["A8:A10"]; + IRange sourceRange4 = sheet.Range["A12:A16"]; + IRange sourceRange5 = sheet.Range["A22:A30"]; + IRange sourceRange6 = sheet.Range["A35:A37"]; + IRange sourceRange7 = sheet.Range["A38"]; + IRanges sourceRanges = sheet.CreateRangesCollection(); + sourceRanges.Add(sourceRange1); + sourceRanges.Add(sourceRange2); + sourceRanges.Add(sourceRange3); + sourceRanges.Add(sourceRange4); + sourceRanges.Add(sourceRange5); + sourceRanges.Add(sourceRange6); + sourceRanges.Add(sourceRange7); + IRange destination = sheet.Range["C1"]; + // Copy range as link from source to destination + sourceRanges.CopyTo(destination, true); + workbook.Version = ExcelVersion.Excel2013; + workbook.SaveAs("CopyRange.xlsx"); + workbook.Close(); + engine.Dispose(); + + + + + + Checks and copies multiple source ranges into one destination for PasteLink and SkipBlank + + Represents the destination Range to copy. + Represents if the pasteLinkOptions implement or not . + Represents the copy Range options. + Represents the skip blank cells in the source. + + + + Copies the Range to the specified destination Range with copy options and skip blank option. + + Represents the destination Range to copy. + Represents the copy Range options. + Represents the skip blank cells in the source. + Returns the copied Range. + + + + Returns intersection of this range with the specified one. + + The Range with which to intersect. + Range intersection; if there is no intersection, NULL is returned. + + + + Returns merge of this range with the specified one. + + The Range to merge with. + Merged ranges or NULL if wasn't able to merge ranges. + + + + Returns a Range object that represents a range thats offset from the specified range. + + The number of rows (positive, negative, or 0 (zero)) by which the range is to be offset + The number of columns (positive, negative, or 0 (zero)) by which the range is to be offset + + + + + Resizes the specified range + + The number of rows in new range + The number of columns in new range + + + + + Autofits all rows in the range. + + + + + Autofits all columns in the range. + + + + + Adds comment to the range. + + Range's comment. + + + + This method searches for the first cell with specified string value. + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified double value. + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified bool value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified DateTime value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified TimeSpan value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the all cells with specified DateTime value. + + Value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified TimeSpan value. + + Value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified string value. + + Value to search. + Type of value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified double value. + + Value to search. + Type of value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified bool value. + + Value to search. + All found cells, or Null if value was not found + + + + Replaces the string with the specified string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + + Replaces the string with the specified string value based on the given . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + + + + Replaces the string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + + + + Replaces the string with the specified DateTime value. + + The string to be replaced. + The datetime value to replace all occurrences of oldValue. + + + + Replaces the string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified datatable. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Replaces the string with the specified datacolumn. + + The string to be replaced. + DataColumn with new data. + Indicates whether field name must be shown. + + + + Copies range to the clipboard. + + + + + Sets around border for current range. + + + + + Sets around border for current range. + + Represents border line. + + + + Sets around border for current range. + + Represents border line. + Represents border color. + + + + Sets around border for current range. + + Represents border line. + Represents border color as ExcelKnownColors. + + + + Sets inside border for current range. + + + + + Sets inside border for current range. + + Represents border line. + + + + Sets inside border for current range. + + Represents border line. + Represents border color. + + + + Sets inside border for current range. + + Represents border line. + Represents border color as ExcelKnownColors. + + + + Sets none border for current range. + + + + + Collapses current group. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + + + + Expands current group. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + + + + Expands current group. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + Additional option flags. + + + + Gets the dependent cells which refer to other cells. + + Returns the dependent cells or null if value was not found. + The following code illustrates how to get the dependent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDependents(); + + string fileName = "Dependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the dependent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the dependents cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDependents(true); + + string fileName = "Dependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the precedent cells which are referred by a formula in another cell. + + Returns the precedent cells or null if value was not found. + The following code illustrates how to get the precedent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetPrecedents(); + + string fileName = "Precedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the precedent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the precedent cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetPrecedents(true); + + string fileName = "Precedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct dependent cells which refer to other cells. + + Returns the direct dependent cells or null if value was not found. + The following code illustrates how to get the direct dependent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDirectDependents(); + + string fileName = "Dependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the direct dependent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the direct dependents cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDirectDependents(true); + + string fileName = "Dependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Returns the direct precedent cells or null if value was not found. + The following code illustrates how to get the direct precedent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDirectPrecedents(); + + string fileName = "Precedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the direct precedent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the direct precedent cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDirectPrecedents(true); + + string fileName = "Precedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the dependent cells with a specified bool value or null if value was not found. + + + + Gets the precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the precedent cells with a specified bool value or null if value was not found. + + + + Add the range array to result cell collection. + + Precedents/Dependents cells collection. + Precedents/Dependents cell array for single range. + + + + Creates a threaded comment for the current cell with the specified text. + + Threaded comment text + Optional.The creation time of the threaded comment + Returns the created instance of . + + + + Creates a threaded comment for the current cell with the specified text and author. + + Threaded comment text + The author of the threaded comment text + Optional.The creation time of the threaded comment + Returns the created instance of . + + + + Set Style Name for the range collection. + + CellStyleName to be set + + + + Gets new address of range. + + Dictionary with Worksheet names. + String that sets as a worksheet name. + Returns string with new name. + + + + Clones current IRange. + + Parent object. + Dictionary with new names. + Parent workbook. + Returns clone of current instance. + + + + Clears conditional formats. + + + + + Clears conditional formats. + + + + + Returns array that contains information about range. + + Rectangles that describes range + + + + Returns number of rectangles returned by GetRectangles method. + + Number of rectangles returned by GetRectangles method. + + + + Adds new range to the collection. + + Range to add. + + + + Adds range to the collection. + + Range to add. + + + + Removes range from the collection. + + Range to remove. + + + + Evaluates dimensions of the ranges collection. + + + + + Returns SortedListEx that describes used rows / columns. + + Indicates whether information about columns should be returned. + SortedListEx that describes used rows / columns. + + + + Adds new element to the list of used rows / columns. + + List to add entry to. + Row / column index. + Entry to add. + + + + Adds new element to the list of used rows / columns. + + List to add entry to. + Row / column index. + Start index of the new entry. + End index of the new entry. + + + + + + + + + + + Returns array of used rows / columns. + + Indicates whether columns array should be returned. + Array of used rows / columns. + + + + Checks whether collection is disposed. + + + + + + + + + + + Gets ptg of current range. + + Returns native ptg. + + + + Returns an IEnumerator + + + + + + Gets or sets HTML string. + + + + + Returns the range reference in the language of the macro. + Read-only String. + + + + + Returns the range reference for the specified range in the language + of the user. Read-only String. + + + + + Returns the range reference in the language of the macro. + Read-only String. + + + + + Returns the range reference in the language of the macro using R1C1-style reference. + Read-only String. + + + + + Returns the range reference for the specified range in the language + of the user using R1C1 style reference . Read-only String. + + + + + Gets / sets boolean value that is contained by this range. + + + + + Returns a Borders collection that represents the borders of a style + or a range of cells (including a range defined as part of a + conditional format). + + + + + Returns a Range object that represents the cells in the specified range. + For big number of ranges can be very slow operation. Read-only. + + + + + Returns the number of the first column in the first area in the specified + range. Read-only. + + + + + Column group level. Read-only. + -1 - Not all columns in the range have same group level. + 0 - No grouping, + 1 - 7 - Group level. + + + + + Returns or sets the width of all columns in the specified range. + Read/write Double. + + + + + Returns the number of objects in the collection. Read-only. + + + + + Gets / sets DateTime contained by this cell. Read-write DateTime. + + + + + Returns cell value after number format application. Read-only. + + + + + Returns a Range object that represents the cell at the end of the + region that contains the source range. + + + + + Returns a Range object that represents the entire column (or + columns) that contains the specified range. Read-only. + + + + + Returns a Range object that represents the entire row (or + rows) that contains the specified range. Read-only. + + + + + Gets / sets error value that is contained by this range. + + + + + Returns or sets the object's formula in A1-style notation and in + the language of the macro. Read/write Variant. + + + + + Returns or sets the object's formula in R1C1-style notation and in + the language of the macro. Read/write Variant. + + + + + Represents array-entered formula. + Visit http://www.cpearson.com/excel/array.htm for more information. + + + + + Returns or sets the array-entered formula in R1C1-style notation and in + the language of the macro. Read/write Variant. + + + + + True if the formula will be hidden when the worksheet is protected. + False if at least part of formula in the range is not hidden. + + + + + Get / set formula DateTime value contained by this cell. + DateTime.MinValue if not all cells of the range have same DateTime value. + + + + + Indicates whether specified range object has data validation. + If Range is not single cell, then returns true only if all cells have data validation. Read-only. + + + + + Indicates whether range contains bool value. Read-only. + + + + + Indicates whether range contains DateTime value. Read-only. + + + + + Indicates if current range has formula bool value. Read-only. + + + + + Indicates if current range has formula error value. Read-only. + + + + + Indicates if current range has formula value formatted as DateTime. Read-only. + + + + + Gets whether the range has formula number value + + + + + Gets whether the range has formula string value + + + + + True if all cells in the range contain formulas; False if + at least one of the cells in the range doesn't contain a formula. + Read-only Boolean. + + + + + Indicates whether range contains array-entered formula. Read-only. + + + + + Indicates whether the range contains number. Read-only. + + + + + Indicates whether cell contains formatted rich text string. + + + + + Indicates whether the range contains String. Read-only. + + + + + Indicates whether range has default style. False means default style. + Read-only. + + + + + Returns or sets the horizontal alignment for the specified object. + Read/write ExcelHAlign. + + + + + Returns hyperlinks for this ranges collection. + + + + + Returns or sets the indent level for the cell or range. Can be an integer + from 0 to 15 for Excel 97-2003 and 250 for Excel 2007. Read/write Integer. + + + + + Indicates whether the range is blank. Read-only. + + + + + Indicates whether range contains boolean value. Read-only. + + + + + Indicates whether range contains error value. + + + + + Indicates whether this range is grouped by column. Read-only. + + + + + Indicates whether this range is grouped by row. Read-only. + + + + + Indicates whether cell is initialized. Read-only. + + + + + Returns last column of the range. Read-only. + + + + + Returns last row of the range. Read-only. + + + + + Gets / sets double value of the range. + + + + + Format of current cell. Analog of Style.NumberFormat property. + + + + + Returns the number of the first row of the first area in + the range. Read-only Long. + + + + + Row group level. Read-only. + -1 - Not all rows in the range have same group level. + 0 - No grouping, + 1 - 7 - Group level. + + + + + Returns the height of all the rows in the range specified, + measured in points. Returns Double.MinValue if the rows in the specified range + aren't all the same height. Read / write Double. + + + + + For a Range object, returns an array of Range objects that represent the + rows in the specified range. + + + + + For a Range object, returns an array of Range objects that represent the + columns in the specified range. + + + + + Returns a Style object that represents the style of the specified + range. Read/write IStyle. + + + + + Returns name of the Style object that represents the style of the specified + range. Read/write String. + + + + + Gets / sets string value of the range. + + + + + Gets / sets time value of the range. + + + + + Returns or sets the value of the specified range. + Read/write Variant. + + + + + Returns the calculated value of a formula using the most current inputs. + + + + + Returns or sets the cell value. Read/write Variant. + The only difference between this property and the Value property is + that the Value2 property doesn't use the Currency and Date data types. + + + + + Returns or sets the vertical alignment of the specified object. + Read/write ExcelVAlign. + + + + + Returns a Worksheet object that represents the worksheet + containing the specified range. Read-only. + + + + + Gets / sets cell by row and index. + + + + + Get cell range. + + + + + Get cell range. + + + + + Gets cell range. Read-only. + + + + + Collection of conditional formats. + + + + + Data validation for the range. + + + + + + + + + + + + + + + Returns the calculated value of the formula as a boolean. + + + + + Returns the calculated value of the formula as a string. + + + + + Comment assigned to the range. Read-only. + + + + + Get the threaded comment. + + + + + String with rich text formatting. Read-only. + + + + + Indicates whether this range is part of merged range. Read-only. + + + + + Returns a Range object that represents the merged range containing + the specified cell. If the specified cell isn�t in a merged range, + this property returns NULL. Read-only. + + + + + True if Microsoft Excel wraps the text in the object. + Read/write Boolean. + + + + + Indicates is current range has external formula. Read-only. + + + + + Represents ignore error options. If not single cell returs concatenateed flags. + + + + + Indicates whether all values in the range are preserved as strings. + + + + + Gets/sets built in style. + + + + + Gets address global in the format required by Excel 2007. + + + + + Number of cells in the range. Read-only. + + + + + Gets name of the parent worksheet. + + + + + Returns item by index from the collection. + + + + + Implements a two-dimensional table that holds an SFArrayList of rows. Each row + is an SFArrayList of objects. + + +

This is a memory efficient way to represent a table where values can remain empty. Only rows + that actually contain data will allocate an SFArrayList and the array only holds + as many objects as the specific row contains columns.

+

When you access data that are out of range, an empty () object will be returned. + If you set data that are out of range, an exception will be thrown. If you set data for + a row that is empty, the row will be allocated before the value is stored.

+

SFTable provides methods that let you insert, remove or rearrange columns or m_arrRows + in the table.

+
+
+ + + Number of m_arrRows in the collection. + + + + + Collection of rows. + + + + + First created row. + + + + + Last created row. + + + + + Indicates whether object was disposed. + + + + + This array contains all shared formulas found during parsing. + + + + + Parent workbook. + + + + + Parent worksheet. + + + + + Initializes a new instance of the + class. + + + Initializes a new instance of the + class that is empty. + + Number of rows in the collection. + Parent worksheet object. + + + + Initializes a new instance of the + class and optional copies of data from an existing table. + + Represents record table data. + Indicates is clone. + Parent worksheet object. + + + + + + + + + Object finalizer. + + + + + Creates a deep copy of the . + + + A deep copy of the . + + + + + Creates a deep copy of the . + + Parent worksheet object. + + A deep copy of the . + + + + + Removes all elements from the . + + + + + Creates a collection of cells for a row. + + Zero-based row index. + Row height. + Excel version. + An SFArrayList or derived object for the cell collection. + + + + Indicates whether an element is at the specified coordinates in the . + + The zero-based row index. + The zero-based column index. + + + if an element exists at the specified coordinates in the ; + otherwise. + + + + + Extracts Array record from the collection. + + Cell that contains array-entered formula. + ArrayRecord if there is one; null if cell doesn't contain array-entered formula. + + + + Updates first and last row indexes. + + Zero-based index of the created row. + + + + Sets row. + + Zero-based row index to set. + Row object to set. + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Removes last column from the worksheet. + + Zero-based column index. + + + + Removes row from the worksheet. + + Zero-based row index to remove. + + + + Updates indexes to named ranges. + + Parent workbook. + New indexes. + + + + Updates indexes to named ranges. + + Parent workbook. + New indexes. + + + + Replaces all shared formula with ordinary formula. + + + + + + Replaces all shared formula with ordinary formula. + + + + + Updates string indexes. + + List with new indexes. + + + + Copies cells from another worksheet. + + Source cells collection to copy cells from. + Source SST dictionary. + Destination SST dictionary. + Dictionary with new extended format indexes. + Dictionary with new worksheet names. + Dictionary with new name indexes. + Dictionary with new font indexes. + + + + Returns found values or null. + + Storage range. + Value for finding. + If true - finds first value; otherwise - all values. + If findfirst - true then returns range; otherwise - array with all found values. + Parent workbook. + + + + + Returns found values or null. + + Storage range. + Value to find. + If true - finds first value; otherwise - all values. + Way to find the value. + If findfirst - true then returns range; otherwise - array with all found values. + The book. + + List with cell indexes that contains specified value. + + + + + Returns found values or null. + + Storage range. + Value for finding. + If true - finds first value; otherwise - all values. + If findfirst - true then returns range; otherwise - array with all found values. + Parent workbook. + + + + + Returns found values or null. + + Storage range. + Value for finding. + Indicates whether we should look for error code or boolean value. + If findfirst - true then returns range; otherwise - array with all found values. + Parent workbook. + + + + + Returns minimum used column. + + Start row. + End row. + Minimum used column. + + + + Returns maximum used column. + + Start row. + End row. + Maximum used column. + + + + Determines whether collection contains row. + + Zero-based row index. + True if the collection contains at least one element with specified row index; otherwise, False. + + + + + + + + + + Caches and removes specified rectangle from the table. + + Source rectangle. + Row delta to add to the resulting table. + Column delta to add to the resulting table. + Output maximum zero-based row index. + Output maximum zero-based column index. + Boolean flag to indicate if a row is moved or inserted. + Cached table. + + + + This method should be called immediately after extended format removal. + + Dictionary with updated extended formats. + + + + This method should be called immediately after extended format removal. + + Array with updated extended formats. + + + + This method updates indexes to the extended formats after version change. + + New restriction for maximum possible XF index. + + + + Updates LabelSST indexes after SST record parsing. + + Dictionary with indexes to update, key - old index, value - new index. + + + + Extracts ranges from the reader. + + Reader to extract ranges from. + Indicates whether to ignore styles. + SSTDictionary of the parent workbook. + Parent worksheet. + Object used to decrypt encrypted records. + + + + Adds shared formula to record table. + + Row index of the cell containing shared formula description. + Column index of the cell containing shared formula description. + Shared formula record to add. + + + + Extracts ranges from the reader. + + Index record + Reader to extract ranges from. + Indicates whether to ignore styles. + SSTDictionary of the parent workbook. + Parent worksheet. + True if parsing was succeeded (this doesn't guarantees records correctness). + + + + Returns row from the collection or creates one if necessary. + + Zero-based row index. + Row height. + Indicates whether to create row if it doesn't exist. + Excel version. + Desired row object. + + + + Ensures that array will be able to handle desired number of rows. + + + + + + + + + + + + + + + + + + + + True if parsing succeeded (this doesn't guarantee data correctness). + + + + Fills RowRecord with data from the stream. + + RowRecord to fill. + Stream to read data from. + Temporary buffer. + Data provider that gives additional access to the temporary buffer. + Record length. + + + + Reads RowStorage data from the stream. + + Corresponding RowRecord. + Stream to read data from. + Size of the data to read. + Temporary buffer. + Strings shared table which can be updated during parsing. + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Gets bool value by row or column indexes. Without check input parameters. + + One based row index. + One based column index. + If found - returns value; otherwise - 0. + + + + Gets formula bool value by row or column indexes. Without check input parameters. + + One based row index. + One based column index. + If found - returns value; otherwise - 0. + + + + Gets error value by row or column indexes. Without check input parameters. + + One based row index. + One based column index. + If found - returns value; otherwise - null. + + + + Gets the error value. + + The value. + The i row. + + + + + Gets formula error value by row or column indexes. Without check input parameters. + + One based row index. + One based column index. + If found - returns value; otherwise - null. + + + + Gets number value by row or column indexes. Without check input parameters. + + One based row index. + One based column index. + If found - returns value; otherwise - double.NaN. + + + + Gets formula number value by row or column indexes. Without check input parameters. + + One based row index. + One based column index. + If found - returns value; otherwise - double.NaN. + + + + Gets string value by row or column indexes. Without check input parameters. + + One based row index. + One based column index. + Represents sst dictionary. + If found - returns value; otherwise - null. + + + + Gets string value by row or column indexes. Without check input parameters. + + One based row index. + One based column index. + Represents sst dictionary. + If found - returns value; otherwise - null. + + + + Gets array of formula ptg. + + One based row index. + One based column index. + If found - returns ptg array; otherwise - null. + + + + Indicates if there is formula record. + + One based row index. + One based column index. + Indicates whether formula record is contained. + + + + Indicates is contain formula array. + + Zero based row index. + Zero based column index. + If found return true; otherwise - false. + + + + Gets cell type from current column. + + Indicates row. + Indicates column. + Indicates is need to indentify formula sub type. + Returns cell type. + + + + Sets formula value. Use for setting FormulaError, FormulaBoolean, FormulaNumber, FormulaString values. + + One based row index. + One based column index. + Represents value for set. + Represents string record as formula string value. Can be null. + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Return parent Application object. Read-only. + + + + + Return parent Application object. Read-only. + + + + + Returns the SFArrayList from all rows. + + + + + Gets the number of rows contained in the . Read-only. + + + + + Returns zero-based index of the first created row. + + + + + Returns zero-based index of the last created row. + + + + + Gets / sets an element at the specified coordinates in the . + + The zero-based row index. + The zero-based column index. + + If you query for an element and the coordinates are out of range, an empty () object will be returned. + If you set an element and the the coordinates are out of range, an exception is thrown. + + + + + Returns List with shared formulas. Read-only. + + + + + Number of shared formulas. Read-only. + + + + + Returns parent workbook. Read-only. + + + + + Represents enumerator for SFTable + + + + + Table to enumerate. + + + + + One-based current row index. + + + + + SFTable to enumerate. + + + + + Offset inside current row. + + + + + To prevent creation instances of this class without arguments. + + + + + Initializes new instance of the enumerator. + + Table to enumerate. + + + + Sets the enumerator to its initial position, which is before + the first element in the collection. + + + + + Advances the enumerator to the next element of the collection. + + + + + + Moves pointer to the next non-empty row if it is possible. + + True if operation succeeded. + + + + Gets the current element in the collection. + + + + + Gets the key of the current dictionary entry. Read-only. + + + + + Gets the value of the current dictionary entry. Read-only. + + + + + Gets both the key and the value of the current dictionary entry. Read-only. + + + + + Stores single row data and gives functionality to access and modify it. + + + + + Memory block will be divisible of this value. + + + + + Represents MULRK xf indexes period. + + + + + Represents MULBLANK xf indexes period. + + + + + Indicates the dot symbol + + + + + Records that are not simply ICellPositionFormat records but that contains multiple subrecords. + + + + + First record type - record that can contain several sub records, second + record type - type of the single record corresponding to the multi record type. + + + + + Zero-based index of the first column. + + + + + Zero-based index of the last column. + + + + + Size of used data. + + + + + Data provider. + + + + + Storage options. + + + + + Column that is referenced by m_iCurrentOffset. -1 - means that we have no correct offset. + + + + + Offset in the data storage to the record with m_iCurrentColumn. + + + + + Workbook object. + + + + + Represents the row index. + + + + + Represents the cells contains WrapText + + + + + Height of the row, in twips = 1/20 of a point. + + + + + Options flag. + + + + + + + + + + Preserves Table record for datatable support + + + + + Indicate whether the row is hiddem by filters + + + + + Indicate column index of filter which hide the row + + + + + Indicate whether the row is auto fitted or not + + + + + Indicate whether the cell style is applied for the row + + + + + Default constructor. + + + + + + + + Performs application-defined tasks associated with freeing, + releasing, or resetting unmanaged resources. + + + + + Disposes the object + + + + + Disposes this object. + + + + + Represents the x14ac:dyDescent attribute value + + + + + Returns row storage enumerator. + + Record extractor to get Biff records from. + + + + + Sets cell style. + + Zero-based row index. + Zero-based column index. + Index of the extended format to set. + Memory allocation elementary block size. + + + + Creates new record based on the data at the specified position. + + Offset to the record. + + + + + Returns record corresponding to the specified cell. + + Zero-based column index. + Memory allocation elementary block size. + Record corresponding to the specified cell. + + + + Returns record corresponding to the specified cell. + + Zero-based column index. + Memory allocation elementary block size. + Object used to extract records from internal data array. + Record corresponding to the specified cell. + + + + Sets cell data. + + Zero-based column index of the cell. + Cell to set. + Memory allocation elementary block size. + + + + Removes all data saving cells formatting. + + + + + Returns formula string value. + + Zero-based column index. + Value to set. + Memory allocation elementary block size. + + + + Sets array record. + + Zero-based column index. + Record to set. + Memory allocation elementary block size. + + + + Returns array record. + + Offset to the record. + Formula array record. + + + + Returns array record. + + Zero-based column index. + Corresponding array record. + + + + Creates copy of the storage. + + RowStorage with copied data. + + + + + + + + + + Creates copy of the storage. + + RowStorage with copied data. + + + + Creates copy of the storage. + + Zero-based index of the first column to copy. + Zero-based index of the last column to copy. + Memory allocation elementary block size. + RowStorage with copied data. + + + + Creates copy of the storage. + + Source strings table. + Destination strings table + Dictionary with new extended format indexes. + Dictionary with new worksheet names. + New name indexes. + Dictionary with new font indexes. + RowStorage with copied data. + + + + Creates copy of the storage. + + Zero-based index of the first column to copy. + Zero-based index of the last column to copy. + Represents allocation block size. + + + + Updates indexes in the array-entered formula. + + Zero-based column index of the cell with array-entered formula. + Zero-based row index of the array record. + Zero-based column index of the array record. + Memory allocation elementary block size. + + + + Indicates whether row contains record with specified index. + + Zero-based column index to find. + True if required record was found. + + + + Inserts data from another row object. + + Source row data. + Memory allocation elementary block size. + Heap handle that must be used to allocate memory. + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + Memory allocation elementary block size. + Parent workbook. + + + + Update formula after subtotal operation. + + Inserted row indexes. + Current worksheet index. + Source worksheet index. + Destination worksheet index. + Source workbook. + + + + Adds specified values to row and columns indexes. + + Value to add to row index. + Value to add to column index. + Memory allocation elementary block size. + + + + Updates indexes to named ranges. + + Parent workbook. + New indexes. + Memory allocation elementary block size. + + + + Updates indexes to named ranges. + + Parent workbook. + New indexes. + Memory allocation elementary block size. + + + + Replaces all shared formula with ordinary formula. + + Parent workbook. + Shared formula that should be replaced. + + + + Updates string indexes. + + List with new indexes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Find given value within the given range. + + First column within the range to search. + Last column within the rane to search. + Value to find. + Flags representing where the find value should be looked in. + Error code found. + If true - finds first value; otherwise - all values. + The workbook object. + A list of cell indexes that contains the specified value. + + + + Find given value within the given range. + + First column within the range to search. + Last column within the rane to search. + Value to find. + Flags representing where the find value should be looked in. + Way to find. + Error code found. + If true - finds first value; otherwise - all values. + The workbook object. + The sheet in which the sreach value is to be found. + The wildcard regex to find match for. + A list of cell indexes that contains the specified value. + + + + Checks the string value. + + The first. + The second. + The options. + The book. + The wildcard regex. + Boolean value indicating if the given values match each other according to find criteria. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Moves pointer to the next record. + + Offset of the current record. + Offset to the next record. + + + + This method should be called immediately after extended format removal. + + Dictionary with updated extended formats. + Memory allocation elementary block size. + + + + This method should be called immediately after extended format removal. + + Array with updated extended formats. + Memory allocation elementary block size. + + + + This method updates indexes to the extended formats after version change. + + New restriction for maximum possible XF index. + Index to the default extended format. + + + + Updates LabelSST indexes after SST record parsing. + + Dictionary with indexes to update, key - old index, value - new index. + + + + Appends storage with record's data. + + Record type. + Data length. + Array with required data. + Memory allocation elementary block size. + + + + Appends storage with record's data. + + Record type. + Data length. + Array with required data. + Memory allocation elementary block size. + + + + Appends storage with record's data. + + Data length. + Array with required data. + Memory allocation elementary block size. + + + + Appends storage with record's data. + + Zero-based column index to insert data. + Data length. + Array with required data. + Memory allocation elementary block size. + + + + Appends storage with record's data. + + Records to append. + Temporary buffer for record data. + Indicates whether we have to ignore styles. + Memory allocation elementary block size. + + + + Converts all MultiRK and MultiBlank records into set of RK / Blank records. + + Indicates whether styles must be ignored. + Memory allocation elementary block size. + + + + Compresses data storage - combines several rk/blank records into one MulRK/MulBlank records. + + + + + This method prepares row data, it updates indexes inside SSTDictionary, + sets flags for RK and MultiRK records. + + SSTDictionary to update. + List that will receive all found shared formula records. + + + + + + + + Indicates whether fast parsing is turned on. If it is not then we don't + need to update FirstColumn and LastColumn indexes. + + + + + Creates RowRecord and copies all required data into it. + + Parent workbook. + Created record. + + + + Copies row settings (default style, height and some other settings) from another row storage. + + Storage to copy settings from. + + + + Sets default row options. + + + + + Updates column indexes of the specified row. + + Column index. + Last column index. + + + + + + + Memory allocation block size. + + + + Returns extended format index for the specified column or int.MinValue if not found. + + Zero-based column index. + Extended format index for the specified column or int.MinValue if not found. + + + + Looks through all records and calls AddIncrease for each LabelSST record. + + Dictionary to update. + + + + + + + + + + + Updates columns indexes. + + + + + Iterates through all cells in the row. + + Method to call for each cell. + Data to pass to the calling method. + + + + Sets items with used reference indexes to true. + + Record type to check. + Offset to the record to check. + Array to mark used references in. + + + + Updates reference indexes. + + Represents Biff record type. + Represents offset value. + Data to be updated. + + + + + + + + + + Sets items with used reference indexes to true. + + Represents used items. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Searches for the record of specified type. + + Record type to look for. + Zero-based index of the column to start looking at. + Zero-based index of the column to end looking at. + Column index that contains record of the specified type or value beyond endColumn if not found. + + + + Searches for the first cell in the specified range. + + Zero-based column index to start search at. + Zero-based column index to end search at. + + + + + Gets indexes of the used named range objects. + + Collection to put named range indexes into. + + + + Adds all named range indexes referenced by formula tokens into resulting dictionary. + + Dictionary that will get named range tokens. + Tokens to check. + + + + Inserts records data into data storage. + + Position to insert at. + Array of records to insert. + + + + Sets cell position size to 4 and converts internal data storage. + + + + + Sets cell position size to 4 and converts internal data storage. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Evaluates number of records in this storage. + + Number of records. + + + + Updates all required indexes after copying row into another worksheet. + + Source SST dictionary. + Destination SST dictionary. + Dictionary with new extended format indexes. + Dictionary with new worksheet names. + Dictionary with new name indexes. + Dictionary with new font indexes. + + + + Updates MulRK or MulBlank XF Indexes. + + HashTable with new XF Indexes. + Represents offset on start mull record. + Record length without header. + Indicates whether offset is offset to MulRK record (TRUE) or to MulBlank record (false). + + + + Updates sst records. + + Represents source sst. + Represents destination sst. + Represents offset to add. + + Dictionary with new font indexes. + + + + Updates formula indexes. + + Represents source SST. + Represents destination sst. + Represents offset. + Represents hash table with worksheet names. + Represents dic name indexes. + Represents length + + + + Updates sheet references in the formula. + + Formula to update. + Dictionary with new worksheet names. + Source workbook. + Destination workbook. + True if any changes were made. + + + + Updates named range references in the formula. + + Formula to update. + Dictionary with new name indexes. + True if any changes were made. + + + + Updates sheet references in the formula. + + Formula to update. + Dictionary with new worksheet names. + Source workbook. + Destination workbook. + Represents dictionary with name indexes. + True if any changes were made. + + + + Get new external reference index for the formula. + + The source workbook. + The destination workbook. + The destination workbook. + Cell formula array. + Returns the external reference index for the formula. + + + + Get new external workbook for the formula. + + The source workbook. + The destination workbook. + The destination workbook. + Returns the external workbook for the formula. + + + + Update the named range index for Ptg. + + The token to update name index. + New nameindex collection. + + + + Indicates whether multi- record contains records of the same type as specified one. + + Cell type to check. + Offset to the multi- record. + True if record types are compatible. + + + + Splits record into two parts by removing subrecord with specified column index. + + Offset to the record to split. + Column index to split by. + Memory allocation elementary block size. + Offset to the second part. + + + + Inserts record inside record that contains multiple values. + + Offset to the record to insert into. + Record to insert. + + + + Inserts record data into storage. + + Offset to the record. + Size that could be overwritten by new record. + Size required by new record. + Record to write. + Memory allocation elementary block size. + + + + Inserts record data into storage. + + Offset to the record. + Size that could be overwritten by new record. + Records to write. + Memory allocation elementary block size. + + + + Locates record in the row. + + One-based column index of the record to find. + Indicates whether record was found. + Offset where record should be placed. + + + + Locates record in the row. + + One-based column index of the record to find. + Indicates whether record was found. + Indicates is found multi record or not. + If true returns offset on valid mull rk structure, by current column index. + Otherwise on MulRk record. + Offset where record should be placed. + + + + + + + + + + + + + + + + + Ensures that internal data storage will be able to store specified number of bytes. + + Required data storage size. + Memory allocation elementary block size. + + + + Updates row dimension information. + + Accessed zero-based column index. + + + + Updates row dimension information. + + Accessed zero-based column index. + Cell that was set. + + + + Removes formula string record. + + Zero-based column index. + Old offset to the string record. + + + + Removes formula string record. + + Zero-based column index. + Returns offset to the corresponding FormulaRecord. + Old offset to the string record. + + + + Removes record from the storage. + + Offset to the record to remove. + + + + Moves pointer to the next record. + + Offset of the current record. + Offset to the next record. + + + + Returns offsets, first one (X) is position before start column and the second one (Y) after end column. + + Zero-based index of the start column. + Zero-based index of the end column. + Output start column index. + Output end column index. + Point with evaluated offsets. + + + + Evaluates offset after specified record and satellite records. + + Offset to the record. + Offset after specified record and satellite records. + + + + Creates multi record. + + Type of sub record. + Created record. + + + + Tries to get record for the next column. + + Column index. + Records that corresponds to the column index. + Current record offset. + Indicates whether record is multi- record. + Record corresponding to the + + + + Returns last column index from the multi- record. + + Offset to the record's start. + Last column index from the multi- record. + + + + Sets cell data without trying to create multi record. + + Zero-based column index of the cell. + Cell to set. + Memory allocation elementary block size. + + + + Evaluates size of the data in the compressed state. + + Compressed data size. + + + + Simply skips record. + + User data. + Offset after skipping record data. + + + + Skips RK records. + + User data. + Offset after skipping record data. + + + + Skips RK records. + + User data. + Offset after skipping record data. + + + + Simply skips record. + + User data. + Offset after skipping record data. + + + + Writes RK records into data array. + + User data. + Offset after skipping record data. + + + + Writes Blank records into data array. + + User data. + Offset after skipping record data. + + + + Creates MulRK record based on set of RK records. + + + Class that contains additional information needed to create + MulRK record correctly. + + Number of RK records. + Created record. + + + + Creates MulRK record based on set of RK records. + + Offset to the first RK record. + Number of RK records. + Created record. + + + + Creates MulBlank record based on set of Blank records. + + Offset to the first Blank record. + Number of Blank records. + Created record. + + + + + + + + + + + + + + + + + + + + + + + Creates multi-cell record (MulRK or MulBlank) at the specified offset. + + Offset to the record to create. + Instance of MulBlank record. + Instance of MulRK record. + Record length including header. + Created record or null if there is incorrect record type. + + + + + + + + + + + + Gets row from the record. + + Offset to the record's start. + Zero-based row index. + + + + Sets row for the record. + + Offset to the record's start. + Zero-based row index to set. + + + + Gets column from the record. + + Offset to the record's start. + Zero-based column index. + + + + Sets column for the record. + + Offset to the record's start. + Zero-based column index to set. + + + + Gets last column index from the MulRk or MulBlank record. + + Offset to the record's start. + Record length. + Zero-based column index. + + + + Gets XF index from the record. + + Offset to the record's start. + Indicates whether record is multi record or not. + Zero-based index to the extended format record with style settings. + + + + Sets XF index for the record. + + Offset to the record's start. + Zero-based index to the extended format record with style settings to set. + + + + Sets XF index inside of "multi" record (MulRK or MulBlank). + + Offset to the record's start. + Zero-based index to the extended format record with style settings to set. + Zero-based column index of the cell to set style. + Size of subrecord inside of multi record. + + + + Size of the required storage space. Read-only. + + + + + Save record data to stream. + + Writer that will receive record data. + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the record. + If writer is NULL. + + + + Gets bool value by column index. Without check input parameters. + + One based column index. + If found - returns boolean value; otherwise - 0. + + + + Gets formula bool value by column index. Without check input parameters. + + One based column index. + If found - returns boolean value; otherwise - 0. + + + + Gets error value by column index. Without check input parameters. + + One based column index. + If found - returns error value; otherwise - null. + + + + Gets formula error value by column index. Without check input parameters. + + One based column index. + If found - returns error value; otherwise - null. + + + + Gets number value. + + Column index. + Returns number value or NaN. + + + + Checks the format. + + The format. + + + + + Gets formula number value. + + Column index. + Returns number value or NaN. + + + + Gets string value. + + Column index. + Represents sst dictionary. + Returns string value or null. + + + + Returns formula string value. + + Zero-based column index. + String result of the formula. + + + + Returns formula string value. + + Offset to record. + Formula string value. + + + + Gets string value. + + Column index. + Returns ptg array or null. + + + + Gets cell type from current column. + + Indicates column. + Indicates is need to indentify formula sub type. + Returns cell type. + + + + To Get the Value by the specific record type. + + + + + + + + + + Gets sub formula type. + + Represents offset on start formula record. + + + + + Indicates if there is formula record. + + Zero based column index. + Indicates whether formula record is contained. + + + + Indicates is contain formula array. + + Zero based column index. + If found return true; otherwise - false. + + + + Gets error string by number. + + Represents number. + Returns error string or null. + + + + Sets the workbook. + + The book. + The i row. + + + + Sets formula value. Use for setting FormulaError, FormulaBoolean, FormulaNumber, FormulaString values. + + Zero based column index. + Represents value for set. + Represents string record as formula string value. Can be null. + Memory allocation elementary block size. + + + + Represents the row index. + + + + + Zero-based index of the first column. Read/write. + + + + + Zero-based index of the last column. Read/write. + + + + + Size of used data. Read-only. + + + + + Size of allocated data. Read-only. + + + + + Gets or sets value indicating whether storage possibly contains Rk or Blank records. + + + + + Gets or sets value indicating whether storage possibly contains MultiRk or MultiBlank records. + + + + + Indicates that storage was disposed. Read-only. + + + + + Zero-based index of the first column. Read/write. + + + + + Returns internal data provider. Read-only. + + + + + Returns size of the cell position block. Read-only. + + + + + + + + + + Gets the DyDescent attribute value of the row. + + + + + Indicate whether the row is auto fitted or not + + + + + Indicate whether the cell style is applied for the row + + + + + Returns type code of the biff storage. Read-only. + + + + + Returns code of the biff storage. Read-only. + + + + + Indicates whether data array is required by this record. Read-only. + + + + + Indicates record position in stream. This is a utility member of class and + is used only in the serialization process. Does not influence the data. + + + + + Height of the row, in twips = 1/20 of a point. + + + + + If the row is formatted, then this is the index to + the extended format record. + + + + + The outline level of this row. + Changes some bits of m_usOptionFlags private member. + + + When value is more than 7. + + + + + Whether or not to collapse this row. + + + + + Whether or not to display this row with 0 height. + + + + + Whether the font and row height are not compatible. + True if they aren't compatible. + + + + + Whether the row has been formatted (even if it has all blank cells). + + + + + True if there is additional space above the row. + + + + + True if there is additional space below the row. + + + + + Undocumented bit flag. If it is set to False, then Excel will + not show row groups. Default value is True. + + + + + Row or column index. + + + + + Indicate whether the row is hidden by the filters or not + + + + + Indicate column index of filter which hide the row + Column index was maintain as one base index + Return zero if it was not hidden or by default + + + + + Storage options. + + + + + None. + + + + + Indicates that storage contains (or can contain) some RK or Blank records. + + + + + Indicates that storage contains (or can contain) some MultiRK or MultiBlank records. + + + + + Indicates that storage was disposed. + + + + + Calls each cell. + + Record type to check. + Offset to the record to check. + Data to be passed. + + + + Data for size evaluation. + + + + + Start offset. + + + + + Used size. + + + + + Data for writing defragmented data. + + + + + Offset to the record data in the old storage. + + + + + Size of the data. + + + + + Delegate used for defragmentation. + + + + + Represents enumerator for RowStorage + + + + + RowStorage to enumerate. + + + + + Offset to current cell. + + + + + Record extractor. + + + + + To prevent creation instances of this class without arguments. + + + + + Initializes new instance of the enumerator. + + RowStorage to enumerate. + Record extractor to get Biff records from. + + + + Sets the enumerator to its initial position, which is before + the first element in the collection. + + + + + Advances the enumerator to the next element of the collection. + + + + + + Returns formula array record from current cell if it exists. + + Formula array record; null - if doesn't exist. + + + + Returns formula string value if formula contains it. + + + + + + Gets the current element in the collection. + + + + + Gets current cell row. + + + + + Gets current cell column. + + + + + Gets current cell extended format. + + + + + Extends List with MoveRange, InsertRange and RemoveRange methods. The Item property + will grow the array on demand or return NULL if an index is out of range. + + + + + Overloaded. Initializes a new instance of the SFArrayList + class that is empty and has the default initial capacity. + + + + + Initializes a new instance of the SFArrayList class that contains + elements copied from the specified collection and has the same initial + capacity as the number of elements copied. + + The whose elements are copied to the new list. + + + + Overridden. Creates a deep copy of the SFArrayList. + + + A deep copy of the SFArrayList. + + + + + Overridden. Creates a deep copy of the SFArrayList. + + Parent object for the new items. + + A deep copy of the SFArrayList. + + + + + Enlarges the array if needed. + + The size to be checked. If the array has less elements, empty () objects will be appended + at the end of the array. + + + + Gets / sets the element at the specified index. + In C#, this property is the indexer for the SFArrayList class. + + The zero-based index of the element to get / set. + + The element at the specified index. + When querying the value and the index is out of range, an empty () object will be returned. + When setting the value and the index is out of range the array will be enlarged. See SFArrayList.EnsureCount + + + + + Implements a two-dimensional table that holds an SFArrayList of rows. Each row + is an SFArrayList of objects. + + +

This is a memory efficient way to represent a table where values can remain empty. Only rows + that actually contain data will allocate an SFArrayList and the array only holds + as many objects as the specific row contains columns.

+

When you access data that are out of range, an empty () object will be returned. + If you set data that are out of range, an exception will be thrown. If you set data for + a row that is empty, the row will be allocated before the value is stored.

+

SFTable provides methods that let you insert, remove or rearrange columns or m_arrRows + in the table.

+
+
+ + + Number of m_arrRows in the collection. + + + + + Number of columns in the collection. + + + + + Collection of rows. + + + + + Number of cells in the collection. + + + + + Initializes a new instance of the + class. + + + Initializes a new instance of the + class that is empty. + + Number of rows in the collection. + Number of columns in the collection. + + + + Initializes a new instance of the + class and optional copies of data from an existing table. + + Table to copy. + Indicates whether to copy data. + + + + Initializes a new instance of the + class and optional copies of data from an existing table. + + Table to copy. + Indicates whether to copy data. + Parent object for the new items. + + + + Creates a deep copy of the . + + + A deep copy of the . + + + + + Creates a deep copy of the . + + Parent object for the items. + + A deep copy of the . + + + + + Removes all elements from the . + + + + + Creates a collection of cells for a row. + + An SFArrayList or derived object for the cell collection. + + + + Indicates whether an element is at the specified coordinates in the . + + The zero-based row index. + The zero-based column index. + + + if an element exists at the specified coordinates in the ; + otherwise. + + + + + Returns the SFArrayList from all rows. + + + + + Gets the number of rows contained in the . Read-only. + + + + + Gets the number of columns contained in the . Read-only. + + + + + Returns number of cells in the collection. Read-only. + + + + + Gets / sets an element at the specified coordinates in the . + + The zero-based row index. + The zero-based column index. + + If you query for an element and the coordinates are out of range, an empty () object will be returned. + If you set an element and the the coordinates are out of range, an exception is thrown. + + + + + Collection of worksheet's shapes. + + + + + Represents shapes collection in the workbook. + + + + + Adds new to the collection. + + Image to add. + File name with the image. + Image format to use for picture storing. + Newly created picture shape. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get image + System.Drawing.Image image = System.Drawing.Image.FromFile("image.png"); + + //Add picture shape + IPictureShape picture = worksheet.Shapes.AddPicture(image, "Image1", ExcelImageFormat.Jpeg); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds new to the collection. + + File name with the image. + Newly created picture shape. + + This method is only supported in Windows Forms, WPF, ASP.NET and ASP.NET MVC. + + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add picture shape + IPictureShape picture = worksheet.Shapes.AddPicture("image.png"); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds new Comment shape to the collection. + + Text of the comment. + Indicates is parse comment fill line options. + Newly added shape. + + + + Adds new Comment shape to the collection. + + Text of the comment. + Newly added shape. + + + + Adds new Comment shape with empty comment text to the collection. + + Newly added shape. + + + + Adds new chart shape to the collection. + + Newly added shape. + + + + Adds shape copy to the collection. + + Shape to copy. + Added shape. + + The following code illustrates how to add a copy of the source shape to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Add copy + IShape copiedShape = worksheet.Shapes.AddCopy(shape); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds shape copy to shapes collection. + + Shape to copy. + Dictionary with new names of worksheets. + List with new font indexes. + Added shape. + + + + Adds new to the collection. + + Newly created textbox. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBoxShapeEx textbox = worksheet.Shapes.AddTextBox(); + + //Set dimensions + textbox.Top = 1; + textbox.Left = 1; + textbox.Height = 40; + textbox.Width = 300; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds new to the collection. + + Newly created checkbox. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add checkbox + ICheckBoxShape checkbox = worksheet.Shapes.AddCheckBox(); + + //Set dimensions + checkbox.Top = 1; + checkbox.Left = 1; + checkbox.Height = 20; + checkbox.Width = 100; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds new to the collection. + + Newly created checkbox. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add option button + IOptionButtonShape optionButton = worksheet.Shapes.AddOptionButton(); + + //Set dimensions + optionButton.Top = 1; + optionButton.Left = 1; + optionButton.Height = 20; + optionButton.Width = 100; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds new to the collection. + + Newly created checkbox. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add combobox + IComboBoxShape combobox = worksheet.Shapes.AddComboBox(); + + //Set dimensions + combobox.Top = 1; + combobox.Left = 1; + combobox.Height = 20; + combobox.Width = 100; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Adds new to the collection + + AutoShape type + One-based index of the top row of the shape to be placed. + One-based index of the left column of the shape to be placed. + Height of the auto shapes. + Width of the auto shapes. + Returns newly added shape. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Create a for selected items. + + AutoShapeType + Newly created group shape + + The following code illustrates how to ungroup a specified . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("GroupShapes.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IShapes shapes = worksheet.Shapes; + IShape[] groupItems = new IShape[] { shapes[0], shapes[1] }; + + // Create group shape for selected items. + IGroupShape GroupShape = shapes.Group(groupItems); + + //Save and dispose + workbook.SaveAs("GroupShapes.xlsx"); + workbook.Close(); + } + + + + + + Ungroup the specified group shape. + + Group shape to ungroup. + + The following code illustrates how to ungroup a specified . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("GroupShapes.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IShapes shapes = worksheet.Shapes; + + // Ungroup the group shape. + shapes.Ungroup(shapes[0] as IGroupShape); + + //Save and dispose + workbook.SaveAs("GroupShapes.xlsx"); + workbook.Close(); + } + + + + + + Ungroup the group shape and its inner shapes. + + Group shape to ungroup. + Boolean value which indicates whether the inner shapes will be ungrouped. + + The following code illustrates how to ungroup a specified . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("GroupShapes.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + IShapes shapes = worksheet.Shapes; + + // Ungroup the group shape and its inner shapes. + shapes.Ungroup(shapes[0] as IGroupShape, true); + + //Save and dispose + workbook.SaveAs("GroupShapes.xlsx"); + workbook.Close(); + } + + + + + + Returns the number of objects in the collection. Read-only Long. + + + The following code illustrates how to access Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Add copy + IShape copiedShape = worksheet.Shapes.AddCopy(shape); + + //Get count + Console.Write(worksheet.Shapes.Count); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Returns single from the collection by its index. + + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Add copy + IShape copiedShape = worksheet.Shapes.AddCopy(worksheet.Shapes[0]); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Returns single from the collection by its name or null when cannot find. Read-only. + + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 100); + + //Set name + shape.Name = "Shape1"; + + //Add copy + worksheet.Shapes.AddCopy(worksheet.Shapes["Shape1"]); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Default start of the chart shape name. + + + + + Default start of the textbox shape name. + + + + + Default start of the checkbox shape name. + + + + + + Default start of the combobox shape name. + + + + + Default start of the picture shape name. + + + + + Default start of the ole object name. + + + + + Default start of the ole object name. + + + + + Collection that contains all comments on the sheet. + + + + + + + + + + + + + + + + + Parse options. + + + + Initializes collection + + + + + Adds picture. + + Image to adding. + Name of picture. + Image format. + Returns IPicture object that include picture. + + + + Adds picture to the collection by blipId. + + Picture id. + Picture name. + Newly created picture object. + + + + Adds new image to the collection. + + File name with the image. + Newly created picture shape. + This method is not supported in WinRT, Windows Phone, Universal and Portable platforms. + + + + + Adds new Comment shape to the collection. + + Text of the comment. + Newly added shape. + + + + Adds new Comment shape to the collection. + + Text of the comment. + Indicates is parse comment fill line options. + Newly added shape. + + + + Adds comment with empty text to the collection. + + Added comment. + + + + Adds new chart shape to the collection. + + Newly added shape. + + + + Adds new textbox shape to the collection. + + Newly added shape. + + + + Adds new checkbox shape to the collection. + + Newly added shape. + + + + Adds new OptionButton shape to the collection. + + Newly added shape. + + + + Adds new checkbox shape to the collection. + + Newly added shape. + + + + Regenerates combo box names + + + + + Creates new shape to object to this collection. + + Object type to create. + Shape container. + Parse options. + Subrecords of the shape's OBJRecord. + Index to the cmo record inside subrecords. + Created shape. + + + + Adds FormControlShape into collection. + + Newly created shape. + + + + Removes comment from internal collections. + + + + + + Checks whether it is possible insert row or column into iIndex. + + Index of row to insert. + Number of rows to insert. + Indicates whether rows are inserted. + Maximum possible index. + True if it is possible to insert row or column. + + + + Updates shapes position on insert or remove row in worksheet. + + Represents row \ column index. + Represents count. + Indicates is row. + Indicates is remove or insert. + + + + Adds picture to the collection by blipId. + + Picture id. + Picture name. + Newly created picture object. + + + + Adds picture to collections. + + Represents picture to add. + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Creates copy of the collection. + + Parent object for the new collection. + Copy of the collection. + + + + Copies or moves shape on range copy / move. + + Represents destination sheet for shape. + Represents range dimension. + Represents destination rectangle + Indicates is copy or move. + + + + Removes all shapes that are out of new dimensions. + + Version to set. + + + + Updates indexes to named ranges. + + New indexes. + + + + Updates indexes to named ranges. + + New indexes. + + + + Gets Top based sorted shape list. + + + + + Gets Bottom based sorted shape list. + + + + + Gets Left based sorted shape list. + + + + + Gets Right based Reverse sorted shape list. + + + + + Gets shape by its id. + + Shape's id to locate. + + + + Gets OLE shape by its id. + + Shape's id to locate. + + + + Gets group shape by its child shape id. + + Group shape. + Shape's id to locate. + Extracted shape + + + + Add AutoShapes into collection + + AutoShapeType + TopRow + LeftColumn + Height + Width + + + + + Create a group shape for selected items. + + AutoShapeType + Newly created group shape + + + + Group from selected items. + + GroupShape + AutoShapeType + If true the shape are remove from ShapeCollection, otherwise don't remove + + + + + Ungroup the specified group shape. + + Group shape to ungroup. + + + + Ungroup the group shape and its inner shapes. + + Group shape to ungroup. + Boolean value which indicates whether the inner shapes will be ungrouped. + + + + Ungroup the group shape and its inner shapes. + + Group shape to ungroup. + Boolean value which indicates whether the inner shapes will be ungrouped. + + + + Create a group shape for selected items. + + Group shape to add inner shapes. + Shape array to add in the group shape. + Newly created group shape + + + + Removes group shape from the collection. + + Shape to remove. + + + + Add AutoShapes into collection + + AutoShapeType + TopRow + TopRowOffset + LeftColumn + LeftColumnOffset + Height + Width + + + + + Return the name for the auto shape based on the shape type. + + Auto shape name + No of auto shapes in the sheet + Returns Auto shape name. + + + + Return the default name for the auto shape based on the shape type. + + Auto shape type + Returns string with new name. + + + + Returns collection of all comments in the worksheet. Read-only. + + + + + Returns collection of all comments in the worksheet. Read-only. + + + + + Code of the Biff record in which all data is stored. Read-only. + + + + + Returns shared shape data for all shapes in this collection. Read-only. + + + + + A collection of all the Style objects in the specified or active + workbook. Each Style object represents a style description for a + range. The Style object also contains all style attributes (font, + number format, alignment, and so on) as properties. There are + several built-in styles � including Normal, Currency, and Percent + � which are listed in the Style name box in the Style dialog box + (Format menu). + + + + + A collection of all the Style objects in the specified or active + workbook. Each Style object represents a style description for a + range. The Style object contains all style attributes (font, + number format, alignment, and so on) as properties. There are + several built-in styles including Normal, Currency, and Percent + which are listed in the Style name box in the Style dialog box. + (Format menu). + + + + + Creates a new and adds it to the list of that are + available for the current workbook. Returns a object. + + Name of the newly created . + Prototype for the . + Newly created . + + The following code illustrates how to add a created based on an existing object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "100"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle", workbook.Styles[1]); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Creates a new and adds it to the list of that are + available for the current workbook. Returns a object. + + Name of the created . + Newly created . + + To know more about refer Create a Style. + + + The following code illustrates how to create and add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Merges the styles from another workbook into the Styles collection. + + Workbook from which all styles will be added. + True - overwrite styles with the same names, otherwise. + Merged collection. + + The following code illustrates how styles can be imported from a source workbook to destination workbook. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create Styles + workbook.Styles.Add("CustomStyle1"); + workbook.Styles.Add("CustomStyle2"); + + //Modify styles + workbook.Styles["CustomStyle1"].ColorIndex = ExcelKnownColors.Red; + workbook.Styles["CustomStyle2"].ColorIndex = ExcelKnownColors.Blue; + + //Create new worksheet + IWorkbook book = application.Workbooks.Create(1); + IWorksheet sheet = book.Worksheets[0]; + + //Check count + Console.WriteLine("Before Merge\nDestination "+book.Styles.Count); + Console.WriteLine("Source "+workbook.Styles.Count); + + //Merge styles + book.Styles.Merge(workbook, true); + + //Check count + Console.WriteLine("After Merge\nDestination "+book.Styles.Count); + Console.WriteLine("Source "+workbook.Styles.Count); + + //Close + workbook.Close(); + book.Close(); + Console.ReadKey(); + } + //Output will be + //Before Merge + //Destination 6 + //Source 8 + //After Merge + //Destination 8 + //Source 8 + + + + + + Merges the styles from another workbook into the Styles collection. + Keep only unique style in collection. + + Workbook from which all styles will be added. + Merged collection. + + The following code illustrates how styles can be imported from a source workbook to destination workbook. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create Styles + workbook.Styles.Add("CustomStyle1"); + workbook.Styles.Add("CustomStyle2"); + + //Modify styles + workbook.Styles["CustomStyle1"].ColorIndex = ExcelKnownColors.Red; + workbook.Styles["CustomStyle2"].ColorIndex = ExcelKnownColors.Blue; + + //Create new worksheet + IWorkbook book = application.Workbooks.Create(1); + IWorksheet sheet = book.Worksheets[0]; + + //Check count + Console.WriteLine("Before Merge\nDestination "+book.Styles.Count); + Console.WriteLine("Source "+workbook.Styles.Count); + + //Merge styles + book.Styles.Merge(workbook); + + //Check count + Console.WriteLine("After Merge\nDestination "+book.Styles.Count); + Console.WriteLine("Source "+workbook.Styles.Count); + + //Close + workbook.Close(); + book.Close(); + Console.ReadKey(); + } + //Output will be + //Before Merge + //Destination 6 + //Source 8 + //After Merge + //Destination 8 + //Source 8 + + + + + + Method return true if collection contains + with specified by user name. + + Name to check. + True - if exists, otherwise False. + + The following code illustrates how to check whether a is present in collection or not. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Check styles count + Console.WriteLine(workbook.Styles.Contains("CustomStyle")); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Removes from the collection. + + name to remove. + + The following code illustrates how to remove a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorkbook workbook2 = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create style + IStyle style1 = workbook.Styles.Add("CustomStyle1"); + IStyle style2 = workbook.Styles.Add("CustomStyle2"); + + //Check styles count + Console.WriteLine(workbook.Styles.Count); + + //Removing style + workbook.Styles.Remove("CustomStyle1"); + + //Check styles count + Console.WriteLine(workbook.Styles.Count); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //8 + //7 + + + + + + Used without an object qualifier, this property returns an Application + object that represents the Microsoft Excel application. + + + The following code illustrates how object in the collection can be accessed . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Access application object + Console.WriteLine(style.Application.DefaultVersion); + + //Wait for user input + Console.ReadKey(); + } + //Output will be + //Excel2013 + + + + + + Returns the number of objects in the collection. Read-only, Long. + + + The following code illustrates how to access the number of objects in the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Check styles count + Console.WriteLine(workbook.Styles.Count); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //7 + + + + + + Returns a single object from the collection. + + + The following code illustrates how to access object in the collection using it's index. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Check style name + Console.WriteLine(workbook.Styles[6].Name); + Console.WriteLine(workbook.Styles[0].Name); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //CustomStyle + //Normal + + + + + + Returns a single object from the collection. + + + The following code illustrates how to access object in the collection using it's . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Check style built in + Console.WriteLine(workbook.Styles["CustomStyle"].BuiltIn); + Console.WriteLine(workbook.Styles["Normal"].BuiltIn); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //False + //True + + + + + + Returns the parent object for the specified object. + + + The following code illustrates how to access the parent of a object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Text = "Sample"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Set style + worksheet["C2"].CellStyle = style; + + //Check styles count + Console.WriteLine(style.Parent); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Syncfusion.XlsIO.Implementation.WorkbookImpl + + + + + + RB-tree for quick style search operation. + + + + + Collection of all the styles in the workbook. + + + + + Dictionary StyleXFIndex to StyleImpl. + + + + + Parent workbook. + + + + + + + + + + + + + + + Creates the collection and sets its Application and Parent properties. + + The application object for this collection. + The parent object for this collection. + + + + Creates a new style and adds it to the list of styles that are + available for the current workbook. Returns a Style object. + + Name of the newly created style. + Prototype for the style. + Newly created style. + + If name is NULL. + + + When collection already contains style with specified name. + + + + + Creates a new style and adds it to the list of styles that are + available for the current workbook. Returns a Style object. + + Name of the newly created style. + Newly created style. + + + + Merges the styles from another workbook into the Styles collection. + Keep only unique style in collection. + + Workbook from which all styles will be added. + Merged collection. + + + + Merges the styles from another workbook into the Styles collection. + + Workbook from which all styles will be added. + True to overwrite styles with the same names. + Merged collection. + + If specified Workbook is not WorkbookImpl. + + + + + Removes style from the collection. + + Style to remove. + + + + Adds specified style into this collection. + + Style that must be added. + + + + Adds specified style to collection. + + Style to add. + If true and ContainName then replace old name; otherwise add. + + + + Method returns True if collection contains style + with specified by user name. + + Name to check. + True if style exists; otherwise False. + + + + Searches in the collection for style which is same as specified. + + Style to search. + Found style or NULL if no same style exists in list. + + If specified style is NULL. + + + + + Compares two styles. + + The first style to compare. + The second style to compare. + True if styles are the same; otherwise False. + + + + Compare all Border Collections items. + + First border to compare. + Second border to compare. + True if borders are the same; otherwise False. + + + + Compare Border interfaces. + + First border to compare. + Second border to compare. + True if borders are the same; otherwise False. + + + + Merges styles from specified workbook. + + Source workbook. + Merge options. + Dictionary with changed style names, key - old name, value - new name. + + + + Merges styles from specified workbook. + + Source workbook. + Merge options. + Returns dictionary with new font indexes. + Dictionary with new indexes of extended formats. + Dictionary with changed style names, key - old name, value - new name. + + + + Generates default name. + + Name prefix. + Automatically generated unique name. + + + + Generates default name. + + Name prefix. + Dictionary with used names. + Automatically generated unique name. + + + + Creates built in style. + + Name of the style. + Created style. + + + + Returns style corresponding to the index of extended format. + + Index of the extended format to find. + Found style. + + + + Updates style record of each style in the collection according to the xf indexes. + + + + + Searches in collection for style named styleName. + + Style name to search. + Searched style if found; otherwise returns NULL. + + + + Method checks whether the collection contains a style with the specified name. + + Name to check. + True if style exits; otherwise False. + + + + Adds new style to the collection. + + Style to add. + + + + Creates copy of the current instance. + + Parent object for the new collection. + Copy of the current instance. + + + + Performs additional processes after clearing the collection. + + + + + Performs additional processes after inserting a new element into the collection. + + The zero-based index at which to insert value. + The new value of the element at the index. + + + + Performs additional processes after removing an element from the collection. + + The zero-based index at which value can be found. + The value of the element to remove from the index. + + + + Performs additional processes after setting a value in the collection. + + The zero-based index at which oldValue can be found. + The value to replace with newValue. + The new value of the element at the index. + + + + + + + + + + + + + + + + + + Clears hashIndexToStyle member. + + + + + Access the style property ignoring the case, used for Binary stream parsing + + Input style name to be searched + the style + + + + Returns a single object from a collection. Read-only. + + + + + + + + + + Represents worksheet's textbox collection. + + + + + This interface represents TextBoxes collection inside single worksheet. + + + + + Adds new to the collection. Coordinate means + a) in the case of worksheet - row, column - are corresponding row, + column indexes of the top-left corner, width and height are measured in pixels + b) in the case of chart in Excel 97 all coordinates are measured in 1/4000 of the chart width/height + c) in the case of chart in Excel 2007 all coordinates are measured in 1/1000 of the chart width/height + + One-based row index of the top-left corner of the new item. + One-based column index of the top-left corner of the new item. + Height of the new item. + Width of the new item. + Newly added item. + + The following code illustrates how to add a to the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBoxShape textbox1 = worksheet.TextBoxes.AddTextBox(1, 1, 20, 100); + ITextBoxShape textbox2 = worksheet.TextBoxes.AddTextBox(5, 5, 20, 100); + + //Set name + textbox1.Name = "TextBox1"; + textbox2.Name = "TextBox2"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Returns number of items in the collection. + + + The following code illustrates how to access the Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBoxShape textbox1 = worksheet.TextBoxes.AddTextBox(1, 1, 20, 100); + ITextBoxShape textbox2 = worksheet.TextBoxes.AddTextBox(5, 5, 20, 100); + + //Set name + textbox1.Name = "TextBox1"; + textbox2.Name = "TextBox2"; + + //Get count + Console.Write(worksheet.TextBoxes.Count); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Returns single from the collection. + + Item's index to get. + Single item from the collection. + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBoxShape textbox1 = worksheet.TextBoxes.AddTextBox(1, 1, 20, 100); + ITextBoxShape textbox2 = worksheet.TextBoxes.AddTextBox(5, 5, 20, 100); + + //Set name + worksheet.TextBoxes[0].Name = "TextBox1"; + worksheet.TextBoxes[1].Name = "TextBox2"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets single from the collection. + + Name of the item to get. + Single item from the collection. + + The following code illustrates how to access a from the collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add textbox + ITextBoxShape textbox1 = worksheet.TextBoxes.AddTextBox(1, 1, 20, 100); + ITextBoxShape textbox2 = worksheet.TextBoxes.AddTextBox(5, 5, 20, 100); + + //Set name + worksheet.TextBoxes[0].Name = "TextBox1"; + worksheet.TextBoxes[1].Name = "TextBox2"; + + //Get count + Console.Write(worksheet.TextBoxes["TextBox1"].Width); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //100 + + + + + + Parent worksheet. + + + + + Initializes new instance of the collection. + + Application object for the new instance. + Parent object for the new instance. + + + + Adds new item to the collection. + + Textbox to add. + + + + Adds new textbox to the collection. + + Top row for the new shape. + Left column for the new shape. + Height in pixels of the new shape. + Width in pixels of the new shape. + Newly created TextBox object. + + + + Returns single item from the collection. + + Index of the item to get. + Single item from the collection. + + + + Gets single item from the collection. + + Name of the item to get. + Single item from the collection. + + + + A collection of vertical page breaks within the print area. + Each vertical page break is represented by a VPageBreak object. + + + + + A collection of vertical page breaks within the print area. + Each vertical page break is represented by a VPageBreak object. + + + + + Adds a vertical page break. Returns a object. + + Location of the break. + Newly added page break. + + To know more about page setting refer this link. + + The following code illustrates how to add a vertical page break. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + + //Set Vertical Page Breaks. + sheet.VPageBreaks.Add(sheet.Range["A5"]); + sheet.VPageBreaks.Add(sheet.Range["C18"]); + sheet.VPageBreaks.Add(sheet.Range["H32"]); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + + + + + + Removes a page break from the specified location. + + Range to remove the page break. + Page break in the range. + + To know more about page setting refer this link. + + The following code illustrates how to Remove a vertical page break. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Remove Vertical Page Breaks. + sheet.VPageBreaks.Remove(sheet.Range["A5"]); + sheet.VPageBreaks.Remove(sheet.Range["A18"]); + sheet.VPageBreaks.Remove(sheet.Range["A32"]); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + + + + + + Returns page break at the specified column. + + One-based column index. + Page break with corresponding column or null if not found. + + To know more about page setting refer this link. + + The following code illustrates how to get page break with corresponding column. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Get Page break with corresponding column + IVPageBreak vPageBrk = sheet.VPageBreaks.GetPageBreak(6); + if(vPageBrk != null) + { + //Your code here + } + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + + + + + + Clears vertical page breaks from VPageBreaks collection. + + + To know more about page setting refer this link. + + The following code illustrates how to clear a vertical page break. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //clear Vertical Page Breaks + sheet.VPageBreaks.Clear(); + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + + + + + + Used without an object qualifier, this property returns an + object that represents the Excel . + + The following code illustrates how to access the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Property returns an Application object that represents the Excel application + IApplication vPageBreakApplication = sheet.VPageBreaks.Application; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns the number of objects in the collection. Read-only. + + The following code illustrates the use of Count property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Number of objects in the collection + int vPageBreakCount = sheet.VPageBreaks.Count; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns a single object from a collection. Read-only. + + + To know more about page setting refer this link. + + The following code illustrates how to get an object from a collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Add PageBreaks + sheet.Range["A1:S65"].Text = "PagePrint"; + sheet.VPageBreaks.Add(sheet.Range["A3"]); + sheet.VPageBreaks.Add(sheet.Range["G10"]); + sheet.VPageBreaks.Add(sheet.Range["F24"]); + sheet.VPageBreaks.Add(sheet.Range["C37"]); + + //Get the Vertical page break location using index + IRange vPageBreakLocation1 = sheet.VPageBreaks[0].Location; + IRange vPageBreakLocation2 = sheet.VPageBreaks[1].Location; + IRange vPageBreakLocation3 = sheet.VPageBreaks[2].Location; + IRange vPageBreakLocation4 = sheet.VPageBreaks[3].Location; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns the parent object for the specified object. + + The following code illustrates the use of Parent property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Parent object for the specified object + object vPageBreakParent = sheet.VPageBreaks.Parent; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Parent workbook. + + + + + Adds a vertical page break. Returns a VPageBreak object. + + Page break location. + Newly added page break. + + When specified object cannot be found in the collection. + + + + + Removes vertical page break. + + Page break location. + Page break that was removed from the collection. + + + + Returns page break at the specified column. + + One-based column index. + Page break with corresponding column or null if not found. + + + + Returns index of the page break + + Location of the break to find. + Index of the page break in the collection or -1 if not found. + + + + Clears Vertical page breaks from VPageBreaks collection. + + + + + Creates collection and sets its Application and Parent properties. + + Application object for this collection. + Parent object for this collection. + + + + Looks for all necessary parent objects. + + + + + Parses breaks record. + + Record to parse. + + + + Serializes collection into as set of Biff records. + + OffsetArrayList to serialize into. + + + + Prepares record. + + Prepared record. + + + + Creates copy of the collection. + + Parent for new collection. + A clone of the current collection. + + + + Adds page break to the collection. + + Page break to add. + + + + Converts pagebreaks to Excel97to03 version. + + + + + Size of the required storage space. Read-only. + + + + + Save record data to stream. + + Writer that will receive record data. + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the record. + If writer is NULL. + + If m_iLength of internal record data array is less than zero. + + + + + Returns single page break from the collection. + + + + + Returns manual breaks count. Read-only. + + + + + Returns type code of the biff storage. Read-only. + + + + + Returns code of the biff storage. Read-only. + + + + + Indicates whether data array is required by this record. + + + + + Indicates record position in stream. This is a utility member of class and + is used only in the serialization process. Does not influence the data. + + + + + Collection of the Workbook names (NamedRanges). + + + + + A collection of all the Name objects in the application or + workbook. Each Name object represents a defined name for a + range of cells. + + + Below these rules are should be followed, when you're creating a named range in Excel. + 1. The first character of a name must be one of the following characters: + letter, + underscore (_), + backslash (\). + 2. Remaining characters in the name can be + letters, + numbers, + periods, + underscore characters. + 3. The following are not allowed: + Space characters are not allowed as part of a name. + Names can't look like cell addresses, such as A$35 or R2D2. + C, c, R, r - can't be used as names. Excel uses them as selection shortcuts. + 4. Names are not case sensitive. For example, North and NORTH are treated as the same name. + To know more about Named Ranges refer this link. + + + + + This method is used to defines a new name. + + Name for the new Name object. + Returns a Name object. + + To know more about named ranges refer this link. + + The following code illustrates how to use Add method in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using WorkBook + IName namedTitle = workbook.Names.Add("Titles"); + namedTitle.RefersToRange = sheet.Range["A1:C1"]; + + //Create a Named Range using WorkSheet + IName namedData = sheet.Names.Add("Records"); + namedData.RefersToRange = sheet.Range["A2:C3"]; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + This method is used to defines a new name. + + Name for the new Name object. + Range that will be associated with the name. + Returns a Name object. + + To know more about named ranges refer this link. + + The following code illustrates how to use Add method in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range with add method for workbook + IName namedTitle = workbook.Names.Add("NamedTitle", sheet.Range["A1:C1"]); + + //Create a Named Range with add method for worksheet + IName namedData = sheet.Names.Add("NamedData", sheet.Range["A2:C3"]); + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + This method is used to defines a new name. + + Name object to add. + Returns a Name object. + + To know more about named ranges refer this link. + + The following code illustrates how to use Add method in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + IName namedStuName = workbook.Names.Add("StudentName", sheet.Range["B1"]); + + //method is defines a new name + IName namedData = sheet.Names.Add(namedStuName); + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Removes Name object from the collection. + + Name of the object to remove from the collection. + + To know more about named ranges refer this link. + + The following code illustrates how to use Remove method in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + IName namedStuID = workbook.Names.Add("StudentID", sheet.Range["A1"]); + IName namedStuName = workbook.Names.Add("StudentName", sheet.Range["B1"]); + IName namedStuMark = workbook.Names.Add("StudentMark", sheet.Range["C1"]); + + //Removes Name object from the collection + workbook.Names.Remove("StudentID"); + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Removes the element at the specified index of the collection. + + The zero-based index of the element to remove. + The following code illustrates how to use Remove method in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + IName namedStuID = workbook.Names.Add("StudentID", sheet.Range["A1"]); + IName namedStuName = workbook.Names.Add("StudentName", sheet.Range["B1"]); + IName namedStuMark = workbook.Names.Add("StudentMark", sheet.Range["C1"]); + + //Removes Name object from the collection + workbook.Names.RemoveAt(0); + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Checks whether the Name object is present in the collection or not. + + Name object to check whether it is present or not. + True if given name is found in Names collection. + + To know more about Named Ranges refer this link. + + The following code illustrates how to use Contains method in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + IName namedStuID = workbook.Names.Add("StudentID", sheet.Range["A1"]); + IName namedStuName = workbook.Names.Add("StudentName", sheet.Range["B1"]); + IName namedStuMark = workbook.Names.Add("StudentMark", sheet.Range["C1"]); + + //Checks whether the Name object is present in the collection or not + bool isContainsNamedRange = workbook.Names.Contains("StudentMark"); + if(isContainsNamedRange) + { + //Your Code Here + } + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Used without an object qualifier, this property returns an + object that represents the Excel application. + + + To know more about named ranges refer this link. + + The following code illustrates use of Application property in named range collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Gets object that represents the Excel application + IApplication namedApplication = sheet.Names.Application; + if (namedApplication != null) + { + //Your Code here + } + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Returns the number of objects in the collection. + + + To know more about named ranges refer this link. + + The following code illustrates use of Count property in named range collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Gets the number of objects in the collection + int namedRangesCount = sheet.Names.Count; + if (namedRangesCount != 0) + { + //Your Code here + } + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Returns the parent object for the specified object. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of Parent property in named range collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Gets the parent object for the specified object + object namedParent = sheet.Names.Parent; + if(namedParent != null) + { + //Your Code Here + } + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Returns a single object from a Names collection. + + + To know more about Named Ranges refer this link. + + The following code illustrates how to get named range using index. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using WorkBook + IName namedTitle = workbook.Names.Add("NamedTitle"); + + //Returns the index number of the object within the collection of similar objects + workbook.Names[0].Name = "Titles"; + workbook.Names[0].Value = "Sheet1!$A$1:$C$1"; + + //Create a Named Range using WorkSheet + IName namedData = sheet.Names.Add("NamedData"); + + //Returns the index number of the object within the collection of similar objects + sheet.Names[0].Name = "Records"; + sheet.Names[0].Value = "Sheet1!$A$2:$C$3"; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Returns a single object from a names collection. + + + To know more about Named Ranges refer this link. + + The following code illustrates how to get named range using string. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using WorkBook + IName namedTitle = workbook.Names.Add("NamedTitle"); + + //Returns a single Name object from a Names collection + workbook.Names["NamedTitle"].Name = "Titles"; //Here Name is changed from NamedTitle to Titles + workbook.Names["Titles"].Value = "Sheet1!$A$1:$C$1"; + + //Create a Named Range using WorkSheet + IName namedData = sheet.Names.Add("NamedData"); + + //Returns a single Name object from a Names collection + sheet.Names["NamedData"].Name = "Records"; //Here Name is changed from NamedData to Records + sheet.Names["Records"].Value = "Sheet1!$A$2:$C$3"; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Returns parent worksheet of the collection. + + + To know more about named ranges refer this link. + + The following code illustrates use of ParentWorksheet property in named range collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Gets the number of objects in the collection + IWorksheet namedParentWorksheet = sheet.Names.ParentWorksheet; + if(namedParentWorksheet != null) + { + //Your Code Here + } + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Dictionary Name-to-IName. + + + + + Parent workbook for the collection. + + + + + Flags indicating whether WorkbookNamesCollection changed. + + + + + Creates an empty collection. + + Application object for the collection. + Parent object for the collection. + + + + + + + + + + + Checks whether name of named range contains invalid characters. + + + + + + OnClear is invoked after Clear behavior. + + + + + Defines a new name. Returns a Name object. + + Name of the new collection entry. + Range that will be associated with the name. + Created IName object. + + If the collection already contains object with the same name + or if specified name string is empty. + + + When one of the arguments is NULL. + + + + + Checks the namedRange's name is a valid name based on the + Excel version. + + name to check. + Active workbook. + True, if the name is valid. + + + + Defines a new name. Returns a Name object. + + IName object that must be added to the collection. + Created IName object. + + If the collection already contains object with the same name. + + + + + Removes specified name from the collection. + + Name of the object to remove. + + + + Removes the element at the specified index from the collection. + + The zero-based index of the element to remove. + + + + + + + + + + + + + + + + + + + Name + Indicate whether formula range or not + true/false + + + + Updates named range when inserting row. + + Represents row index. + Represents row count. + Represents sheet for update. + + + + Updates named range when deleting row. + + Represents row index. + Represents sheet for update. + + + + Updates named range when deleting row. + + Represents row index. + Represents sheet for update. + Number of rows to remove. + + + + Updates named ranges after column insertion. + + One-based column index. + Number of columns to insert. + Represents reference sheet name. + + + + Updates named ranges after column removal. + + One-based column index. + Represents reference sheet name. + + + + Updates named ranges after column removal. + + One-based column index. + Represents reference sheet name. + Number of columns to remove. + + + + Defines a new name. Returns a Name object. + + NameRecord describing new Name object. + Newly created Name object. + + If the collection already contains object with the same name. + + + When specified NameRecord is NULL. + + + + + Defines multiple names. + + + Array of Name Records that describes new Name objects. + + + If the collection already contains object with the same name. + + + When array of NameRecords is NULL. + + + + + Saves all NameRecords to the specified OffsetArrayList. + + + OffsetArrayList that will receive all NameRecords. + + + If specified OffsetArrayList is NULL. + + + + + Adds into list and hashtable, for local named ranges. + + Name to add. + + + + Adds into list and hashtable, for local named ranges. + + Name to add. + Indicates is adds in global names hash. + + + + Sorts named range in the order which they must be serialized. + + + + + Returns sorted list with worksheets names. + + Sorted list with worksheets names. + + + + Sorts names by worksheet name. + + List with worksheets names. + Array of new indexes for names. + + + + Searches for named ranges with same name in other worksheets. + + Name to find. + Key for global named ranges. + SortedListEx with found names. + + + + Adds name to the list. + + List to insert name into. + Names collection to search for name. + Name to find. + Parent worksheet name (used as key in the list). + + + + Updates names indexes in formulas. + + New indexes of the named ranges. + + + + Sets index of all named ranges without event raising. + + + + + Forces all named ranges to parse its data. + + + + + Adds local user-defined function. + + Function to add. + Name index of the added function. + + + + Gets name record by index. + + Index of name object in collection. + Returns named record. + + + + Adds copy of global name during worksheet copy. + + Name to copy. + Destination worksheet. + Dictionary with new extern worksheet names. + Dictionary with new worksheet names. + Added name. + + + + Sets reference index in the all tokens. + + Name record to update. + New reference index. + + + + Creates a copy of the current collection. + + Parent object for the new collection. + A copy of the current collection. + + + + Performs additional processes after inserting a new element into the collection. + + The zero-based index at which to insert value. + The new value of the element at the index. + + + + Converts full row or column tokens between versions. + + Version to convert into. + + + + Returns a single Name object from a Names collection. + + + + + Sets parent workbook value. + + + When parent workbook cannot be found. + + + + + Inserts/removes rows/columns from all named ranges in the collection. + + Represents sheet name. + Index of row/column to insert/remove. + Indicates whether we should remove rows or columns. + Indicates whether we are operating with rows. + Number of rows/columns to insert/remove. + + + + Inserts/removes row from all named ranges in the collection. + + + + + + + + + + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Updates the named ranges on moving the ranges + + Destination Range + Source Range + Excel Copy Range Option + + + + Indicates whether the name exist in the workbook + + Name of the named range + + + + Returns a single Name object from a Names collection. + + + + + Returns a single Name object from a Names collection. + + + + + Returns a single Name object from a Names collection by integer index in the API level + + + + + Returns a single Name object from a Names collection by name in the API level + + + + + Returns parent worksheet of the collection. + + + + + Represent the known named ranges count + The name in the formula which has no reference is + unknown named ranges + + + + + Represents the known and unknown named + ranges Count + + + + + set Flags m_bWorkNamesChanged + + + + + + Summary description for WorkbookObjectsCollection. + + + + + Represents a collection of in the worksheet. + + + + + Moves sheet into new location. + + Index of the sheet. + New index to move the sheet. + + + + Moves specified sheet before another sheet. + + The sheet to move. + The sheet to locate new position. + + + + Moves specified sheet after another sheet. + + The sheet to move. + The sheet to locate new position. + + + + Gets the number of in the collection. Read-only. + + + + + Gets the at the specified index. Read-only. + + + + + Dictionary name of the object - to - value. + + + + + Parent workbook. + + + + + Creates a collection and sets its Application and Parent properties. + + Application object for the collection. + Parent object for the collection. + + + + Add new object to the collection. + + Named object to adding. + + + + Moves sheet from one position into another. + + Old sheet index. + New sheet index. + + + + Moves specified tab sheet before another tab sheet. + + The tab sheet to move. + The tab sheet to locate new position. + + + + Moves specified tab sheet after another tab sheet. + + The tab sheet to move. + The tab sheet to locate new position. + + + + Disposes internal data. + + + + + Creates copy of the collection. + + Parent object for the new collection. + A copy of the collection. + + + + Searches for all necessary parents. + + + + + Performs additional processes after inserting a new element into the collection. + + The zero-based index at which to insert value. + The new value of the element at index. + + + + Performs additional processes after setting a value in the collection. + + The zero-based index at which oldValue can be found. + The value to replace with newValue. + The new value of the element at the index. + + + + Performs additional processes after removing an element from the collection. + + The zero-based index at which value can be found. + The value of the element to remove from the index. + + + + OnClear is invoked after Clear behavior. + + + + + This method is called when sheet name was changed. + + Sender of the event. + Event arguments. + + When workbook already contains worksheet with specified name. + + + + + + + + + + + + + + + Parent workbook. + + + + + Returns single entry from the collection. + + + + + + + + + + + + + + + + Old index in the tab sheets collection. + + + + + New index in the tab sheets collection. + + + + + Default constructor. + + + + + Initializes new instance of the event arguments. + + Old index in the tab sheets collection. + New index in the tab sheets collection. + + + + Returns old index in the tab sheets collection. Read-only. + + + + + Returns new index in the tab sheets collection. Read-only. + + + + + + + + + + + A collection of all the Workbook objects that are currently open in + the XlsIO application. + + + + + A collection of all the Workbook objects that are currently open in + the Excel application. + + + + + Create empty workbook. The new workbook becomes the active workbook. + + Interface on instance of created workbook. + + + + Create workbook with specified quantity of empty worksheets. + + Quantity of worksheets to create. + Interface on instance of created workbook. + + + + Create workbook with specified names. + Each worksheet name will be set to corresponding names array element. + + Array of names for each worksheet. + Interface on instance of created workbook. + + + + Creates a new workbook. The new workbook becomes the active workbook. + Returns a Workbook object. + + Added Workbook object. + + + + Creates a new workbook. The new workbook becomes the active workbook. + + Excel version - defines file format (excel 97-2003 or excel 2007). + Added Workbook object. + + + + Creates a new workbook. The new workbook becomes the active workbook. + Returns a Workbook object. + + File that contains required workbook. + Added Workbook object. + + + + Creates a new workbook. The new workbook becomes the active workbook. + Returns a Workbook object. + + File that contains required workbook. + Excel version - defines file format (excel 97-2003 or excel 2007). + Added Workbook object. + + + + Creates a new workbook. The new workbook becomes the active workbook. + Returns a Workbook object. + + File that contains required workbook. + Parse options. + Added Workbook object. + + + + Creates a new workbook. The new workbook becomes the active workbook. + Returns a Workbook object. + + File that contains required workbook. + Parse options. + Excel version - defines file format (excel 97-2003 or excel 2007). + Added Workbook object. + + + + Opens a workbook. + + File name that contains workbook. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Excel version - defines file format (excel 97-2003 or excel 2007). + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Parse options. + Opened workbook. + + + + Opens a Workbook using separator. + + File name to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Opened WorkBook. + + + + Opens a Workbook using separator. + + File name to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens a Workbook using default separator. + + Stream to open. + Encoding to use to parse text data. + Opened WorkBook. + + + + Open new workbook in read-only mode. + + File to open. + Newly created workbook. + + + + Open new CSV file in read-only mode. + + File to open. + String separator. + Newly created workbook. + + + + Open new workbook in read-only mode. + + File to open. + Parse options. + Newly created workbook. + + + + Open new workbook in read-only mode. + + File to open. + Represents open type for open. + Parse options. + Newly created workbook. + + + + Open new workbook in read-only mode. + + File to open. + Parse options. + Indicates is open book in read - only mode. + Password that should be used for decryption. + Newly created workbook. + + + + Opens a workbook. + + File name that contains workbook. + Parse options. + Indicates is open book in read - only mode. + Represents valid password for opening workbook. + Workbook version. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Parse options. + Indicates is open book in read - only mode. + Represents valid password for opening workbook. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Represents open type for open. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Represents open type for open. + Parse options. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Represents open type for open. + Desired version of the workbook. + Opened workbook. + + + + Read workbook from xml file. + + Full path to xml file. + Xml open type. + Returns opened workbook. + + + + Reads workbook from the stream. + + Stream with workbook's data. + Newly created workbook. + + + + Reads workbook from the stream. + + Stream with workbook's data. + Excel version - defines file format (excel 97-2003 or excel 2007). + Newly created workbook. + + + + Reads workbook from the stream. + + Stream with workbook's data. + Parse options. + Newly created workbook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens a Workbook using default separator. + + Stream to open. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens the specified stream. + + The stream. + Parse options. + Indicates is open book in read - only mode. + Password that should be used for decryption. + Newly created workbook. + + + + Opens the specified stream. + + The stream. + Parse options. + Indicates is open book in read - only mode. + Represents valid password for opening workbook. + Workbook version. + Opened workbook. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Opens the specified stream. + + The stream. + Parse options. + Indicates is open book in read - only mode. + Represents valid password for opening workbook. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + Stream with workbook's data. + Represents open type for open. + Opened workbook. + + + + Opens a workbook. + + Stream with workbook's data. + Represents open type for open. + Parse options. + Opened workbook. + + + + Opens a workbook. + + Stream with workbook's data. + Represents open type for open. + Desired version of the workbook. + Opened workbook. + + + + Read workbook from file stream. + + File stream. + Xml open type. + Returns opened workbook. + + + + Read workbook from xml stream. + + Xml reader. + Xml open type. + Returns opened workbook. + + + + Closes the object. + + + + + Pastes workbook from clipboard. + + Returns a parent Workbook object + + + + Used without an object qualifier, this property returns an + Application object that represents the Excel application. + + + + + Returns the number of objects in the collection. Read-only Long. + + + + + Returns a single object from a collection. + + + + + Returns the parent object for the specified object. + + + + + Default regular expression options. + + + + + Create workbook with names.Length quantity of worksheets. + Each worksheet name will be set to corresponding names array element. + + Array of names for each worksheet. + Interface on instance of created workbook. + + When names array is NULL. + + + When names does not contain any value. + + + + + Create workbook with specified number of empty worksheets. + + Number of worksheets to create. + Interface on instance of created workbook. + + When sheetsQuantity is less than zero. + + + + + Create new empty workbook and make it active. + + Interface on instance of newly created workbook. + + + + Sets the Application name as Essential XlsIO. + + + + + + Creates a new workbook. The new workbook becomes the active workbook. + Returns a Workbook object. + + Added Workbook object. + + + + Creates a new workbook. The new workbook becomes the active workbook. + + Excel version - defines file format (excel 97-2003 or excel 2007). + Added Workbook object. + + + + Creates a new workbook. The new workbook becomes the active workbook. + Returns a Workbook object. + + File that contains required workbook. + Added Workbook object. + + + + Creates a new workbook. The new workbook becomes the active workbook. + Returns a Workbook object. + + File that contains required workbook. + Excel version - defines file format (excel 97-2003 or excel 2007). + Added Workbook object. + + + + Adds workbook to the collection. + + File to parse. + Parse options. + Created workbook. + + + + Creates a new workbook. The new workbook becomes the active workbook. + Returns a Workbook object. + + File that contains required workbook. + Parse options. + Excel version - defines file format (excel 97-2003 or excel 2007). + Added Workbook object. + + + + Opens a workbook. + + File name that contains workbook. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Version of the excel file format. + Opened workbook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Name of the file that is being opened. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Name of the file that is being opened. + Opened WorkBook. + + + + Opens a Workbook using separator. + + File name to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Opened WorkBook. + + + + Opens a Workbook using separator. + + File name to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens a Workbook using default separator. + + Stream to open. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens a Workbook using separator. + + Stream to open. + Denotes separator for the CSV file types. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens a Workbook using default separator. + + Stream to open. + Encoding to use to parse text data. + Opened WorkBook. + + + + Opens a workbook. + + File name that contains workbook. + Parse options. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Parse options. + Indicates is open book in read - only mode. + Represents valid password for opening workbook. + Opened workbook. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Opens the specified stream. + + The stream. + Parse options. + Indicates is open book in read - only mode. + Represents valid password for opening workbook. + Opened workbook. + + + + Opens the specified stream. + + The stream. + Parse options. + Indicates is open book in read - only mode. + Represents valid password for opening workbook. + Workbook version. + Opened workbook. + + + + Opens the specified stream. + + The stream. + Parse options. + Indicates is open book in read - only mode. + Represents valid password for opening workbook. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Parse options. + Indicates is open book in read - only mode. + Represents valid password for opening workbook. + Workbook version. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Parse options. + Indicates is open book in read - only mode. + Represents valid password for opening workbook. + Represents type of the file for open operation. + Opened workbook. + + + + Read workbook from the stream. + + Stream with workbook's data. + Newly created workbook. + + + + Read workbook from the stream. + + Stream with workbook's data. + Version of the excel file format. + Newly created workbook. + + + + Read workbook from the stream. + + Stream with workbook's data. + Version of the excel file format. + Newly created workbook. + + + + Read workbook from the stream. + + Stream with workbook's data. + Parse options. + Newly created workbook. + + + + Opens a workbook. + + File name that contains workbook. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + File name that contains workbook. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + Stream with workbook's data. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + Stream with workbook's data. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + Stream with workbook's data. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + Stream with workbook's data. + Represents type of the file for open operation. + Opened workbook. + + + + Opens a workbook. + + Stream with workbook's data. + Represents type of the file for open operation. + Opened workbook. + + + + Read workbook from xml file. + + Path to xml file. + Xml open type. + Returns opened workbook. + + + + Read workbook from xml file. + + Path to xml file. + Xml open type. + Returns opened workbook. + + + + Replaces xml stream with proper process instruciton. + + Current file stream. + + + + + Read workbook from xml stream. + + Xml reader. + Xml open type. + Returns opened workbook. + + + + Open new workbook in read-only mode. + + File to open. + Newly created workbook. + + + + Open new CSV workbook in read-only mode. + + File to open. + Separator to use. + Newly created workbook. + + + + Open new workbook in read-only mode. + + File to open. + Parse options. + Newly created workbook. + + + + Open new workbook in read-only mode. + + File to open. + Parse options. + Newly created workbook. + + + + Closes the object. + + + + + Creates workbook and sets its Application and Parent properties. + + Application object for the collection. + Parent object for the collection. + + + + Copies workbook from the clipboard. + + Pasted workbook. + + + + Version has been detect while adding the workbook + + Represent the file name + return the version + + + + Returns a single object from a collection. + + + + + + + + + + Represents a collection of embedded charts. + + + + + Creates a new chart. + + Newly created chart object. + + + + Removes Chart object from the collection. + + Index of the chart to remove. + + + + Returns the number of objects in the collection. Read-only Long. + + + + + Returns a single Chart object from a Charts collection. + + + + + Returns a single Chart object from the Charts collection. + + Chart name + IChartShape object + + + + Parent worksheet. + + + + + + + + + + + + Adds chart. + + Added chart. + + + + Adds new chart to the collection (doesn't add it to the shapes collection). + + Chart to add. + Added chart. + + + + Adds new chart to the collection. + + Chart to add. + Added chart. + + + + Searched for all necessary parents. + + + If can't find parent worksheet. + + + + + Creates a new chart. + + Newly created chart object. + + + + Remove chart with specified index. + + Index of chart to remove. + + + + Returns a single Chart object from a Charts collection. + + + + + Returns a single Chart object from a Charts collection. + + Chart name + IChartShape object + + + + Summary description for WorksheetConditionalFormats. + + + + + Dictionary with all ConditionalFormats. Used to check whether format is unique. + + + + + List of CFEx Records. + + + + + List of conditional format removed records. + + + + + Indicates whether to get the conditional format or not. + + + + + Initializes new instance of the collection. + + Application object for the new collection. + Parent object for the new collection. + + + + Search for collection that contains all specified ranges. + + + + + + + Add the CF to output CF + + + + + + + + Defines whether collection contains conditional format. + + Conditional formats. + Conditional formats if exists or null. + + + + Adds new item to the collection. + + Item to add. + Object that contains required cells. + + + + Removes range from the collection of conditional formats. + + Array of ranges to remove. + + + + Removes range from the collection of conditional formats. + + Array of ranges to remove. + + + + Copies conditional formats from another formats collection. + + Source collection of conditional formats to copy. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + + + + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Disposes conditional formats + + + + + Serializes all conditional formats as Biff records. + + OffsetArrayList to serialize records into. + + + + Updates properties from extended conditional formatting record + + CFRecord to be updated + CFExRecord that represents extended properties for the CFRecord + + + + Converts the RGB as Color value. + + RGB Value. + Returns Color value. + + + + Updates conditional format formulas. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + List the conditional format removed collections. + + + + + Indicates whether to get the conditional format or not. + + + + + Represents collection of all custom properties in the worksheet. + + + + + + + + + + + + Default capacity of internal buffers. + + + + + Array which store keys in sorted order. + + + + + Collection stores values. + + + + + Size of collection. + + + + + Version of collection data. + + + + + Default comparer for keys. + + + + + List of keys. + + + + + List of values. + + + + + Default constructor. + + + + + Creates an empty list with the specified initial capacity. + + Initial capacity. + + When initialCapacity is less than zero. + + + + + Creates an empty SortedList with the default initial capacity + and specified comparer. + + + The IComparer is used to determine whether two keys are equal. + + + + + Creates an empty SortedList with the specified initial capacity + and specified comparer. + + Initial capacity. + + The IComparer is used to determine whether two keys are equal. + + + + + Copies the elements from the specified dictionary to a new list + with the same initial capacity as the number of elements copied. + + The IDictionary to copy. + + + + Copies the elements from the specified dictionary to a new list with the same + initial capacity as the number of elements copied and with the specified comparer. + + The IDictionary to copy. + + The IComparer to use to determine whether two keys are equal. + + + When argument d is null. + + + + + Returns a synchronized (thread-safe) wrapper for the SortedList. + + The SortedList to synchronize. + A synchronized (thread-safe) wrapper for the SortedList. + + When list is null. + + + + + Adds an element with the provided key and value to the list. + + The Object to use as the key of the element to add. + The Object to use as the value of the element to add. + + When key is null. + + + When list already contains specified key. + + + + + Removes all elements from the collection. + + + + + Creates a new object that is a copy of the current instance. + + Copy of the current instance. + + + + Clone current instance. + + Returns clone of current object. + + + + Determines whether the list contains an element with the specified key. + + Key of the element to search. + True if list contains specified key. + + + + Determines whether the list contains an element with the specified key. + + Key of the element to search. + True if list contains specified key. + + + + Determines whether the list contains the specified value. + + Value of the element to search. + True if list contains specified value. + + + + Copies all the elements of the SortedListEx to the specified one-dimensional Array + starting at the specified destination Array index. + + The one-dimensional Array that is the destination of the + elements copied from the current list. + The index in array at which copying begins. + + If specified array is null. + + + If rank of the array is not 1 or there are not enough elements. + + + If specified arrayIndex is less than zero. + + + + + Gets the value at the specified index of the SortedListEx. + + The zero-based index of the value to get. + The value at the specified index of the SortedListEx. + + When index is less than zero or greater than size of the list. + + + + + Gets the value at the specified name of the SortedListEx. + + The value to get. + The value at the specified index of the SortedListEx. + + When string is null. + + + + + Gets the key at the specified index of the SortedListEx. + + The zero-based index of the key to get. + The key at the specified index of the SortedListEx. + + When index is less than zero or greater than size of the list. + + + + + Gets the keys in the SortedListEx. + + An IList containing the keys in the SortedListEx. + + + + Gets the values in the SortedListEx. + + An IList containing the values in the SortedListEx. + + + + Returns the zero-based index of the specified key. + + The key to locate. + The zero-based index of key, if key is found; otherwise, -1. + + If specified key is null. + + + + + Returns the zero-based index of the first occurrence of the specified value. + + The value to locate (can be NULL). + + The zero-based index of the first occurrence of value, if value is found; + otherwise, -1. + + + + + Removes the element at the specified index. + + The zero-based index of the element to remove. + + When index is less than zero or greater than size of the list. + + + + + Removes the element with the specified key from SortedListEx. + + The key of the element to remove. + + + + Replaces the value at the specific index. + + The zero-based index at which to save value. + The Object to save into. Can be NULL. + + When index is less than zero or greater than size of the list. + + + + + Sets the capacity to the actual number of elements. + + + + + Returns an IEnumerator that can iterate through the SortedListEx. + + An IEnumerator for the SortedListEx. + + + + + + + + + + Inserts element with specified key and value at specified index. + + The zero-based index to insert element at. + The key of the element to insert. + The value of the element to insert. + + + + Ensures that the capacity of this instance is at least the specified value. + + The minimum capacity to ensure. + + + + Adds item + + + + + + + Checks if the dictonary contains the key + + + + + + + Removes key from dictonary + + + + + + TryGetValue from dictonary + + + + + + + + Adds item + + + + + + Checks if the item exists + + + + + + + + + + + + + + + Removes the item + + + + + + + Capacity of internal buffers. + + + + + Size of the collection. Read-only. + + + + + List of keys. Read-only. + + + + + List of values. Read-only. + + + + + Returns True if list is readonly, False otherwise. Read-only. + + + + + Returns True if collection has fixed size, False otherwise. + + + + + Returns True if the collection is synchronized, False otherwise. + + + + + Returns the object that can be used to synchronize access to the collection. + Read-only. + + + + + Gets or sets the value associated with the specified key. + + + + + + + + + + + + + + + + + List for which is this enumerator. + + + + + Key of the current element. + + + + + Values of the current element. + + + + + Index of current element. + + + + + Starting index for the enumerator. + + + + + Ending index for this enumerator. + + + + + Version of collection data. + + + + + True if current element is correct, False otherwise + (before beginning or after end). + + + + + Creates enumerator for specified list, starting from specified index + and with specified count. + + List for which enumerator is being created. + Starting index. + Number of elements to enumerate. + + + + Performs application-defined tasks associated with freeing, releasing, or + resetting unmanaged resources. + + + + + Creates a new object that is a copy of the current instance. + + Copy of the current instance. + + + + Advances the enumerator to the next element of the collection. + + + True if the enumerator was successfully advanced to the next element; + False if the enumerator has passed the end of the collection. + + + When the current version is not equal to the SortedListEx version. + + + + + Sets the enumerator to its initial position, which is before + the first element in the collection. + + + When the current version is not equal to the SortedListEx version. + + + + + Returns key of the current element. Read-only. + + + When the current version is not equal to the SortedListEx version + or if current is false. + + + + + Return DictionaryEntry for the current element. + + + When the current version is not equal to the SortedListEx version + or if current is false. + + + + + The current element in the collection. Read-only. + + + If current is false. + + + + + The current element in the collection. Read-only. + + + If current is false. + + + + + Returns value for the current element. + + + When the current version is not equal to the SortedListEx version + or if current is false. + + + + + + + + + + + + + + + Index of current element. + + + + + Version of collection data. + + + + + + + + + + + + + + + + + + + + + List for which this collection was created. + + + + + Creates KeyList for specified SortedListEx. + + TypedSortedListEx for which KeyList must be created. + + + + Adds an element with the provided key to the list. + + The Object to use as the key of the element to add. + + + + Removes all elements from the collection. + + + + + Determines whether the list contains an element with the specified key. + + Key of the element to search. + True if list contains specified key. + + + + Copies all the elements of the list to the specified one-dimensional Array + starting at the specified destination Array index. + + The one-dimensional Array that is the destination of the + elements copied from the current list. + The index in array at which copying begins. + + If array is null or rank of the array is not 1. + + + + + Copies all the elements of the list to the specified one-dimensional Array + starting at the specified destination Array index. + + The one-dimensional Array that is the destination of the + elements copied from the current list. + The index in array at which copying begins. + + If array is null or rank of the array is not 1. + + + + + Insert the value at the specific index. + + The zero-based index at which to save value. + The Object to save into. Can be NULL. + + + + Returns an IEnumerator that can iterate through the list. + + An IEnumerator for the list. + + + + Returns an IEnumerator that can iterate through the list. + + An IEnumerator for the list. + + + + Returns the zero-based index of the specified key. + + The key to locate. + The zero-based index of the key, if the key is found; otherwise, -1. + + + + Removes the element with the specified key from list. + + The key of the element to remove. + + + + Removes the element at the specified index from the list. + + The zero-based index of the element to remove. + + + + Size of the collection. Read-only. + + + + + Returns True if list is readonly, False otherwise. Read-only. + + + + + Returns True if collection has fixed size, False otherwise. + + + + + Returns True if the collection is synchronized, False otherwise. + + + + + Returns the object that can be used to synchronize access to the collection. + Read-only. + + + + + Gets or sets the key at the specified index. + + + + + + + + + + List for which this collection was created. + + + + + Array that contain values. + + + + + Creates ValueList for specified SortedListEx. + + List for which ValueList must be created. + + + + Re-read values from the list. + + + + + Adds an element with the provided key to the list. + + Value to add. + + + + Removes all elements from the collection. + + + + + Determines whether the list contains an element with the specified value. + + Value to search. + True if list contains specified value. + + + + Copies all the elements of the list to the specified one-dimensional Array + starting at the specified destination Array index. + + The one-dimensional Array that is the destination of the + elements copied from the current list. + The index in array at which copying begins. + + + + Copies all the elements of the list to the specified one-dimensional Array + starting at the specified destination Array index. + + The one-dimensional Array that is the destination of the + elements copied from the current list. + The index in array at which copying begins. + + + + Insert the value at the specific index. + + The zero-based index at which to save value. + The Object to save into. Can be NULL. + + + + Returns an IEnumerator that can iterate through the list. + + An IEnumerator for the list. + + + + Returns an IEnumerator that can iterate through the list. + + An IEnumerator for the list. + + + + Returns the zero-based index of the specified value. + + The value to locate. + The zero-based index of the value, if the value is found, otherwise -1. + + + + Removes the specified value from list. + + The value to remove. + + + + Removes the element at the specified index from the list. + + The zero-based index of the element to remove. + + + + Size of the collection. Read-only. + + + + + Returns True if list is readonly, False otherwise. Read-only. + + + + + Returns True if collection has fixed size, False otherwise. + + + + + Returns True if the collection is synchronized, False otherwise. + + + + + Returns the object that can be used to synchronize access to the collection. + Read-only. + + + + + Gets or sets the value at the specified index. + + + + + Returns a CustomProperties object representing the identifier information associated with a worksheet. + + + + + Adds new property to the collection. + + Name of the new property. + Newly created property. + + + + Determines whether collection contains property with a specific name. + + The name of the property to locate. + True if collection contains required element. + + + + Gets single entry from the collection by index based on specified int value. Read-only. + + + + + Gets single entry from the collection by index based on specified string value. Read-only. + + + + + Gets number of elements in the collection. Read-only. + + + + + Default constructor. + + + + + Extracts custom properties from the array of Biff records. + + Array to parse. + Position of the first custom property. + + + + Serializes collection into as set of Biff records. + + OffsetArrayList to serialize into. + + + + Adds new property to the collection. + + Name of the new property. + Newly created property. + + + + Adds new property to the collection. + + Property to add. + Added property. + + + + Adds new property to the collection. + + Property to add. + Added property. + + + + Returns single entry from the collection by index. Read-only. + + + + + Returns single entry from the collection by index. Read-only. + + + + + Summary description for NamesCollection. + + + + + Dictionary Name-to-IName + + + + + Parent workbook for the collection. + + + + + Parent worksheet for the collection. + + + + + Creates new empty collection. + + Application object for the collection. + Parent object for the new collection. + + + + Renames name in Name-to-IName hashtable. + + New name implementation. + Old name. + + + + Adds new named range to the collection. + + Name of the new named range. + Newly added named range. + + + + Defines a new name. + + Name for the new Name object. + Range that will be associated with the Name. + Newly created Name object. + + + + Get existing IName. + + Name for the new Name object. + if nameImpl is true return NameImpl, otherwise return null + + + + Defines a new name. + + Name object to add. + Added Name object. + + If name argument is NULL. + + + + + Defines a new name. + + Name object to add. + Indicates is adds in global names hash. + Added Name object. + + If name argument is NULL. + + + + + Removes Name object from the collection. + + Name of the object to remove. + + + + Removes the element at the specified index from the collection. + + The zero-based index of the element to remove. + + + + Clear collection. + + + + + Checks whether collection contains named range. + + Name of the named range to search. + True if collection contains such named range; otherwise returns False. + + + + Checks whether collection contains named range. + + Name + Indicate whether formula range or not + true/false + + + + Represent the known named ranges count + + + + + Adds a new name only to this collection (without registering it in the workbook names collection). + + Name object to add. + Added Name object. + + If name argument is NULL. + + + + + Defines a new name. + + NameRecord containing info for new Name object. + Name object that was added to the collection. + + If specified NameRecord is NULL. + + + + + Defines a new name. + + NameRecord containing info for new Name object. + Indicates is adds in global names hash. + Name object that was added to the collection. + + If specified NameRecord is NULL. + + + + + Defines range of new names. + + + Array of NameRecords containing info for new Name objects. + + + If array of NameRecords is NULL. + + + + + Fills Names. + + Source names collection. + Dictionary with modified worksheet names. + Flags for filling. + Dictionary, key - old name index, value - new name index. + Represents hash table with new extern sheet indexes. + + + + Updates reference indexes in the name record. + + Name record to update. + Old workbook object. + Dictionary with new worksheet names. + Dictionary with changed extern sheet indexes. + New workbook object. + + + + Sets sheet index. + + Sheet index to set. + + + + Returns existing or creates new name. + + Name to create. + Required name. + + + + Converts full row or column tokens between versions. + + Version to convert into. + + + + Returns a single Name object from a Names collection. + + + + + Sets parent workbook and worksheet for the collection. + + + If the parent workbook or worksheet cannot be found. + + + + + Performs additional processes after inserting a new element into the collection. + + The zero-based index at which to insert value. + The new value of the element at the index. + + + + Returns a single Name object from a Names collection. + + + + + Returns parent worksheet of the collection. + + + + + Represent the known named ranges count + The name in the formula which has no reference is + unknown named ranges + + + + + Returns a single Name object from a Names collection. + + + + + A collection of all the Worksheet objects in the specified or + active workbook. Each Worksheet object represents a worksheet. + + + + + A collection of all the Worksheet objects in the specified or + active workbook. Each Worksheet object represents a worksheet. + + + + + Add a copy of the specified worksheet to the worksheet collection. + + Index of the workbook that should be copied + Returns newly added Worksheet object + + + + Add a copy of the specified worksheet to the worksheet collection. + + Index of the workbook that should be copied + Represents copy options flags. + Returns copied sheet. + + + + Add a copy of the specified worksheet to the worksheet collection. + + + Worksheet to add. It is not necessary; should be worksheet + from this collection. + + Added worksheet. + + + + Adds copy of worksheet. + + Worksheet to copy. + Represents copy flags. + Copy of worksheet that was added. + + + + Add a copy of the specified worksheets to the worksheet collection. + + Worksheets to add. + + + + Adding worksheets collection to current workbook. + + Source worksheets collection. + Represents copy option flags. + + + + Create worksheet with specified name. + + New name of worksheet. Must be unique for collection. + Reference on created worksheet. + + + + Create a new worksheet. + + Reference on created worksheet. + + + + Remove worksheet from collection. + + Reference on worksheet to remove. + + + + Removes specified worksheet from the collection. + + Name of the sheet to remove. + + + + Removes specified worksheet from the collection. + + Index of the sheet to remove. + + + + Returns the first occurrence of the specified string value with the specified . + + Value to search. + Type of value to search. + Returns the first cell with a specified string value, or null if value was not found. + + + + Returns the first occurrence of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search the value. + Returns the first cell with a specified string value and specified find options , or null if value was not found. + + + + Returns the first occurrence of the specified double value with the specified . + + Value to search. + Type of value to search. + Returns the first cell with a specified double value, or null if value was not found. + + + + Returns the first occurrence of the specified bool value. + + Value to search. + Returns the first cell with a specified bool value, or null if value was not found. + + + + Returns the first occurrence of the specified DateTime value. + + Value to search. + Returns the first cell with a specified DateTime value, or null if value was not found. + + + + Returns the first occurrence of the specified TimeSpan value. + + Value to search. + Returns the first cell with a specified TimeSpan value, or null if value was not found. + + + + Returns the cells of the specified string value with the specified . + + Value to search. + Type of value to search. + Returns the cells with a specified string value, or null if value was not found. + + + + Returns the cells of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search. + + Returns the cells with a specified string value and specified find options , or null if value was not found. + + + + + Returns the cells of the specified double value with the specified . + + Value to search. + Type of value to search. + All found cells, or Null if value was not found. + + + + Returns the cells of the specified bool value. + + Value to search. + Returns the cells with a specified bool value, or null if value was not found. + + + + Returns the cells of the specified DateTime value. + + Value to search. + Returns the cells with a specified DateTime value, or null if value was not found. + + + + Returns the cells of the specified TimeSpan value. + + Value to search. + Returns the cells with a specified TimeSpan value, or null if value was not found. + + + + Adds copy of sheet to collection before chosen sheet. + + Represents worksheet to copy. + Returns copied sheet. + + + + Adds copy of sheet to collection before chosen sheet. + + Represents worksheet to copy. + Represents sheet that, in collection must be after copied sheet. + Returns copied sheet. + + + + Adds copy of sheet to collection after chosen sheet. + + Represents worksheet to copy. + Returns copied sheet. + + + + Adds copy of sheet to collection before chosen sheet. + + Represents worksheet to copy. + Represents sheet that, in collection must be before copied sheet. + Returns copied sheet. + + + + Used without an object qualifier, this property returns an + Application object that represents the Microsoft Excel application. + + + + + Gets the number of objects in the collection. Read-only Long. + + + + + Gets a single object from a collection based on specified int value. Read-only. + + + + + Gets a single object from a collection based on specified string value. Read-only. + + + + + Gets the parent object for the specified object. + + + + + Indicates whether all created range objects should be cached or not. + + + + + Maximum allowed worksheet name length. + + + + + Hash table that contains all worksheets and gives access + to them by worksheet name. + + + + + Parent workbook. + + + + + Indicates whether to use hash for worksheet look up. + + + + + Sheet Name Validator + + + + + Creates a collection and sets its Application and Parent properties. + + Application object for the collection. + Parent object for the collection. + + + + Adds new worksheet into collection. + + Added worksheet. + + + + Removes all references to worksheet from the current collection. + + Worksheet's name to remove. + + + + Moves worksheet inside this collection only. + + Old index in the collection. + New index in the collection. + + + + Updates sheet index after move/insert operation. + + Sheet that was changed. + Old sheet index in the TabSheets collection. + + + + + + + + + + + This method searches for the first cell with specified string value. + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified string value. + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified double value. + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified bool value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified DateTime value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified TimeSpan value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the all cells with specified string value. + + Value to search. + Type of value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified string value. + + Value to search. + Type of value to search. + Way to search. + + All found cells, or Null if value was not found. + + + + + This method searches for the all cells with specified double value. + + Value to search. + Type of value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified bool value. + + Value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified DateTime value. + + Value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified TimeSpan value. + + Value to search. + All found cells, or Null if value was not found. + + + + Add worksheet from reader. + + Reader which contains worksheet. + Parse options. + + Indicates whether worksheet should be parsed. + + Dictionary with new extended format indexes used in ignore styles mode. + + Object used to decrypt encrypted records. + Read worksheet. + + + + Adds an empty worksheet. + + Name of the newly created worksheet. + Newly created worksheet. + + + + Add a copy of the specified worksheet to the worksheet collection. + + Index of the workbook that should be copied + Returns copied sheet. + + + + Add a copy of the specified worksheet to the worksheet collection. + + Index of the workbook that should be copied + Represents copy options flags. + Returns copied sheet. + + + + Adds copy of worksheet. + + Worksheet to copy. + Copy of worksheet that was added. + + + + Adds copy of worksheet. + + Worksheet to copy. + Represents copy flags. + Copy of worksheet that was added. + + + + Generates default name. + + Current sheet name. + Returns string with new name. + + + + Adds copy of worksheet. + + Worksheet to copy. + Flags that allows to choose what kind of data should be copied. + Indicates is current sheet is local. + Copy of worksheet that was added. + + + + Returns true, if the sheet contains the ActiveX Control. + + sheet to check ActiveX control. + true, if sheet contains ActiveX control. + + + + Adding worksheets collection to current workbook. + + Source worksheets collection. + + + + Adding worksheets collection to current workbook. + + Source worksheets collection. + Represents copy option flags. + + + + copy the source book external connection to destination book + + The Source Book + The Destination Book + + + + + + + + + + + Adds copy of sheet to collection before chosen sheet. + + Represents worksheet to copy. + Returns copied sheet. + + + + Adds copy of sheet to collection before chosen sheet. + + Represents worksheet to copy. + Represents sheet that, in collection must be after copied sheet. + Returns copied sheet. + + + + Adds copy of sheet to collection after chosen sheet. + + Represents worksheet to copy. + Returns copied sheet. + + + + Adds copy of sheet to collection before chosen sheet. + + Represents worksheet to copy. + Represents sheet that, in collection must be before copied sheet. + Returns copied sheet. + + + + Performs additional processes after inserting a new element into the collection. + + The zero-based index at which to insert value. + The new value of the element at the index. + + + + Performs additional processes after setting a value in the collection. + + The zero-based index at which oldValue can be found. + The value to replace with newValue. + The new value of the element at the index. + + + + Performs additional processes after removing an element from the collection. + + The zero-based index at which value can be found. + The value of the element to remove from the index. + + + + OnClear is invoked after Clear behavior. + + + + + This method is called when sheet name was changed. + + Sender of the event. + Event arguments. + + When workbook already contains worksheet with specified name. + + + + + Creates empty worksheet with specified name. + + New name of worksheet. Must be unique for collection. + Reference on created worksheet. + + When specified name is NULL. + + + + + Creates empty worksheet with automatically generated name. + + Reference on created worksheet. + + + + Remove specified worksheet from workbook collection. + + Reference on worksheet to remove. + + When specified sheet is last sheet in the workbook. + + + + + Removes specified worksheet from the collection. + + Name of the sheet to remove. + + + + Removes specified worksheet from the collection. + + Index of the sheet to remove. + + + + Updates string indexes. + + List with new indexes. + + + + Removes specified worksheet from the collection. + + Index of the sheet to remove. + + + + Adds worksheet into internal collection. + + Worksheet to add. + + + validates the sheet name to avoid the invalid names + + + + Returns a single object from a collection. Read-only. + + + + + Returns a single object from a collection. Read-only. + + + + + Indicates whether all created range objects should be cached. + + + + + Toggles worksheet search algorithm when searching worksheet by name. + + + + + Indicates whether worksheet is displayed right to left. + + + + + Class that represent event args. + + + + + Element index. + + + + + Element value. + + + + + Default constructor. + + + + + Creates new instance of event arguments. + + Changed element index. + Changed element value. + + + + Element index. Read-only. + + + + + Element value. Read-only. + + + + + Represents condition value for colorset condition. + + + + + Represents implementation of single condition value for iconset, databar, colorscale conditions. + + + + + + Represents a condition value for , and conditions. + + + + + Gets or sets a condition value which specifies how the threshold values for a , + and conditional format are determined. + + + By default for IconSets the property is set to . Here for example, + we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "IconSets"; + worksheet["A2"].Number = 105; + worksheet["A3"].Number = 120; + worksheet["A4"].Number = 300; + worksheet["A5"].Number = 240; + worksheet["A6"].Number = 350; + worksheet["A7"].Number = 460; + worksheet["A8"].Number = 170; + worksheet["A9"].Number = 280; + worksheet["A10"].Number = 190; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as IconSet. + format.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = format.IconSet; + + //Set conditions for IconCriteria. + iconSet.IconCriteria[1].Type = ConditionValueType.Percentile; + iconSet.IconCriteria[1].Value = "20"; + iconSet.IconCriteria[1].Operator = ConditionalFormatOperator.GreaterThan; + + iconSet.IconCriteria[2].Type = ConditionValueType.Percentile; + iconSet.IconCriteria[2].Value = "70"; + iconSet.IconCriteria[2].Operator = ConditionalFormatOperator.GreaterThan; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + For DataBars the is set to by default. Here for example, we + set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set MinPoint for DataBar + dataBar.MinPoint.Value = "30"; + dataBar.MinPoint.Type = ConditionValueType.Percent; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + To set the for refer property. + + + + + Gets or sets the shortest bar or longest bar threshold value for a data bar conditional format. + + + IconSets use list property to set icons, So each object has individual + property. By default the list property holds three objects and those object's property + set "0", "33" and "67" respectively. In our example, we set "20" and "70" to property of second and third objects in + list property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "IconSets"; + worksheet["A2"].Number = 105; + worksheet["A3"].Number = 120; + worksheet["A4"].Number = 300; + worksheet["A5"].Number = 240; + worksheet["A6"].Number = 350; + worksheet["A7"].Number = 460; + worksheet["A8"].Number = 170; + worksheet["A9"].Number = 280; + worksheet["A10"].Number = 190; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as IconSet. + format.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = format.IconSet; + + //Set conditions for IconCriteria. + iconSet.IconCriteria[1].Type = ConditionValueType.Percentile; + iconSet.IconCriteria[1].Value = "20"; + iconSet.IconCriteria[1].Operator = ConditionalFormatOperator.GreaterThan; + + iconSet.IconCriteria[2].Type = ConditionValueType.Percentile; + iconSet.IconCriteria[2].Value = "70"; + iconSet.IconCriteria[2].Operator = ConditionalFormatOperator.GreaterThan; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + For DataBars the default value of property is set to "0". This property is can be changed by getting + or properties. These two properties define the shortest and longest bars of + DataBar. For example, we have set the of to "30". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set MinPoint for DataBar + dataBar.MinPoint.Value = "30"; + dataBar.MinPoint.Type = ConditionValueType.Percent; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + To set the value for refer property. + + + + + Gets or sets the operator for the threshold values in the conditional format. + + + By default is set to and it can be changed to + . In our example, we change the to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "IconSets"; + worksheet["A2"].Number = 105; + worksheet["A3"].Number = 120; + worksheet["A4"].Number = 300; + worksheet["A5"].Number = 240; + worksheet["A6"].Number = 350; + worksheet["A7"].Number = 460; + worksheet["A8"].Number = 170; + worksheet["A9"].Number = 280; + worksheet["A10"].Number = 190; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as IconSet. + format.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = format.IconSet; + + //Set conditions for IconCriteria. + iconSet.IconCriteria[1].Type = ConditionValueType.Percentile; + iconSet.IconCriteria[1].Value = "20"; + iconSet.IconCriteria[1].Operator = ConditionalFormatOperator.GreaterThan; + + iconSet.IconCriteria[2].Type = ConditionValueType.Percentile; + iconSet.IconCriteria[2].Value = "70"; + iconSet.IconCriteria[2].Operator = ConditionalFormatOperator.GreaterThan; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + Similar to IconSets, DataBars also have property set to + by default which can be changed to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set MaxPoint for DataBar + dataBar.MaxPoint.Value = "70"; + dataBar.MaxPoint.Type = ConditionValueType.Percent; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + To set the operator for refer property. + + + + Returns or sets one of the constants of the ConditionValueType enumeration + which specifies how the threshold values for a data bar, color scale, + or icon set conditional format are determined. + + + + Returns or sets threshold values for the conditional format. + + + + + Sets the operator for the threshold values in the conditional format. + + + + + Gets or sets the formula value in Ref3DPtg type. + + + + + Equality comparison. + + The first condition to compare. + The second condition to compare. + true if conditions are equal. + + + + Checks whether conditions are not equal. + + The first condition to compare. + The second condition to compare. + true if conditions are not equal. + + + + Initializes new instance of the class. + + Condition type. + Condition value. + + + + Default constructor. + + + + + Creates copy of the condition. + + Copy of the current object. + + + + Determines whether the specified Object is equal to the current Object. + + The Object to compare with the current Object. + true if the specified Object is equal to the current Object; otherwise, false. + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + Gets or sets one of the constants of the ConditionValueType enumeration + which specifies how the threshold values for a data bar, color scale, + or icon set conditional format are determined. + + + + Gets or sets the shortest bar or longest bar threshold value for a data bar conditional format. + + + + + Gets or sets one of the constants of the ConditionalFormatOperator + which specifes operator for the threshold values in the conditional format. + + + + + Gets or sets the formula value in Ref3DPtg type. + + + + + Represents a condition value for color scale conditional format. + + + + + Gets or sets the threshold of a color scale conditional format. + + + The default color scale conditions can be customized by changing , and Properties. + To know more about advanced conditional formatting types refer this link. + + + The criteria for applying ColorScale can be accessed from the Property. Since the default size of the Criteria list + is 2, In our example we access those two objects and set values for . + Here we set each object a color and haven't mentioned any additional condition, So the default conditions will apply shades of these two colors depending + on the values in the cells and set cell colors. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "ColorScale"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as ColorScale. + format.FormatType = ExcelCFType.ColorScale; + IColorScale colorScale = format.ColorScale; + + //Set Color for FormatColorRGB Property. + colorScale.Criteria[0].FormatColorRGB = System.Drawing.Color.White; + colorScale.Criteria[1].FormatColorRGB = System.Drawing.Color.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the for the color scale conditional format. + + + The property is used to change the of the object. + Default values will be and if the is not set. + If the count is set to 3, then the values will be , and . + In our example we are change the default value of first object in list to and set to 60. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "ColorScale"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as ColorScale. + format.FormatType = ExcelCFType.ColorScale; + IColorScale colorScale = format.ColorScale; + + //Set Type and Value + colorScale.Criteria[0].Type = ConditionValueType.Percent; + colorScale.Criteria[0].Value = "60"; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the shortest bar or longest bar threshold value for a data + bar conditional format. + + + The default color applied in the color scale can be changed by changing the property. + To know more about the conditional formatting types refer this link. + + + The color bars use Threshold value to set colors to the cells based on the values present in the cells. It can be customized using property. + For default settings, the threshold will be average value of the data present in the cells. Here in our example, we set the threshold value to 80; + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "ColorScale"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as ColorScale. + format.FormatType = ExcelCFType.ColorScale; + IColorScale colorScale = format.ColorScale; + + //Set 3 as count for color scale + colorScale.SetConditionCount(3); + + //Change Threshold value for 2nd object in Critera list. + colorScale.Criteria[1].Value = "80"; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the format operator of condition value for color scale conditional format. + + + To know more about customizing the color scale refer , properties. To check other types of conditional + formatting types refer this link. + + + By default the property is set to , This will set color scale + to the cells above the specified threshold value starting from it. can be used to change the + color scale to set colors above the specified threshold value. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "ColorScale"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as ColorScale. + format.FormatType = ExcelCFType.ColorScale; + IColorScale colorScale = format.ColorScale; + + //Set threshold value and type + colorScale.Criteria[0].Value = "70"; + colorScale.Criteria[0].Type = ConditionValueType.Percent; + + //Set operator to GreaterThan + colorScale.Criteria[0].Operator = ConditionalFormatOperator.GreaterThan; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Color value. + + + + + Initializes new instance of the class. + + Type of the condition. + Value of the object. + Format color. + + + + Default constructor. + + + + + The color assigned to the threshold of a color scale conditional format. + + + + + This object wraps IConditionValue object to ensure correct parent object update. + + + + + Wrapped item. + + + + + Parent object. + + + + + Initiates updates to the object. + + This method should be called before several updates to the object will take place. + + + + Ends updating the object. + + This method should be called after several updates to the object took place. + + + + Initializes new instance of wrapper. + + Object to wrap. + Parent object. + + + + Gets or sets the condition value type + which specifies how the threshold values for a data bar, color scale, + or icon set conditional format are determined. Read-only. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IConditionalFormats conditionalFormats = worksheet.Range["C7:C46"].ConditionalFormats; + IConditionalFormat conditionalFormat = conditionalFormats.AddCondition(); + conditionalFormat.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = conditionalFormat.DataBar; + dataBar.MinPoint.Type = ConditionValueType.LowestValue; + + + + + + Gets or sets the shortest bar or longest bar threshold value for a data bar conditional format. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IConditionalFormats conditionalFormats = worksheet.Range["C7:C46"].ConditionalFormats; + IConditionalFormat conditionalFormat = conditionalFormats.AddCondition(); + conditionalFormat.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = conditionalFormat.DataBar; + dataBar.MinPoint.Value = "0"; + + + + + + Gets or sets the operator + which specifes operator for the threshold values in the conditional format. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IConditionalFormats conditionalFormats = worksheet.Range["C7:C46"].ConditionalFormats; + IConditionalFormat conditionalFormat = conditionalFormats.AddCondition(); + conditionalFormat.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = conditionalFormat.DataBar; + dataBar.MinPoint.Operator = ConditionalFormatOperator.GreaterThanorEqualTo; + + + + + + Gets / sets wrapped object. + + + + + Initializes new instance of the wrapped. + + Object to wrap. + Parent object. + + + + The color assigned to the threshold of a color scale conditional format. + + + + + Returns one of the constants of the XlConditionValueTypes enumeration, + which specifies how the threshold values for a data bar, color scale, + or icon set conditional format are determined. Read-only. + + + + + Returns or sets the shortest bar or longest bar threshold value for a data + bar conditional format. + + + + + Returns or sets one of the constants of the ConditionalFormatOperator enumeration, + which specifes if the threshold is "greater than" or "greater than or equal to" the threshold value. + + + + + Returns wrapped object. + + + + + Represents a condition value for conditions. + + + + + Returns or sets IconSet for individual IconSet criteria. It allows the custom Iconset and works based in the index. + + + Custom IconSet Conditional Formatting allows you to format your data based the IconSet criteria value from . + For example the icon set is initially set to use the icon set, but this IconSet property is used + to override which icons are used for the first or seconde and third criteria. You can set individual icon based on the index of the IconSet Type. + + + The following code illustrates how to use the Custom Iconset. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + // Create icon sets for the data in specified range + IConditionalFormats conditionalFormats = worksheet.Range["H1:K6"].ConditionalFormats; + IConditionalFormat conditionalFormat = conditionalFormats.AddCondition(); + conditionalFormat.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = conditionalFormat.IconSet; + iconSet.IconSet = ExcelIconSetType.FiveBoxes; + IIconConditionValue iconValue1 = iconSet.IconCriteria[0] as IIconConditionValue; + + //Set the Iconset for first IconSet Criteria + iconValue1.IconSet = ExcelIconSetType.FiveArrowsGray; + + iconValue1.Index = 2; + iconValue1.Type = ConditionValueType.Percent; + iconValue1.Value = "25"; + iconValue1.Operator = ConditionalFormatOperator.GreaterThanorEqualTo; + IIconConditionValue iconValue2 = iconSet.IconCriteria[1] as IIconConditionValue; + + //Set the Iconset for second IconSet Criteria + iconValue2.IconSet = ExcelIconSetType.ThreeArrows; + + iconValue2.Index = 0; + iconValue2.Type = ConditionValueType.Percent; + iconValue2.Value = "50"; + iconValue2.Operator = ConditionalFormatOperator.GreaterThan; + IIconConditionValue iconValue3 = iconSet.IconCriteria[2] as IIconConditionValue; + + //Set the Iconset for third IconSet Criteria + iconValue3.IconSet = ExcelIconSetType.FourArrows; + + iconValue3.Index = 1; + iconValue3.Type = ConditionValueType.Percent; + iconValue3.Value = "75"; + iconValue3.Operator = ConditionalFormatOperator.GreaterThanorEqualTo; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets index of the iconset type's individual icon index. + + + Custom IconSet Conditional Formatting allows you to format your IconSet data based the IconSet index criteria. + For example the index is initially set to 0. In , there are three icons, but the Index property represents the first Icon based on the index value. + + + The following code illustrates how to use the Custom Iconset index. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + // Create icon sets for the data in specified range + IConditionalFormats conditionalFormats = worksheet.Range["H1:K6"].ConditionalFormats; + IConditionalFormat conditionalFormat = conditionalFormats.AddCondition(); + conditionalFormat.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = conditionalFormat.IconSet; + iconSet.IconSet = ExcelIconSetType.FiveBoxes; + IIconConditionValue iconValue1 = iconSet.IconCriteria[0] as IIconConditionValue; + iconValue1.IconSet = ExcelIconSetType.FiveArrowsGray; + + //Set the Iconset index for first IconSet Criteria + iconValue1.Index = 2; + + iconValue1.Type = ConditionValueType.Percent; + iconValue1.Value = "25"; + iconValue1.Operator = ConditionalFormatOperator.GreaterThanorEqualTo; + IIconConditionValue iconValue2 = iconSet.IconCriteria[1] as IIconConditionValue; + iconValue2.IconSet = ExcelIconSetType.ThreeArrows; + + //Set the Iconset index for second IconSet Criteria + iconValue2.Index = 0; + + iconValue2.Type = ConditionValueType.Percent; + iconValue2.Value = "50"; + iconValue2.Operator = ConditionalFormatOperator.GreaterThan; + IIconConditionValue iconValue3 = iconSet.IconCriteria[2] as IIconConditionValue; + iconValue3.IconSet = ExcelIconSetType.FourArrows; + + //Set the Iconset index for third IconSet Criteria + iconValue3.Index = 1; + + iconValue3.Type = ConditionValueType.Percent; + iconValue3.Value = "75"; + iconValue3.Operator = ConditionalFormatOperator.GreaterThanorEqualTo; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Initializes new instance of the wrapped. + + Object to wrap. + Parent object. + + + + The color assigned to the threshold of a color scale conditional format. + + + + + Returns one of the constants of the XlConditionValueTypes enumeration, + which specifies how the threshold values for a data bar, color scale, + or icon set conditional format are determined. Read-only. + + + + + Returns wrapped object. + + + + + This object used to store, convert colors. + + + + + Type of the stored color. + + + + + Color value. + + + + + Color Saturation Modulation value + + + + + Color Luminence value + + + + + Color Saturation + + + + + Color Luminence Modulation + + + + + Indicate Scheme color + + + + + Indicate Schema Name + + + + + Indicate Hex color + + + + + Initializes new instance of the color object. + + Color value to initialize. + + + + Initializes new instance of the color object. + + Color value to initialize. + + + + Initializes a new instance of the ColorObject class. + + Represents type of Color. + Represents color value. + + + + Initializes a new instance of the ColorObject class. + + Represents color type. + Represents color value. + Represents tint value. + + + + Returns index for indexed color or the closest color for any other color type. + + Parent workbook + Index for indexed color or the closest color for any other color type. + + + + Sets indexed color. + + Color index to set. + + + + Sets indexed color. + + Color index to set. + + + + Sets indexed color + + The RGB of set color + parent workbook of the palette + Color index to set. + + + + Sets the indexed. + + Color index to set. + if set to true [raise event]. + The book. + + + + Returns RGB Color object that corresponds to this color. + + Parent workbook. + RGB Color object that corresponds to this color. + + + + Sets RGB color value. + + Value to set. + Parent workbook. + + + + Sets RGB color value. + + Value to set. + + + + Conversion operator. + + Value to convert. + Converted item. + + + + Checks whether two instance have the same data. + + First color object to check. + Second color object to check. + True if they have the same data. + + + + Checks whether two instances have different data. + + First color object to check. + Second color object to check. + True if they have different data. + + + + Copies data from another color object. + + Color object to copy data from. + Indicates whether we should call AfterChange method. + + + + Converts current color to closest indexed. + + Parent workbook. + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Sets indexed color without calling AfterChange event. + + Color index to set. + + + + Creates copy of the current object. + + A copy of the current object. + + + + Normalizes indexed color if necessary. + + + + + Normalizes indexed color if necessary. + + bskip is used to color index of ownPalette or Excel Default Palette + The raiseEvent is true color index is changed if false color index is not changed + + + + Normalizes indexed color if necessary. + + + + + Determines whether the specified Object is equal to the current Object. + + The Object to compare with the current Object. + true if the specified Object is equal to the current Object; otherwise, false. + + + + Sets theme color. + + Theme color index. + Parent workbook. + + + + Sets theme color + + Theme color index. + Parent workbook. + Tint value. + + + + Sets rgb color. + + Rgb color to set. + Parent workbook. + Tint value. + + + + Dispose + + + + + Event called after color change. + + + + + Returns color value (it can be index, rgb color, etc.) + + + + + Gets or sets Tint. + + + + + Indicate Hex color + + + + + Returns type of the stored color. + + + + + Delegate used for after change event. + + + + + This enumeration contains possible color types. + + + + + Automatic color. + + + + + Indexed color. + + + + + RGB color. + + + + + Theme color. + + + + + Color not set + + + + + Represents a color scale conditional formatting rule. + + + + + Sets the number of objects in the collection. Supported values are 2 and 3. + + Number of conditions. + + To know more about advanced conditional formatting Types refer this link. + + + The following code illustrates how to set the condition value count for color scale. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "ColorScale"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as ColorScale. + format.FormatType = ExcelCFType.ColorScale; + IColorScale colorScale = format.ColorScale; + + //Set 3 as count for color scale + colorScale.SetConditionCount(3); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a collection of individual objects. Read-only. + + + The default size of the criteria list is 2 and it can be changed using method. To know more about + Conditional formatting Types refer this link. + + + The criteria for applying color scale can be accessed from the Property. + The following code illustrates how to access the objects from the criteria list and change the properties , and + by accessing each criterio from the list. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "ColorScale"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as ColorScale. + format.FormatType = ExcelCFType.ColorScale; + IColorScale colorScale = format.ColorScale; + + //Set 3 as count for color scale + colorScale.SetConditionCount(3); + + //Set Criteria for applying ColorScale + colorScale.Criteria[0].FormatColorRGB = System.Drawing.Color.White; + colorScale.Criteria[0].Type = ConditionValueType.Percentile; + colorScale.Criteria[0].Value = "0"; + + colorScale.Criteria[1].FormatColorRGB = System.Drawing.Color.Red; + colorScale.Criteria[1].Type = ConditionValueType.Percentile; + colorScale.Criteria[1].Value = "50"; + + colorScale.Criteria[2].FormatColorRGB = System.Drawing.Color.Blue; + colorScale.Criteria[2].Type = ConditionValueType.Percentile; + colorScale.Criteria[2].Value = "100"; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Default color sequence for two color gradient. + + + + + Default color sequence for three color gradient. + + + + + A collection of individual IColorConditionValue objects. + + + + + Sets number of IColorConditionValue objects in the collection. Supported values are 2 and 3. + + Number of conditions. + + + + Initializes new instance of the color scale object. + + + + + Updates count of object in the collection. + + Desired number of objects. + + + + Returns a collection of individual IColorConditionValue objects. + The IColorConditionValue object specifies the type, value, and the color + of threshold criteria used in the color scale conditional format. Read-only. + + + + + Parent format. + + + + + Wrapper over condition values. + + + + + Read-only part copy of the criteria collection. + + + + + Sets number of IColorConditionValue objects in the collection. Supported values are 2 and 3. + + Number of conditions. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Initializes new instance of the wrapper. + + Parent format wrapper. + + + + Updates internal criteria collection. + + + + + + + Adds required number of new wrappers to the criteria collection. + + Number of items to add. + Source collection to wrap. + + + + Updates wrappers inside criteria collection. + + Number of wrappers to update. + + + + Removes wrappers from criteria collection. + + Number of wrappers to remove. + + + + Returns wrapped object. + + Wrapped object. + + + + Returns a collection of individual IColorConditionValue objects. + The IColorConditionValue object specifies the type, value, and the color + of threshold criteria used in the color scale conditional format. Read-only. + + + + + Represnets a single conditional format. Used for single-cell range. + + + Contains a condition and the formatting attributes + applied to the cells, if the condition is met. + + + + + Represents a conditional format. + + The formatting properties are applied if the conditional formatting rule evaluates to True. + + + + Gets or sets the type of the conditional format. + + + By default the is set to . + + + Type of conditional formatting to be applied is based on the value set from enumeration to property. + Here for example, we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].DateTime = DateTime.Today; + worksheet["B3"].DateTime = DateTime.Parse("1/18/2015"); + worksheet["B4"].DateTime = DateTime.Today; + worksheet["B5"].DateTime = DateTime.Today; + worksheet["B6"].DateTime = DateTime.Parse("1/18/2016"); + worksheet["B7"].DateTime = DateTime.Today; + worksheet["B8"].DateTime = DateTime.Today; + worksheet["B9"].DateTime = DateTime.Parse("1/18/2017"); + worksheet["B10"].DateTime = DateTime.Today; + worksheet["B11"].DateTime = DateTime.Today; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType. + format.FormatType = ExcelCFType.TimePeriod; + + //Set TimePeriodType. (Condition) + format.TimePeriodType = CFTimePeriods.ThisMonth; + + //Set NumberFormat. + format.NumberFormat = "d-mmm"; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets one of the constants of enumeration + which represents the type of the time period. + + The applicable time period in a "date occurring�" conditional formatting rule. + This can be ignored if is not equal to TimePeriod. + + For conditional formatting type we can set the criteria by setting a value from + enumeration to property. Here for example, we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].DateTime = DateTime.Today; + worksheet["B3"].DateTime = DateTime.Parse("1/18/2015"); + worksheet["B4"].DateTime = DateTime.Today; + worksheet["B5"].DateTime = DateTime.Today; + worksheet["B6"].DateTime = DateTime.Parse("1/18/2016"); + worksheet["B7"].DateTime = DateTime.Today; + worksheet["B8"].DateTime = DateTime.Today; + worksheet["B9"].DateTime = DateTime.Parse("1/18/2017"); + worksheet["B10"].DateTime = DateTime.Today; + worksheet["B11"].DateTime = DateTime.Today; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType. + format.FormatType = ExcelCFType.TimePeriod; + + //Set TimePeriodType. (Condition) + format.TimePeriodType = CFTimePeriods.ThisMonth; + + //Set NumberFormat. + format.NumberFormat = "d-mmm"; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the comparison operator for the conditional format. + + + If conditional formats applied based on the then the should be used to apply + conditional formats based on the value present in the cell. We can choose condition that is required from the + enumeration. + Here for example, we apply borders for the cells which have values between "20" and "60". For we set + to apply conditional formats for the cells with values within the range "20" and "60". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + + //Set Operator. + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether the font is bold. + + + Similar to property, we can use and properties also. + + + To format data in the cells to Bold within the conditional formatting range property can be used. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Bold. + format.IsBold = true; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value indicating whether the font is italic. + + + Similar to property, we can use and properties also. + + + To format the data in the cells to Italic within the conditional formatting range property can be used. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Color. + format.IsItalic = true; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the font color from predefined colors (). + + + Similar to and properties, cell colors can be set using and properties. + + + To set font color for the text in the cells within the conditional formatting range property can be used. Colors can be + selected from the enumeration which has all the colors that are included in Excel by default. + property can be used to set colors in RGB representation. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Color. + format.FontColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the font color. + + + Similar to and properties, cell colors can be set using and properties. + + + To set font color for the text in the cells within the conditional formatting range property can be used. Colors can be + set by creating Color object by specfifying RGB values or can be selected from predefined RGB color objects. + property can be used to set colors that are available from the enumeration. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set RGB color. + format.FontColorRGB = System.Drawing.Color.FromArgb(255, 0, 0); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the underline type for the conditional format. + + + Similar to , we can use to strike out values in the cells within conditional formatting range. + + + Data in the cells can be given underline with the help of conditional formats. To give underline property should be set + to any of the value in the enumeration. Here for example, we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set UnderLine. + format.Underline = ExcelUnderline.Double; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether the font is strike through. + + + Similar to , we can use , and properties to + format the values in the cells within the conditional formatting range. + + + Data in the cells within the conditional formats range can be struck with the help of property. To strike values + in the cells, we have to set the property to True. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set StrikeThrough. + format.IsStrikeThrough = true; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the left border color from predefined colors (). + + + To set left border color for the cell within conditional formatting range from the enumeration we use + property. RGB color can be applied by using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Border Style. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; //Set color + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the left border RGB color. + + + To set left border color for the cell within conditional formatting range from the RGB colors we use property. + Colors from enumeration can be applied by using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColorRGB = System.Drawing.Color.Red; + format.LeftBorderColorRGB = System.Drawing.Color.Red; //Set RGB color. + format.RightBorderColorRGB = System.Drawing.Color.Red; + format.TopBorderColorRGB = System.Drawing.Color.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the left border line style. + + + To change the default line style of left border we set a line style from enumeration to property. + Here for example, we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Border Style. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; //Set LineStyle + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the right border color from predefined colors (). + + + To set a color from the enumeration we use property. RGB color can be applied + by using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; //Set color. + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the right border color. + + To set right border color for the cell within conditional formatting range from the RGB colors we use property. + Colors from enumeration can be applied by using property. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColorRGB = System.Drawing.Color.Red; + format.LeftBorderColorRGB = System.Drawing.Color.Red; + format.RightBorderColorRGB = System.Drawing.Color.Red; //Set RGB color. + format.TopBorderColorRGB = System.Drawing.Color.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the right border line style. + + + To change the default line style of right border we set a line style from enumeration to property. + Here for example, we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; //Set LineStyle. + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the top border color from predefined colors (). + + + To set a color from the enumeration we use property. RGB color can be applied + by using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; //Set color + format.RightBorderColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets RGB color to top border. + + + To set top border color for the cell within conditional formatting range from the RGB colors we use property. + Colors from enumeration can be applied by using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColorRGB = System.Drawing.Color.Red; + format.LeftBorderColorRGB = System.Drawing.Color.Red; + format.RightBorderColorRGB = System.Drawing.Color.Red; + format.TopBorderColorRGB = System.Drawing.Color.Red; //Set color + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the top border line style. + + + To change the default line style of top border we set a line style from enumeration to property. + Here for example, we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; //Set LineStyle + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the bottom border color from predefined colors (). + + + To set a color from the enumeration we use property. RGB color can be applied + by using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; //Set color + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets RGB color to bottom border. + + To set bottom border color for the cell within conditional formatting range from the RGB colors we use property. + Colors from enumeration can be applied by using property. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColorRGB = System.Drawing.Color.Red; + format.LeftBorderColorRGB = System.Drawing.Color.Red; + format.RightBorderColorRGB = System.Drawing.Color.Red; + format.TopBorderColorRGB = System.Drawing.Color.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the bottom border line style. + + + To change the default line style of bottom border we set a line style from enumeration to property. + Here for example, we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; //Set LineStyle + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the value or expression associated with the conditional format. + + + Relative cell addresses can be used to apply formatting by using and . To know more about R1C1 notation refer + + Using FormulaR1C1 property in Conditional Formats. + + + property is used to set value that is used for setting conditions. applies + conditional formatting based on the condition from enumeration. This requires atleast one value to + apply conditional format. Here for example, we set "60" to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the value or expression associated with the conditional format + in R1C1 notation. + + + To know more about refer Using FormulaR1C1 property in Conditional Formats. + + + To apply formatting by comparing the relative cell addresses we can use . Here for example, we compare the adjacent + cell values and apply formatting. can also used along with to add additional condition. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 1; + worksheet["B3"].Number = 2; + worksheet["B4"].Number = 3; + worksheet["B5"].Number = 4; + worksheet["B6"].Number = 5; + worksheet["B7"].Number = 6; + worksheet["B8"].Number = 7; + worksheet["B9"].Number = 8; + worksheet["B10"].Number = 9; + worksheet["B11"].Number = 10; + + //Data to be compared. + worksheet["C2"].Number = 11; + worksheet["C3"].Number = 1; + worksheet["C4"].Number = 3; + worksheet["C5"].Number = 2; + worksheet["C6"].Number = 5; + worksheet["C7"].Number = 3; + worksheet["C8"].Number = 7; + worksheet["C9"].Number = 9; + worksheet["C10"].Number = 19; + worksheet["C11"].Number = 20; + + + //Create instance of IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + + //Add condition. + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType. + format.FormatType = ExcelCFType.Formula; + + //Set Formula. + format.FirstFormulaR1C1 = "=RC>RC[1]"; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets the value or expression associated with the second part of a conditional format. + + + Relative cell addresses can be used to apply formatting by using and . To know more about R1C1 notation refer + + Using FormulaR1C1 property in Conditional Formats. + + + To set condition like two values are needed. So, we set these values to + and properties. Here for example, we apply conditional formats to the cells that has values between "20" and "60". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets the value or expression associated with the second part of a conditional format + in R1C1 notation. + + + To know more about refer Using FormulaR1C1 property in Conditional Formats. + + + To apply formatting by comparing the relative cell addresses we can use . Here for example, we compare the adjacent + cell values and apply formatting. can also used along with to add additional condition. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 1; + worksheet["B3"].Number = 2; + worksheet["B4"].Number = 3; + worksheet["B5"].Number = 4; + worksheet["B6"].Number = 5; + worksheet["B7"].Number = 6; + worksheet["B8"].Number = 7; + worksheet["B9"].Number = 8; + worksheet["B10"].Number = 9; + worksheet["B11"].Number = 10; + + //Data to be compared. + worksheet["C2"].Number = 11; + worksheet["C3"].Number = 1; + worksheet["C4"].Number = 3; + worksheet["C5"].Number = 2; + worksheet["C6"].Number = 5; + worksheet["C7"].Number = 3; + worksheet["C8"].Number = 7; + worksheet["C9"].Number = 9; + worksheet["C10"].Number = 19; + worksheet["C11"].Number = 20; + + + //Create instance of IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + + //Add condition. + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType. + format.FormatType = ExcelCFType.Formula; + + //Set Formula. + format.SecondFormulaR1C1 = "=RC>RC[1]"; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the pattern foreground color from predefined colors (). + + + property is used to set the foreground color for based on the condition applied. + RGB color can be applied by setting RGB color to property. Here for example, we set to + and to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Pattern. + format.FillPattern = ExcelPattern.DarkHorizontal; + + //Set Color. + format.Color = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or Sets the gradient style for conditional format. + + + property is used to set the gradient style for based on the condition applied. + Gradient variant can be applied by setting the gradient variant to property. Here for example, we set to + and to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "30"; + format.SecondFormula = "70"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Pattern. + format.FillPattern = ExcelPattern.Gradient; + + //Set Gradient Style + format.GradientStyle=ExcelGradientStyle.Diagonal_Up; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or Sets the gradient variant for conditional format. + + + property is used to set the gradient variant for based on the condition applied. + Gradient style can be applied by setting the gradient style to property. Here for example, we set to + and to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "30"; + format.SecondFormula = "70"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Pattern. + format.FillPattern = ExcelPattern.Gradient; + + //Set Gradient Variant + format.GradientVariant=ExcelGradientVariants.ShadingVariants_2"; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the pattern foreground RGB color. + + + property is used to set the foreground RGB color for based on the condition applied. Color from + can be applied by setting color to property. Here for example, we set to + and Red color to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Pattern. + format.FillPattern = ExcelPattern.DarkHorizontal; + + //Set RGB color. + format.ColorRGB = System.Drawing.Color.FromArgb(255, 0, 0); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the background color from predefined colors (). + + + Background color to cells within the conditional formatting range can be set color from enumeration + using property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Color. + format.BackColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the background RGB color. + + + Similar to property, we can use property. In we can only select a color + from enumeration . But, in we can create RGB color objects by changing RGB values. + + + property is used to set RGB color to the cell's background, if the conditions of conditional formats get + satisfied. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set RGB color. + format.BackColorRGB = System.Drawing.Color.FromArgb(255, 0, 0); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the fill pattern style. + + + To set pattern for cells within the conditional formatting range property can be used. Here for example, we set + to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Pattern. + format.FillPattern = ExcelPattern.DarkHorizontal; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating whether the font is superscript. + + + + + Gets or sets a Boolean value indicating whether the font is subscript. + + + + + True if the conditional format contains font formatting. otherwise, False. + + property is used to check whether the font related formatting has been applied or not. For example, changing + font color is a formatting. Here in our example we check before setting color to font using and after setting it. First + it returns False since color was not initially applied. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Check font is formatted or not. + Console.WriteLine(format.IsFontFormatPresent); + + //Set Color. + format.FontColor = ExcelKnownColors.Red; + + //Check font is formatted or not. + Console.WriteLine(format.IsFontFormatPresent); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + //Output will be + //False + //True + + + + + + + True if the conditional format contains pattern formatting. otherwise, False. + + + To check whether the cell's is set or not, We can use the property. Here for example, + We check before and after applying to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Check whether pattern format is present. + Console.WriteLine(format.IsPatternFormatPresent); + + //Set Pattern. + format.FillPattern = ExcelPattern.DarkHorizontal; + + //Check whether pattern format is present. + Console.WriteLine(format.IsPatternFormatPresent); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + //Output will be + //False + //True + + + + + + True if font color is present. otherwise, False. + + property can be used to check whether the font color is applied or not. If applied it returns + True else returns False. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Check Font color is present or not. + Console.WriteLine(format.IsFontColorPresent); + + //Set Color. + format.FontColor = ExcelKnownColors.Red; + + //Check Font color is present or not. + Console.WriteLine(format.IsFontColorPresent); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + //Output will be + //False + //True + + + + + + True if pattern color is present. otherwise, False. + + + We can use property to check whether pattern color is set or not. Here for example, we check whether + pattern color is set or not before setting and after setting to and + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Check whether pattern color is set or not. + Console.WriteLine(format.IsPatternColorPresent); + + //Set Color. + format.Color = ExcelKnownColors.Red; + format.FillPattern = ExcelPattern.DarkHorizontal; + + //Check whether pattern color is set or not. + Console.WriteLine(format.IsPatternColorPresent); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + //Output will be + //False + //True + + + + + + True if background color is present. otherwise, False. + + property can be used to check whether the background color is applied or not. Returns True if the pattern color + is modifed else returns False. + Otherwise False. + + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Check Background color is present or not. + Console.WriteLine(format.IsBackgroundColorPresent); + + //Set Color. + format.BackColor = ExcelKnownColors.Red; + + //Check Background color is present or not. + Console.WriteLine(format.IsBackgroundColorPresent); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + //Output will be + //False + //True + + + + + + True if left border line style is modified. otherwise, False. + + + We use property to check whether the left border is modifed or not. Returns True if the border + is modifed else returns False. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Check whether default border is modified or not. + Console.WriteLine(format.IsBottomBorderModified); + Console.WriteLine(format.IsLeftBorderModified); + Console.WriteLine(format.IsRightBorderModified); + Console.WriteLine(format.IsTopBorderModified); + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; //Set LineStyle + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; //Set color + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Check whether default border is modified or not. + Console.WriteLine(format.IsBottomBorderModified); + Console.WriteLine(format.IsLeftBorderModified); + Console.WriteLine(format.IsRightBorderModified); + Console.WriteLine(format.IsTopBorderModified); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + //Output will be + //False + //False + //False + //False + //True + //True + //True + //True + + + + + + True if right border line style is modified. otherwise, False. + + + We use property to check whether the right border is modifed or not. Returns True if the border + is modifed else returns False. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Check whether default border is modified or not. + Console.WriteLine(format.IsBottomBorderModified); + Console.WriteLine(format.IsLeftBorderModified); + Console.WriteLine(format.IsRightBorderModified); + Console.WriteLine(format.IsTopBorderModified); + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; //Set LineStyle + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; //Set color + + //Check whether default border is modified or not. + Console.WriteLine(format.IsBottomBorderModified); + Console.WriteLine(format.IsLeftBorderModified); + Console.WriteLine(format.IsRightBorderModified); + Console.WriteLine(format.IsTopBorderModified); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + //Output will be + //False + //False + //False + //False + //True + //True + //True + //True + + + + + + True if top border line style is modified. otherwise, False. + + + We use property to check whether the top border is modifed or not. Returns True if the border + is modifed else returns False. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Check whether default border is modified or not. + Console.WriteLine(format.IsBottomBorderModified); + Console.WriteLine(format.IsLeftBorderModified); + Console.WriteLine(format.IsRightBorderModified); + Console.WriteLine(format.IsTopBorderModified); + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; //Set LineStyle + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; //Set color + format.RightBorderColor = ExcelKnownColors.Red; + + //Check whether default border is modified or not. + Console.WriteLine(format.IsBottomBorderModified); + Console.WriteLine(format.IsLeftBorderModified); + Console.WriteLine(format.IsRightBorderModified); + Console.WriteLine(format.IsTopBorderModified); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + //Output will be + //False + //False + //False + //False + //True + //True + //True + //True + + + + + + True if bottom border line style is modified. otherwise, False. + + + We use property to check whether the bottom border is modifed or not. Returns True if the border + is modifed else returns False. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Check whether default border is modified or not. + Console.WriteLine(format.IsBottomBorderModified); + Console.WriteLine(format.IsLeftBorderModified); + Console.WriteLine(format.IsRightBorderModified); + Console.WriteLine(format.IsTopBorderModified); + + //Apply Conditional format. + format.BottomBorderStyle = ExcelLineStyle.Thick; //Set LineStyle + format.LeftBorderStyle = ExcelLineStyle.Thick; + format.TopBorderStyle = ExcelLineStyle.Thick; + format.RightBorderStyle = ExcelLineStyle.Thick; + + //Set Border color. + format.BottomBorderColor = ExcelKnownColors.Red; //Set color + format.LeftBorderColor = ExcelKnownColors.Red; + format.TopBorderColor = ExcelKnownColors.Red; + format.RightBorderColor = ExcelKnownColors.Red; + + //Check whether default border is modified or not. + Console.WriteLine(format.IsBottomBorderModified); + Console.WriteLine(format.IsLeftBorderModified); + Console.WriteLine(format.IsRightBorderModified); + Console.WriteLine(format.IsTopBorderModified); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + //Output will be + //False + //False + //False + //False + //True + //True + //True + //True + + + + + + Gets data bar conditional formatting rule. Read-only. + + + Valid only if FormatType is set to DataBar. + + + DataBar can be set by setting to property. To customize the criteria for applying + data bars we have to change properties of interface. Here for example, we set Red color to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set Bar color for DataBar + dataBar.BarColor = System.Drawing.Color.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets icon set conditional formatting rule. Read-only. + + + Valid only if FormatType is set to IconSet. + + + IconSet can be set by setting to property. To customize the criteria for applying + IconSets we have to change properties of interface. Here for example, we set values for + property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "IconSets"; + worksheet["A2"].Number = 105; + worksheet["A3"].Number = 120; + worksheet["A4"].Number = 300; + worksheet["A5"].Number = 240; + worksheet["A6"].Number = 350; + worksheet["A7"].Number = 460; + worksheet["A8"].Number = 170; + worksheet["A9"].Number = 280; + worksheet["A10"].Number = 190; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as IconSet. + format.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = format.IconSet; + + //Set conditions for IconCriteria. + iconSet.IconCriteria[1].Type = ConditionValueType.Percentile; + iconSet.IconCriteria[1].Value = "20"; + iconSet.IconCriteria[1].Operator = ConditionalFormatOperator.GreaterThan; + + iconSet.IconCriteria[2].Type = ConditionValueType.Percentile; + iconSet.IconCriteria[2].Value = "70"; + iconSet.IconCriteria[2].Operator = ConditionalFormatOperator.GreaterThan; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets color scale conditional formatting rule. Read-only. + + + Valid only if FormatType is set to ColorScale. + + + ColorScale can be set by setting to property. To customize criteria for applying color scale + we have to set values for properties in interface. Here for example, we set values for + property and use method. + + //Create a worksheet. + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "ColorScale"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as ColorScale. + format.FormatType = ExcelCFType.ColorScale; + IColorScale colorScale = format.ColorScale; + + //Set 3 as count for color scale + colorScale.SetConditionCount(3); + + //Set Criteria for applying ColorScale + colorScale.Criteria[0].FormatColorRGB = System.Drawing.Color.White; + colorScale.Criteria[0].Type = ConditionValueType.Percentile; + colorScale.Criteria[0].Value = "0"; + + colorScale.Criteria[1].FormatColorRGB = System.Drawing.Color.Red; + colorScale.Criteria[1].Type = ConditionValueType.Percentile; + colorScale.Criteria[1].Value = "50"; + + colorScale.Criteria[2].FormatColorRGB = System.Drawing.Color.Blue; + colorScale.Criteria[2].Type = ConditionValueType.Percentile; + colorScale.Criteria[2].Value = "100"; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets number format of the conditional format rule. + + + Number format for the values in the cells within the conditional formatting range can be set by using property. + Here for example, we set "d-mmm" to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].DateTime = DateTime.Today; + worksheet["B3"].DateTime = DateTime.Parse("1/18/2015"); + worksheet["B4"].DateTime = DateTime.Today; + worksheet["B5"].DateTime = DateTime.Today; + worksheet["B6"].DateTime = DateTime.Parse("1/18/2016"); + worksheet["B7"].DateTime = DateTime.Today; + worksheet["B8"].DateTime = DateTime.Today; + worksheet["B9"].DateTime = DateTime.Parse("1/18/2017"); + worksheet["B10"].DateTime = DateTime.Today; + worksheet["B11"].DateTime = DateTime.Today; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType. + format.FormatType = ExcelCFType.TimePeriod; + + //Set TimePeriodType. (Condition) + format.TimePeriodType = CFTimePeriods.ThisMonth; + + //Set NumberFormat. + format.NumberFormat = "d-mmm"; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a boolean value that determines if additional formatting rules on the cell should be evaluated + if the current rule evaluates to True. + + + is set to False by default. If we set it to True formatting is applied based on the priority. If a higher priority + rule for particular cells gets satisfied then the preceding rules are not applied for those cells. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Number = 10; + worksheet["B3"].Number = 20; + worksheet["B4"].Number = 30; + worksheet["B5"].Number = 40; + worksheet["B6"].Number = 50; + worksheet["B7"].Number = 60; + worksheet["B8"].Number = 70; + worksheet["B9"].Number = 80; + worksheet["B10"].Number = 90; + worksheet["B11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + IConditionalFormat format2 = formats.AddCondition(); + IConditionalFormat format3 = formats.AddCondition(); + + //Set Condition. + format.FirstFormula = "60"; + format.SecondFormula = "20"; + format.Operator = ExcelComparisonOperator.Between; + + //Set Color. + format.BackColor = ExcelKnownColors.Red; + + //Set StopIfTrue. + format.StopIfTrue = true; + + //Set Condition. + format2.FirstFormula = "30"; + format2.SecondFormula = "70"; + format2.Operator = ExcelComparisonOperator.Between; + + //Set Color. + format2.BackColor = ExcelKnownColors.Blue; + + //Set StopIfTrue. + format2.StopIfTrue = true; + + //Set Condition. + format3.FirstFormula = "30"; + format3.SecondFormula = "50"; + format3.Operator = ExcelComparisonOperator.Between; + + //Set Color. + format3.BackColor = ExcelKnownColors.Green; + + //Set StopIfTrue. + format3.StopIfTrue = true; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the text value used in SpecificText conditional formatting rule. + The default value is null. + + + To apply conditional formats based on the text present in the cells within conditional formatting range, then we set the text we want to apply + formatting to and set to . Here for example, we set "Test" to + and set to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["B1"].Text = "Conditional Formats"; + worksheet["B2"].Text = "Test"; + worksheet["B3"].Text = "Test"; + worksheet["B4"].Text = "Text"; + worksheet["B5"].Text = "Text"; + worksheet["B6"].Text = "Test"; + worksheet["B7"].Text = "Text"; + worksheet["B8"].Text = "Test"; + worksheet["B9"].Text = "Text"; + worksheet["B10"].Text = "Text"; + worksheet["B11"].Text = "Test"; + + //Create instance of IConditionalFormats. + IConditionalFormats formats = worksheet["B2:B11"].ConditionalFormats; + + //Add condition. + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType. + format.FormatType = ExcelCFType.SpecificText; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + //Set Text. + format.Text = "Test"; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + + + + + + Gets TopBottom conditional formatting rule. Read-only. + + + Valid only if FormatType is set to TopBottom. + + + TopBottom conditional formatting rule can be applied by setting to property. To customize the TopBottom rule + we have to change properties of interface. Here for example, we set values to interface properties. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "Top10"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as TopBottom. + format.FormatType = ExcelCFType.TopBottom; + ITopBottom topBottom = format.TopBottom; + + //Set values the ITopBottom interface properties. + topBottom.Type = ExcelCFTopBottomType.Bottom; + topBottom.Percent = false; + topBottom.Rank = 5; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets AboveBelowAverage conditional formatting rule. Read-only. + + + Valid only if FormatType is set to AboveBelowAverage. + + + AboveBelowAverage conditional formatting rule can be applied by setting to property. To customize the AboveBelowAverage rule + we have to change properties of interface. Here for example, we set values to interface properties. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "Above Average"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as AboveBelowAverage. + format.FormatType = ExcelCFType.AboveBelowAverage; + IAboveBelowAverage aboveBelowAverage = format.AboveBelowAverage; + + //Set values the IAboveBelowAverage interface properties. + aboveBelowAverage.AverageType = ExcelCFAverageType.AboveStdDev; + aboveBelowAverage.StdDevValue = 1; + + //Set color. + format.BackColor = ExcelKnownColors.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Conditional format color. Read-only. + + + + + Conditional format background color. Read-only. + + + + + Conditional format top border color. Read-only. + + + + + Conditional format bottom border color. Read-only. + + + + + Conditional format left border color. Read-only. + + + + + Conditional format right border color. Read-only. + + + + + Conditional format font color. Read-only. + + + + + Gets or Sets the gradient style for coonditional format. + + + + + Gets or Sets the gradient variant for conditional format. + + + + + Indicates whether pattern style was modified. + + + + + Returns parsed tokens of the first formula. + + + + + Returns parsed tokens of the second formula. + + + + + Represents constant that not contain font color. + + + + + Default Formula for Blank conditional Formatting type + + + + + Default Formula for No Blank conditional Formatting type + + + + + Default Formula for Error conditional Formatting type + + + + + Default Formula for NoError conditional Formatting type + + + + + Default Formula for Begins With Specific Text conditional Formatting type + + + + + Default Formula for Ends With Specific Text conditional Formatting type + + + + + Default Formula for Contains Text Specific Text conditional Formatting type + + + + + Default Formula for NotContains Text Specific Text conditional Formatting type + + + + + Default formula for yesterday's time period type + + + + + Default formula for today's time period ytype + + + + + Default formula for tomorrow's time period type + + + + + Default formula for last seven days time period type + + + + + Default formula for last week time period type + + + + + Default formula for this week time period type + + + + + Default formula for next week time period type + + + + + Default formula for last month time period type + + + + + Default formula for this month time period type + + + + + Default formula for next month time period type + + + + + Represent the indicates whether formula has set or not. + + + + + Record that contains conditional format data. + + + + + CFEx record. + + + + + starting index of dxf record when text rotation is enabled in style. + + + + + CF12 record. + + + + + Parent workbook. + + + + + Color object that stores cf color. + + + + + Color object that stores cf background color. + + + + + Color object that stores cf top border color. + + + + + Color object that stores cf bottom border color. + + + + + Color object that stores cf left border color. + + + + + Color object that stores cf right border color. + + + + + Color object that stores cf font color color. + + + + + Excel Gradient style that stores cf gradient style. + + + + + Excel Gradient variant that stores cf gradient variant. + + + + + Data bar settings. + + + + + Icon set settings. + + + + + Color scale settings. + + + + + Represents the text value. + + + + + Represents the range reference value + + + + + Preserves the conditional formatting custom functions. + + + + + Represents whether the conditional format has extension list or not + + + + + Represents whether the dxf has pattern type none + + + + + Represents the GUID for the conditional format extension list + + + + + Represents the Time Period conditional formatting types. + + + + + Represents the ID of the conditional format extension list CFRule. + + + + + Gets TopBottom conditional formatting rule. Read-only. + + + Valid only if FormatType is set to Top10. + + + + + Gets AboveBelowAverage conditional formatting rule. Read-only. + + + Valid only if FormatType is set to AboveAverage. + + + + + Negative priority. + + + + + Checks whether conditional format is copying or not. + + + + + Checks whether priority of the conditional format is copying or not. + + + + + Initializes a new instance of ConditionalFormat class. + + Application object for the ConditionalFormat. + Parent object for the ConditionalFormat. + + + + Initializes a new instance of ConditionalFormat class from array of BiffRecords. + + Application object for the ConditionalFormat. + Parent object for the ConditionalFormat. + Array of BiffRecords. + Position of the corresponding CFRecord in the array. + + + + Initializes a new instance of ConditionalFormat class from ConditionalFormat Record. + + Application object for the ConditionalFormat. + Parent object for the ConditionalFormat. + CFRecord to parse. + + + + Initializes a new instance of ConditionalFormat class from ConditionalFormat12 Record. + + Application object for the ConditionalFormat. + Parent object for the ConditionalFormat. + CF12Record to parse. + + + + Initializes a new instance of ConditionalFormat class from ConditionalFormat Extension Record. + + Application object for the ConditionalFormat. + Parent object for the ConditionalFormat. + CFExRecord to parse. + + + + Parses Conditional format data from an array of BiffRecords. + + Array of BiffRecords. + Position of the corresponding CFRecord in the array. + + + + Initializes color objects. + + + + + Updates color objects and sets color values to zero (to make comparison correct). + + + + + Sets all color indexes to zero. + + + + + Parses format record. + + + + + Serializes ConditionalFormat records. + + OffsetArrayList that will get all data of conditional format records. + + + + Serializes ConditionalFormat12 records. + + OffsetArrayList that will get all data of ConditionalFormat12 records. + + + + Updates font color inside record. + + + + + Update color value. + + + + + Updates back color value. + + + + + Updates left border color. + + + + + Updates right border color. + + + + + Updates top border color. + + + + + Updates bottom border color. + + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Searches for necessary parents of the conditional format. + + + + + Initializes a new instance of ConditionalFormat class from ConditionalFormat Extension Record. + + CFExRecord to parse. + + + + Update conditional format from extended properties + + Extended properties collectiom + Conditional format to be update + + + + Convert the ptg token to NPtg + + Ptg collection + Boolean value indicating Absolute cell reference + + + + + Gets first or second formula string value from the conditional format. + + Boolean indicating first or second formula + First/second formula string value + + + + Sets the specifed text value for the SpecficText conditional format. + + Excel comparision operator value. + String value to be set. + + + + Sets formula for the specified range in SpecificText conditional format. + + Value for Excel comparision operator. + Range value. + + + + Sets the formula for time period types. + + + + + + + Sets first or second formula value to the conditional format. + + Formula util object. + Formula string. + Boolean value indicating first formula. + + + + Gets first or second formula string value from the conditional format. + + Formula util. + Boolean value indicating first formula. + First/second formula string value. + + + + Gets first or second formula string value from the conditional format. + + Formula util. + Boolean value indicating first formula. + Boolean value indicating if first formula is for serialization + First/second formula string value. + + + + Gets the cell rectangle. + + The parent formats. + + + + + Gets the minimum range. + + The sorted list. + + + + + Initiates updates to the object. + + This method should be called before several updates to the object will take place. + + + + Ends updating the object. + This method should be called after several updates to the object took place. + + + + + Updates color indexes. + + + + + Updates conditional format formulas. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Updates conditional format formulas. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + Represents workbook. + + + + Check relative conditional format formulas. + + Conditional format formula. + + + + Update named range names + + Conditional format formula. + Represents workbook. + + + + Serves as a hash function for a particular type, suitable for use in + hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + Compares the current Object with the specified object without taking cell list into account. + + The Object to compare with the current Object. + Booleab value indicating if the objects compared are equal. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Gets or sets the left border color from predefined colors (). + + + + + Gets or sets the left border color (). + + + + + Gets or sets the left border line style. + + + + + Gets or sets the right border color from predefined colors (). + + + + + Gets or sets the right border color (). + + + + + Gets or sets the right border line style. + + + + + Gets or sets the top border color from predefined colors (). + + + + + Gets or sets the top border color (). + + + + + Gets or sets the top border line style. + + + + + Gets or sets the bottom border color from predefined colors (). + + + + + Gets or sets the bottom border color (). + + + + + Gets or sets the bottom border line style. + + + + + Gets or sets the value or expression associated with the conditional format. + + + + + Gets and sets indicates whether formula has set or not. + + + + + Gets or sets the value or expression associated with the conditional format + in R1C1 notation. + + + + + Gets the value or expression associated with the second part of a conditional format. + + + + + Gets the value or expression associated with the second part of a conditional format + in R1C1 notation. + + + + + Gets or sets the type of the conditional format. + + + + + Gets or sets one of the constants of enumeration + which represents the type of the time period. + + + + + Get and Set the ID of the conditional format extension list CFRule + + + + + Gets or sets the comparison operator for the conditional format. + + + + + Gets or sets a boolean value indicating whether the font is bold. + + + + + Gets or sets a boolean value indicating whether the font is italic. + + + + + Gets or sets the font color from predefined colors (). + + + + + Gets or sets the font color (). + + + + + Gets or sets the underline type for the conditional format. + + + + + Gets or sets a Boolean value indicating whether font is struck through. + + + + + Gets or sets a Boolean value indicating whether the font is superscript. + + + + + Gets or sets a Boolean value indicating whether the font is subscript. + + + + + Gets or sets the pattern foreground color from predefined colors (). + + + + + Gets or sets the pattern foreground color. (Color) + + + + + Gets or sets the pattern background color from predefined colors (). + + + + + Gets or sets the pattern background color (). + + + + + Gets or sets the fill pattern style. + + + + + True if the conditional format contains font formatting. otherwise, False. + + + + + True if the conditional format contains border formatting. otherwise, False. + + + + + True if the conditional format contains pattern formatting. otherwise, False. + + + + + True if font color is present. otherwise, False. + + + + + True if pattern color is present. otherwise, False. + + + + + True if background color is present. otherwise, False. + + + + + True if Number format is present. False otherwise. + + + + + Gets or sets a Boolean value indicating whether the Conditional format has Extension list. + + + + + True if left border line style is modified. otherwise, False. + + + + + True if right border line style is modified. otherwise, False. + + + + + True if top border line style is modified. otherwise, False. + + + + + True if bottom border line style is modified. otherwise, False. + + + + + Gets or sets number format index of the conditional format rule. + + + + + Gets or sets number format of the conditional format rule. + + + + + Gets or sets the text value used in SpecificText conditional formatting rule. + The default value is null. + + + + + TODO:The issue with IRange for Conditional cell value type while range having the "Astersik " (*) symbol. the breaking issue id:DefectID_SD15510.xlsx, + The breaks occurs in the FR implementation "SF7880-Support for specific Text conditional formatting" . + Remove this property while fixing the break issue of CF range with Asterisk. + + + + + Gets or sets a boolean value that determines if additional formatting rules on the cell should be evaluated + if the current rule evaluates to True. + + + + + Represents the starting index of formatting record. + + + + + Indicates whether it uses negative priority. + + + + + Indicates whether conditional format is copying or not. + + + + + Represents the priority of the conditional format. + + + + + + Represents the conditionl format template. + + + + + Gets data bar conditional formatting rule. Read-only. + + + Valid only if FormatType is set to DataBar. + + + + + Gets icon set conditional formatting rule. Read-only. + + + Valid only if FormatType is set to IconSet. + + + + + Gets color scale conditional formatting rule. Read-only. + + + Valid only if FormatType is set to ColorScale. + + + + + Gets TopBottom conditional formatting rule. Read-only. + + + Valid only if FormatType is set to Top10. + + + + + Gets AboveBelowAverage conditional formatting rule. Read-only. + + + Valid only if FormatType is set to AboveAverage. + + + + + Gets internal ConditionatFormat record. Read-only. + + + + + Gets internal ConditionalFormat12 record. Read-only. + + + + + Gets internal ConditionalFormatExtension record. Read-only. + + + + + Gets parent workbook. Read-only. + + + + + Gets data bar object. Read-only. + + + + + Represents the range refernce of Conditional formatting + + + + + True if the conditional format contains border formatting. otherwise, False. + + + + + Gets the conditional format foreground color object. Read-only. + + + + + Gets the conditional format background color object. Read-only. + + + + + Gets Conditional format top border color object. Read-only. + + + + + Gets conditional format bottom border color object. Read-only. + + + + + Gets conditional format left border color object. Read-only. + + + + + Gets conditional format right border color object. Read-only. + + + + + Gets Conditional format font color object. Read-only. + + + + + Gets or Sets the Gradient style for conditional format. + + + + + Gets or Sets the Gradient variant for conditional format. + + + + + Indicates whether pattern style was modified. + + + + + Gets parsed tokens of the first formula. + + + + + Gets parsed tokens of the second formula. + + + + + Represents the top or bottom conditional formatting rule. + Applying this rule to a range helps you highlight the top or bottom �n� cells from the selected range + + + + + Represents the top or bottom conditional formatting rule. + Applying this rule to a range helps you highlight the top or bottom �n� cells from the selected range. + + + + + Specifies whether the ranking is evaluated from the top or bottom. + + + + + Specifies whether the rank is determined by a percentage value. + + + + + Specifies the maximum number or percentage of cells to be highlighted for this conditional formatting rule. + + + + + Specifies whether the ranking is evaluated from the top or bottom. + + + + + Specifies whether the rank is determined by a percentage value. + + + + + Specifies the maximum number or percentage of cells to be highlighted for this conditional formatting rule. + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Compares two instances of the IconSetImpl. + + First object to compare. + Second object to compare. + True if objects are equal. + + + + Checks whether objects are different. + + First object to compare. + Second object to compare. + True if objects are not equal. + + + + Specifies whether the ranking is evaluated from the top or bottom. + + + + + Specifies whether the rank is determined by a percentage value. + + + + + Specifies the maximum number or percentage of cells to be highlighted for this conditional formatting rule. + + + + + Represents the top or bottom conditional formatting rule. + Applying this rule to a range helps you highlight the top or bottom �n� cells from the selected range + + + + + Represents the above or below conditional formatting rule. + Applying this rule to a range helps you highlight the cells which contain values above or below the average of selected range. + + + + + Specifies whether the conditional formatting rule looks for cell values above or below the range average or standard deviation. + + + + + Specifies standard deviation number for AboveBelowAverage conditional formatting rule. + + + Valid only if AverageType is set to AboveStdDev or BelowStdDev. + + + + + Specifies whether the conditional formatting rule looks for cell values above or below the range average or standard deviation. + + + + + Specifies standard deviation number for AboveAverage conditional formatting rule. + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Compares two instances of the IconSetImpl. + + First object to compare. + Second object to compare. + True if objects are equal. + + + + Checks whether objects are different. + + First object to compare. + Second object to compare. + True if objects are not equal. + + + + Specifies whether the conditional formatting rule looks for cell values above or below the range average or standard deviation. + + + + + Specifies standard deviation number for AboveAverage conditional formatting rule. + + + + + Summary description for ConditionalFormatWrapper. + + + + + Parent conditional formats wrapper. + + + + + Condition index. + + + + + Wrapper over data bar object. + + + + + Wrapper over icon set object. + + + + + Wrapper over color scale object. + + + + + Gets TopBottom conditional formatting rule. Read-only. + + + Valid only if FormatType is set to Top10. + + + + + Gets AboveBelowAverage conditional formatting rule. Read-only. + + + Valid only if FormatType is set to AboveAverage. + + + + + To prevent user from creation instances of this class without arguments. + + + + + Creates new instance of the Conditional Format wrapper. + + Parent formats collection. + Condition index. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Gets unwrapped condition. + + Unwrapped condition. + + + + Gets or sets the type of the conditional format. + + + + + Gets or sets one of the constants of enumeration + which represents the type of the time period. + + + + + Gets or sets the comparison operator for the conditional format. + + + + + Gets or sets a boolean value indicating whether the font is bold. + + + + + Gets or sets a boolean value indicating whether the font is italic. + + + + + Gets or sets the font color from predefined colors (). + + + + + Gets or sets the font color (). + + + + + Gets or sets the underline type for the conditional format. + + + + + Gets or sets a Boolean value indicating whether font is struck through. + + + + + Gets or sets the left border color from predefined colors (). + + + + + Gets or sets the left border color (). + + + + + Gets or sets the left border line style. + + + + + Gets or sets the right border color from predefined colors (). + + + + + Gets or sets the right border color (). + + + + + Gets or sets the right border line style. + + + + + Gets or sets the top border color from predefined colors (). + + + + + Gets or sets the top border color (). + + + + + Gets or sets the top border line style. + + + + + Gets or sets the bottom border color from predefined colors (). + + + + + Gets or sets the bottom border color (). + + + + + Gets or sets the bottom border line style. + + + + + Gets or sets the value or expression associated with the conditional format. + + + + + Gets or sets the value or expression associated with the conditional format + in R1C1 notation. + + + + + Gets the value or expression associated with the second part of a conditional format. + + + + + Gets the value or expression associated with the second part of a conditional format + in R1C1 notation. + + + + + Gets or sets the pattern foreground color from predefined colors (). + + + + + Gets or sets the pattern foreground color. (Color) + + + + + Gets or sets the pattern background color from predefined colors (). + + + + + Gets or sets the pattern background color (). + + + + + Gets or sets the fill pattern style. + + + + + Gets or sets a Boolean value indicating whether the font is superscript. + + + + + Gets or sets a Boolean value indicating whether the font is subscript. + + + + + True if the conditional format contains font formatting. otherwise, False. + + + + + True if the conditional format contains border formatting. otherwise, False. + + + + + True if the conditional format contains pattern formatting. otherwise, False. + + + + + True if font color is present. otherwise, False. + + + + + True if pattern color is present. otherwise, False. + + + + + True if background color is present. otherwise, False. + + + + + True if Number format is present. False otherwise. + + + + + True if left border line style is modified. otherwise, False. + + + + + True if right border line style is modified. otherwise, False. + + + + + True if top border line style is modified. otherwise, False. + + + + + True if bottom border line style is modified. otherwise, False. + + + + + Gets or sets number format index of the conditional format rule. + + + + + Gets or sets number format of the conditional format rule. + + + + + Gets or sets the text value used in SpecificText conditional formatting rule. + The default value is null. + + + + + Gets or sets a boolean value that determines if additional formatting rules on the cell should be evaluated + if the current rule evaluates to True. + + + + + Represents the conditionl format template. + + + + + Gets data bar conditional formatting rule. Read-only. + + + Valid only if FormatType is set to DataBar. + + + + + Gets icon set conditional formatting rule. Read-only. + + + Valid only if FormatType is set to IconSet. + + + + + Gets color scale conditional formatting rule. Read-only. + + + Valid only if FormatType is set to ColorScale. + + + + + Gets TopBottom conditional formatting rule. Read-only. + + + Valid only if FormatType is set to Top10. + + + + + Gets AboveBelowAverage conditional formatting rule. Read-only. + + + Valid only if FormatType is set to AboveAverage. + + + + + Gets the application for this object. + + + + + Gets the parent for this object. + + + + + Gets the conditional format foreground color object. Read-only. + + + + + Gets the conditional format background color object. Read-only. + + + + + Gets Conditional format top border color object. Read-only. + + + + + Conditional format bottom border color. Read-only. + + + + + Gets conditional format left border color object. Read-only. + + + + + Gets conditional format right border color object. Read-only. + + + + + Gets Conditional format font color object. Read-only. + + + + + Indicates whether pattern style was modified. + + + + + Gets or Sets the gradient style for conditional format. + + + + + Gets or Sets the gradient variant for conditional format. + + + + + Gets parsed tokens of the first formula. + + + + + Gets parsed tokens of the second formula. + + + + + Represents the top or bottom conditional formatting rule. + Applying this rule to a range helps you highlight the top or bottom �n� cells from the selected range + + + + + Wrapped data Top10 object. + + + + + Parent conditional format wrapper. + + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Initializes new instance of the wrapper. + + top10 object to wrap. + Parent conditional format wrapper. + + + + Specifies whether the ranking is evaluated from the top or bottom. + + + + + Specifies whether the rank is determined by a percentage value. + + + + + Specifies the maximum number or percentage of cells to be highlighted for this conditional formatting rule. + + + + + Represents the top or bottom conditional formatting rule. + Applying this rule to a range helps you highlight the top or bottom �n� cells from the selected range + + + + + Wrapped data Top10 object. + + + + + Parent conditional format wrapper. + + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Initializes new instance of the wrapper. + + Above average object to wrap. + Parent conditional format wrapper. + + + + Specifies whether the conditional formatting rule looks for cell values above or below the range average or standard deviation. + + + + + Specifies standard deviation number for AboveAverage conditional formatting rule. + + + + + Represents the implementation of Icon condition value + + + + + Returns or sets one of the constants of the IconConditionValueType enumeration. It specifies how the threshold values for icon set conditional format are determined. + + + + + Returns or sets index of the iconset type's individual icon index. + + + + + Initializes new instance of the class. + + IconSet valus from + Index of the Icon Sets + Type of the condition. + Value of the object. + + + + + Returns or sets IconSet for individual IconSet criteria. It allows the custom Iconset and works based in the index. + + + Custom IconSet Conditional Formatting allows you to format your data based the IconSet criteria value from . + For example the icon set is initially set to use the icon set, but this IconSet property is used + to override which icons are used for the first or seconde and third criteria. You can set individual icon based on the index of the IconSet Type. + + + + + Gets or sets index of the iconset type's individual icon index. + + + Custom IconSet Conditional Formatting allows you to format your IconSet data based the IconSet index criteria. + For example if the index is initially set as 0. In , there are three icons, but the Index property represents first Icon based on the index value. + + + + + + No conditional value. + + + + + Number is used. + + + + + Lowest value from the list of values. + + + + + Highest value from the list of values. + + + + + Percentage is used. + + + + + Formula is used. + + + + + Percentile is used. + + + + + Automatic is used + + + + + Specifies the type of conditions that can be used for Icon sets + + + + + Greater than condition is used [>]. + + + + + Greater Than or Equal to condition is used [>=]. + + + + + Represents a data bar conditional formatting rule. Applying a data bar to a + range helps you see the value of a cell relative to other cells. + + + + + Represents a data bar conditional formatting rule. Applying a data bar to a + range helps you see the value of a cell relative to other cells. + + + + + Gets a object which specifies how the shortest bar is evaluated + for a data bar conditional format. + + + To customize the longest bar of DataBar we have to set values for property. + + + The shortest bar of DataBar is set by defining the property. To do that we have to set values for , + and Properties. Here for example, we set "30" to property + which sets the shortest bar. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set MinPoint for DataBar + dataBar.MinPoint.Value = "30"; + dataBar.MinPoint.Type = ConditionValueType.Percent; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets a object which specifies how the longest bar is evaluated + for a data bar conditional format. + + + To customize the longest bar of DataBar we have to set values for property. + + + The longest bar of DataBar is set by defining the property. To do that we have to set values for , + and Properties. Here for example, we set "70" to property + which sets the longest bar. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set MaxPoint for DataBar + dataBar.MaxPoint.Value = "70"; + dataBar.MaxPoint.Type = ConditionValueType.Percent; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the color of the bars in a data bar conditional format. + + + To customize the border color of the DataBar we can use property. + + + The default color of the DataBar is (99, 142, 198) in RGB representation. This can be customized usig property. + Here in our example we change the BarColor to Red. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set Bar color for DataBar + dataBar.BarColor = System.Drawing.Color.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value that specifies the length of the longest + data bar as a percentage of cell width. + + + To set minimum length of the DataBar refer property. + + + By default the DataBar's and are set to 100 and 0 respectively. This allows the DataBar + to begin from the starting position zero to the entire cell width. We can customize the appearance of DataBars by changing these two + properties. Here for example, we set the property's value to 80. This sets the DataBars maximum lenght to 80 percent. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set maximum percentage. + dataBar.PercentMax = 80; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a value that specifies the length of the shortest + data bar as a percentage of cell width. + + To set maximum length of the DataBar refer property. + + By default the DataBar's and are set to 100 and 0 respectively. This allows the DataBar + to begin from the starting position zero to the entire cell width. We can customize the appearance of DataBars by changing these two + properties. Here for example, we set the property's value to 50. This sets the DataBar's shortest lenght to 50 percent. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set minumum percentage. + dataBar.PercentMin = 50; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value that specifies if the value in the cell should be displayed or not. Default value is true. + + + When only graphical representation is enough then we can make use of property to hide the data in the cells. By default + this is set to "True". We can change it to "False" to hide the values in the cells. Here in our example we set the ShowValues property to "False" + to hide the data in the cells. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set ShowValue + dataBar.ShowValue = false; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the axis color of the data bar. + + + is not applied by default, it's applied after we set a color. Here in our example, we set Red to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set BarAxis color for DataBar. + dataBar.BarAxisColor = System.Drawing.Color.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the border color of the data bar. + + + We can change the color applied to the DataBar also, to change that use property. + + + There will be no borders applied to ColorBars initially. If we want we can apply borders to the DataBars present in the cells by using + property. Here in our example, we set BorderColor to Yellow. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set Border color for DataBar + dataBar.BorderColor = System.Drawing.Color.Yellow; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets a Boolean value indicating whether the data bar has a border. + + + Setting color to property makes the to return "True". + + + By default there will be no color set to property, So property will return "False". + If we set color to BorderColor property then the HasBorder property will return "True". Here in our example, we check the HasBorder property + before applying Border color and after applying Border color. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Before Applying Border color + Console.WriteLine(dataBar.HasBorder); + + //Set Border color for DataBar + dataBar.BorderColor = System.Drawing.Color.Yellow; + + //After Applying Border color + Console.WriteLine(dataBar.HasBorder); + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + Console.Read(); + } + // Output in the console will be + // False + // True + + + + + + Gets or sets a Boolean value indicating whether the data bar has a gradient fill. + + + To know more about conditional formatting type refer this link. + + + is set to "True" by default to provide a rich formatting look to DataBars. To make the DataBars look with plain + unformatted color just like the color fill of cells, we can set this property to "False". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set Gradient fill to false. + dataBar.HasGradientFill = false; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the direction of the data bar. + + + The position of the DataBar will be by default. This can be changed to + or . In our example we set the direction of the DataBar to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set Bar Direction + dataBar.DataBarDirection = DataBarDirection.rightToLeft; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the negative border color of the data bar. + + + To change fill color and border color of DataBars use and properties. + + + There will be no borders applied to ColorBars initially. Like property used to set border color for positive values + in the cells property is used to set border color for negative values in the cells. + Here in our example, we set NegativeBorderColor to Yellow. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = -20; + worksheet["A4"].Number = -30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = -50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = -70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = -90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set NegativeBorder color for DataBar + dataBar.NegativeBorderColor = System.Drawing.Color.Yellow; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the negative fill color of the data bar. + This element MUST exist if and only if negativeBarColorSameAsPositive equals "false". + + + To customize the border color and fill color of the DataBar we can use and properties. + + + To customize color for DataBar which has negative values in the cells, + we have to set color for and properties. Here in our example, to show Databar + for negative values we are setting red color for property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set NegativeBar color for DataBar + dataBar.NegativeFillColor = System.Drawing.Color.Red; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the axis position for the data bar. + + + The position of the DataBar Axis is based on the values present in the cells, It's by default. + If the cells contain positve and negative values then the Axis position will be cell's middle position. If the cells contain either positive or + negative values then the DataBar's axis will be based on the values. Though we have only positive elements loaded, Here we set DataBar axis + to . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "DataBar"; + worksheet["A2"].Number = 10; + worksheet["A3"].Number = 20; + worksheet["A4"].Number = 30; + worksheet["A5"].Number = 40; + worksheet["A6"].Number = 50; + worksheet["A7"].Number = 60; + worksheet["A8"].Number = 70; + worksheet["A9"].Number = 80; + worksheet["A10"].Number = 90; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as DataBar. + format.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = format.DataBar; + + //Set Bar Axis Position. + dataBar.DataBarAxisPosition = DataBarAxisPosition.middle; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Default data bar color. + + + + + Default axis position of data bar + + + + + Default data bar direction + + + + + Default data bar negative fill color. + + + + + Default data bar axis color. + + + + + A ConditionValue object which specifies how the shortest bar is evaluated + for a data bar conditional format. + + + + + A ConditionValue object which specifies how the longest bar is evaluated + for a data bar conditional format. + + + + + The color of the bars in a data bar conditional format. + + + + + Returns or sets a Boolean value that specifies if the extension list is parsed + + + + + A value that specifies the length of the longest + data bar as a percentage of cell width. + + + + + A value that specifies the length of the shortest + data bar as a percentage of cell width. + + + + + Returns or sets a Boolean value that specifies if the value in the cell + is displayed if the data bar conditional format is applied to the range. + + + + + Represents the axis color of the data bar. + + + + + Represents the border color of the data bar. + + + + + Represents the negative border color of the data bar. + + + + + Represents the negative fill color of the data bar. + + + + + Represents whether the data bar has a border. + + + + + Represents the direction of the data bar. + + + + + Represents whether the data bar has a gradient fill. + + + + + Represents whether the data bar has a negative bar color + that is different from the positive bar color. + + + + + Represents whether the data bar has a negative border color + that is different from the positive border color. + + + + + Represents the axis position for the data bar + + + + + Represents whether the data bar has extension list or not + + + + + Represents the GUID for the data bar extension list + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Serves as a hash function for a particular type. GetHashCode() is suitable + for use in hashing algorithms and data structures like a hash table. + + A hash code for the current object. + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + Compares two instances of the DataBarImpl. + + First object to compare. + Second object to compare. + True if objects are equal. + + + + Checks whether objects are different. + + First object to compare. + Second object to compare. + True if objects are not equal. + + + + Returns a ConditionValue object which specifies how the shortest bar is evaluated + for a data bar conditional format. + + + + + Returns a ConditionValue object which specifies how the longest bar is evaluated + for a data bar conditional format. + + + + + Returns or sets a value which specifies the extension list is parsed otherwise + it set false as default. + + + + + Gets/sets the color of the bars in a data bar conditional format. + + + + + Returns or sets a value that specifies the length of the longest + data bar as a percentage of cell width. + + + + + Returns or sets a value that specifies the length of the shortest + data bar as a percentage of cell width. + + + + + Returns or sets a Boolean value that specifies if the value in the cell + is displayed if the data bar conditional format is applied to the range. + + + + + Gets or sets the axis color of the data bar. + This element MUST exist if and only if axisPosition does not equal "none". + + + + + Gets or sets the border color of the data bar. + This element MUST exist if and only if border equals "true". + + + + + Gets or sets the negative border color of the data bar. + This element MUST exist if and only if negativeBarBorderColorSameAsPositive equals "false" and border equals "true". + + + + + Gest or sests the negative fill color of the data bar. + This element MUST exist if and only if negativeBarColorSameAsPositive equals "false". + + + + + Gets whether the data bar has a border + + + + + Gets or sets the direction of the data bar. + + + + + Gets or sets whether the data bar has a gradient fill. + + + + + Represents whether the data bar has a negative bar color + that is different from the positive bar color. + + + + + Represents whether the data bar has a negative border color + that is different from the positive border color. + + + + + Gets or sets the axis position for the data bar + + + + + Gets or sets the value whether the data bar has extension list or not + + + + + Represents a wrapper over data bar conditional formatting rule. Applying + a data bar to a range helps you see the value of a cell relative to other cells. + + + + + Wrapped data bar object. + + + + + Parent conditional format wrapper. + + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Initializes new instance of the wrapper. + + Data bar object to wrap. + Parent conditional format wrapper. + + + + Returns a ConditionValue object which specifies how the shortest bar is evaluated + for a data bar conditional format. + + + + + Returns a ConditionValue object which specifies how the longest bar is evaluated + for a data bar conditional format. + + + + + Gets/sets the color of the bars in a data bar conditional format. + + + + + Returns or sets a value that specifies the length of the longest + data bar as a percentage of cell width. + + + + + Returns or sets a value that specifies the length of the shortest + data bar as a percentage of cell width. + + + + + Returns or sets a Boolean value that specifies if the value in the cell + is displayed if the data bar conditional format is applied to the range. + + + + + Gets or sets the axis color of the data bar. + This element MUST exist if and only if axisPosition does not equal "none". + + + + + Gets or sets the border color of the data bar. + This element MUST exist if and only if border equals "true". + + + + + Gets whether the data bar has a border + + + + + Gets or sets whether the data bar has a gradient fill. + + + + + Gets or sets the direction of the data bar. + + + + + Gets or sets the negative border color of the data bar. + This element MUST exist if and only if negativeBarBorderColorSameAsPositive equals "false" and border equals "true". + + + + + Gest or sests the negative fill color of the data bar. + This element MUST exist if and only if negativeBarColorSameAsPositive equals "false". + + + + + Gets or sets the axis position for the data bar + + + + + Represents data validation for a worksheet range. + + + + + Maximum possible length of the string. + + + + + Number of days that are incorrectly displayed by MS Excel. + + + + + + + + + + Added to lock a object in multi threading. + + + + + + + + + + + + + + + + + + + + Initializes a new instance of class with specified parent value. + + Parent object for the DataValidation. + + + + Initializes a new instance of class with specified parent and DVRecord value. + + Parent object for the DataValidation. + Base DVRecord. + + + + Adds range to the collection with specified data validation. + + Data validation to add. + + + + Adds range to the collection with specified range. + + Range to add. + + + + Adds range to the collection with specified cell address. + + Cell range address. + + + + Adds range to the collection with specified cell address while parsing. + + Cell range address. + + + + Adds range to the collection with specified cell range. + + Cell range to add. + + + + Removes range from collection with specified range. + + Range to remove. + + + + Removes ranges from collection with specified array of rectangles. + + Ranges to remove. + + + + + + + + + + + + + + + Converts DateTime value into tokens array. + + Value to convert. + Converted array. + + + + Tries to convert array of tokens into DateTime value. + + Tokens to convert. + Converted value or DateTime.MinValue if conversion wasn't successful. + + + + Converts formula string to Ptg array. + + Represents formula value. + Object used for formula parsing. + Returns ptg array. + + + + Parses the string formula. + + Represents formula value. + Represents the work sheet. + Object used for formula parsing. + Row value. + Column value. + Returns ptg array. + + + + Register and unregister the function with specified RefNPtg formula type. + + indicates whether the function is RefNPtg supported. + + + + Sets first and second formula values. + + Value to set. + Formula util. + True - first formula, false - second formula. + + + + Sets first and second formula values in Xml Parser + + Value to set. + Formula util. + Cell Range Address + True - first formula, false - second formula. + + + + Defines whether Ptg array represents zero value. + + Parsed formula Ptg array. + True if parsed formula represents zero value, otherwise false. + + + + Updates first formula string based on the formula tokens. + + + + + Updates second formula string based on the formula tokens. + + + + + Gets row and column indexes of the first cell. + + + + + + + Reparses the string formula. + + + + + Returns data validation of the first or second formula's string value. + + Object used for formula parsing. + Is first formula. + First or second formula's string value. + + + + Returns data validation of the first or second formula's string value in R1C1 format. + + Object used for formula parsing. + Is first formula. + First or second formula's string value. + + + + Saves record into specified OffsetArrayList. + + + OffsetArrayList that will receive all the data validation records. + + + When records is null + + + + + Creates a copy of current instance. + + Parent object. + Returns just cloned object. + + + + Sets parent collection object. + + Parent object. + + + + Indicates whether this object contains data validation settings for cell with specified index. + + Cell index to search. + True if this object contains data validation settings for cell with specified index. + + + + Updates indexes to named ranges with specified array of int value. + + New indexes. + + + + Updates indexes to named ranges with specified dictionary. + + New indexes. + + + + This should be called before several updates to the object. + + + Invoking this method improves the performance for large block of Data Validation. + + + + + This method should be called after several updates to the object. + + + Invoking this method improves the performance for large block of Data Validation. + + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Checks whether specified value is inside requested limit. + + Property name. + Property value. + Length limit + + + + Parent workbook. + + + + + Parent worksheet. + + + + + Returns internal CFRecord(CF-Conditional Format). Read-only. + + + + + Gets or sets parent data validation collection. + + + + + Gets ranges of the data validation. + + + + + Gets number of required shapes objects. + + + + + Application object for this object. + + + + + Parent object for this object. + + + + + Gets or sets the title of the prompt box. + + + + + Gets or sets the text in the prompt box. + + + + + Gets or sets the title of the error dialog. + + + + + Gets or sets the error message in the error dialog . + + + + + Gets or sets the value or expression associated with the data validation. + + + + + Gets or sets the first formula's DateTime value. + + + + + Gets or sets the value or expression associated with the second part of the data validation. + + + + + Gets or sets the value associated with the choice part of the data validation. + + + + + Gets or sets second formula's DateTime value. + + + + + Gets or sets the data type validation for a range. + + + + + Gets or sets the comparison operation to perform. + + + + + True if formula contains list of values. otherwise False. + + + + + True if empty values are permitted by the range data validation. otherwise False. + + + + + True if the drop down arrow is invisible. otherwise False. + + + + + True if prompt box is shown. otherwise False. Default value is True. + + + + + True if error dialog is shown. otherwise False. Default value is True. + + + + + Gets or sets Horizontal position of the prompt box. + + + + + Gets or sets Vertical position of the prompt box. + + + + + True if prompt box is visible. otherwise False. + + + + + True if prompt box position is fixed. otherwise False. + + + + + Gets or sets the type of error. + + + + + Gets or sets Array of possible values. + + + This property should be used when the values in the Data Validation list are entered manually. + + + + + Gets or sets the Range of possible values. + + + + + + + + + + + + + + + Gets or sets the value or expression associated with the choice part of the data validation. + + + + + Represents error indicator. + + + + + + + + + + Maximum number of rectangles after split. + + + + + Cell ranges list. + + + + + Default constructor. + + + + + Creates new instance of current class. + + Cell ranges list. + + + + Indicates whether collection contains all specified ranges. + + Ranges to check. + True if collection contains all specified ranges. + + + + Indicates whether collection contains all specified ranges. + + Ranges to check. + Start index in the internal ranges collection to search from. + True if collection contains all specified ranges. + + + + Indicates whether collection contains all specified ranges. + + Ranges to check. + True if collection contains all specified ranges. + + + + Indicates whether collection contains all specified ranges. + + Ranges to check. + Start index in the internal ranges collection to search from. + True if collection contains all specified ranges. + + + + Indicates whether collection contains all specified ranges. + + Ranges to check. + True if collection contains all specified ranges. + + + + Indicates whether collection contains all specified ranges. + + Ranges to check. + Start index in the internal ranges collection to search from. + True if collection contains all specified ranges. + + + + Indicates whether collection contains all specified ranges. + + Ranges to check. + Start index in the internal ranges collection to search from. + True if collection contains all specified ranges. + + + + Indicates whether collection contains all specified ranges. + + Ranges to check. + Start index in the internal ranges collection to search from. + True if collection contains all specified ranges. + + + + Indicates whether collection contains specified range. + + Range to check. + True if collection contains specified range. + + + + Indicates whether collection contains specified range. + + Range to check. + Start index in the internal ranges collection to search from. + True if collection contains specified range. + + + + Returns contains count for specified range. + + Range to check. + Contains count + + + + Adds cells from the collection. + + Cells to add to the collection. + + + + Adds cells from the collection. + + Cells to add to the collection. + + + + Adds range to the collection. + + Range to add. + + + + Adds new cell range to the collection. + + Range to add. + + + + Adds new cell range to the collection. + + Range to add. + + + + Clears internal list. + + + + + Gets part of the cells. + + Rectangle to get new collection for. + Indicates whether to remove cells from the collection. + Number of rows to add to each resulting rectangle. + Number of columns to add to each resulting rectangle. + + + + + Checks whether ranges can be merged. + + Range to add to. + Range to add. + True if operation succeeded. + + + + Removes range from the collection of conditional formats. + + Array of ranges to remove. + + + + Removes range from the collection of conditional formats. + + Array of ranges to remove. + + + + Creates copy of the current object. + + Copy of the current object. + + + + Removes rectangle from the collection. + + Rectangle to remove. + Index after last element that should be checked. + + + + Splits rectangle into several parts after remove specified rectangle. + + Rectangle to split. + Rectangle to remove. + List with splitted rectangle. + + + + Optimize storage + + + + + Set maximum length + + + + + + Gets / sets list of the cells. + + + + + Represents IErrorIndicator interface. + + + + + Represents error indicator ignore options. + + + + + Maximum number of error indicators in the single Excel 2003 record. + + + + + Represents hide options. + + + + + Creates new instance of current class. + + Cell range of this error indicator. + Hide option. + + + + Creates new instance of current class. + + Hide option. + + + + Clones current object. + + Returns cloned object. + + + + Adds cells range list from another error indicator. + + Error indicator to get cells from. + + + + Represents error indicator hide options. + + + + + Is thrown when range is invalid, i.e. when can't copy / move range into new location. + + + + + Default exception message. + + + + + Initializes a new instance of the class with default error message. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a NULL reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + Is thrown when the data array is larger than it should be. + + + + + Initializes a new instance of the class with an empty error message. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a NULL reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + This exception should be thrown when there are problems with formula parsing. + + + + + Default message format. + + + + + Default constructor. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a NULL reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + + + + + + + + + + Is thrown when user tries to modify read-only data. + + + + + Default message. + + + + + Initializes a new instance of the class with an empty error message. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a NULL reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + Is thrown when data array is smaller than it should be. + + + + + Initializes a new instance of the class with an empty error message. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a NULL reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + This exception should be thrown when unexpected record is met in the stream. + + + + + Default message. + + + + + Message for exception message with record code. + + + + + Initializes a new instance of the class with default error message. + + + + + Initializes a new instance of the class with default error message. + + Record code that was met. + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a NULL reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + Is thrown when some internal data error is found. + + + + + Initializes a new instance of the class with an empty error message. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a NULL reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + Is thrown when biff stream has wrong format. + + + + + Initializes a new instance of the class with an empty error message. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a NULL reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + Thrown when trying to parse an incorrect part of the Biff8 stream. + + + + + Initializes a new instance of the class with an empty error message. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Initializes a new instance of the Exception class with + a specified error message and a reference to the inner + exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + If the innerException parameter is not a NULL reference + (Nothing in Visual Basic), the current exception is raised + in a catch block that handles the inner exception. + + + + + Represents exception, that occurred during parse excel structure from xml stream. + + + + + Represents default error message. + + + + + Initializes a new instance of the class with default error message. + + + + + Initializes a new instance of the class with a specified error message. + + Error message. + + + + Creates new instance of xml reading exception. + + Represents block of xml nodes where occurred exception. + Represents some description. + + + + Summary description for ExternNameImpl. + + + + + Summary description for INameIndexChangedEventProvider. + + + + + Event for Name index changed + + + + + Extern name record with information about this name. + + + + + Index of the extern name in extern names collection. + + + + + Parent extern workbook. + + + + + Represents the refersTo attribute of the definedName tag + + + + + Sheet id + + + + + + + + + + + + + + Searches for all necessary parents. + + + + + + + + + + + Saves class into OffsetArrayList. + + OffsetArrayList that would receive class data. + + + + Creates copy of the current object. + + Parent object for the new object. + Copy of the current object. + + + + Index of the extern name in extern names collection. + + + + + Returns name of this extern name. Read-only. + + + + + Returns index of the parent extern workbook. Read-only. + + + + + Returns internal record that stores all data. Read-only. + + + + + Represents the refersTo attribute of the definedName tag + + + + + + + + + + Describes external workbook. + + + + + Array of all worksheets in this workbook. Key - index, Value - ExternWorksheet. + + + + + Dictionary key - worksheet name, value - corresponding worksheet. + + + + + Array of all extern names in this workbook. + + + + + Corresponding SupBookRecord. + + + + + Book index. + + + + + Indicates whether it is a DdeLink or not. + + + + + Parent workbook. + + + + + Workbook's short name. + + + + + Program id for ole object links. + + + + + Indicates if the workbook is parsed. + + + + + + + + + + + + Initializes internal variables. + + + + + Inserts default worksheet. + + + + + Searches for all necessary parent objects. + + + + + Parses extern workbook. + + Records array that contains workbook data. + Offset to the workbook data. + Offset after reading all necessary data. + + + + Parses extern workbook. + + Reader with workbook data. + Object used to decrypt encrypted records. + + + + Saves extern workbook as biff records. + + OffsetArrayList to serialize into. + + + + Adds extern worksheet. + + Sheet to add. + + + + Returns index of worksheet in this workbook. + + Sheet name to search for. + Index of the worksheet in the workbook; -1 if worksheet was not found. + + + + Save as html + + + + + + Get new index for extern name (to remove duplicated extern names). + + Name index. + Updated name index. + + + + Creates copy of the current extern workbook. + + Parent for the copy of this extern workbook. + Copy of the current extern workbook. + + + + Gets name of the sheet at specified index. + + Index of the desired worksheet. + Name of the sheet. + + + + Initializes ShortName property. + + + + + Gets file name with extension from the path. + + Url to get name from. + File name without extension from the path. + + + + Gets file name without extension from the path. + + Url to get name from. + File name without extension from the path. + + + + Adds new worksheets to the extern workbook. + + Array that contains worksheet names to add. + + + + Adds new worksheets to the extern workbook. + + Array that contains worksheet names to add. + + + + Adds new worksheet to the collection of worksheets. + + Name of the worksheet to add. + Create worksheet. + + + + + + + + + + Adds external name object to the workbook. + + Name of the named range to add. + + + + + + + + + + + This method is called during dispose operation. + + + + + Returns collection of extern names. Read-only. + + + + + Indicates whether this is workbook is used for internal reference. + + + + + Indicates whether the extern workbook is used as ole link + + + + + Number of sheet names (if external references) or + number of sheets in this document (if internal references). + + + + + Encoded URL without sheet name (for external references). + + + + + Gets / sets index of the workbook. + + + + + Returns parent workbook. Read-only. + + + + + Indicates whether this is a DdeLink or not. + + + + + Returns short name of the workbook. Read-only. + + + + + Indicates whether add-in function names are stored + in EXTERNNAME records following this SUPBOOK record. + + + + + Returns worksheets collection sorted by index. Read-only. + + + + + Gets or sets program id for the ole object. + + + + + Indicates if the workbook is parsed. + + + + + Summary description for ExternWorksheetImpl. + + + + + + + + + + List with sheet records. + + + + + Parent workbook. + + + + + Worksheet name. + + + + + Collection with worksheet's cached cell records. + + + + + First used row. + + + + + First used column. + + + + + Last used row. + + + + + Last used column. + + + + + Additional attributes for sheetData tag. + + + + + Represents the slicers in the worksheet. + + + + + Represents the scenarios in the worksheet. + + + + + Represents the threaded comment collection in the worksheet. + + + + + + + + + + + + Parses extern worksheet. + + Array with worksheet records. + Offset to the worksheet records. + Offset after worksheet reading all worksheet records. + + + + Extracts data from CRN record. + + CRN record to parse. + + + + Parses extern worksheet. + + + Object used to decrypt encrypted records. + + + + + + + + + + Serializes row CRN records. + + Record list to put records into. + + + + Serializes single row into set of CRN records. + + + + + + + Creates copy of the object. + + Parent object for the new object. + Created object that is copy of the current object. + + + + This method is called during dispose operation. + + + + + Caches values from specified range. + + Range to cache data from. + + + + Set cell records for current worksheet. + + Parent object for the new object. + + + + Enables the calculation support. + + Enabling this method will initialize objects and retrieves calculated values of formulas in a worksheet. + + + + + Disables the calculation support in this workbook and disposes of the associative objects. + + + + + Returns the formula string if the cell contains a formula, or the value if + the cell cantains anything other than a formula. + + The row of the cell. + The column of the cell. + The formula string or value. + + + + Sets the value of a cell. + + The value to be set. + The row of the cell. + The column of the cell. + + + + Gets cell type from current column. + + Indicates row. + Indicates column. + Indicates is need to indentify formula sub type. + Returns cell type. + + + + Not implemented. + + + + + Raises the event. + + The row of the change. + The column of the change. + The changed value. + + + + Import XML document with specified cell position to the worksheet using file path. + + FilePath of the speciifed xml file. + Row where the data to be imported. + Column where the data to be imported. + + + + Imports XML data into a worksheet at the specified row and column from a given XML data stream. + + Stream data of the xml file. + Row where the data to be imported. + Column where the data to be imported. + The stream should be passed as file stream to bind the xml + + + + + Saves worksheet with specified filename. + + File to save. + + + + Saves worksheet as stream. + + Stream to save. + + + + Saves worksheet with specified filename and .. + + File to save. + Save Options + + + + Saves worksheet as stream with the specified . + + Stream to save. + Save Options + + + + Copies worksheet data to the clipboard. + + + + + Clears worksheet data. Removes all formatting and merges. + + + + + Clears the worksheet data. + + + + + Checks whether the specified cell is initialized or accessed. + + One-based row index of the cell. + One-based column index of the cell. + Value indicating whether the cell was initialized or accessed by the user. + + + + Creates a new instance of the . + + New instance of ranges collection. + + + + Creates a named ranges with the specified named range's value as a name for the specified range. + + Existing named ranged. + Address of the named range to be created. + True if the named range values are vertically placed in the sheet. + This method is used to access the discontinuous ranges. + + + + Create an instance of that can be used for template markers processing. + + Object that can be used for template markers processing. + + + + Returns True if the specified column is visible to end user. + + One-based column index. + True if column is visible; otherwise, False. + + + + Shows the specified column. + + Index at which the column should be hidden. + True - Column is visible; False - hidden. + + + + Hides the specified column. + + One-based column index. + + + + Hides the specified row. + + One-based row index. + + + + Returns True if the specified row is visible to end user. + + One-based row index. + True if row is visible; otherwise, False. + + + + Shows or Hides the specified row. + + Index at which the row should be hidden. + True - Row is visible; False - hidden. + + + + Shows or Hides the specified range. + + Range specifies the particular range to show / hide. + True - Row is visible; False - hidden. + + + + Shows/ Hides the collection of range. + + Ranges specifies the range collection. + True - Row is visible; false - hidden. + + + + Shows or Hides an array of range. + + Ranges specifies the range array. + True - Row is visible; False - hidden. + + + + Inserts an empty row in the specified row index. + + Index at which new row should be inserted. + + + + Inserts an empty rows in the specified row index based on row count. + + Index at which new row should be inserted. + Number of rows to insert. + + + + Inserts an empty row in the specified row index with specified based on row count. + + Index at which new row should be inserted. + Number of rows to insert. + Insert options. + + + + Inserts an empty column for the specified column index. + + Index at which new column should be inserted. + + + + Inserts an empty column in the specified column index based on column count. + + Index at which new column should be inserted. + Number of columns to insert. + + + + Inserts an empty column with default formatting. + + Index at which new column should be inserted. + Number of columns to insert. + Insert options. + + + + Removes specified row (with formulas update). + + One-based row index to remove. + + + + Removes specified row (with formulas update). + + One-based row index to remove. + Number of rows to remove. + + + + Removes the specified column. + + One-based column index. + + + + Removes the specified number of columns from the given index. + + One-based column index. + Number of columns to remove. + + + + Imports an array of objects into a worksheet with specified alignment. + + Array of object. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of string values into a worksheet. + + Array of string value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of integer values into a worksheet. + + Array of int value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of double values into a worksheet. + + Array of double value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of DateTime values into a worksheet. + + Array of datetime value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of objects into a worksheet. + + Array of object. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + Number of imported rows. + + + + Imports data from class objects into a worksheet with specified row and column. + + IEnumerable object with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if class properties names must be imported. + Number of imported rows. + + + + Imports data from class objects into a worksheet with specified row and column along with import data options. + + IEnumerable object with desired data. + Import data options for when importing nested collection data. + Number of imported rows. + + + + Imports data from a DataColumn into a worksheet. + + DataColumn with desired data. + True if column name must be imported. + Row of the first cell where Data Table should be imported. + Column of the first cell where Data Table should be imported. + Number of imported rows. + + + + Imports data from a DataColumn into a worksheet. + + DataColumn with desired data. + True if column name must be imported. + Row of the first cell where Data Table should be imported. + Column of the first cell where Data Table should be imported. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + + + + Imports data from a DataTable into a worksheet with specified row and column. + + DataTable with desired data. + True if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Number of imported rows. + + + + Imports data from a DataTable into a worksheet with the specified row and column along with save option. + + Data Table with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data table must be serialized directly on save. + Number of imported rows. + + + + Imports data from a DataTable into a worksheet with the specified row and column along with save option. + + Data Table with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data table must be serialized directly on save. + TRUE if column names must be imported. + Number of imported rows. + + + + Imports data from a DataTable into a worksheet with specified row and column along with the preserve type. + + DataTable with desired data. + True if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + + + + Imports data from a DataTable into a worksheet with the specified range. + + DataTable with desired data. + True if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + + + + Imports data from a DataTable into a worksheet with specified range along with the specified preserve type. + + DataTable with desired data. + True if column names must be imported. + + First row from where the data should be imported. + + + First column from where the data should be imported. + + Maximum number of rows to import + Maximum number of columns to import + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + + + + Imports data from DataTable into the specified NamedRange of current worksheet. + + Data Table with desired data. + Represents named range. + TRUE if column names must be imported. + Number of imported rows. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Imports data from DataTable into the specified NamedRange of current worksheet with row and column offset. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Data Table with desired data. + Represents named range. + TRUE if column names must also be imported. + Represents row offset into named range to import. + Represents column offset into named range to import. + Number of imported rows. + + + + Imports data from a DataTable into a worksheet with specified range along with the specified namedRange. + + DataTable with desired data. + Represents named range. + TRUE if column names must be imported. + Represents row offset into named range to import. + Represents column offset into named range to import. + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + + + + Imports data from a DataTable into a worksheet with specified range,namedRange along with the specified preserve type. + + DataTable with desired data. + Represents named range. + TRUE if column names must be imported. + Represents row offset into named range to import. + Represents column offset into named range to import. + Maximum number of rows to import. + Maximum number of columns to import. + Indicates whether to preserve column types. + Number of imported rows. + + + + Imports data from DataReader into worksheet from the specified row and column. + + The or object which contains data. + TRUE if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Imports data from DataReader into worksheet from the specified row and column along with save option. + + The or object which contains data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data must be serialized directly on save. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Imports data from DataReader into worksheet from the specified row and column along with the preserve type. + + The or object which contains data. + TRUE if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + + Indicates whether XlsIO should preserve column types from DataReader. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Imports data from DataReader into the specified NamedRange of current worksheet. + + The or object which contains data. + Represents named range. + TRUE if column names must be imported. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Imports data from a DataView into worksheet with the specified row and column. + + DataView with desired data. + TRUE if column names must also be imported. + + Row of the first cell where Data View should be imported. + + + Column of the first cell where Data View should be imported. + + Number of imported rows. + + + + Imports data from a DataView into a worksheet with the specified range and preserve type. + + DataView with desired data. + TRUE if column names must be imported. + + Row of the first cell where DataView should be imported. + + + Column of the first cell where DataView should be imported. + + Indicates whether to preserve column types. + Number of imported rows. + + + + Imports data from a DataView into a worksheet with specified row, column and preserve type. + + Data View with desired data. + TRUE if column names must be imported. + + Row of the first cell where DataView should be imported. + + + Column of the first cell where DataView should be imported. + + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + + + + Imports data from a DataView into a worksheet with specified range and preserve type. + + DataView with desired data. + TRUE if column names must also be imported. + + Row of the first cell where DataView should be imported. + + + Column of the first cell where DataView should be imported. + + Maximum number of rows to import. + Maximum number of columns to import. + Indicates whether XlsIO should try to preserve types in Data Table, i.e. if it is set to False (default) and in Data Table we have in + string column value that contains only numbers, it would be converted to number. + Number of imported rows. + + + + Imports data from MS DataGrid into worksheet. + + DataGrid with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + Imports data from MS DataGrid (web) into worksheet. + + DataGrid with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + Imports data from MS GridView into worksheet. + + GridView with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + Imports data from MS DataGridView into worksheet. + + DataGridView with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + Removes panes from a worksheet. + + + + + Exports worksheet data in the specified row and column into a DataTable. + + Row of the first cell from where DataTable should be exported. + Column of the first cell from where DataTable should be exported. + Maximum number of rows to export. + Maximum number of columns to export. + Export options. + DataTable with worksheet data. + + + + + Exports worksheet data in the specified range into a DataTable. + + Range to export. + Export options. + DataTable with worksheet data. + + + + Exports worksheet data in the specified row and column into a DataTable based on the export Options. + + Range to export. + Export options. + Export data options + + + + + + Exports worksheet data into a DataTable only for pivot engine. + + Range to export. + Export options. + DataTable with worksheet data. + + + + Exports worksheet data in the specified row and column and get as a list of CLR objects. + + Row of the first cell should be exported. + Column of the first cell should be exported. + LastRow is used to find the upto lastRow of data to export. + lastColumn is used to find the upto lastColumn of data to export. + CLR Objects List with worksheet data. + + + + Exports worksheet data in the specified row and column and get as a list of CLR objects.copyran + + Row of the first cell should be exported. + Column of the first cell should be exported. + LastRow is used to find the upto lastRow of data to export. + lastColumn is used to find the upto lastColumn of data to export. + Property names mapping collection. You should give headers as key and properties names as value to the dictionary. + clrObject List with worksheet data. + + + + Protects worksheet's content with password. + + Password to protect with. + + + + Protects current worksheet. + + Represents password to protect. + Represents params to protect. + + + + Unprotects worksheet's content with password. + + Password to unprotect. + + + + Intersects two ranges. + + First range to intersect. + Second range to intersect. + Intersection of two ranges or NULL if there is no range intersection. + + When range1 or range2 is NULL. + + + + + Merges two ranges. + + First range to merge. + Second range to merge. + Merged ranges or NULL if is not able to merge ranges. + + When range1 or range2 is NULL. + + + + + Changes the height of the specified row to achieve the best fit. + + One-based row index. + + + + Changes the width of the specified column to achieve the best fit. + + One-based column index. + + + + Replaces string with the specified another string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + + Replaces string with the specified another string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + + Replaces string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + + + + Replaces string with the specified DateTime value. + + The string to be replaced. + The DateTime to replace all occurrences of oldValue. + + + + Replaces specified string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces specified string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces specified string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces string with the specified datatable value. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Replaces string with the specified datacolumn value. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Removes worksheet from parent worksheet collection. + + + + + Moves worksheet to the specified index. + + New index of the worksheet. + + + + Converts the specified column width from points to pixels. + + Width in points. + Column width in pixels. + + + + Converts the specified column width from pixels to points. + + Width in pixels. + Width in points. + + + + Sets column width for the specified column. + + One-based column index. + Width to set. + + + + Sets column width in pixels for the specified column. + + One-based column index. + Width in pixels to set. + + + + Sets column width in pixels to the given number of columns from the specified column index. + + Start Column index + No of Column to be set width + Value in pixel to set + + + + Sets row height for the specified row. + + One-based row index. + Height to set. + + + + Sets row height in pixels for the specified row. + + One-based row index. + Value in pixels to set. + + + + Sets row height in pixels to the given number of rows from the specified row index. + + Starting row index. + No of Row to be set width. + Value in pixels to set. + + + + Returns the width of the specified column. + + One-based column index. + Width of the specified column. + + + + Returns the width of the specified column in pixels. + + One-based column index. + Width in pixels of the specified column. + + + + Returns the height of the specified row. + + Otherwise it gets the StandardHeight + One-based row index. + + Returns height of the specified row. + Otherwise returns StandardHeight. + + + + + Returns the height of the specified row in pixels. + + Otherwise it gets the StandardHeight in pixels + One-based row index. + + Returns height of the specified row in pixels. + Otherwise returns StandardHeight. + + + + + Returns the first occurrence of the specified string value with the specified . + + Value to search. + Type of value to search. + Returns the first cell with a specified string value, or null if value was not found. + + + + Returns the first occurrence of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search the value. + Returns the first cell with a specified string value and specified find options , or null if value was not found. + + + + Returns the first occurrence of the specified double value with the specified . + + Value to search. + Type of value to search. + Returns the first cell with a specified double value, or null if value was not found. + + + + Returns the first occurrence of the specified bool value. + + Value to search. + Returns the first cell with a specified bool value, or null if value was not found. + + + + Returns the first occurrence of the specified DateTime value. + + Value to search. + Returns the first cell with a specified DateTime value, or null if value was not found. + + + + Returns the first occurrence of the specified TimeSpan value. + + Value to search. + Returns the first cell with a specified TimeSpan value, or null if value was not found. + + + + Returns the first occurrence that starts with the specified string value. + + Value to search. + Type of value to search. + Returns the first occurrence that starts with the specified string value, or null if value was not found. + + + + Returns the first occurrence that starts with the specified string value which ignores the case. + + Value to search. + Type of value to search. + true to ignore case wen comparing this string to the value;otherwise,false + Returns the first occurrence that starts with the specified string value, or null if value was not found. + + + + Returns the first occurrence that ends with the specified string value. + + Value to search. + Type of value to search. + Returns the first occurrence that ends with the specified string value, or null if value was not found. + + + + Returns the first occurrence that ends with the specified string value which ignores the case. + + Value to search. + Type of value to search. + True to ignore case when comparing this string to the value; otherwise, False. + Returns the first occurrence that ends with the specified string value, or null if value was not found. + + + + Returns the cells of the specified string value with the specified . + + Value to search. + Type of value to search. + Returns the cells with a specified string value, or null if value was not found. + + + + Returns the cells of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search. + + Returns the cells with a specified string value and specified find options , or null if value was not found. + + + + + Returns the cells of the specified double value with the specified . + + Value to search. + Type of value to search. + All found cells, or Null if value was not found. + + + + Returns the cells of the specified bool value. + + Value to search. + Returns the cells with a specified bool value, or null if value was not found. + + + + Returns the cells of the specified DateTime value. + + Value to search. + Returns the cells with a specified DateTime value, or null if value was not found. + + + + Returns the cells of the specified TimeSpan value. + + Value to search. + Returns the cells with a specified TimeSpan value, or null if value was not found. + + + + Saves worksheet with specified file name using separator. Used only for CSV files. + + File to save. + Current separator. + + + + Saves worksheet using separator with specified file name and encoding. Used only for CSV files. + + File to save. + Current separator. + Encoding to use. + + + + Save tabsheet using separator. + + Stream to save. + Current separator. + + + + Save tabsheet using separator. + + Stream to save. + Current separator. + Encoding to use. + + + + Sets the default column style for the specified column. + + One-based column index. + Default style. + + + + Sets the default column style for the specified starting and ending column. + + Starting column index. + Ending column index. + Default style. + + + + Sets the default row style for the specified row. + + One-based row index. + Default style. + + + + Sets the default row style for the specified starting and ending row. + + Starting row index. + Ending row index. + Default style. + + + + Returns the default column style for the specified column. + + One-based column index. + Default column style for the specified column or null if style wasn't set. + + + + Returns default row style for the specified row. + + One-based row index. + Default row style for the specified row or null if style wasn't set. + + + + Frees range object. + + Range to remove from internal cache. + + + + Frees range object for the specified row and column. + + One-based row index of the range object to remove from internal cache. + One-based column index of the range object to remove from internal cache. + + + + Sets value for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets number for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets boolean value for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets text for the specified cell. + + One-based row index. + One-based column index. + Text to set. + + + + Sets formula for the specified cell. + + One-based row index. + One-based column index. + Formula to set. + + + + Sets error for the specified cell. + + One-based row index. + One-based column index. + Error to set. + + + + Blanks the specified cell. + + One-based row index. + One-based column index. + + + + Sets formula number value for the specified cell. + + One-based row index. + One-based column index. + Represents formula number value. + + + + Sets formula error value for the specified cell. + + One-based row index. + One-based column index. + Represents formula error value. + + + + Sets formula bool value for the specified cell. + + One-based row index. + One-based column index. + Represents formula bool value. + + + + Sets formula string value for the specified cell. + + One-based row index. + One-based column index. + Represents formula string value. + + + + Returns string value from the specified row and column. + + One-based row index. + One-based column index. + String contained by the cell. + + + + Returns number value from the specified row and column. + + One-based row index. + One-based column index. + Number contained by the cell. + + + + Returns formula value from specified row and column. + + One-based row index. + One-based column index. + Indicates whether R1C1 notation should be used. + Returns formula string. + + + + Returns error value from the specified row and column. + + One-based row index. + One-based column index. + Returns error value or null. + + + + Returns bool value from the specified row and column. + + One-based row index. + One-based column index. + Returns found bool value. If cannot found returns false. + + + + Returns formula bool value from the specified row and column. + + One-based row index. + One-based column index. + True if bool value is found. otherwise False. + + + + Returns formula error value from the specified row and column. + + One-based row index. + One-based column index. + Returns error value or null. + + + + Returns formula number value from the specified row and column. + + One-based row index. + One-based column index. + Number contained by the cell. + + + + Returns formula string value from the specified row and column. + + One-based row index. + One-based column index. + String contained by the cell. + + + + Converts the specified range into image. Default image type is Bitmap. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + + Converts the specified range into image with the specified type. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Type of the image to create. + Output stream. It is ignored if null. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + + Converts the specified range into Metafile. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Metafile EmfType. + Output stream. It is ignored if null. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + + Converts the specified range into image along with Metafile. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Type of the image to create. + Output stream. It is ignored if null. + Metafile EmfType. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported + + + + Filters or copies data from a list based on a criteria range.. + + Whether filter in the place or copy to another place. + The filter range. + The criteria range. + The destination range for the copied rows if ExcelFilterAction is FilterCopy. Otherwise, this argument is ignored. + True to filter unique records; Otherwise filters all the records that meet the criteria. The default value is False. + + + + Calculate all the formulas in worksheet. + + + + + Makes the current sheet the active sheet. Equivalent to clicking the + sheet's tab. + + + + + Selects current tab sheet. + + + + + Unselects current tab sheet. + + + + + Indicates whether th index has formula array + + + + + + + Gets object that is clone of current worksheet in the specified workbook. + + Dictionary with update worksheet names. + New workbook object. + Object that is clone of the current worksheet. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Converts HTML table to Excel cells. + + Specified the HTML file. + Row index + Column index + + + + Converts HTML table to Excel cells. + + Specified the HTML filestream. + Row index + Column index + + + + Converts HTML table to Excel cells. + + Specified the HTML file. + Row index + Column index + Specified the html import options + + + + Converts HTML table to Excel cells. + + Specified the HTML filestream. + Row index + Column index + Specified the html import options + + + + Occurs when the value of a cell changes. + + + + + Event to choose an action while exporting data from Excel to data table. + + + + + Event raised when an unknown function is encountered. + + + + + Gets the index number of the worksheet within the collection of + worksheet. Read-only. + + + + + Gets parent extrnal workbook. + + + + + Gets index of the reference to this worksheet. + + + + + + + + + + Returns the slicers present in the worksheet + + + + + Get the scenarios collection for the current worksheet. + + + + + Get the threaded comments collection for a current worksheet. + + + + + Gets or sets the a object associated with implementation. + + + + + An event raised on the IWorksheet whenever a value changes. + + + + + Gets the auto filters collection in the worksheet. Read-only. + + + + + Gets the used cells in the worksheet. Read-only. + + + + + Gets or sets a value that indicates whether page breaks (both automatic and manual) + on the worksheet are displayed. + + + + + Gets the sparkline groups. + + The sparkline groups. + + + + Gets protected options. Read-only. For sets protection options use "Protect" method. + + + + + Indicates is current sheet is protected. + + + + + Gets or sets the view setting of the worksheet. + + + + + True if objects are protected. Read-only. + + + + + True if the scenarios of the current sheet are protected. Read-only. + + + + + Gets whether the OLE object is present in the worksheet. Read-only. + + + True if this instance is OLE object; otherwise, False. + + + + + Gets all the merged ranges in the worksheet. Read-only. + + + + + Gets a Names collection that represents + the worksheet-specific names (names defined with the "WorksheetName!" + prefix) in the worksheet. Read-only. + + + + + Name that is used by macros to access the workbook items. Read-only. + + + + + Gets a object that contains all the page setup settings + for the specified object. Read-only. + + + + + Gets a Range object that represents a cell or a range of cells in the worksheet. + + + + + Gets a Range object that represents the rows in the specified worksheet. Read-only. + + + + + Gets a Range object that represents all the columns in the specified worksheet. Read-only. + + + + + Gets or sets the standard (default) height of all the rows in the worksheet, + in points. + + + + + Gets or sets the standard (default) height option flag. + + + Which defines that standard (default) row height and book default font height do not match. + + + + + Gets or sets the standard (default) width of all the columns in the + worksheet. + + + + + Gets the worksheet type. Read-only ExcelSheetType. + + + + + Gets a Range object that represents the used range on the + specified worksheet. Read-only. + + + + + Gets or sets the value that represents zoom factor of document. Value must be in range from 10 till 400. + + + + + Gets or sets the position of vertical split in the worksheet. + + + Position of the vertical split (px, 0 = No vertical split): + Unfrozen pane: Width of the left pane(s) (in twips = 1/20 of a point) + Frozen pane: Number of visible columns in left pane(s) + + + + + Gets or sets the position of horizontal split in the worksheet. + + + Position of the horizontal split (by, 0 = No horizontal split): + Unfrozen pane: Height of the top pane(s) (in twips = 1/20 of a point) + Frozen pane: Number of visible rows in top pane(s) + + + + + Gets or sets the first visible row index. + + + + + Gets a collection of OleObjects in the worksheet. + + The OLE objects. + + + + Gets or sets the first visible column index. + + + + + Gets or sets index of the active pane. + + + + + True if zero values to be displayed. otherwise, False. + + + + + True if grid lines are visible. otherwise, False. + + + + + Gets or sets the color of the Grid line in the worksheet. + + + + + True if row and column headers are visible. otherwise, False. + + + + + Gets a that represents the vertical page + breaks on the sheet. Read-only. + + + + + Gets a that represents the horizontal + page breaks in the worksheet. Read-only. + + + + + True if all values in the worksheet are preserved as strings. otherwise, False. + + + + + Indicates if the worksheet is password protected. + + + + + Gets a comments collection in the worksheet. + + + + + Gets or sets cell range by row and column index. Row and column indexes are one-based. + + One-based row index. + One-based column index. + + + + Get cell Range. Row and column indexes are one-based. Read-only. + + First row index. One-based. + First column index. One-based. + Last row index. One-based. + Last column index. One-based. + + + + Gets cell Range. Read-only. + + + + + Gets cell Range with R1C1Notation flag. Read-only. + + + + + Gets a hyperlink collections in the worksheet. Read-only. + + + + + Gets all not empty or accessed cells. Read-only. + + + WARNING: This property creates Range object for each cell in the worksheet + and creates new array each time user calls to it. It can cause huge memory + usage especially if called frequently. + + + + + Gets a collection of custom properties of the worksheet. Read-only. + + + + + Indicates whether all created range objects should be cached or not. + + + + + Defines whether freezed panes are applied. + + + + + Gets split cell range. + + + + + Gets/sets top visible row of the worksheet. + + + + + Gets or sets the left visible column of the worksheet. + + + + + Gets or sets whether used range should include cells with formatting. + + + There are two different algorithms to create UsedRange object: + 1) Default. This property = true. The cell is included into UsedRange, + even data is empty (maybe some formatting + changed, maynot be - cell was accessed and record was created). + 2) This property = false. In this case XlsIO tries to remove empty rows and + columns from all sides to make UsedRange smaller. + + + + + Gets a collection of pivot tables in the worksheet. Read-only. + + + + + Gets a collection of list objects in the worksheet. Read-only. + + + + + + Gets instance of migrant range. Read-only. + + The IMigrantRange interface can also be used to access a single cell + or group of cells and manipulate it. You can prefer IMigrantRange instead of IRange + while writing large amount of data which is an optimal way. + Row and Column index can be changed by using method. + + + + + Gets or Sets Tab color. + + + + + Gets / sets tab color. + + + + + Returns charts collection. Read-only. + + + + + Returns pictures collection. Read-only. + + + + + Returns parent workbook. Read-only. + + + + + Returns shapes collection. Read-only. + + + + + Indicates whether worksheet is displayed right to left. + + + + + Indicates whether tab of this sheet is selected. Read-only. + + + + + Returns index in the parent ITabSheets collection. Read-only. + + + + + Gets / sets name of the tab sheet. + + + + + Control visibility of worksheet to end user. + + + + + Returns collection with all textboxes inside this worksheet. Read-only. + + + + + Returns collection with all checkboxes inside this worksheet. Read-only. + + + + + Returns collection with all OptionButton inside this worksheet. Read-only. + + + + + Returns collection with all comboboxes inside this worksheet. Read-only. + + + + + Return default row height in pixel. + + + + + Gets or sets one-based index of the first row of the worksheet. + + + + + Gets or sets one-based index of the first column of the worksheet. + + + + + Gets or sets one-based index of the last row of the worksheet. + + + + + Gets or sets one-based index of the last column of the worksheet. + + + + + Returns collection of cell records. Read-only. + + + + + Returns parent workbook. Read-only. + + + + + Excel version + + + + + Summary description for FillImpl. + + + + + + + + + + + + + + + + + + + + Gradient fill style. + + + + + Gradient fill variant. + + + + + Gradient fill type. + + + + + Represents whether the dxf has pattern type none + + + + + Prevents user from creating such items without arguments. + + + + + Initializes new instance of the fill. + + Parent extended format. + + + + Initializes new instance of the fill. + + + + + + + + Initializes new instance of the fill. + + Represents pattern. + Represents color. + Represents pattern color. + + + + Determines whether the specified Object is equal to the current Object. + + The Object to compare with the current Object. + true if the specified Object is equal to the current Object; otherwise, false. + + + + Serves as a hash function for a particular type, suitable for use + in hashing algorithms and data structures like a hash table. + + A hash code for the current object. + + + + Creates copy of the current object. + + A copy of the current object. + + + + Returns the color of the interior. The color is specified as + an index value into the current color palette. Read-only. + + + + + Returns the color of the interior pattern as an index into the current + color palette. Read-only. + + + + + Returns fill pattern. Read-only. + + + + + Gets / sets gradient style. + + + + + Gets / sets gradient variant. + + + + + Gets / sets fill type. + + + + + Gets /sets as true is dxf pattern as none + + + + + Contains the font attributes (font name, font size, + color, and so on) for an object. + + + + + Weight of the bold font. + + + + + Weight of the normal font. + + + + + + + + + + Font index which is not present in file. + + + + + Multiplier for small bold font. + + + + + Multiplier for bold font. + + + + + Represents last not default color index. + + + + + Minimum of the font size. + + + + + Maximum of the font size. + + + + + + + + + + Wrapped FontRecord. + + + + + Parent workbook. + + + + + Current position of FontImpl class in the InnerFont Collection. + + + + + Font charset. + + + + + Native font object. + + + + + Color object. + + + + + Font's language. + + + + + Paragraph alignment + + + + + Represents whether RTF has paragraph alignment or not + + + + + Creates font and sets its Application and Parent + properties to specified values. + + Application object for the font. + Parent object for the font. + + + + Reads font from the stream. + + Application object for the font. + Parent object for the font. + Reader with font data. + + + + Creates FontImpl from FontRecord. + + Application object for the font. + Parent object for the font. + Record with font data. + + + + Creates FontImpl from FontRecord. + + Application object for the font. + Parent object for the font. + Record with font data. + + + + Creates font using data from baseFont. + + IFont that will be copied. + + When baseFont is not FontImpl and not FontImplWrapper. + + + + + Creates font based on native font and sets its Application and Parent + properties to specified values. + + Application object for the font. + Parent object for the font. + Native font to create from. + + + + Initializes color object. + + + + + Updates font record after color change. + + + + + Updates color with record's data. + + + + + Updates color with basefont's Color Object. + + + + + Initializes parent objects. + + + + + Reads font from the BiffReader. + + BiffReader that contains font data. + + When reader can't extract records anymore or + if current record in the reader is not FontRecord. + + + + + Saves all range cells into OffsetArrayList. + + Array that will receive font record. + + + + Copies data from this instance to another. + + Font impl that will receive data from this font. + + + + This method should be called after any changes. + Sets Saved property of the parent workbook to false. + + + + + Generates .Net font object corresponding to the current font. + + Generated .Net font. + + + + Generates .Net font object corresponding to the current font. + + Desired font size. + Generated .Net font. + + + + Parses native font. + + Font to parse. + + + + Measures the specified string when drawn with this font. + + String to measure. + String size. + + + + Measures the specified string in special way (as close as possible to MS Excel). + + String to measure. + String size. + + + + + + + + + + + + + + + + + + + + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of the current instance. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of the current instance. + + + + Clones FontImpl. + + Parent object. + Returns cloned object. + + + + Converts size of the font to the twips. + + Size of the font. + Size of the font in twips. + + + + + + + + + + + Updates font indexes in different workbooks. + + Index to update. + Dictionary with new indexes. + Parse options. + Returns new index. + + + + Find and returns the supported font font style by the respective font. + + + + + + + Determines whether the specified Object is equal to the current Object. + + The Object to compare with the current Object. + + True if the specified Object is equal to the current Object; + otherwise, False. + + + + + Serves as a hash function for a particular type, suitable for + use in hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + Compares the current instance with another object of the same type. + + Object to compare with this instance. + + Less than zero - This instance is less than obj. + Zero - This instance is equal to obj. + Greater than zero - This instance is greater than obj. + + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + True if the font is bold. Read/write Boolean. + + + + + Returns or sets the primary color of the object. Read / write ExcelKnownColors. + + + + + Gets / sets font color. Searches for the closest color in + the workbook palette. + + + + + Gets/Sets the Font Scheme + + + + + True if the font style is italic. Read/write Boolean. + + + + + True if the font is an outline font. Read/write Boolean. + + + + + True if the font is a shadow font or if the object has + a shadow. Read/write Boolean. + + + + + Returns or sets the size of the font in points. Read / write Variant. + + + When size is less than 1 or greater than 409. + + + + + True if the font is struck through with a horizontal line. + Read/write Boolean. + + + + + True if the font is formatted as subscript. + False by default. Read/write Boolean. + + + + + True if the font is formatted as superscript; False by default. + Read/write Boolean. + + + + + Returns or sets the type of underline applied to the font. Can + be one of the following ExcelUnderlineStyle constants. + Read/write ExcelUnderline. + + + + + Returns or sets the font name. Read/write string. + + + + + Gets / sets font vertical alignment. + + + + + Indicates whether color is automatically selected. Read-only. + + + + + Gets or sets the baseline value which indicates whether superscript or subscript + + + + + Returns wrapped FontRecord. Read-only. + + + + + Parent workbook. Read-only. + + + + + Font index in the workbook fonts collection. + + + + + Returns workbook graphics. Read-only. + + + + + Gets/sets font charset. + + + + + Gets or sets the family. + + The family. + + + + Returns color object. + + + + + Gets or sets font's language. + + + + + Gets or sets RTF paragraph alignment + + + + + Returns whether RTF text has paragraph alignment or not + + + + + Check whether the font can be disposed + + + + + + + + + + Returns font index. Read-only. + + + + + Returns current font. Read-only. + + + + + Class that is created when user accesses the + font in a multicell range. Redirects all calls + to the fonts of the individual cells. + + + + + Array that contains all cells of the range. + + + + + Create new instance of object. + + Base range. + + + + Create new instance of object. + + Base range. + + + + Generates .Net font object corresponding to the current font. + + Generated .Net font. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Detect whether the cell styles can be applied for the range. + + + + + True if the font is bold. Read/write Boolean. + + + + + Returns or sets the primary color of the object. Read / write ExcelKnownColors. + + + + + Gets / sets font color. If there is at least one free color, + define a new color. If not, search for the closest one in + workbook palette. + + + + + True if the font style is italic. Read/write Boolean. + + + + + True if the font is an outline font. Read/write Boolean. + + + + + True if the font is a shadow font or if the object has + a shadow. Read/write Boolean. + + + + + Returns or sets the size of the font. Read/write Variant. + + + + + True if the font is struck through with a horizontal line. + Read/write Boolean + + + + + True if the font is formatted as subscript. + False by default. Read/write Boolean. + + + + + True if the font is formatted as superscript; False by default. + Read/write Boolean. + + + + + Returns or sets the type of underline applied to the font. Can + be one of the following ExcelUnderlineStyle constants. + Read/write ExcelUnderline. + + + + + Returns or sets the font name. Read/write string. + + + + + Gets / sets font vertical alignment. + + + + + Indicates whether color is automatically selected. Read-only. + + + + + Summary description for FontWrapper. + + + + + Wrapped font. + + + + + Font character set. + + + + + Indicates whether font is read-only. + + + + + Indicates whether raise events. + + + + + Indicates whether wrapped font is accessed directly (without creating + new font in OnBeforeChange, OnAfterChange methods). + + + + + Font color object + + + + + Represents the color format + + + + + Represents the Range + + + + + Creates new font wrapper. + + + + + Creates new font wrapper. + + Font to wrap. + + + + Creates new font wrapper. + + Font to wrap. + Indicates whether wrapper should be read-only. + + Indicates whether to call OnBeforeChange and OnAfterChange when any property changes. + + + + + Generates .Net font object corresponding to the current font. + + Generated .Net font. + + + + Update color object + + + + + Returns copy of current object. + + Parent Workbook. + Parent object. + Dictionary with new indexes. + Clone of FontWraper. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Invokes after change event. + + + + + + True if the font is bold. Read / write Boolean. + + + + + Returns or sets the primary color of the object, as shown in the + following table. Use the RGB function to create a color value. + Read / write Integer. + + + + + Gets / sets font color. Searches for the closest color in + the workbook palette. + + + + + True if the font style is italic. Read / write Boolean. + + + + + True if the font is an outline font. Read / write Boolean. + + + + + True if the font is a shadow font or if the object has + a shadow. Read / write Boolean. + + + + + Returns or sets the size of the font. Read / write Variant. + + + + + True if the font is struck through with a horizontal line. + Read / write Boolean + + + + + Gets or sets the offset value of superscript and subscript + + + + + True if the font is formatted as subscript. + False by default. Read / write Boolean. + + + + + True if the font is formatted as superscript. False by default. + Read/write Boolean + + + + + Returns or sets the type of underline applied to the font. Can + be one of the following ExcelUnderlineStyle constants. + Read / write ExcelUnderline. + + + + + Returns or sets the font name. Read / write string. + + + + + Returns the font character set + + + + + Gets / sets font vertical alignment. + + + + + Indicates whether color is automatically selected. Read-only. + + + + + Application object. + + + + + Parent object. + + + + + Event raised after wrapped font changed. + + + + + Returns font index. Read-only. + + + + + Returns wrapped font. Read-only. + + + + + Indicates whether font is read-only. + + + + + Returns parent workbook. + + + + + Indicates whether wrapped font is accessed directly (without creating + new font in OnBeforeChange, OnAfterChange methods). + + + + + + + + + + Indicates the range. + + + + + Returns index of the wrapped font. Read-only. + + + + + Returns wrapped font. Read-only. + + + + + Represents number format. Responsible for reading, writing, + parsing, applying, checking and other operations with number formats. + + + + + Represents settings of number format. + + + + + Returns format index. Read-only. + + + The following code illustrates how to access the Index of the NumberFormat applied. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format index + style.NumberFormat = "#,##0"; + + //Set number format settings + INumberFormat numberFormat = style.NumberFormatSettings; + + //Get number format index + Console.Write(numberFormat.Index); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //3 + + + + + + Returns format string. Read-only. + + + The following code illustrates how to access the FormatString of the NumberFormat applied. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format index + style.NumberFormat = "#,##0.00"; + + //Set number format settings + INumberFormat numberFormat = style.NumberFormatSettings; + + //Check number format string + Console.Write(numberFormat.FormatString); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //#,##0.00 + + + + + + Returns format type of the first section of this number format. Read-only. + + + The following code illustrates how to access the FormatType of the NumberFormat applied. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format index + style.NumberFormat = "#,##0.00"; + + //Set number format settings + INumberFormat numberFormat = style.NumberFormatSettings; + + //Check number format type + Console.Write(numberFormat.FormatType); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Number + + + + + + Indicates whether the first section of this number format contains fraction sign. Read-only. + + + The following code illustrates how to access IsFraction property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format index + style.NumberFormat = "# ?/?"; + + //Set number format settings + INumberFormat numberFormat = style.NumberFormatSettings; + + //Check number format is fraction + Console.Write(numberFormat.IsFraction); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Indicates whether first section of this number format contains E/E+ + or E- signs in format string. Read-only. + + + The following code illustrates how to access IsScientific property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format index + style.NumberFormat = "#.##E+##"; + + //Set number format settings + INumberFormat numberFormat = style.NumberFormatSettings; + + //Get number format index + Console.Write(numberFormat.IsScientific); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Indicates whether thousand separator is present in the first section + of this number format. Read-only. + + + The following code illustrates how to access IsThousandOperator property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format index + style.NumberFormat = "#,##0"; + + //Set number format settings + INumberFormat numberFormat = style.NumberFormatSettings; + + //Check number format thousand separator + Console.Write(numberFormat.IsThousandSeparator); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Number of digits after "." sign in the first section of this number format. Read-only. + + + The following code illustrates how to access DecimalPlaces property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["C2"].Value = "1200.40"; + + //Add style + IStyle style = workbook.Styles.Add("CustomStyle"); + + //Set style + worksheet["C2"].CellStyle = style; + + //Set number format index + style.NumberFormat = "#,##0.00"; + + //Set number format settings + INumberFormat numberFormat = style.NumberFormatSettings; + + //Check number format decimal places + Console.Write(numberFormat.DecimalPlaces); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Format record that contains low-level information about format. + + + + + Parsed format. + + + + + Reference to the format parser. + + + + + Reference to the format applier. + + + + + Dictionary to store the Alternate formats + + + + + Initializes new instance of the format. + + Application object for the new format. + Parent object for the new format. + + + + Initializes new instance of the format. + + Application object for the new format. + Parent object for the new format. + Format record that contains low-level information about format. + + + + Initializes new instance of the format. + + Application object for the new format. + Parent object for the new format. + Format index. + Format string. + + + + Searches for all necessary parent objects. + + + + + indicates if the number format is used in the workbook. + + + + + Serializes format into OffsetArrayList. + + OffsetArrayList to serialize into. + + + + Checks whether format is already parsed, if it isn't than parses it. + + + + + Returns the alternate format for the specified format. + + Alternate format for the specified format. + + + + Returns format type for a specified value. + + Value to get format type for. + Format type for the specified value. + + + + Returns format type for a specified value. + + Value to get format type for. + Format type for the specified value. + + + + Applies format to the value. + + Value to apply format to. + String representation of the value according to the number format. + + + + Applies format to the value. + + Value to apply format to. + Indicates whether to show hidden symbols. + String representation of the value according to the number format. + + + + Applies format to the value + + Value to apply format to. + Indicates whether to show hidden symbols + Current cell + String representation of the value according to the number format + + + + Applies CF format to the value. + + Value to apply format to. + Cell Range. + Number format. + String representation of the value according to the CF number format. + + + + Applies format to the value. + + Value to apply format to. + String representation of the value according to the number format. + + + + Applies format to the value. + + Value to apply format to. + Indicates whether to show hidden symbols. + String representation of the value according to the number format. + + + + Indicate whether the format string in time format + + + + + Indicate whether the format string in date format + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Get the Alternate Format + + + + + Returns format index. Read-only. + + + + + Returns format string. Read-only. + + + + + Returns format record that contains low-level information about format. Read-only. + + + + + Returns format type of the first section of this number format. Read-only. + + + + + Indicates whether the first section of this number format contains fraction sign. Read-only. + + + + + Indicates whether first section of this number format contains E/E+ + or E- signs in format string. Read-only. + + + + + Indicates whether thousand separator is present in the first section + of this number format. Read-only. + + + + + Number of digits after "." sign in the first section of this number format. Read-only. + + + + + Gets the number of digits after scientific(E) sign. Read-only. + + + + + indicates if the number format is used in the workbook. + + + + + Parses formula tokens extracted by FormulaTokenizer and converts them into tokens in RPN form. + + + + + Name of if function in uppercase. + + + + + Options value for tAttr token in the case of space token. + + + + + Data value for tAttr token in the case of space token. + + + + + Default options for ExternName that is used as part of DDE link. + + + + + Represents the Abosulte cell references. + + + + + Regex pattern to catch space before +(any digits) + + + + + Replacement string to replace the pattern without space before +(any digits) + + + + + Default regular expression options. + + + + + Converts string into set of tokens. + + + + + Array with tokens in RPN order. + + + + + + + + + + collection of token spaces before operands. + + + + + Parent workbook. + + + + + Indicates whether the lambda function have the last argument or not. + + + + + Collection of function in user defined formulas. + + + + + Initializes new instance of the formula parser. + + Parent workbook object. + + + + Sets formula separators. + + Operand separator to set. + Array rows separator to set. + + + + Parses formula string. + + String to parse. + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + + + + Parses expression. + + Subexpression priority. + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + + + + + Creates binary operation. + + Type of the token to create. + Space token that can be added before operation if not null, + becomes null after adding to the tokens array. + Created operation. + + + + Parses spaces and creates required tokens. + + + + + + Space token if any was created. + + + + Creates spaces token. + + Number of spaces. + Created space token. + + + + + + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + + + + + Updates parsing options if necessary. + + Options to update. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Identifier to parse. + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + Created token for the specified identifier. + + + + Parse the tname1 tokenizer + + strToken contains the + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + Created token for the specified identifier. + arguments cannot be empty. + strToken cannot be null reference. + + + + Tries to get named range object based on the formula string. + + + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Location reference index; -1 means local sheet reference. + + + + + Converts location string into reference. + + Location to convert. + Constant arguments required by some parse methods. + Reference index. + + + + + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + + + + + Creates Excel 2007 function. + + Resulting formula token. + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + True if current string was recognized as formula token. + + + + This function tries to create range (cell or area) based on the formula string and other arguments. + + Identifier string without location part (worksheet, book). + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + Resulting token. + Location reference index; -1 means local sheet reference. + True if formula string was parsed as range. + + + + Checks the values has row and column details and return true if string is in row and column value else false. + + Represents the string to be checked. + Represents the string is in R1C1 Notation. + Represents the row + Represents the column + if name has row and column details returns true else false. + + + + Checks the string has char + + + + + + + Checks the string has digit + + + + + + + Tries to create named range object based on the formula string. + + + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Location reference index; -1 means local sheet reference. + + + + + Creates named range token for external name. + + Location reference index. + Name of the named range to create token for. + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Created token. + + + + Creates named range token for local name. + + Location reference index; -1 means local sheet reference. + Name of the named range to create token for. + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Created token. + + + + Checks if the local name is a table formula. + + Local name + Parserparameters + True if it is Table Formula. + + + + Creates named range token. + + Reference index to the token location. + Name index. + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Created name token. + + + + Creates token for local name. + + Name location. + Token + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + + + + + Checks whether specified location is extern. + + Parent workbook. + Location to check. + True if it is extern location. + + + + Creates function token and adds all argument tokens to the internal token array. + + Id of the function to create. + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + Created function token. + + + + Creates IF function and adds all argument tokens to the internal token array. + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + Space token that must be inserted before IF. + Created function token. + + + + Creates custom functions and adds all argument tokens to the internal token array. + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Constant arguments required by some parse methods. + Created function token. + + + + Evaluates size of the tokens range. + + The first token to measure (included). + The last token to measure (not included). + Arguments required by some parse methods. + Size in bytes of the specified tokens. + + + + Extracts operands from the string. + + Parsing options. + Arguments required by some parse methods. + Parent function id. + + + + + + + + + + + + + Parses error reference. + + + Dictionary with attributes that describes token index that should be used at + special function position ( it can be reference token, value token, or array token ). + + Index of the current argument. + Parsing options. + Parent worksheet. + Reference error Ptg. + + + + Get or set indicates whether the lambda function have the last argument or not. + + + + + + + + + + Gets / sets number format info. + + + + + Contains objects that can be used by some parse methods. + + + + + Instance of the FormulaUtil class - helper class for formula parsing. + + + + + Worksheet that contains cell that is currently parsed. + + + + + + + + + + Indicates whether R1C1 notation should be used. + + + + + Cell row index (it is used when parsing R1C1 and Shared and Array formulas). + + + + + Cell column index (it is used when parsing R1C1 and Shared and Array formulas). + + + + + Workbook that contains cell that is currently parsed. + + + + + Destination excel version. + + + + + Initializes new instance of the parameters. + + Worksheet that contains cell that is currently parsed. + + Indicates whether R1C1 notation should be used. + Cell row index (it is used when parsing R1C1 and Shared and Array formulas). + Cell column index (it is used when parsing R1C1 and Shared and Array formulas). + Instance of the FormulaUtil class - helper class for formula parsing. + Parent workbook. + + + + Converts string into set of tokens. + + + + + Indicates end of formula string. + + + + + Indicates whitespace character. + + + + + Indicates colon character. + + + + + Current character. + + + + + Formula length. + + + + + + + + + + Current formula. + + + + + Start position of the current token. + + + + + Current token TokenType. + + + + + Token type of the previous token. + + + + + Previous character position. + + + + + String builder that contains string representation of the current token. + + + + + Parent workbook. + + + + + Argument separator. + + + + + Number format info. + + + + + Represents whether subtraction is present or not. + + + + + Represents whether the lambda function have last argument or not. + + + + + Represents whether the byrow function or not. + + + + + Default constructor. + + + + + Prepares tokinezer for formula parsing. + + Formula to parse. + + + + To check whether the formula contains LET function. + + string to be checked with formula + return true if it contians the string else returns false + + + + Moves pointer to the next character. + + + + + Moves back to the specified character. + + + + + + Extracts next token from the string. + + + + + Retruns the symbols count inside the quoted string + + formula string to be counted + input symbol + returns the occurences of symbols inside quoted string + + + + + + + + + + + + + + Extracts number token. + + + + + Process '>' character and creates required token. + + + + + Process '<' character and creates required token. + + + + + Appends internal string builder while current character is number. + + + + + Parses identifier, it can be range address, named range of function name. + + + + + Process the text to check r1c1 notation + + text to be processed + processed text + + + + Extracts spaces from the string. + + + + + Parses string token. + + Indicates whether first character is quotation character or not. + + + + Parses error token. + + + + + Extracts string representation of an array token. + + + + + Skips string and adds its value into internal string builder. + + + + + Raises parse exception. + + Exception message. + Inner exception. + + + + Raises parser exception with message that token was unexpected. + + Additional message. + + + + Find the character occurences from a string + + string to be searched + the character to be find + the previous character + the next character + Character Occurences count + + + + Indicates whether subtraction is present or not. + + + + + Returns value of the current token. Read-only. + + + + + Gets / sets argument separator. + + + + + Gets / sets number format info. + + + + + This class provides functionality needed for formula parsing. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Default regular expression options. + + + + + Default index inside named range formula. + + + + + Default reference index. + + + + + Default reference index for array token. + + + + + + + + + + + + + + + + + + + + + + + + + Column of the first cell. + + + + + Column of the second cell. + + + + + Row of the first cell. + + + + + Row of the second cell. + + + + + Worksheet name can be enclosed in this characters. + + + + + Represents the Abosulte cell references. + + + + + Represents the Excel2010 function prefix + + + + + Represents the prefix for the LET functions variable. + + + + + Represents the prefix for the Filter function. + + + + + Name of the sheet name group. + + + + + Name of the book name group. + + + + + Name of the range name group. + + + + + Name of the first row name group. + + + + + Name of the first column name group. + + + + + Name of the path group. + + + + + Name of sheet. + + + + + Default sheet name regular expression. + + + + + + + + + + Array of all open brackets. + + + + + T corresponding close brackets. + + + + + String 'brackets'. + + + + + All known unary operations. + + + + + Plus and minus signs. + + + + + Plus minus signs in sorted storage. + + + + + Gives access to the function name by its id. + + + + + Gives access to the number of parameter needed by the function. + + + + + + Maintains a collection of infinite parameter count function id. + + + + + Provides access to function id by its name. + + + + + Provides access to Dictionary that contains all Reference index + by type of the argument token. + + + + + Provides access to constructor that takes one string argument + by name of the error. + + + + + Dictionary error code to name. + + + + + Dictionary error name to error code. + + + + + Provides access to TokenConstructorAttribute by token code. + This table allows user to rewrite default token classes. + + + + + Represents hash table that get access by token code to PTG. + Key - token code. Value - instance of created PTG. + + + + + Regular expression for checking if specified string is cell reference. + + + + + Regular expression for checking if specified string is cell reference. + + + + + Regular expression for checking if specified string is cell reference. + + + + + Regular expression for checking if specified string is cell range. + + + + + Regular expression for checking if specified string is multiple cell range. + + + + + Regular expression for checking if specified string is full row range. + + + + + Regular expression for checking if specified string is full column range. + + + + + Regular expression for checking if specified string is full row range in R1C1 notation + + + + + Regular expression for checking if specified string is full column range in R1C1 notation. + + + + + Regular expression for checking if specified string is 3D full row range. + + + + + Regular expression for checking if specified string is 3D full column range. + + + + + Regular expression for checking if specified string is cell range in R1C1 notation. + + + + + Regular expression for checking if specified string is cell range in R1C1 notation. + + + + + Regular expression for checking if specified string is cell range in R1C1 notation. + + + + + Regular expression for 3d reference detection. + + + + + Regular expression for 3d reference detection in R1C1 notation. + + + + + Regular expression for 3d cell range detection. + + + + + Regular expression for 3d cell range detection second possible case. + + + + + Regular expression for 3d cell range detection. + + + + + Regular expression for 3d cell range detection second possible case. + + + + + Regular expression for add-in function detection. + + + + + Array of functions that need tAttr with HasSemiVolatile = true before them. + + + + + + + + + + + + + + + Represents number format for parsing double value. + + + + + Parent workbook. + + + + + All known operations for invariant culture. + + + + + Operations with priorities. + + + + + All operations sorted by operation string. + Key - operation string, Value - operation priority. + + + + + + + + + + Array row separator. + + + + + Operands separator. + + + + + Formula parser. + + + + + Indicates whether the lambda function have the last argument count or not. + + + + + Static constructor. It does all necessary preparations, + such as preparing all hashtables for functions, errors + and token constructor. + + + + + Initializes new instance of the formula parsing utility. + + Application object. + Parent object. + + + + Initializes new instance of the formula parsing utility. + + Application object. + Parent object. + Number format information. + Argument separator. + Row separator. + + + + Searches for all necessary parent objects. + + + + + Fills operations with default values. + + + + + Fills internal hashtable that permits to construct + token classes by token code. + + + + + Fills all information about known Excel functions. + + + + + Fills all the information about known miss arguments Excel functions + + + + + Fills all information about known Excel functions. + + + + + Fills information about all known error names. + + + + + Add information about all supported errors from specified type. + + Type that supports some errors. + + + + + + + + + Converts string array into sorted list. + + Array to convert. + Created sorted list. + + + + Converts string to shared formula token array. + + Represents formula string. + Represents first row from cells range. One-based. + Represents first column from cells range. One-based. + Parent worksheet object. + Shared formula tokens. + + + + Converts to shared formula tokens + + + + + + + + + + Converts string to token array. + + + String that should be parsed into Ptg array. + + Token array representing specified string. + + When any error occurs in the specified formula string. + + + + + Converts string to token array. Used when copying worksheets into another workbook. + + + String that should be parsed into Ptg array. + + Parent sheet. + + Dictionary that contains old name of the worksheet as + a key and new name of the worksheet as value. + + Token array representing specified string. + + When any error occurs in the specified formula string. + + + + + Converts string to token array. Used when copying worksheets into another workbook. + + + String that should be parsed into Ptg array. + + Parent sheet. + + Dictionary that contains old name of the worksheet as + a key and new name of the worksheet as value. + + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + Indicates whether R1C1 notation is used. + Token array representing specified string. + + When any error occurs in the specified formula string. + + + + + Converts string to token array. + + String that should be parsed into Ptg array. + Worksheet that contains formula. + Token indexes, indicates whether to use reference token, value token, or array token. + Index in string. + Hash table with worksheet names. + Parse options. + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + Parsed formula. + + When formula string is empty or if there is another error in formula string + or when string consists only of %. + + + + + Returns operand that is placed before unary operation. + + + Formula string that contains operand and unary operation. + + + Index of unary operation in the string. + + Left operand of the specified unary operation. + + + + Returns operand that is placed after unary operation. + + + Formula string that contains operation and operand. + + Index of the operation. + Right operand of the specified unary operation. + + + + Returns right operand for binary operation. + + Formula string. + Index of first operand character. + String with operation. + Right operand for the specified operation. + + + + Extracts function operand from formula string. + + Formula string to extract operand from. + First character of the operand. + Extracted operand. + + + + This method converts FormulaRecord to its string representation. + + FormulaRecord that will be parsed. + String representation of the specified formula. + + + + This method converts FormulaRecord to its string representation. + + FormulaRecord that will be parsed. + Indicates whether formula must be parsed using R1C1 notation. + String representation of the specified formula. + + + + Parses shared formula. + + Formula to parse. + String representation of the specified formula. + + + + Parses shared formula. + + Formula to parse. + Zero-based row index of the cell with shared formula. + Zero-based column index of the cell with shared formula. + String representation of the specified formula. + + + + Parses shared formula. + + Formula to parse. + Zero-based row index of the cell with shared formula. + Zero-based column index of the cell with shared formula. + Indicates whether formula must be parsed using R1C1 notation. + String representation of the specified formula. + + + + Converts array of tokens into string. + + Tokens to convert. + String representation of the specified tokens array. + + + + This method converts array of Ptg to its string representation. + + Ptg array that will be parsed. + First row to convert. + First column to convert. + Indicates whether R1C1 notation must be used. + String representation of the specified Ptg array. + + + + This method converts array of Ptg to its string representation. + + Ptg array that will be parsed. + First row to convert. + First column to convert. + Indicates whether R1C1 notation must be used. + Represents current number info, can be null. + String representation of the specified Ptg array. + + + + This method converts array of Ptg to its string representation. + + Ptg array that will be parsed. + First row to convert. + First column to convert. + Indicates whether R1C1 notation must be used. + Represents current number info, can be null. + Indicates whether to remove worksheet name from 3d tokens. + String representation of the specified Ptg array. + + + + Checks the formula version. + + The PTGS. + The result. + + + + + Splits array. Each string in result represents single row of the array. + + Array string to split. + Separator + Splitted array. + + + + Updates index of the name. + + Token to update. + Array with new named ranges indexes. + + + + Updates index of the name. + + Token to update. + Dictionary with new named ranges indexes. + + + + Updates name indexes. + + Parsed expression to update. + Dictionary with new indexes. + True if at least one of references to named ranges was updated. + + + + Updates name indexes. + + Parsed expression to update. + Array with new indexes. + True if at least one of references to named ranges was updated. + + + + Sets separators. + + Operand separator to set. + Array rows separator to set. + + + + Replaces keys in the list. + + List to replace in. + Old keys to replace. + New keys to replace. + + + + Marks used references. + + Tokens to get used references from. + Array to mark used references in. + + + + Updates reference indexes. + + Tokens to get used references from. + Array with updated indexes. + + + + Converts string that represents constant value to Ptg. + + String that represents constant. + Parent worksheet. + Dictionary with worksheet names + Parse options. + Token corresponding to the specified string. + + + + Converts string that represents constant value to Ptg. + + String that contains constant. + Parent worksheet. + + Dictionary with attributes that describes token index + that should be used at special function position. + + Parameter position. + + + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + Newly created token. + + When specified string is not constant formula token. + + + + + Normalizes sheet name. + + + + + + + Converts byte array to Ptg array. + + Object that provides access to the data. + + Number of bytes to parse (there can be array data + after of all tokens). + + Excel version that was used to infill data provider. + + String representation of the specified byte array that contains tokens. + + + + + Checked whether the record is valid or not + + + + + Converts byte array to Ptg array. + + Object that provides access to the data. + Start position in data array to parse from. + + Number of bytes to parse (there can be array data + after of all tokens). + + + Receives offset of first byte after all tokens' data. + + Excel version that was used to infill data provider. + Converted Ptg array. + + + + Converts token array to corresponding byte array. + + Ptg array that will be converted to byte array. + Excel version that should be used to infill data. + Converted byte array + + + + Converts token array to corresponding byte array. + + Ptg array that will be converted to byte array. + + Length of formula without tArray data if there is tArray in Tokens. + + Excel version that should be used to infill data. + Converted byte array. + + + + Returns left operand for binary operation. + + Formula string. + Index of operation. + Left operand for specified operation. + + + + Searches for position of corresponding bracket. + + String to search. + Position of bracket( "(){}" ). + + Position of corresponding bracket if there is one, otherwise -1. + + + When specified position does not contain bracket. + + + + + Returns operand of the operation. + + + Formula string that contains operation and operands. + + Index of the operation. + Delimiters between operands. + + Search direction (TRUE -right to left, + FALSE - left to right). + + Operand defined by function parameters. + + When a open bracket is found without a corresponding closing bracket. + + + + + Registers function in internal collections. + + + Name of the function that must be registered. + + + Index of the function that must be registered. + + + Array of ReferenceIndexAttribute that contains information + about proper token index. + + + + + Registers function in internal collections. + + + Name of the function that must be registered. + + + Index of the function that must be registered. + + + Array of ReferenceIndexAttribute that contains information + about proper token index. + + + Number of parameters in the function, + -1, for variable parameters. + + + + + Registers function in internal collections. + + + Name of the function that must be registered. + + + Index of the function that must be registered. + + + Number of parameter in the function, + -1, for variable parameters number. + + + + + Registers function in internal collections. + + + Name of the function that must be registered. + + + Index of the function that must be registered. + + + + + This method raises the FormulaEvaluation event. + + Range that caused FormulaEvaluation event. + Object that contains event arguments. + + + + Registers token class (can be user defined). + + Token class that will be registered. + + When class is not derived from Ptg. + + + When parameter type is NULL. + + + + + Registers new function alias. + + New alias name. + Function index. + + + + Updates index of the name. + + Ptg to Update + Old index. + New index. + + + + Searches for the specified object and returns the index of + the first occurrence within the entire one-dimensional array. + + Array to search. + Value to locate in the array. + + The index of the first occurrence of value within the entire array, if found; + otherwise, -1. + + + + Searches for the specified object and returns the index of + the first occurrence within the entire one-dimensional array. + + Array to search. + Value to locate in the array. + + The index of the first occurrence of value within the entire array, if found; + otherwise, -1. + + + + Searches for the specified object and returns the index of + the first occurrence within the entire one-dimensional array. + + Array to search. + Value to locate in the array. + + The index of the first occurrence of value within the entire array, if found; + otherwise, -1. + + + + Searches for the specified object and returns the index of + the first occurrence within the entire one-dimensional array. + + Array to search. + Value to locate in the array. + + The index of the first occurrence of value within the entire array, if found; + otherwise, -1. + + + + Searches for the specified object and returns the index of + the first occurrence within the entire one-dimensional array. + + String to search in. + Start index. + Break strings. + Position of one of the break strings. + + + + Searches for the specified object and returns the index of + the first occurrence within the entire one-dimensional array. + + String to search in. + Start index. + Key is break string. + Position of one of the break strings. + + + + Returns lower bound of strings that have specified first character. + + Sorted array of string to search. + Desired first character. + + Lower bound of the strings that have chFirst as the first character + if there are such strings; otherwise -1. + + + + Returns lower bound of strings that have specified first character. + + Sorted array of string to search. + Desired first character. + + Lower bound of the strings that have chFirst as the first character + if there are such strings; otherwise -1. + + + + Returns lower bound of strings that have specified first character. + + Sorted array of string to search. + Desired first character. + + Lower bound of the strings that have chFirst as the first character + if there are such strings; otherwise -1. + + + + Converts SharedFormula tokens into regular formula tokens. + + Shared formula to convert. + Parent workbook. + Row of the destination formula. + Column of the destination formula. + Converted token array. + + + + Updates formula after move / copy operation. + + Tokens to update. + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + One-based row index. + One-based column index. + Updated tokens array. + + + + Updates formula after move / copy operation. + + Tokens to update. + Value to add to the row index. + Value to add to the column index. + Updated tokens array. + + + + Change the Name reference Index + + The source workbook. + The destination workbook. + Cell formula array. + + + + Pushes operand into stack correctly. + + + + + + + Creates function ptg. + + Formula string that contains function. + Index of bracket after function name. + Parent object. + Parent worksheet. + Dictionary with indexes. + Current index. + Dictionary with new worksheet names. + Parse options. + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + Created function token. + + + + Indicates whether specified string is name of custom function. + + String to check. + Workbook that contains function. + Index to the extern workbook. + Name index. + True if specified string is name of custom function. + + + + Indicates whether specified name is name of local custom function. + + Parent workbook. + Function name. + Resulting name index. + + + + + Checks is custom function. + + Parent Workbook. + Current Match. + Book index. + Name index. + True if it is custom function, otherwise false. + + + + + + + + + + + + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + + + + + + Creates tokens for custom function and its arguments. + + Token reference index. + Formula string. + Bracket index in the formula. + Parent workbook. + Parent worksheet. + Dictionary with worksheet names (key - old name, value - new name). + Parse options. + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + Array of tokens that describes custom function. + + + + Creates tokens for custom function and its arguments. + + Token reference index. + Formula string. + Bracket index in the formula. + + + Parent workbook. + Parent worksheet. + Dictionary with worksheet names (key - old name, value - new name). + Parse options. + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + Array of tokens that describes custom function. + + + + Creates token that describes specified error. + + Formula string that contains error string. + Index of the error name. + Created token that contains error. + + + + Converts operand string into Ptg array. + + Operand string that should be parsed. + Parent workbook. + Parent worksheet. + + + + Parse options. + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + Parsed operand as array of ptg. + + + + Creates unary operation. + + Operation symbol that should be created. + Newly created unary operation. + + + + Return string array of arguments of the operation. + + Formula string. + OperationPtg that is built by OpIndex. + + + + Indicates if specified string is cell name. + + Formula string that will be checked. + Indicates whether R1C1 notation must be used. + String representation of the row. + String representation of the column. + True if parameter is cell name, i.e. "A1", False otherwise. + + + + Returns true, if specified string has cell reference. + + Formula string that will be checked. + True, if paramater has cell reference. + + + + Returns true, if specified string is R1C1 reference. + + Formula string that will be checked. + True, if paramater is R1C1 cell reference. + + + + Indicates if specified string is cell range. + + Formula string that will be checked. + Indicates whether R1C1 notation must be used. + The first cell's row. + The first cell's column. + The second cell's row. + The second cell's column + True if parameter is cell range, i.e. "A1:D1", False otherwise. + + + + + + + + + + + + Indicates if specified strings is 3d cell reference. + + Formula string that will be checked. + Indicates whether R1C1 notation must be used. + Name of the worksheet if succeeded; otherwise - NULL. + String representation of the row part of the cell reference. + String representation of the column part of the cell reference. + + True if parameter is 3d cell reference, i.e. "Sheet1!A1", False otherwise. + + + + + Indicates whether specified string is 3d cell range. + + String that should be checked. + Indicates whether R1C1 notation must be used. + String that initialize by current sheet name. + String representation of the row part of the first cell reference. + String representation of the column part of the first cell reference. + String representation of the row part of the second cell reference. + String representation of the column part of the second cell reference. + True if string is 3d cell range. + + + + Tells whether specified string contains error + at the specified position. + + String that can contain error string. + Index were error. + + True if specified string contains error + at the specified position. + + + + + Indicates whether specified string is name defined in the workbook. + + String to check. + Parent workbook. + IWorksheet implement. + True if specified string is name defined in the workbook; False otherwise. + + + + Searches for corresponding bracket. + + Formula string where bracket was found. + Position of the found bracket. + Array of all possible opening brackets. + Search direction. + Position of the corresponding record. + + If the corresponding bracket is not found. + + + If there is no bracket at the specified bracket position. + + + + + Indicates if specified string contains unary operation + at the specified position. + + Formula string. + Index of unary operation. + Returns true if operation is unary, false otherwise. + + + + Checks whether the specified string contains operation at the specified position. + + Formula string. + Index of operation symbol in the string. + Operation index. + True if operation is in specified location. + + + + Checks whether specified operand is a function call. + + Operand that will be checked. + Position of the opening bracket. + True if operand denotes function call, False otherwise. + + + + Gets string representing error name that started from errorIndex. + + Formula string that contains error name. + Index of the first char of the error. + + String representing error name that started from errorIndex. + + + When starting symbol of the possible error is not '#' + or if can't find such error name. + + + + + + + + + + + + + + Returns index of the token that should be used at + position i by type targetType in function call. + + Target type for which index will be searched. + + Dictionary with indexes. + Position of the function parameter. + Parse options. + Index of the token code. + + + + Creates new Ptg and sets offset to point just after its data. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + Parsed Ptg token. + + When data array is smaller than token that should be stored in it. + + + + + Creates formula token using token code. + + Token code. + Newly created token. + + + + Creates formula token using token code. + + Token code that is used to get constructor and as constructor argument as well. + Newly created token. + + + + Creates token using token id and string representing this token. + + Token id of the token that should be created. + String that will be passed to the token constructor. + Newly created token. + + + + Creates token using token code, token string, and parent workbook. + + Code of the new token. + String representation of the token. + Parent workbook. + Newly created token. + + + + Creates specified token, passes specified parameters to its constructor. + + Code of the token that will be created. + Constructor parameters. + Newly created token. + + + + Creates specified token, passes two integers to its constructor. + + Token to create. + First integer argument. + Second integer argument. + Newly created token. + + + + Creates specified token, passes function index to its constructor. + + Token to create. + Function index. + Newly created token. + + + + Creates token using two string values. + + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + Token to create. + First value. + Second value. + Indicates whether R1C1 notation is used. + Created formula token. + + + + Creates token using two string values. + + Token to create. + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + First value. + Second value. + Third value. + Fourth value. + Indicates whether R1C1 notation is used. + Parent workbook. + Created formula token. + + + + Creates token using two string values. + + Token to create. + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + Worksheet reference index. + First value. + Second value. + Third value. + Fourth value. + Indicates whether R1C1 notation is used. + Parent workbook. + Created formula token. + + + + Removes tokens that are unnecessary. + + + + + + + Puts all right sided unary operations before operand. + + Formula to transform. + Formula after transformation. + + + + Registers function in internal collections. + + + Name of the function that must be registered. + + + Index of the function that must be registered. + + + Array of ReferenceIndexAttribute that contains information + about proper token index. + + + Number of parameters in the function, + -1, for variable parameters. + + + + + Indicates whether specified function is supported just in Excel office 365. + + Function id. + Value indicating whether specified function appeared in Excel office 365. + + + + Indicates whether specified function is supported just in Excel 2016. + + Function id. + Value indicating whether specified function appeared in Excel 2016. + + + + Indicates whether specified function is supported just in Excel 2013. + + Function id. + Value indicating whether specified function appeared in Excel 2013. + + + + Indicates whether specified function is supported just in Excel 2010. + + Function id. + Value indicating whether specified function appeared in Excel 2010. + + + + Indicates whether specified function is supported just in Excel 2007. + + Function id. + Value indicating whether specified function appeared in Excel 2007. + + + + Checks whether any of these tokens has external reference. + + + + + + + Get or set indicates whether the lambda function have the last argument count or not. + + + + + Get the formula parser. + + + + + Event handler that will receive array of Ptg after parsing. + + + + + Returns IDictionary error code - to - name. Read-only. + + + + + Returns IDictionary error name - to - error code. Read-only. + + + + + Returns array row separator. Read-only. + + + + + Returns operands separator. Read-only. + + + + + Gets or sets number format for parsing double value. + + + + + + + + + + Constructor id. + + + + + This class is used in the construction of formula tokens. + + + + + Dictionary key (int) - constructor id, value - ConstructorInfo. + + + + + Token class for which this instance was created. + + + + + Token class for which this instance was created. + + + + + Creates class instance for specified type. + + + Type for which an object will be created. Must be inherited from Ptg class. + + + When specified type is not inherited from Ptg class. + + + When specified type is null. + + + + + Creates token using default constructor. + + Newly created token. + + + + Creates token using string parameter. + + Token type to pass to constructor. + Newly created token. + + + + Creates token using string parameter. + + + String parameter that will be passed to constructor. + + Newly created token. + + + + Creates token using array of bytes and offset + where token data begins. + + Object that provides access to the data. + Offset to the token data. + Arguments required by some parse methods. + Newly created token + + + + This method looks for constructor that takes specified + parameters and invokes it. + + + Parameters that will be passed to the constructor. + + Newly created token. + + + + Creates token using string and parent workbook. + + String representation of the token. + Parent workbook. + Created formula token. + + + + Creates token using two integer values. + + First value. + Second value. + Created formula token. + + + + Creates token using function index. + + Function index. + Created formula token. + + + + Creates token using two string values. + + Row index of the cell that contains new token. + Column index of the cell that contains new token. + First value. + Second value. + Indicates whether R1C1 notation is used. + Created formula token. + + + + Creates token using two string values. + + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + First value. + Second value. + Third value. + Fourth value. + Indicates whether R1C1 notation is used. + Parent workbook. + Created formula token. + + + + Creates token using two string values. + + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + Worksheet reference index. + First value. + Second value. + Third value. + Fourth value. + Indicates whether R1C1 notation is used. + Parent workbook. + Created formula token. + + + + Gets constructor. + + Constructor id. + Constructor with specified id. + + + + Sets constructor. + + Constructor id. + Corresponding ConstructorInfo. + + + + Gets / sets default constructor. + + + + + Gets / sets string constructor. + + + + + Gets / sets ByteArrayOffset constructor. + + + + + Gets / sets StringParent constructor. + + + + + Gets / sets TwoInts constructor. + + + + + Gets / sets FunctionIndex constructor. + + + + + Gets / sets constructor that accepts two strings as arguments. + + + + + Gets / sets constructor that accepts four strings as arguments. + + + + + Gets / sets constructor that accepts three ints, four strings + and a bool as arguments. + + + + + Gets / sets constructor that accepts three ints, four strings + and a bool as arguments. + + + + + This class is used when formula value needs to be + evaluated. Provides range that contains formula that should + be evaluated and Ptg array - parsed formula string. + + + + + Range that raised this event. Read-only. + + + + + Ptg array with formula tokens of the range. + + + + + Default constructor. + + + + + Main constructor. + + Range containing formula. + Formula tokens array. + + + + Range that raised this event. Read-only. + + + + + Ptg array with formula tokens of the range. + + + + + Empty arguments (all properties with default values). Read-only. + + + + + + Delegate that can be used for formula evaluation purposes. + + + + + Summary description for GradientWrapper. + + + + + Wrapped shape fill. + + + + + Creates new gradient wrapper. + + + + + Creates new gradient wrapper. + + Gradient to wrap. + + + + Compares with shape fill impl. + + Shape fill to compare with. + Zero if shape fills are equal. + + + + Sets the specified fill to a two-color gradient. + + + + + Sets the specified fill with style to a two-color gradient. + + Represents shading shading style. + Represents shading variant. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Validates whether gradient variant is correct for current gradient style. + + Gradient variant to validate. + + + + Represents background color object. + + + + + Represents background color. + + + + + Represents background color index. + + + + + Represents foreground color object. + + + + + Represents foreground color. + + + + + Represents foreground color index. + + + + + + + + + + Represents gradient shading style. + + + + + Returns wrapped gradient. Read-only. + + + + + Event raised after wrapped font changed. + + + + + Summary description for GradientArrayWrapper. + + + + + Array that contains all cells of the range. + + + + + Create new instance of object. + + Base range. + + + + Compares with shape fill impl. + + Gradient to compare with. + Zero if shape fills are equal. + + + + Sets the specified fill to a two-color gradient. + + + + + Sets the specified fill to a two-color gradient. + + Represents shading shading style. + Represents shading variant. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Represents background color. + + + + + Represents background color. + + + + + Represents background color index. + + + + + Represents foreground color. + + + + + Represents foreground color. + + + + + Represents foreground color index. + + + + + Represents gradient shading style. + + + + + Represents gradient shading variant. + + + + + This class is used to get header / footer shapes from a worksheet. + + + + + This interface is used to get shapes from worksheet. + + + + + Returns a shape collection from the worksheet. + + Worksheet to return sheet data for. + A shape collection from the worksheet. + + + + Default constructor. + + + + + Returns a shape collection from the worksheet. + + Worksheet to return sheet data for. + A shape collection from the worksheet. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Engine for parsing and creation of header/footer strings. + + + + + Represents rich text string in the workbook. + + + + + Zero character. + + + + + Low level text object. + + + + + Represents the RTF string + + + + + Parent workbook. + + + + + Indicates whether string is read-only. + + + + + Represents the parent RTF object. + + + + + All digits without zero. + + + + + + + + + + Default font index. + + + + + Cell index. + + + + + Number format type. + + + + ListStyles + + + Level style properties list + + + + Default style level index. + + + + + Bullet + + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + Indicates whether string is read-only. + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + Indicates whether string is read-only. + Indicates whether to create inner TextWithFormat. + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + Indicates whether string is read-only. + Indicates whether to create inner TextWithFormat. + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + Indicates whether string is read-only. + >Indicates whether to create inner TextWithFormat. + Logger information for AutoShapes + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + Text to wrap. + + + + Searches for all necessary parent objects. + + + + + Returns font which is applied to character at the specified position. + + Character index. + Font which is applied to character at the specified position. + + + + Returns font which is applied to character at the specified position. + + Character index. + Font which is applied to character at the specified position. + + + + Sets font for range of characters. + + First character of the range. + Last character of the range. + Font to set. + + + + Clears string formatting. + + + + + Appends rich text string with specified text and font. + + Text to append. + Font to use. + + + + Sub string + + + + + + + Appends the text. + + text to append. + + + + Updates the RTF font. + + + + + Returns font index at the specified position. + + Character index. + Font index. + + + + Returns font by its index. + + Font index. + Font that corresponds to the specified index. + + + + This method is called before any changes made to the rich text string. + + + + + This method is called after any changes made to the rich text string. + + + + + Copies data from another rich text string. + + String to copy data from. + Dictionary with updated font indexes. + + + + Parse rich text string. + + TextWithFormat to parse. + Dictionary with updated font indexes. + Parse options. + + + + Creates a copy of the current object. + + Parent object for the new object. + A copy of the current object. + + + + Clears string and formatting. + + + + + Adds font to all required collections.. + + Font to add. + Font index in the collection. + + + + Sets internal text object that stores rtf string. + + New value for the text object. + + + + Returns font which is applied to character at the specified position. + + Character index. + Font which is applied to character at the specified position. + + + + Returns size of the string part. + + Start position. + End position. + Size of the string part. + + + + Generates text in rtf format. + + Generated text. + + + + Generates text in rtf format. + + Generated text. + + + + Writes formatting run with corresponding text into writer. + + Writer to write text and formatting into. + Index of the formatting run. + First character in the text range. + End position of the text range. + + + + Writes formatting run with corresponding text into writer. + + Writer to write text and formatting into. + Index of the formatting run. + First character in the text range. + End position of the text range. + + + + Adds all used fonts to the rtf text writer. + + RtfTextWriter to write into. + + + + Adds all used fonts to the rtf text writer. + + RtfTextWriter to write into. + + + + Adds single font to the fonts table. + + Font to add. + RtfTextWriter to write into. + + + + Writes text into RtfTextWriter. + + RtfTextWriter to write into. + Font index. + Text value. + + + + Writes text into RtfTextWriter. + + RtfTextWriter to write into. + Font index. + Text value. + + + + Preparing HTML format based on styles in the cell. + + Font styles of current cell. + Current cell range. + + + + + To set the style based on the text. + + Frist Rich-text. + Next Rich-text. + Font style. + Current cell range. + + + + + To set the style based on the text. + + Frist Rich-text. + Next Rich-text. + Font style. + Current cell range. + + + + + Update the special characters in html string + + Display text. + Display text. + + + + Gets / sets text of the string. + + + + + Returns text in rtf format. Read-only. + + + + + Indicates whether rich text string has formatting runs. Read-only. + + + + + Returns parent object. Read-only. + + + + + Returns parent application object. Read-only. + + + + + Specifies the default style level to be used. + + + + + Contains the Level styles + + + + + List of Level style properties. + + + + + Cell index. + + + + + Returns size of the string. Read-only. + + + + + Returns default font. Read-only. + + + + + Returns text object. Read-only. + + + + + Returns parent workbook. Read-only. + + + + + Gets / sets default font index. + + + + + Gets or sets the image RTF. + + The image RTF. + + + + Cell index. + + + + + Specifies the bullet format + + + + + Engine for parsing and creation of header/footer strings. + + + + + Parses text of header/footer part. + + Text of header/footer part. + + + + Returns string in format that is supported by Excel header/footer. + + String in format that is supported by Excel header/footer. + + + + Ampersand character. + + + + + Character that indicates start or end of the underline block. + + + + + Character that indicates start or end of the double underline block. + + + + + Character that indicates start or end of the underline block. + + + + + Character that indicates start or end of the underline block. + + + + + Character that indicates start or end of the underline block. + + + + + Character that indicates start or end of the underline block. + + + + + Separator between font style and face name. + + + + + Value of Bold font style. + + + + + Value of Italic font style. + + + + + Regular font style. + + + + + Space character. + + + + + List with all used fonts. + + + + + Initializes new instance of the RichTextString. + + Application object for the RichTextString. + Parent object for the RichTextString. + + + + Parses text of header/footer part. + + Text of header/footer part. + + + + Returns string in format that is supported by Excel header/footer. + + String in format that is supported by Excel header/footer. + + + + Processes next character after ampersand. + + String to parse. + Builder with current text block. + Character position. + Font of the current text block. + + + + Adds text block to the rtf string. + + Text to add. + Font of the text block. + + + + Adds font to the inner fonts array. + + Font to add. + Index of the added font. + + + + Updates font settings. + + Font to update. + String representation of the font to set. + + + + Searches for required font. + + Font name to look for. + Font style. + + + + This function is used for font enumeration. It is called by EnumFontFamiliesEx function. + + Logical-font data. + Physical-font data. + Type of font. + application-defined data. + 0 when required font was found. + + + + Copies font settings from native .Net font into XlsIO font. + + Source font. + Destination font. + + + + Writes text block. + + String builder to write into. + Start position (included). + End position (not included). + + + + Writes font difference into StringBuilder in header/footer format. + + Builder to write difference into. + Previous font to compare. + Current font to compare. + + + + Writes font name if necessary. + + Builder to write font name settings into. + Previous font to compare. + Font to get settings from. + + + + Writes font underline settings if necessary. + + Builder to write font name settings into. + Previous font to compare. + Font to get settings from. + + + + Writes font superscript/subscript settings if necessary. + + Builder to write font name settings into. + Previous font to compare. + Font to get settings from. + + + + Writes font strikeout settings if necessary. + + Builder to write font name settings into. + Previous font to compare. + Font to get settings from. + + + + Writes font size settings if necessary. + + Builder to write font name settings into. + Previous font to compare. + Font to get settings from. + + + + Returns font by its index. + + Font index. + Font that corresponds to the specified index. + + + + Clears string and formatting. + + + + + This method is called after each change in rich text string. + + + + + Contains data used for font locating. + + + + + Font style to locate. + + + + + Located font data. + + + + + This class contains information about Horizontal Page Break. + + + + + Represents a horizontal page break. The HPageBreak object is + a member of the HPageBreaks collection. + + + + + Used without an object qualifier, this property returns an + object that represents the Excel . + + The following code illustrates how to access the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + //Get Page break with corresponding row + IHPageBreak hPageBrk = sheet.HPageBreaks.GetPageBreak(5); + + //Property returns an Application object that represents the Microsoft Excel application + IApplication hPageBreakApplication = hPageBrk.Application; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + For the HPageBreak and VPageBreak objects, this property returns or sets + the cell (a Range object) that defines the page-break location. Horizontal + page breaks are aligned with the top edge of the location cell; vertical + page breaks are aligned with the left edge of the location cell. + Read / write . + + + To know more about page setting refer this link. + + The following code illustrates the use of Location property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + //Get Page break with corresponding row + IHPageBreak hPageBrk = sheet.HPageBreaks.GetPageBreak(5); + + //Get the IRange Location + IRange range = hPageBrk.Location; + + //Set the IRange Location + hPageBrk.Location = sheet.Range["F1:S10"]; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns the parent object for the specified object. + + The following code illustrates the use of Parent property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + //Get Page break with corresponding row + IHPageBreak hPageBrk = sheet.HPageBreaks.GetPageBreak(5); + + //The parent object for the specified object + object hPageBreakParent = hPageBrk.Parent; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Page break extent. + + + + + Type of the page break. + + + + + Record with horizontal page break. + + + + + Parent worksheet. + + + + + Creates page break and sets its Application and Parent + properties to the specified value. + + Application object for the new page break. + Parent object for the new page break. + + + + Recovers page break from the stream.Since there is no corresponding Biff Record, + this constructor should not be used. + + Application object for the new page break. + Parent object for the new page break. + + + + + Constructs page break using application, parent object, and THPageBreak object. + Always creates manual page break. + + Application object for the page break. + Parent object for the page break. + THPageBreak for create instance. + + + + Constructs page break + + + Application object for the page break. + Page break location. + + + + + + + + + Clones current instance. + + Parent for new instance. + A clone of the current instance. + + + + Read-only. Returns page break extent. + + + + + Location of the page break. + + + + + Type of the page break. + + + + + + + + + + Returns zero-based row index of the break location. Read-only. + + + + + Represents hyperlink object. + + + + + Represents a hyperlink. + + + + + Returns or sets the address of the target document. + + + + + Returns a name of the object. + + + + + Returns a Range object that represents the range the specified hyperlink is attached to. + + + + + Returns or sets the ScreenTip text for the specified hyperlink. + + + + + Returns or sets the location within the document associated with the hyperlink. + + + + + Returns or sets the text to be displayed for the specified hyperlink. + The default value is the address of the hyperlink. + + + + + Returns or sets the object type. + + + + + Get object that represents the shape for the hyperlink. + + + + + Represents the hyperlink attached object name. + + + + + Style for hyperlink. + + + + + Hyper link record. + + + + + Tool tip. + + + + + Parent worksheet. + + + + + Range object that represents the range the specified hyperlink is attached to. + + + + + Get object that represents the shape for the hyperlink. + + + + + Represent the hyperlink applied object name. + + + + + Creates an object and sets its Application and Parent + properties to specified values. + + Application object for the hyperlink. + Parent object for the hyperlink. + + + + Recover hyperlink from Biff records. + + Application object for the hyperlink. + Parent object for the hyperlink. + Array of BiffRecordRaws that contains hyperlink records. + Position of the first hyperlink record. + + + + Creates an object and sets its Application, Parent and Range + properties to specified values. + + Application object for the hyperlink. + Parent object for the hyperlink. + + Range object that represents the range the specified hyperlink is attached to. + + + + + Creates an object and sets its Application, Parent and shape + properties to specified values. + + Application object for the hyperlink. + Parent object for the hyperlink. + + Shape object that represents the shape the specified hyperlink is attached to. + + + + + Searches for all necessary parent objects. + + + + + Recovers hyperlink from array of Biff Records and position in it. + + Array of BiffRecordRaws that contains hyperlink records. + Position of the first hyperlink record. + Position after the last hyperlink record. + + + + Saves hyperlink into OffsetArrayList. + + + OffsetArrayList that will receive all records of the range. + + + + + Sets sub address property. + + Sub address to set. + + + + Sets address property. + + Address to set. + Indicates whether we should set Text property of + the TopLeft cell with this hyperlink. + + + + Clears the hyperlink + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Returns or sets the address of the target document. + + + + + Returns or sets the name of the object. + + + + + Returns/sets a Range object that represents the range the specified hyperlink is attached to. + + + + + Returns or sets the ScreenTip text for the specified hyperlink. + + + + + Returns or sets the location within the document associated with the hyperlink. + + + + + Returns or sets the text to be displayed for the specified hyperlink. + The default value is the address of the hyperlink. + + + + + Returns or sets the object type. + + + + + + + + + + + + + + + + + + + + + + + + + Returns a shape object that specified hyperlink is attached to. + + + + + Represent the hyperlink attached object name. + + + + + Returns top left cell of the range. Read-only. + + + + + Represents a set of icons that are used in an icon set conditional formatting rule. + + + + + Gets collection which represents the set of criteria for + icon set conditional formatting rule. + + + Similar to IconSet conditions DataBars also use objects to set and . + To know more about advanced conditional formatting types refer this link. + + + The objects in the property list sets rules that how the icons should be applied. + Default IconSet has only three icons, so the list will have three objects of type + by default. If we change it to an IconSet which has more icons like then the list size increases to five. + Here for example, we access the default objects in the property list and set , + and properties. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "IconSets"; + worksheet["A2"].Number = 105; + worksheet["A3"].Number = 120; + worksheet["A4"].Number = 300; + worksheet["A5"].Number = 240; + worksheet["A6"].Number = 350; + worksheet["A7"].Number = 460; + worksheet["A8"].Number = 170; + worksheet["A9"].Number = 280; + worksheet["A10"].Number = 190; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as IconSet. + format.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = format.IconSet; + + //Set conditions for IconCriteria. + iconSet.IconCriteria[1].Type = ConditionValueType.Percentile; + iconSet.IconCriteria[1].Value = "20"; + iconSet.IconCriteria[1].Operator = ConditionalFormatOperator.GreaterThan; + + iconSet.IconCriteria[2].Type = ConditionValueType.Percentile; + iconSet.IconCriteria[2].Value = "70"; + iconSet.IconCriteria[2].Operator = ConditionalFormatOperator.GreaterThan; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the type of the icon set conditional formatting. + + + To know more about advanced conditional formatting type refer this link. + + + By default will be applied when IconSet is applied. The default is . + From the name we can say has 3 icons, So the values in the cells are set icons based on their percentage ranges 0 to 33, 33 to 67 and 67 to 100. + where 100 is the maximum value in the conditional formatting range. + Here for example, we load 10 values and apply conditional formatting of as . + we set to property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "IconSets"; + worksheet["A2"].Number = 105; + worksheet["A3"].Number = 120; + worksheet["A4"].Number = 300; + worksheet["A5"].Number = 240; + worksheet["A6"].Number = 350; + worksheet["A7"].Number = 460; + worksheet["A8"].Number = 170; + worksheet["A9"].Number = 280; + worksheet["A10"].Number = 190; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as IconSet. + format.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = format.IconSet; + + //Set IconSet. + iconSet.IconSet = ExcelIconSetType.ThreeFlags; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating if the thresholds for an icon + set conditional format are determined using percentiles. Default value is false. + + + To change the IconSet criteria to apply icons based on the percentile value of the value present in the cells, we can set + property to "True". By default it is set to "False" and the conditions are applied based on percentage values instead of percentile. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "IconSets"; + worksheet["A2"].Number = 105; + worksheet["A3"].Number = 120; + worksheet["A4"].Number = 300; + worksheet["A5"].Number = 240; + worksheet["A6"].Number = 350; + worksheet["A7"].Number = 460; + worksheet["A8"].Number = 170; + worksheet["A9"].Number = 280; + worksheet["A10"].Number = 190; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as IconSet. + format.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = format.IconSet; + + //Set PercentileValues. + iconSet.PercentileValues = true; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating if the order of icons are + reversed for an icon set. Default value is false. + + + To know more about advanced conditional formatting types refer this link. + + + The icons in the IconSet will be applied in a predefined way (from lowest value to highest). This order of applying icons can be reversed setting + property to "True". By default the ReverseOrder property is set to "False". Here for in our example, we set it + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "IconSets"; + worksheet["A2"].Number = 105; + worksheet["A3"].Number = 120; + worksheet["A4"].Number = 300; + worksheet["A5"].Number = 240; + worksheet["A6"].Number = 350; + worksheet["A7"].Number = 460; + worksheet["A8"].Number = 170; + worksheet["A9"].Number = 280; + worksheet["A10"].Number = 190; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as IconSet. + format.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = format.IconSet; + + //Set Order of IconSets. + iconSet.ReverseOrder = true; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets a Boolean value indicating if only the icon is displayed + for an icon set conditional format. Default value is false. + + + To know more about advanced conditional formatting types refer this link. + + + If IconSet is applied then the values in the cells will be shown along with an icon. The values can be made hidden by setting + to "True". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Load data to Apply Conditional Formatting. + worksheet["A1"].Text = "IconSets"; + worksheet["A2"].Number = 105; + worksheet["A3"].Number = 120; + worksheet["A4"].Number = 300; + worksheet["A5"].Number = 240; + worksheet["A6"].Number = 350; + worksheet["A7"].Number = 460; + worksheet["A8"].Number = 170; + worksheet["A9"].Number = 280; + worksheet["A10"].Number = 190; + worksheet["A11"].Number = 100; + + //Create instance of IConditonalFormat and IConditionalFormats. + IConditionalFormats formats = worksheet["A2:A11"].ConditionalFormats; + IConditionalFormat format = formats.AddCondition(); + + //Set FormatType as IconSet. + format.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = format.IconSet; + + //Set ShowIconOnly. + iconSet.ShowIconOnly = true; + + //Save and Dispose. + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + } + + + + + + IconSet maintain as stream + + + + + An IconCriteria collection which represents the set of criteria for + an icon set conditional formatting rule. + + + + + An IconSets collection which specifies the icon set used + in the conditional format. + + + + + A Boolean value indicating if the thresholds for an icon + set conditional format are determined using percentiles. + + + + + A Boolean value indicating if the order of icons is + reversed for an icon set. + + + + + A Boolean value indicating if the iconset is custom. + + + + + A Boolean value indicating if only the icon is displayed + for an icon set conditional format. + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Compares two instances of the IconSetImpl. + + First object to compare. + Second object to compare. + True if objects are equal. + + + + Checks whether objects are different. + + First object to compare. + Second object to compare. + True if objects are not equal. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Updates criteria collection. + + + + + Get or Set the boolean value if the iconset is custom. + + + + + Returns an IconCriteria collection which represents the set of criteria for + an icon set conditional formatting rule. + + + + + Returns or sets an IconSets collection which specifies the icon set used + in the conditional format. + + + + + Returns or sets a Boolean value indicating if the thresholds for an icon + set conditional format are determined using percentiles. + + + + + Returns or sets a Boolean value indicating if the order of icons is + reversed for an icon set. + + + + + Returns or sets a Boolean value indicating if only the icon is displayed + for an icon set conditional format. + + + + + Get as true if the IconSet has a Custom Iconset. + + + + + IconSet Stream + + + + + Parent format. + + + + + Wrapper over condition values. + + + + + Read-only part copy of the criteria collection. + + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Initializes new instance of the wrapper. + + Parent format wrapper. + + + + Updates internal criteria collection. + + Conditions to update. + + + + Adds required number of new wrappers to the criteria collection. + + Number of items to add. + Source collection to wrap. + + + + Updates wrappers inside criteria collection. + + Number of wrappers to update. + + + + Removes wrappers from criteria collection. + + Number of wrappers to remove. + + + + Returns wrapped icon set. + + Wrapped icon set. + + + + Returns an IconCriteria collection which represents the set of criteria for + an icon set conditional formatting rule. + + + + + Returns or sets an IconSets collection which specifies the icon set used + in the conditional format. + + + + + Returns or sets a Boolean value indicating if the thresholds for an icon + set conditional format are determined using percentiles. + + + + + Returns or sets a Boolean value indicating if the order of icons is + reversed for an icon set. + + + + + Returns or sets a Boolean value indicating if only the icon is displayed + for an icon set conditional format. + + + + + Represent the column header import or not. + + + + + + + + + Indicates whether the data table is imported into worksheet. + + + + + Construct data table. + + DataTable with desired data. + Row of the first cell where DataTable should be imported. + Column of the first cell where DataTable should be imported. + style index of date. + + + + Indicates whether the data table is imported into worksheet. + + + + + + + + + Indicating the FieldNameShown or not + + + + + Summary description for GradientWrapper. + + + + + Interface used to get interior settings. + + + + + Gets or sets the color of the interior pattern as an index into the current color palette. + + + + + Gets or sets the color of the interior pattern as an Color value. + + + + + Gets or sets the color of the interior as an index value. + + + + + Gets or sets the cell shading color. + + + + + Gets gradient object for this extended format. Read-only. + + + + + Gets / Sets fill pattern. + + + + + Extended format. + + + + + Gradient wrapper. + + + + + Creates new interior wrapper. + + + + + Creates new interior wrapper. + + Extended format. + + + + Event handler for gradient AfterChange event. + + Event sender. + Event arguments. + + + + Creates gradient wrapper. + + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Gets or sets the color of the interior pattern as an index into the current color palette. + + + + + Gets or sets the color of the interior pattern as an Color value. + + + + + Gets or sets the color of the interior as an index value. + + + + + Gets or sets the cell shading color. + + + + + Gets gradient object for this extended format. Read-only. + + + + + Gets / Sets fill pattern. + + + + + Event raised after wrapped font changed. + + + + + Returns wrapped interior. Read-only. + + + + + Class that is created when user accesses the interior in a multicell range. + Redirects all calls to the interiors of the individual cells. + + + + + Array that contains all cells of the range. + + + + + Create new instance of object. + + Base range. + + + + This method should be called before several updates to the object will take place. + + + + + This method should be called after several updates to the object took place. + + + + + Returns or sets the color of the interior pattern as an index into the current color palette. + + + + + Returns or sets the color of the interior pattern as an Color value. + + + + + Returns or sets the color of the interior. The color is specified as + an index value into the current color palette. + + + + + Returns or sets the cell shading color. + + + + + Returns gradient object. + + + + + Gets / Sets fill pattern. + + + + + This class contains information about all merged + cells in the parent workbook. + + + + + Parent worksheet. + + + + + Contains all not parsed merge records. + + + + + Indicates whether object was parsed. + + + + + Cell range address list of all merged cells. + + + + + Sets application and parent fields. + + Application object for the new instance. + Parent object for the new instance. + + + + Saves merges into OffsetArrayList. + + OffsetArrayList to save all records into. + + + + Searches for all necessary parents. + + + + + Gets array of custom extended formats that represents custom merged range. + + Returns array of Merged extended formats. + + + + Gets extended format describing region. + + Region to get format for. + Extended format describing region. + + + + Adds new merge to the existing merges. + + Range that should be merged. + + Operation type - Information on what needs to be done if some of + the cells are already merged. + + + + + Adds a new region if it intersects with other regions. + If operation is Leave, the function leaves the old region. Otherwise + it deletes old region. + + Region that will be merged. + + Operation type - tells what should be done if some of + the cells are already merged. + + + + + Adds new region if it intersects with other regions. + + First row to merge. Zero-based. + Last row to merge. Zero-based. + First column to merge. Zero-based. + Last column to merge. Zero-based. + + Operation type - tells what should be done if some of + the cells are already merged. + + + + + Combine merge that contains a specific cell. + + + Range of the cells to be combined. + + + + + Removes merge that contains a specific cell. + + + Range of the cells to be removed. + + + + + Remove the merged region from mergedRegion collection. + + Remove merged region + Cell range + + + + Add merged region to merged region collection. + + New merged region + + + + Clear all merges. + + + + + Adds merge regions from the MergeCellsRecord. + + Record with regions. + + + + Adds merge regions from the MergeCellsRecord. + + + + + Removes row from the collection. + + Row index to remove. + + + + Removes row(s) from the collection. + + Row index to remove. + Number of rows to remove. + + + + Inserts row to the collection. + + Row index to insert. + Number of row to insert. + + + + Removes column from the collection + + Column index to remove. + + + + Removes columns from the collection. + + Column index to remove. + Number of columns to remove + + + + Inserts column into collection. + + + + + + Inserts column into collection + + Column index to insert. + Number of columns to insert. + + + + Removes or inserts one row from merges collection. + + One-based row index to remove or insert. + Indicates whether to remove or insert rows. + Count of row to remove. + + + + Removes or inserts one column from merges collection. + + One-based column index to remove. + Indicates whether to remove or insert rows. + Number of columns to insert or remove. + + + + Moves merges from source range into destination. + + Destination range. + Source range. + Indicates whether we are moving merges (true) or copying (false). + + + + Copy merges to source range to destination. + + Destination range + Source range + Source range merged region + + + + Finds all merged ranges for specific range. + + Range to find merges in. + Indicates whether delete merges from the collection is needed or not. + Merges list. + + + + Caches range's merges. + + Range for which we have to cache merged regions. + List to save merges in. + + + + Caches range's merges. + + Range for which we have to cache merged regions. + List to save merges in. + + + + Checks whether specified region is fully inside range. + + Region to check. + Range to check. + + + + Removes all cached items from this collection. + + Cached items to remove. + + + + Adds cache into collection. + + List with merge regions to add. + Row delta. + Column delta. + + + + Adds dictionary with that describes merge region to the collection. + + + Regions to add, key - top-left cell index, value - bottom-right cell index. + + Row delta. + Column delta. + + + + Finds left top cell of merged region. + + Merged region rectangle. + Left top cell range. + + + + Creates a copy of the current object. + + Parent object for the new object. + A copy of the current object. + + + + Creates copy of the specified list. + + List to clone. + A copy of the specified list. + + + + Sets new dimensions - removes unnecessary items (that are out of bounds) or truncates them. + + New maximum possible row count. + New maximum possible column count. + + + + Finds merged region for specific cell. + + Cell range address. + Merged region that includes specified cell. + + + + Converts rectangle to merged region. + + Rectangle to convert. + Merged region. + + + + Inserts or removes row into the merge region before first row. + + Region to modify after insert/remove row operation. + Indicates whether it is remove operation. + Row index. + Number of rows to insert. + Workbook where operation is performed. + Modified region. + + + + Inserts or removes row into region the merge at the first row. + + Region to modify after insert/remove row operation. + Indicates whether it is remove operation. + Number of rows to insert. + Workbook where operation is performed. + Modified region. + + + + Inserts or removes row into the merge region in the middle or at the end of the range. + + Region to modify after insert/remove row operation. + Indicates whether it is remove operation. + Row index. + Number of rows to insert. + Workbook where operation is performed. + Modified region. + + + + Inserts or removes row after end of the region. + + Region to modify after insert/remove row operation. + Indicates whether it is remove operation. + Number of rows to insert. + Modified region. + + + + Inserts or removes row. + + Region to modify after insert/remove row operation. + Row index. + Indicates whether it is remove operation. + Number of rows to insert. + Workbook where operation is performed. + + + + + Inserts or removes column into the merge region before first column. + + Region to modify after insert/remove column operation. + Indicates whether it is remove operation. + Column index. + Number of columns to insert. + Workbook where operation is performed. + Modified region. + + + + Inserts or removes column into the merge region at the first column. + + Region to modify after insert/remove column operation. + Indicates whether it is remove operation. + Number of columns to insert. + Workbook where operation is performed. + Modified region. + + + + Inserts or removes column into the merge region in the middle or at the end of the range. + + Region to modify after insert/remove column operation. + Indicates whether it is remove operation. + Column index. + Number of columns to insert. + Workbook where operation is performed. + Modified region. + + + + Inserts or removes column after end of the region. + + Region to modify after insert/remove column operation. + Indicates whether it is remove operation. + Number of columns to insert. + Modified region. + + + + + + Region to modify after insert/remove column operation. + Column index. + Indicates whether it is remove operation. + Number of columns to insert. + Workbook where operation is performed. + Modified region. + + + + Ensures that row index is in correct range. + + Row index to check. + Workbook where operation is performed. + Row index from the correct range. + + + + Ensures that column index is in correct range. + + Column index to check. + Workbook where operation is performed. + Column index from the correct range. + + + + Number of merges in the collection. + + + + + Collection of all merged regions. + + + + + Returns single merge region from the collection. + + + + + Summary description for MigrantRangeImpl. + + + + + Represents a cell, a row, a column, collection of cells or a 3-D range. + + + + + + + + + + Row zero-based index. + + + + + Column zero-based index. + + + + + Index of extended format. + + + + + Returns type code. Read-only. + + + + + Default format for date values. + + + + + Default format for time values. + + + + + Default format for date time values. + + + + + Default date time index. + + + + + Default OleDateValue + + + + + Maximum OleDateValue + + + + + Default format for number values. + + + + + Default format for text values. + + + + + General format. + + + + + Format for array-entered formula representation. + + + + + Error message when method that should be called only for single-cell Ranges + was called for Range with multiple cells. + + + + + Default style. + + + + + Index of extended format for normal style. + + + + + Default format for WrapText values. + + + + + Whitspace for the numberformat. + + + + + Open brace for formula. + + + + + Equivalent symbol for formula. + + + + + Ampersand symbol for formula. + + + + + Represents default cell name separator. + + + + + Column section start in the R1C1 reference string. + + + + + Row section start in the R1C1 reference string. + + + + + Opening bracket for relative row / column index in the R1C1 reference mode. + + + + + Closing bracket for relative row / column index in the R1C1 reference mode. + + + + + Local address format in R1C1-style notation. + + + + + Maximum OADate value. + + + + + Represents default number format index. + + + + + Represents first number format index. + + + + + Represents second number format index. + + + + + Number of bits in cell index that holds column value. + + + + + Defines whether to set XF index in SetFormulaArrayRecord method. + + + + + Defines the singleQuote. + + + + + Defines a new line character + + + + + Default percentage number format . + + + + + Default decimal percentage number format . + + + + + Default exponential number format . + + + + + Default culture info time token + + + + + Default time token number format . + + + + + Default regular expressions options: + + + + + Represents the UK culture Name. + + + + + Cell types that can contain date time values. + + + + + Represents auto format types, that contain right horizontal alignment. + + + + + Represents auto format types, that contain number format. + + + + + Minimum supported date time value. + + + + + Minimum supported date time value. + + + + + Represents the list of date time formula. + + + + + Represents the default date separator for all cultures. + + + + + Regular expression for minutes part of the format: + + + + + Regular expression for minutes part of the format: + + + + + Regular expression for minutes part of the format: + + + + + Initilize object for HtmlStringParser. + + + + + Reference on worksheet to which current Range belongs to. + + + + + Reference on workbook to which worksheet and current Range belong to. + + + + + Index of the left column. + + + + + Index of the right column. + + + + + Index of the top row. + + + + + Index of the bottom row. + + + + + + + + + + + + + + + + + + + + This array stores references of all cells that this + Range represents. + + + + + Style wrapper for this Range. + + + + + True - indicates that cells collection was filled before, otherwise False. + + + + + Represents data validation. + + + + + Defines a date separator of current culture + + + + + Defines a time separator of current culture + + + + + Represents RTF string. + + + + + True if it is Entire row. + + + + + True if it is Entire column. + + + + + False if Number format is set in run time + + + + + Represents the OutlineWrapperUtility object + + + + + Number of subtotal in a specific Range + + + + + Indicates whether the range indexer is absolute or relative. + + + + + Indicates whether the row height calculated or not. + + + + + String format for the text to be measured in UpdateText method. + + + + + A boolean variable that indicates if display text of this range is called from AutoFitColumns(). + + + + + A boolean variable indicates if the separator is in CSV format. + + + + + Get DateTime based on culture + + Display text. + The cell value. + The format impl. + + + + + + Checks the OS specific formats. + + The inner number format. + + + + + Create style for Entire row or Entire column. + + + + + Checks if all formula arrays partially contained by this Range + or fully contained by this Range. Read-only. + + Collection of array formula records. + Value indicating whether all formula arrays partially contained by this Range. + + + + Returns number from the style name, i.e. Normal_1 result is 1. + + Style name. + Parsed number. + A boolean indicating whether the 1904 date system is used. + A string representing the formatted date. + + + + Formats a DateTime object into a string based on the specified format, determining whether it is a time or date. + + A double representing the original serial date number. + A DateTime object representing the date and time to format. + A FormatImpl object representing the desired format. + A boolean indicating whether the value is a time. + A boolean indicating whether the value is a date. + A string representing the formatted date or time. + + + + Returns number from the style name, i.e. Normal_1 result is 1. + + Style name. + Parsed number. + + + + Called after changing last column index. + + + + + Called after changing first column index. + + + + + Called after changing last row index. + + + + + Called after changing first row index. + + + + + Called after changing style of the Range. + + Cell type. + + + + Called after changing of value. + + Old value. + New value. + + + + Converts the value of this instance to the equivalent OLE Automation date. + + Input date time value. + A double-precision floating-point number that contains an OLE Automation date equivalent to the value of this instance. + + + + The specified value is detected for fraction value and set to Value property. + + The value assigned to property. + True if the specified value is a fraction. Otherwise False. + + + + sets the time number format based on value. + + Value to check the time format. + + + + Checks whether first symbol is apostrophe and sets appropriate cell style. + + Value to check. + Updated string value. + + + + Converts object to double if possible. + + Object to convert. + Converted value. + + + + Group or ungroup current Range. + + Should we perform operation on rows or columns? + If True then group, otherwise ungroup. + Indicates whether created group should be collapsed. + This Range after grouping / ungrouping. + + + + Updates the group into collection. + + + + + Adds the row/Ccolumn level into collection. + + + + + Ungroup the row/Column level. + + + + + Returns Row outline from collection. + + One-based row index. + Row information. + + + + Creates subtotals for the Range. + + Column index based on which grouping should be done. + Represents a consolidation function to be applied. + List of column indexes on which subtotal is calculated. + + The following code illustrates how to subtotal the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set the Range for subtotaling + IRange range = worksheet.Range["C3:G12"]; + + //Perform subtotals for the Range with every change in first column + //and subtotals to be included for specified list of columns + range.SubTotal(0, ConsolidationFunction.Sum, new int[] { 2, 3, 4 }); + + workbook.SaveAs("Subtotal.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Creates subtotals for the Range with the specified formatting flags. + + Column index based on which grouping should be done + Represents a consolidation function to be applied. + List of column indexes on which subtotal is calculated. + Indicates whether existing SubTotal must be replaced. + Indicates whether page break must be inserted. + Indicates whether SummaryBelowData to be shown + + The following code illustrates how to subtotal the Range with formats. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set the Range for subtotaling + IRange range = worksheet.Range["C3:G12"]; + + //Perform subtotals for the Range with every change in first column + //and subtotals to be included for specified list of columns + range.SubTotal(0, ConsolidationFunction.Sum, new int[] { 2, 3, 4 }, false, true, true); + + workbook.SaveAs("Subtotal.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Creates subtotals for the Range with multiple group by columns and the specified formatting flags. + + Column indexes based on which grouping is done. Given in the order of subtotal levels + Represents a consolidation function to be applied. + List of columns on which subtotal is calculated + Replaces Existing SubTotal + Inserts PageBreaks + SummaryBelowData to be shown + + The following code illustrates how to subtotal the Range with formats. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set the Range for subtotaling + IRange range = worksheet.Range["C3:G12"]; + + //Perform subtotals for the Range with every change in first column + //and subtotals to be included for specified list of columns + range.SubTotal( new int[] { 1, 2 }, ConsolidationFunction.Sum, new int[] { 2, 3, 4 }, false, true, true); + + workbook.SaveAs("Subtotal.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Update row offset for subtotal process. + + + + + Updates formula after subtotal operation. + + + + + Returns Column from collection. + + One-based column index. + Column information. + + + + Sets dimensions of parent worksheet to fit this Range. + + + + + Sets the workbook. + + The book. + + + + Return outline from the dictionary that corresponds to the specified index, + creates new one if necessary. + + + Indicates whether row outline or column outline + should be returned from the collection. + + Collection of outlines. + Index of the needed outline. + + Indicates whether exeption should be thrown when incorrect index passed + or just return Null value. + + Outline from the collection or newly created one. + + + + Returns display text. + + Value representing displayed string. + + + + Parses the number format. + + + + + + Checks the unnecessary char. + + The split format. + + + + + Returns DataTime value of the record. + + DataTime value of the record. + + + + Fills internal BiffRecord with data from specified DateTime. + + DateTime with Range value. + + + + Fills internal BiffRecord with data from specified DateTime. + + DateTime with Range value. + + + + Returns number value from the cell if possible. + + Stored number. + + + + Fills internal BiffRecord with data from specified number. + + Number with Range value. + + + + Fills internal BiffRecord with data from specified number. + + Number with Range value. + + + + Creates correct record that can store specified number. + + Value to store. + Created record with number. + + + + Fills internal BiffRecord with data with specified boolean value. + + Boolean with Range value. + + + + Fills internal BiffRecord with data with specified error value. + + String with error value. + + + + Gets error code by error string. + + Represents error string. + Returns error code. + + + + Sets formula value to the current Range. + + Formula value. + + + + Sets formula value to the current Range. + + Formula value. + + Dictionary with new worksheet names (to copy worksheet's + into workbook's and merging workbooks). + + Indicates whether R1C1-style notation is used. + + + + Copies formula record. + + Record to copy. + + + + Called after any changes in the Range. + Sets Saved property of the parent workbook to false. + + + + + Checks if specified cell has correct row and column index. + + Index of the row of the cell. + Index of the column of the cell. + + When row or column is less than 1 or column is greater than maximum possible column index + (it is 256 for Excel 2003, and 16384 for Excel 2007). + + + + + Searches for specified worksheet in the parent workbook. + + Name of the worksheet to search. + Found worksheet. + + If there is no such worksheet in the parent workbook. + + + + + Reparses formula. + + + + + Moves cell one row up. + + Options for cell copying. + + + + Moves cell one column left. + + Options for cell copying. + + + + Parses LabelSST record. + + Record to parse. + Parsed string without formatting. + + + + Parses . + + Record to parse. + Parsed string value. + + + + Parses with R1C1ReferenceStyle notation flag. + + Record to parse. + + Indicates whether to return formula string in R1C1-style notation. + + Parsed string value. + + + + Sets row height. + + Value to set. + Indicates whether font and row height are not compatible. + + + + Sets row height. + + Value to set. + Indicates whether font and row height are not compatible. + + + + Creates rich text string. + + + + + Tries to create Value2. + + Value2 value. + + + + Detects whether specified value is error or boolean and tries to parse it. + + String to parse. + True if value type was detected and value was parsed correctly. + + + + Sets index in the LabelSST record. + + New index value. + + + + Tries to remove all formula arrays from this Range. + + + Thrown when it's impossible to remove array formula. + + + + + Sets data validation for the Range. + + Data validation to set. + + + + Blanks cell. + + + + + Adds copy of the comment. + + Comment to be added. + + + + Creates a threaded comment for the current cell with the specified text. + + Threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . If the cell already contains comment(note) then threaded comment cannot be inserted and returns null + + The threaded comment created by mapping with author name from built-in document properties + + + The following code illustrates how to add threaded comment with text. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment with text + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("sample text"); + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Creates a threaded comment for the current cell with the specified text and author. + + Threaded comment text + The author of the threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . If the cell already contains comment(note) then threaded comment cannot be inserted and returns null + + The following code illustrates how to add threaded comment with text and author. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add threaded comment with text and author + IThreadedComment threadedComment = worksheet["C2"].AddThreadedComment("sample text", "User"); + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Sets new parent. + + Parent to set. + + + + Updates named Ranges indexes. + + New indexes. + + + + Creates record and sets Range data in it. + + Record type to create. + Newly created record. + + + + Creates record and sets Range data in it. + + Record type to create. + Newly created record. + + + + Updates Range. + + First row index. + First column index. + Last row index. + Last column index. + + + + Identifies the Date separator + + returns a date seperator + + + + Identifies the time separator + + Returns a time seperator + + + + Parses R1C1 reference. + + Reference to parse. + Range that corresponds to the string. + + + + Parses R1C1 expression + + String to parse. + Represents rectangle of coordinates. + Indicates is it first expression. + Returns rectangle with updated coordinates. + + + + Parses index string in R1C1 style and evaluates absolute row or column index. + + Value to parse. + Indicates whether this is row or column index. + Parsed row or column index. + + + + Converts array-entered formula to string.. + + Indicates whether R1C1-style notation must be used. + String representation of the array-entered formula. + + + + Sets array-entered formula. + + String representation of the formula. + Indicates whether R1C1-style notation is used. + + + + Sets array formula record. + + Formula array record. + + + + Sets array formula record with extended format index. + + Formula array record. + Extended format index. + + + + Updates record with new position and extended format record if necessary. + + Record to update. + Cell to get data from. + XF index to set. + + + + Normalizes row index. + + One-based row index to normalize. + First column. + Last column. + Normalized row index. + + + + Normalizes row index. + + One-based column index to normalize. + First row. + Last row. + Normalized column index. + + + + Searches for corresponding data validation. + + Found data validation or null. + + + + Partially clear Range. + + + + + Sets border to single cell. + + Represents border index. + Represents border line type. + Represents border line color. + + + + Collapses or expands this group. + + Should we perform operation on rows or columns? + Indicates desired group state. If it is True then group should be collapsed, otherwise expanded. + Flag indicating collapse or expand settings. + + + + Collapses or expands group. + + Indicates whether group is collapsed. + Represents start index. + Represents end index. + Represents maximum index. + Indicates whether last index. + Provides outline information. + Flag for expand or collapse setting. + + + + Sets hidden state. + + Represents starting index. + Represents ending index. + Provides Outline information. + Value indicating whether outline is hidden + + + + Expands outlines. + + Represents starting index. + Represents end index. + Provides outline information. + Value indicating whether to include sub groups + Value indicating whether last index + + + + Determines whether parent outline group is visible or not. + + Start index of the child group. + End index of the child group. + Maximum possible outline index. + Method that is used to get outline by index. + True if parent group is visible. + + + + Searches for the first outline with lower level (parent). + + Start index to search from. + Delta to add to outline index after each iteration (direction). + Maximum possible outline index. + Method that is used to get outline by index. + Found outline index with lower level or -1. + + + + Searches for the edge of the group. + + Start index to search from. + Delta to add to the index at each iteration. + Maximum possible outline index. + Method that is used to get outline by index. + Outline level of the group to find edge for. + Index of the parent group start. + + + + Searches for the first visible outline of the required level. + + Start index to search. + End index to search. + Method that is used to get outline by index. + Outline level to check. + Index of the first found visible outline. + + + + Gets the unique values. + + Type of the field. + Gets the list of unique values. + + + + Gets the formula value. + + Type of the field. + Represents the row to fetch the value. + Represents the column to fetch the value. + if set to true [is string]. + Returns the formula value. + + + + Gets the formula value. + + Type of the field. + Represents the row to fetch the value. + Represents the column to fetch the value. + if set to true [is string]. + Returns the formula value. + + + + Get hatch style for hatch brush. + + Pattern type. + returns Hatchstyle value. + + + + Sets auto format pattern. + + Represents pattern color. + Represents first row. + Represents last row. + Represents first column. + Represents last column. + + + + Sets auto format pattern. + + Represents pattern color. + Represents first row. + Represents last row. + Represents first column. + Represents last column. + Represents pattern color. + Represents cell pattern. + + + + Sets auto format patterns. + + Represents auto format type. + + + + Sets auto format pattern for list_1 or list_2 types. + + Indicates if it is list_1 auto format type. + Represents default fore color. + Represents default back color. + + + + Sets auot format alignment. + + Represents auto format type. + + + + Sets auto format alignment. + + Represents align. + Represents first row. + Represents last row. + Represents first column. + Represents last column. + + + + Sets auto format width height. + + Represents auto format type. + + + + Sets auto format number. + + Represents auto format type. + + + + Sets auto format font border. + + Represents auto format type. + Indicates if set font object. + Indicates if set borders. + + + + Sets auto format simple font border. + + Indicates if set font object. + Indicates if set borders. + + + + Sets auto format Classic_1 font and border. + + Indicates if set font object. + Indicates if set borders. + + + + Sets auto format Classic_2 font and border. + + Indicates if set font object. + Indicates if set borders. + + + + Sets auto format Classic_3 font and border. + + Indicates if set font object. + Indicates if set borders. + + + + Sets auto format Accounting_1 font and border. + + Indicates if set font object. + Indicates if set borders. + + + + Sets auto format Accounting_2 font and border. + + Indicates if set font object. + Indicates if set borders. + + + + Sets auto format Accounting_3 font and border. + + Indicates if set font object. + Indicates if set borders. + + + + Sets auto format Accounting_4 font and border. + + Indicates if set font object. + Indicates if set borders. + + + + Sets auto format font. + + Represents font object. + Represents first row. + Represents last row. + Represents first column. + Represents last column. + + + + Creates an new instances of the class with specified and parent objects. + + Represents application object for the Range. + Represents parent object for the Range. + + The parent worksheet or workbook cannot be found. + + + + + Creates an new instances of the class with specified and Parent objects from stream. + + Application object for the Range. + Parent object for the Range. + Stream with Range data. + + + + Creates an new instances of the class from Biff records from its specified position. + + Application object for the Range. + Parent object for the Range. + Array of BiffRecordRaws which contains record for the Range. + Index of record for the Range. + + + + Creates an new instances of the class from Biff records from its specified position as a reference. + + Application object for the Range. + Parent object for the Range. + + Array of BiffRecordRaws which contains record for the Range. + + Index of record for the Range. + + + + Creates an new instances of the class from Biff records from its specified position with ignore style flag. + + Application object for the Range. + Parent object for the Range. + + Array of BiffRecordRaws which contains record for the Range. + + Index of record for the Range. + Indicates whether to ignore styles. + + + + Creates an new instances of the class from collection of Biff records from its specified position with ignore style flag. + + Application object for the Range. + Parent object for the Range. + Array of BiffRecordRaws which contains record for the Range. + Index of record for the Range. + Indicates whether to ignore styles. + + + + Creates an new instances of the class with specified top-left and bottom-right corners. + + Application object for the Range. + Parent object for the Range. + First row of the Range. + Last row of the Range. + First column of the Range. + Last column of the Range. + + + + Creates an new instances of the class with specified row and column. + + Application object for the Range. + Parent object for the Range. + Row index for the Range. + Column index for the Range. + + + + Creates an new instances of the class with specified ,Parent objects and ignore style flag from stream. + + Application object. + Parent object. + Range record. + Indicates whether to ignore styles. + + + + Fill internal collection by references on cells. + + + + + Clears internal cells array. + + + + + Releases the unmanaged resources used by the XmlReader and optionally releases the managed resources. + + + + + Returns true if the style is a built-in style; otherwise, returns false. + + + + + Searches for all necessary parents. + + + + + Recover Region from the stream. + + BiffReader with Range record. + + + + Recover region from array of Biff Records and position in it. + + Array of BiffRecordRaws that contains Range record. + Position of Range record. + + + + Recover region from array of Biff Records and position in it with ignore style flag. + + Array of BiffRecordRaws that contains Range record. + Position of Range record. + Indicates whether to ignore style. + + + + Parses double value accordingly to format string. + + Value to parse. + Parsed value. + + + + Parses . + + BlankRecord to parse. + Blank string. + + + + Reparses . + + Record to reparse. + + + + Parses FormulaRecord. + + FormulaRecord to parse. + List with Biff records. + Position of formula in the list. + + + + Parses . + + BoolErrRecord to parse. + Extracted BoolError record. + + + + Parses RStringRecord. + + RStringRecord to parse. + Blank string. + + + + Adds listener for the NameXIndexChanged event + if there is NameXPtg in the formula. + + Parsed formula. + Workbook index. + Name index. + Indicates whether event handler should be added. + + + + Attaches handler to NameIndexChanged event. + + Workbook with name. + Event handler. + Parsed formula. + Workbook index. + New index. + Indicates whether event handler should be added. + + + + Attaches index changed event handler to extern name collection. + + Parent workbook. + NamexPtg that identifies named Range. + Workbook index. + NamedRange index to attach to. + Event handler. + Dictionary with indexes of named Range that already have attached event. + Indicates whether event handler should be added. + + + + Attaches index changed event handler to local name collection. + + Parent workbook. + NamePtg that identifies named Range. + Workbook index. + New name index. + Event handler + Dictionary with indexes of named Range that already have attached event. + Indicates whether event handler should be added. + + + + Combines book index and name index into one index. + + Book index. + Name index. + Combined index. + + + + This is handler of the NameIndexChanged event + of the formula contained by the Range + + Sender of the event. + Event arguments. + + + + Handler for named Range index changed event for local named Ranges. + + Event sender. + Event arguments. + + + + Handler for named Range index changed event for external named Ranges. + + Event sender. + Event arguments. + + + + Gets the formula for a range + + Row Index + Column index + Formula string + + + + Activates the cell. + + Returns the active cell. + + The following code illustrates how to activate a Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Activates 'F1' cell. + worksheet.Range["F1"].Activate(); + + workbook.SaveAs("Activate.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Activates the cell and its worksheet. + + True to set as top left cell. + Returns the active cell. + + The following code illustrates how to activate a Range with scroll flag. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Activates 'F1' cell. + worksheet.Range["F1"].Activate(true); + + workbook.SaveAs("Activate.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Groups the Range by row/column with collapse flag. + + + Represents to expand the group by rows/columns. + + Indicates whether group should be collapsed. + Returns the Range after grouping. + + The following code illustrates how to group the Range with collapse flag. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Group Rows + worksheet.Range["A1:A3"].Group(ExcelGroupBy.ByRows, true); + + //Group Columns + worksheet.Range["A1:B1"].Group(ExcelGroupBy.ByColumns, false); + + workbook.SaveAs("Grouping.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Groups the Range by row/column with collapse flag. + + Represents to expand the group by rows/columns. + Indicates whether group should be collapsed. + Indicates whether group should be collapsed. + Returns the Range after grouping. + + + + Groups the Range by row/column. + + + Represents to expand the group by rows/columns. + + Returns the Range after grouping. + + The following code illustrates how to group the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Group Rows + worksheet.Range["A4:A6"].Group(ExcelGroupBy.ByRows); + + //Group Columns + worksheet.Range["C1:F1"].Group(ExcelGroupBy.ByColumns); + + workbook.SaveAs("Grouping.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets list of value from numeric cells in the range. + + Considers numeric value of date formatted cells. + List of value from numeric cells in the range. + + + + Returns sum of numeric cells in the range. + + + The following code illustrates how to find the sum of numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1:A3"].Value = "10"; + + //Returns Sum of numeric cells in the range. + double sum = worksheet.Range["A1:A3"].Sum(); + + workbook.SaveAs("Sum.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns sum of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + The following code illustrates how to find the sum of numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1:A3"].Value = "10"; + + //Returns Sum of numeric cells in the range. + double sum = worksheet.Range["A1:A3"].Sum(true); + + workbook.SaveAs("Sum.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns average of numeric cells in the range. + + + The following code illustrates how to find the average of numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1:A3"].Value = "10"; + + //Returns average of numeric cells in the range. + double average = worksheet.Range["A1:A3"].Average(); + + workbook.SaveAs("Average.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns average of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + The following code illustrates how to find the average of numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1:A3"].Value = "10"; + + //Returns average of numeric cells in the range. + double average = worksheet.Range["A1:A3"].Average(true); + + workbook.SaveAs("Average.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns minumum value from numeric cells in the range. + + + The following code illustrates how to find the minumum value from numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1"].Value = "10"; + worksheet.Range["A2"].Value = "20"; + worksheet.Range["A3"].Value = "30"; + + //Returns minumum value from Numeric cells in the given range. + double minimum = worksheet.Range["A1:A3"].Min(); + + workbook.SaveAs("Min.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns minumum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + The following code illustrates how to find the minumum value from numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1"].Value = "10"; + worksheet.Range["A2"].Value = "20"; + worksheet.Range["A3"].Value = "30"; + + //Returns minumum value from Numeric cells in the range. + double minimum = worksheet.Range["A1:A3"].Min(true); + + workbook.SaveAs("Min.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns maximum value from numeric cells in the range. + + + The following code illustrates how to find the maximum value from numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1"].Value = "10"; + worksheet.Range["A2"].Value = "20"; + worksheet.Range["A3"].Value = "30"; + + //Returns maximum value from numeric cells in the range. + double maximum = worksheet.Range["A1:A3"].Max(); + + workbook.SaveAs("Max.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns maximum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + The following code illustrates how to find the maximum value from numeric cells in the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["A1"].Value = "10"; + worksheet.Range["A2"].Value = "20"; + worksheet.Range["A3"].Value = "30"; + + //Returns maximum value from Numeric cells in the given range. + double maximum = worksheet.Range["A1:A3"].Max(); + + workbook.SaveAs("Max.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Trim the empty rows at top and bottom of the range, the empty columns at left and right of the range. + + Returns the range after trim. + /// + The following code illustrates how to Trim the empty rows at top and bottom of the range, the empty columns at left and right of the range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set value to cells + worksheet.Range["B1"].Value = "10"; + worksheet.Range["B2"].Value = "20"; + worksheet.Range["B3"].Value = "30"; + + //Returns the range after trim the given range. + IRange trim = worksheet.Range["A1:B3"].Trim(); + + workbook.SaveAs("Trim.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Combines the contents of the selected cells in a new larger cell. + + + The following code illustrates how to merge the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Merging cells + worksheet.Range["A16:C16"].Merge(); + + workbook.SaveAs("Merging.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Combines the contents of the selected cells in a new larger cell with clear option flag. + + Clears the Merged cell. + + The following code illustrates how to merge the Range with clear option. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Merging cells + worksheet.Range["A16:C16"].Merge(true); + + workbook.SaveAs("Merging.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Updates the Merged region (clears the conditional formats , data validation and copy the styles) + + + + + Applies the first cell format to rest of the cell; + + + + + Ungroups the Range. + + Represents to expand the group by rows/columns. + Returns the Range after ungrouping. + + The following code illustrates how to ungroup the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Ungroup Rows + worksheet.Range["A1:A3"].Ungroup(ExcelGroupBy.ByRows); + + //Ungroup Columns + worksheet.Range["C1:F1"].Ungroup(ExcelGroupBy.ByColumns); + + workbook.SaveAs("Ungrouping.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Separates merged cells into individual cells. + + + The following code illustrates how to perform merging in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Un-Merging merged cells + worksheet.Range["A16:C16"].UnMerge(); + + workbook.SaveAs("UnMerging.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Keep rows and columns visible in the Range while the rest of the worksheet scrolls. + + + The following code illustrates how to freeze a pane in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Applying Freeze Pane to the sheet by specifying a cell. + sheet.Range["B2"].FreezePanes(); + + workbook.SaveAs("Freeze.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Clears content in the Range. + + + The following code illustrates how to clear the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Clears the Range �A4� . + sheet.Range["A4"].Clear(); + + workbook.SaveAs("ClearRange.xlsx"); + workbook.Version = ExcelVersion.Excel2013; + workbook.Close(); + excelEngine.Dispose(); + + + + + + Clears content and formats in the Range. + + True to clear format. + + The following code illustrates how to clear the Range with formats. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Clears the Range �A4� and its formatting. + sheet.Range["A4"].Clear(true); + + workbook.SaveAs("ClearRange.xlsx"); + workbook.Version = ExcelVersion.Excel2013; + workbook.Close(); + excelEngine.Dispose(); + + + + + + Clears Range completely. + + + + + Clears the Range and shifts the cells Up or Left. + + Shifts the cells to the specified direction. + + The following code illustrates how to clear the Range with specified direction. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Clearing a Range �A4� with move options. + sheet.Range["A4"].Clear(ExcelMoveDirection.MoveLeft); + + workbook.SaveAs("ClearRange.xlsx"); + workbook.Version = ExcelVersion.Excel2013; + workbook.Close(); + excelEngine.Dispose(); + + + + + + Clears the Range with the specified and . + + Shifts the cells to the specified direction. + Copies the cells with the specified copy Range options. + + The following code illustrates how to clear the Range with specified direction and copy Range options. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Clearing a Range �A4� with copy Range and move options. + sheet.Range["A4"].Clear(ExcelMoveDirection.MoveLeft,ExcelCopyRangeOptions.All); + + workbook.SaveAs("ClearRange.xlsx"); + workbook.Version = ExcelVersion.Excel2013; + workbook.Close(); + excelEngine.Dispose(); + + + + + + clears the cell formats,comments,contents based on clear option. + + + + + + Clears the Range with the specified . + + Represents the clear options. + + The following code illustrates how to clear the Range with clear options. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Clears the Range �A4� with its clear options. + sheet.Range["A4"].Clear(ExcelClearOptions.ClearAll); + + workbook.SaveAs("ClearRange.xlsx"); + workbook.Version = ExcelVersion.Excel2013; + workbook.Close(); + excelEngine.Dispose(); + + + + + + clears the comments of the cell. + + + + + Moves cells to the specified Range (without updating formulas). + + Represents the destination Range to move. + + The following code illustrates how to move the Range. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Moving a Range �A1� to �A5�. + IRange source = sheet.Range["A1"]; + IRange destination = sheet.Range["A5"]; + source.MoveTo(destination); + + workbook.Version = ExcelVersion.Excel2013; + workbook.SaveAs("MoveRange.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Moves the cells to the specified Range. + + Represents a destination Range. + Specifies the options to update formulas and merged Ranges during copy Range. + + + + Copies the Range to the specified Range (without updating formulas). + + Represents the destination Range to copy. + Returns the copied Range. + + The following code illustrates how to copy the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Copying a Range �A1� to �A5�. + IRange source = sheet.Range["A1"]; + IRange destination = sheet.Range["A5"]; + source.CopyTo(destination); + + workbook.Version = ExcelVersion.Excel2013; + workbook.SaveAs("CopyRange.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Copies the Range to the specified destination Range with copy options. + + Represents the destination Range to copy. + Represents if the pasteLinkOptions implement or not . + Returns the copied Range. + + The following code illustrates how to copy the Range with pasteLink options. + + ExcelEngine engine = new ExcelEngine(); + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IRange source = worksheet["A1:D5"]; + IRange destination = worksheet["E10"]; + // Copy range as link from source to destination + source.CopyTo(destination, true); + workbook.Version = ExcelVersion.Excel2013; + workbook.SaveAs("CopyRange.xlsx"); + workbook.Close(); + engine.Dispose(); + + + + + + Copies the Range to the specified destination Range with copy options. + + Represents the destination Range to copy. + Represents the copy Range options. + Returns the copied Range. + + The following code illustrates how to copy the Range with copy options. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + // Copying a Range �A1� to �A5�. + IRange source = sheet.Range["A1"]; + IRange destination = sheet.Range["A5"]; + source.CopyTo(destination, ExcelCopyRangeOptions.All); + workbook.Version = ExcelVersion.Excel2013; + workbook.SaveAs("CopyRange.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Copies the Range to the specified destination Range with copy options and skips copying blank cells in the source. + + Represents the destination Range to copy. + Represents the copy Range options. + Represents the skip blank cells in the source. + + + + + Returns intersection of the Range with specified Range. + + Range to be intersected. + Returns the intersection Range;if there is no intersection, NULL is returned. + + The following code illustrates how to perform IntersectWith in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Merging cells + IRange range = worksheet.Range["A16:C16"]; + IRange commonRange = worksheet.Range["B16:D16"].IntersectWith(range); + workbook.SaveAs("Intersection.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Merges the Range with specified Range and returns merged Range. + + Range to be merged with. + Merged Ranges or null if wasn't able to merge Ranges. + + The following code illustrates how to perform MergeWith in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Merging cells + IRange range = worksheet.Range["A16:C16"]; + worksheet.Range["D16"].MergeWith(range); + workbook.SaveAs("Merging.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Adds a comment. returns null if the cell has threaded comment + + Returns a comment shape. + + The following code illustrates how to insert Comments in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + // Adding comments to a cell. + ICommentShape comment = sheet.Range["A1"].AddComment(); + comment.Text= "Comments"; + + // Add Rich Text Comments. + IRange range = sheet.Range["A6"]; + range.AddComment().RichText.Text = "RichText"; + IRichTextString rtf = range.Comment.RichText; + + // Formatting first 4 characters. + IFont redFont = workbook.CreateFont(); + redFont.Bold = true; + redFont.Color = ExcelKnownColors.Red; + rtf.SetFont(0, 3, redFont); + + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Adds new comment or returns an old one if was present with parse options. Returns null if the cell has threaded comment. + + Indicates whether to parse comment fill line options. + Returns a comment shape. + + + + Measures size of the string. + + String to measure. + Size of the string. + + + + Changes the height of the rows in the Range to achieve the best fit. + + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, Windows Phone, Universal, UWP, Xamarin and NetStandard platforms only. + + The following code shows how to auto-size row height to its cell content. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Auto-fit rows + worksheet.Range["A2"].Text = "Fit the content to row"; + worksheet.Range["A2"].WrapText = true; + worksheet.Range["A2"].AutofitRows(); + + workbook.SaveAs("AutoFit.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Changes the width of the columns in the Range to achieve the best fit. + + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, Windows Phone, Universal, UWP, Xamarin and NetStandard platforms only. + + The following code shows how to auto-size row height to its cell content. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Auto-fit columns + worksheet.Range["B4"].Text = "Fit the content to column"; + worksheet.Range["B4"].AutofitColumns(); + + workbook.SaveAs("AutoFit.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Auto fits the column from specified first to last column. + + The first column. + The last column. + + + + Determines whether the Range is Merged or not. + + The merged cells. + Represents the row. + Represents the column + Whether method called by AutoFitColumn or AutoFitRow + Difference of Merged Range. + + true, if the Range is merged, else false. + + + + + Gets the display text. + + The row. + The column. + The format impl. + + + + + Returns the formula function name. + + + + + Updates the format for formula based display text. + + + + + Gets the number or date time. + + The format impl. + The cell value. + + + + + Gets the current date and time if calculate on open is true. + + + + + Returns a object that represents a range thats offset from the specified range. + + The number of rows (positive, negative, or 0 (zero)) by which the range is to be offset + + The number of columns (positive, negative, or 0 (zero)) by which the range is to be offset + + + Use the Offset method to access the cell range of the same size as the current range which is shifted by the specified number of rows and columns. + + Returns a range which is shifted by the specified number of rows and columns. + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IRange range = worksheet.Range[5,6]; + var offset = range.Offset(-3,-1); + var address2 = offset.AddressLocal; + workbook.SaveAs("output.xlsx"); + } + + + + + + Resizes the specified range a object that represents the resized range. + + The number of rows in the new range. + The number of columns in the new range. + + Use the Resize method to change the size of range by specified rows and columns from the current range. + + Returns the resized range. + + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IRange range = worksheet.Range[5,6]; + var resize = range.Resize(1000,2000); + var address = resize.AddressLocal; + workbook.SaveAs("output.xlsx"); + } + + + + + + Updates the display text with space according to the column width. + + + + + Gets text width. + + The text to be calculated. + The cell Font. + Measured width of the given text + + + + Gets format string according to the section. + + The value for the range. + The processed format string based on format section. + + + + + Replaces the string with the specified string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + The following code snippet illustrates how to replace the string with another string. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:A3"].Value = "Find"; + string oldValue = "Find"; + string newValue = "NewValue"; + sheet.Range["A1:A3"].Replace(oldValue, newValue); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified string value based on the given . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + The following code snippet illustrates how to replace the string with another string. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:A3"].Value = "Find"; + string oldValue = "Find"; + string newValue = "NewValue"; + sheet.Range["A1:A3"].Replace(oldValue, newValue, ExcelFindOptions.MatchCase); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + The following code snippet illustrates how to replace the string value with double. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:A3"].Value = "Ten"; + string oldValue = "Ten"; + sheet.Range["A1:A3"].Replace(oldValue,10.0); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified DateTime value. + + The string to be replaced. + The datetime value to replace all occurrences of oldValue. + The following code illustrates how to replace the string value with datetime. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:A3"].Value = "Find"; + string oldValue = "Find"; + DateTime dateTime = DateTime.Now; + sheet.Range["A1:A3"].Replace(oldValue,dateTime); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + The following code snippet illustrates how to replace the string with array of string values. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Value = "Find"; + string oldValue = "Find"; + string[] newValues = { "X values", "Y values" }; + sheet.Range["A1:A3"].Replace(oldValue, newValues, true); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + The following code snippet illustrates how to replace the string with array of int values. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Value = "Find"; + string oldValue = "Find"; + int[] newValues = { 1, 2 }; + sheet.Range["A1:A3"].Replace(oldValue, newValues, true); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + The following code snippet illustrates how to replace the string with array of double values. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Value = "Find"; + string oldValue = "Find"; + double[] newValues = { 1.00, 3.00 }; + sheet.Range["A1:A3"].Replace(oldValue, newValues, true); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified datatable. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + The following code snippet illustrates how to replace the string value with data table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Value = "AB2"; + //Create the data table + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("Dosage", typeof(int)); + table.Rows.Add(1); + // Replace the value with data table. + sheet.Range["A1:A3"].Replace("AB2", table, true); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Replaces the string with the specified datacolumn. + + The string to be replaced. + DataColumn with new data. + Indicates whether field name must be shown. + + The following code snippet illustrates how to replace the string value with data column. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Value = "AB2"; + //Create the data table + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("Dosage", typeof(int)); + table.Rows.Add(1); + System.Data.DataColumn dataColumn = table.Columns[0]; + // Replace the value with data column. + sheet.Range["A1:A3"].Replace("AB2", dataColumn, true); + string fileName = "Replace.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence cell with the specified string value and . + + Value to found. + Flag that represent type of search. + Returns the first cell with a specified string value, or null if value was not found. + + The following code illustrates how to find the first occurrence of the specified string value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with string + IRange result = sheet["A2:K100"].FindFirst("Simple text", ExcelFindType.Text); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence cell with the specified double value and . + + Value to found. + Flag that represent type of search. + Returns the first cell with a specified double value, or null if value was not found. + + The following code illustrates how to find the first occurrence of the specified double value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with number + IRange result = sheet["A2:K100"].FindFirst(100.32, ExcelFindType.Number); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence cell with the specified bool value. + + Value to be found. + Returns the first cell with a specified bool value, or null if value was not found. + + The following code illustrates how to find the first occurrence of the specified bool value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with bool + IRange result = sheet["A2:K100"].FindFirst(true); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence cell with the specified DateTime value. + + Value to be found. + Returns the first cell with a specified DateTime value, or null if value was not found. + + The following code illustrates how to find the first occurrence of the specified DateTime value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with DateTime + IRange result = sheet["A2:K100"].FindFirst(DateTime.Now); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the first occurrence cell with the specified TimeSpan value. + + Value to be found. + Returns the first cell with a specified TimeSpan value, or null if value was not found. + + The following code illustrates how to find the first occurrence of the specified TimeSpan value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find First with TimeSpan + IRange result = sheet["A2:K100"].FindFirst(TimeSpan.MinValue); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells with a specified string value and . + + Value to be found. + Represents type of the value to be found. + Returns the cells with a specified string value, or null if value was not found. + + The following code illustrates how to find the cells with specified string value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find all with string + IRange[] results = sheet["A2:K100"].FindAll("Simple text", ExcelFindType.Text); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells with a specified double value and . + + Value to be found. + Represents type of the value to be found. + Returns the cells with a specified double value, or null if value was not found. + + The following code illustrates how to find the cells with specified double value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find All with number + IRange[] results = sheet["A2:K100"].FindAll(100.32, ExcelFindType.Number); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells with a specified bool value. + + Value to be found. + Returns the cells with a specified bool value, or null if value was not found. + + The following code illustrates how to find the cells with specified bool value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find all with bool + IRange[] results = sheet["A2:K100"].FindAll(true); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells with a specified DateTime value. + + Value to be found. + Returns the cells with a specified DateTime value, or null if value was not found. + + The following code illustrates how to find the cells with specified DateTime value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find all with DateTime + IRange[] results = sheet["A2:K100"].FindAll(DateTime.Now); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Returns the cells with a specified TimeSpan value. + + Value to be found. + Returns the cells with a specified TimeSpan value, or null if value was not found. + + The following code illustrates how to find the cells with specified TimeSpan value in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(2); + IWorksheet sheet = workbook.Worksheets[0]; + + //Find All with Timespan + IRange[] results = sheet["A2:K100"].FindAll(TimeSpan.MinValue); + + string fileName = "Find.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Copies Range to the clipboard. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Applies border around the Range. The default line style is . + + + The following code illustrates how to apply border around the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Applies border around the Range with default line style. + worksheet.Range["A2:F4"].BorderAround(); + + workbook.SaveAs("Border.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Applies border around the Range with the specified . + + Represents border line style. + + The following code illustrates how to apply border around the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Applies border around the Range with specified line style. + worksheet.Range["A2:F4"].BorderAround(ExcelLineStyle.Double); + + workbook.SaveAs("Border.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Applies border around the Range with the specified and . + + Represents border line style. + Represents border color. + + The following code illustrates how to apply border around the Range with color. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Applies border around the Range with specified line style and color. + worksheet.Range["A2:F4"].BorderAround(ExcelLineStyle.Double,System.Drawing.Color.Blue); + + workbook.SaveAs("Border.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Applies border around the Range with the specified and . + + Represents border line style. + Represents border color. + + The following code illustrates how to apply border around the Range with ExcelKnownColors. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Applies border around the Range with specified line style and ExcelKnownColors. + worksheet.Range["A2:F4"].BorderAround(ExcelLineStyle.Double,ExcelKnownColors.Blue); + + workbook.SaveAs("Border.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the range corresponding to the migrant range with some other row and column indexes. + + + + + Applies border inside the Range. The default line style is . + + + The following code illustrates how to apply border inside the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Applies border inside the Range with default line style. + worksheet.Range["A2:F4"].BorderInside(); + + workbook.SaveAs("Border.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Applies border inside the Range with the specified . + + Represents border line style. + + The following code illustrates how to apply border inside the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Applies border around the inside with specified line style. + worksheet.Range["A2:F4"].BorderInside(ExcelLineStyle.Double); + + workbook.SaveAs("Border.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Applies border inside the Range with the specified and . + + Represents border line style. + Represents border color. + + The following code illustrates how to apply border inside the Range with color. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Applies border inside the Range with specified line style and color. + worksheet.Range["A2:F4"].BorderInside(ExcelLineStyle.Double,System.Drawing.Color.Blue); + + workbook.SaveAs("Border.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Applies border inside the Range with the specified and . + + Represents border line style. + Represents border color. + + The following code illustrates how to apply border around the Range with ExcelKnownColors. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Applies border around the Range with specified line style and ExcelKnownColors. + worksheet.Range["A2:F4"].BorderAround(ExcelLineStyle.Double,ExcelKnownColors.Blue); + + workbook.SaveAs("Border.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Applies no border in the Range. + + + The following code illustrates how to remove border in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Applies border around the Range with default line style. + worksheet.Range["A2:F4"].BorderNone(); + + workbook.SaveAs("Border.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Sets auto format with default auto format option for Range. + + Represents format to set. + + + + Sets auto format with specified auto format option for Range. + + Represents auto format to set. + Represents auto format options. + + + + Sets cell value. + + Value to be set. + + + + Collapses the group by rows/columns. + + + Represents to collapse the group by rows/columns. + + + The following code illustrates how to collapse the group in the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Collapse group + worksheet.Range["A5:A15"].CollapseGroup(ExcelGroupBy.ByRows); + + workbook.SaveAs("CollapseGroup.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Expands the group by rows/columns. + + Represents to expand the group by rows/columns. + + The following code illustrates how to expand the group in the Range. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Expand group with flag set to expand parent + worksheet.Range["A5:A15"].ExpandGroup(ExcelGroupBy.ByRows); + + workbook.SaveAs("ExpandGroup.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Expands the group by row/column with collapse option. + + + Represents to expand the group by rows/columns. + + Represent the collapses options. + + The following code illustrates how to perform ExpandGroup in the Range with collapse option. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Expand group with flag set to expand parent + worksheet.Range["A5:A15"].ExpandGroup(ExcelGroupBy.ByRows, ExpandCollapseFlags.ExpandParent); + + workbook.SaveAs("ExpandGroup.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Check for escape sequence added string and removes it + + input string + the string which have removed escape sequences + + + + Check for quotes added to format string. + + input string + The string processed for quotes. + + + + Gets the dependent cells which refer to other cells. + + Returns the dependent cells or null if value was not found. + The following code illustrates how to get the dependent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDependents(); + + string fileName = "Dependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the dependent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the dependents cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDependents(true); + + string fileName = "Dependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct dependent cells which refer to other cells. + + Returns the direct dependent cells or null if value was not found. + The following code illustrates how to get the direct dependent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDirectDependents(); + + string fileName = "DirectDependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the direct dependent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the direct dependents cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDirectDependents(true); + + string fileName = "DirectDependents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the precedent cells which are referred by a formula in another cell. + + Returns the precedent cells or null if value was not found. + The following code illustrates how to get the precedent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetPrecedents(); + + string fileName = "Precedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the precedent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the precedent cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetPrecedents(true); + + string fileName = "Precedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Returns the direct precedent cells or null if value was not found. + The following code illustrates how to get the direct precedent cells from the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDirectPrecedents(); + + string fileName = "DirectPrecedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the direct precedent cells with a specified bool value or null if value was not found. + The following code illustrates how to get the direct precedent cells from all the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("FormulaExcel.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IRange[] results = sheet["A1"].GetDirectPrecedents(true); + + string fileName = "DirectPrecedents.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Get dependents cells from specified worksheet + + Worksheet to get dependents cells. + Indicates whether check other worksheets. + + + + Get reference cells which are used in the range. + + Worksheet to get dependents cells. + Workbook precedents cells collection. + Indicates whether check other worksheets. + + + + Gets the dependent ranges which refer to other cells. + + Indicates whether to check from other worksheets. + Indicates whether to get only direct dependents. + Returns the dependent cells with a specified bool value or null if value was not found. + + + + Gets the precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Indicates whether to get only direct precendets. + Returns the dependent cells with a specified bool value or null if value was not found. + + + + Get and add named range cells to precedents cells collection. + + source range which Worksheet to get dependents cells. + ReferToRange for the name. + Precedents cells collection. + Workbook precedents cells collection. + List collcetion which contains referred cells by the source range. + Indicates whether check other worksheets. + + + + Get and add named range cells to precedents cells collection. + + source range cell address. + Workbook precedents cells collection. + Precedents cells collection. + + + + Returns new address of Range. + + Dictionary with Worksheet names. + String that sets as a worksheet name. + Returns string with new name. + + + + Creates the copy of current instance. + + Represents a parent object. + Hash table with new names. + Represents a parent workbook. + Returns cloned Range. + + + + Clears conditional formats. + + + + + Clears conditional formats. + + + + + Clears data validations. + + + + + Returns array that contains information about Range. + + Rectangles that describes Range with zero-based coordinates. + + + + Returns number of rectangles returned by GetRectangles method. + + Number of rectangles returned by GetRectangles method. + + + + Update the cell value when calc engine is enabled. + + + + + + + + Returns R1C1 address from cell index. + + Cell index. + Returns R1C1 address. + + + + Returns R1C1 address from cell index. + + Cell index. + Returns R1C1 address. + + + + Converts cell name to cell index. + + Name of the cell. + Cell index of the specified cell. + + When specified cell name is null. + + + When length of the specified cell name is less than 2. + + + When length of the alpha part of the name is less + than 1 or greater than 2. + + + When length of the number part of the name is less + than 1 or greater than 5. + + + + + Converts cell name to row and column index. + + Name of the cell. + Row index. + Column index. + + + + Converts column name into index. + + Name to convert. + Converted value. + + + + Converts column index into string representation. + + Column to process. + String name in excel of the column + + + + Returns cell name by specified column and row index. + + Column index of the cell. + Row index of the cell. + Cell name. + + When firstColumn or firstRow is less than one. + + + + + Returns cell name by specified column and row index with R1C1-style notation flag. + + Column index of the cell. + Row index of the cell. + Indicates whether to use R1C1 reference mode. + Cell name. + + When firstColumn or firstRow is less than one. + + + + + Returns cell name by specified column and row index with R1C1-style notation and separater flag. + + Column index of the cell. + Row index of the cell. + Indicates whether to use R1C1 reference mode. + If true adds '$' separator. + Cell name. + + When firstColumn or firstRow is less than one. + + + + + Returns the Range reference for the specified Range in the language + of the user. + + First row of the Range. + First column of the Range. + Last row of the Range. + Last column of the Range. + The Range reference for the specified Range in the language of the user. + + + + Returns the Range reference for the specified Range in the language + of the user. + + First row of the Range. + First column of the Range. + Last row of the Range. + Last column of the Range. + Indicates whether to use R1C1 reference mode. + The Range reference for the specified Range in the language of the user. + + + + Returns cell name by column and row index with dollar sign. + + Column index of the cell. + Row index of the cell. + Cell name. + + When firstColumn or firstRow is less than one. + + + + + Returns cell index by specified column and row index. + + Column index of the cell. + Row index of the cell. + Cell index. + + When firstRow or firstColumn is less than zero. + + + + + Returns row index from cell index. + + Cell index. + Row index. + + + + Returns column index from cell index. + + Cell index. + Column index. + + + + Extracts worksheet name from Range name. + + Range name to extract from. + Worksheet name. + + + + Helper methods for WrapText Property. + + List of IRange. + Gets WrapText property value. + + + + Helper methods for WrapText Property. + + List of IRange. + Value to set. + + + + Helper methods for WrapText Property. + + List of IRange. + Gets WrapText property value. + + + + Helper methods for CellStyleName Property. + + List of IRange. + Gets CellStyleName property value. + + + + Parses string representation of the Range. + + Range to parse. + Parent workbook. + First row. + First column. + Last row. + Last column. + Number of parts: 1 - one cell, 2 - range of cells. + + + + Finds the minimum and maximum row/column values from among the string representation of cells. + + Cells to find minimum and maximum. + First row. + First column. + Last row. + Last column. + + + + Returns rectangle object, that represents rectangle of Range. + + Represents the Range. + If true than thrown an exception, if Range is null. + Returns rectangle, that represents borders of Range. + + + + Returns rectangle object, that represents rectangle of Range. + + Represents the Range. + If true than thrown an exception, if Range is null. + Returns rectangle, that represents borders of Range. + + + + Get Custom Number format Color value. + + + + + Get the color list from input numberformat + + input number format + default color value + the list of color with its key + + + + Returns the color value from the input value name + + the color name + the output color value + + + + Crops the image with the specified offset. + + Source image to crop. + Left offset to crop from. + Top offset to crop from. + Right offset to crop. + Bottom offset to crop. + Indicates whether the destination image is transparent. + Returns the cropped image for the offsets specified. + + + + Checks whether the pixelFormat is supported or not. + + + True for Supported pixelFormat.Otherwise False. + + + + Called when NumberFormat of the Range changes. + + Event sender. + Event arguments. + + + + Attaches handler to NumberFormatChanged event of parent style. + + + + + Attaches event to cell styles. + + + + + Attaches handler to NumberFormatChanged of the specified wrapper. + + Wrapper to attach event to. + Handler to attach. + + + + Creates style. + + + + + Creates style wrapper. + + Extended format index. + + + + Initializes style wrapper. + + Extended format index. + + + + Sets index of extended format that defines style for this Range. + + Index to set. + + + + Changes style name. + + Name to set. + Style object that corresponds to the name. + + + + Add the XF index in collection for created cell style. + + + + + Returns name of the style, applied to the cell. + + Name of the style, applied to the cell. + + + + Returns WrapText of the style, applied to the cell. + + WrapText of the style, applied to the cell. + + + + Gets format code. + + Value representing number format code + + + + Gets the date time by culture. + + Date in string format. + Result in Datetime. + Returns true, when the date time is culture based. + + + + Updates Range information from record. + + + + + Checks whether formula arrays inside this Range are separated or not. + + Dictionary with records to skip. + True if records are not separated. + + + + Returns customized number format + + Number format string to be customized + Cutomized number format string + + + + Reparse cell if parsing wasn't successful when loading the workbook. + + + + + Returns ptg of range. + + Returns native ptg. + + + + Returns an enumerator that iterates through the Range. + + + + + + Gets or sets HTML string. + + + + + Gets the Range reference in macro language. Read-only. + + + The following code illustrates how to access Address property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + string address = sheet.Range[3, 4].Address; + + workbook.SaveAs("Address.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the Range reference in language of the user. Read-only. + + + The following code illustrates how to access AddressLocal property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + string address = sheet.Range[1, 2].AddressLocal; + + workbook.SaveAs("AddressLocal.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the Range reference along with sheet name using R1C1-style notation. Read-only. + + + The following code illustrates how to access AddressR1C1 property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + string address = sheet.Range[1, 1].AddressR1C1; + + workbook.SaveAs("AddressR1C1.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the Range reference using R1C1-style notation. Read-only. + + + The following code illustrates how to access AddressR1C1Local property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + string address = sheet.Range[1, 1].AddressR1C1Local; + + workbook.SaveAs("AddressR1C1Local.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets boolean value in the Range. + + + The following code illustrates how to set and access Boolean property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range[2, 4].Boolean = true; + bool boolean = sheet.Range[2, 4].Boolean; + + workbook.SaveAs("Boolean.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a collection that represents the borders of a style + in the Range. Read-only. + + Borders including a Range defined as part of a + conditional format will be returned. + + The following code illustrates how to access Borders property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IBorders borders = sheet["K3"].Borders; + borders.LineStyle = ExcelLineStyle.Dashed; + + workbook.SaveAs("Borders.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a object that represents the cells in the Range.Read-only. + + + The following code illustrates how to access Cells property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange[] cells = sheet["A1:E8"].Cells; + foreach (IRange range in cells) + { + // Do some manipulations + } + + workbook.SaveAs("Cells.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets column index of the first column in the Range which is one based index. Read-only. + + + The following code illustrates how to access Column property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + int firstColumn = sheet["E1:R3"].Column; + + workbook.SaveAs("Column.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets column group level of the Range. Read-only. + + + -1 - not all column in the Range have same group level. + 0 - No grouping, + 1 - 7 - group level. + + + + + Gets or sets the width of all columns in the specified Range, measured in points. + + + Gets Double.MinValue if the rows in the specified Range + aren't all the same width. + + + + + Gets the number of objects in the collection. Read-only. + + + + + Gets a Boolean value indicating whether Range has data validation. Read-only. + + If Range is not single cell, then gets true only if all cells have data validation. + + + + Gets a Boolean value indicating whether each cell of the Range has some conditional formatting. Read-only. + + + + + Gets or sets DateTime value in the Range. + + + Gets DateTime.MinValue if not all cells in the Range have same DateTime value. + + + The following code illustrates how to set and access DateTime property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range[2, 4].DateTime = DateTime.Now; + DateTime dateTime = sheet.Range[2, 4].DateTime; + + workbook.SaveAs("DateTime.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets cell value with its number format. Read-only. + + While accessing DisplayText for Range of cells, it gets DisplayText of the first cell + If a range contains a formula, must be invoked to get the calculated value of the formula + + + The following code illustrates how to access DisplayText property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange range= sheet.Range[3, 1]; + range.Value = "1/1/2015"; + range.NumberFormat = "dd-MMM-yyyy"; + string displayText = range.DisplayText; + + workbook.SaveAs("DisplayText.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a object that represents the cell at the end of the Range. + + + + + True if it is Entire row. + + + + + True if it is Entire Column. + + + + + Gets a object that represents the entire column (or + columns) in the Range. Read-only. + + + + + Gets a object that represents the entire row (or + rows) in the Range. Read-only. + + + + + Gets or sets error value in the Range. + + + + + Gets or sets the formula in A1-style notation and in + macro language for the Range. Read/write Variant. + + + + + Represents array formula which can perform multiple calculations on one or more of the items in an array. + + + The following code illustrates how to set and access FormulaArray property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Assign array formula + sheet.Range["A1:D1"].FormulaArray = "{1,2,3,4}"; + + //Adding a named range for the Range A1 to D1 + sheet.Names.Add("ArrayRange", sheet.Range["A1:D1"]); + + //Assign formula array with named Range + sheet.Range["A2:D2"].FormulaArray = "ArrayRange+100"; + + string fileName = "FormulaArray.xlsx"; + workbook.SaveAs(fileName); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the Formula in the cell as a string. + + + + + Gets the calculated value of the formula as a number. + + + + + Gets or sets the calculated value of the formula as a boolean. + + + + + Gets or sets the error value of the formula as a string. + + + + + Gets formula value. + + + + + Gets or sets a Boolean value indicating whether the formula will be hidden when the worksheet is protected. + + + True if the formula will be hidden when the worksheet is protected. + False if at least part of formula in the Range is not hidden. + + + + + Gets or sets formula DateTime value in the Range. + + + Gets DateTime.MinValue if not all cells in the Range have same FormulaDateTime value. + + + + + Gets or sets the formula for the Range, using R1C1-style notation. + + + + + Gets or sets the formula array for the Range, using R1C1-style notation. + + + + + Gets a Boolean value indicating whether Range contains formula. Read-only. + + True if all cells in the Range contain formulas; False if + at least one of the cells in the Range doesn't contain a formula. + + + + + Gets a Boolean value indicating whether Range contains array-entered formula. Read-only. + + + + + Gets or sets the horizontal alignment for the specified object. + + + + + Gets hyperlinks in the Range. Read-only. + + + The following code illustrates how to access Borders property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + // Creating a Hyperlink for a Website. + IHyperLink hyperlink = sheet.HyperLinks.Add(sheet.Range["C5"]); + hyperlink.Type = ExcelHyperLinkType.Url; + hyperlink.Address = "http://www.syncfusion.com"; + hyperlink.ScreenTip = "To know more About SYNCFUSION PRODUCTS go through this link"; + + workbook.SaveAs("Hyperlinks.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the indent level for cell or Range. + + It can be from 0 to 15 for Excel 97-2003 and 250 for Excel 2007-2013. + + + + Gets a Boolean value indicating whether cell type is boolean. + + + + + Gets a Boolean value indicating whether Range contains error value. + + + + + Gets a Boolean value indicating whether Range is grouped by column. Read-only. + + + + + Gets a Boolean value indicating whether Range is grouped by row. Read-only. + + + + + Gets or sets last column of the Range. + + + + + Gets or sets last row of the Range. + + + + + Gets or sets number value that is contained by Range. + + + When Range value is not a number. + + + + + Gets or sets format of cell which is similar to Style.NumberFormat property. + + + Gets NULL if all cells in the specified Range don't have the same number format. + + + The following code illustrates how to set and access NumberFormat property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange range= sheet.Range[3, 1]; + range.Value = "1/1/2015"; + range.NumberFormat = "dd-MMM-yyyy"; + string displayText = range.DisplayText; + + workbook.SaveAs("NumberFormat.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets row index of the first row in the Range. + Read-only.One based index. + + + + + Gets row group level. Read-only. + + + -1 - Not all rows in the Range have same group level. + 0 - No grouping, + 1 - 7 - Group level. + + + + + Gets the height of all the rows in the Range specified, measured in points. + + + Gets Double.MinValue if the rows in the specified Range aren't all the same height. Maximum Row height can be 409 + value, minimum is zero. + + + + + Gets an array of objects that represent the rows in the Range. Read only. + + + The following code illustrates how to access Columns property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange[] rows = sheet["A1:E8"].Rows; + foreach (IRange row in rows) + { + // Do some manipulations + } + + workbook.SaveAs("Rows.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets an array of objects that represent the columns in the Range. + Read only. + + + The following code illustrates how to access Columns property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange[] columns = sheet["A1:E8"].Columns; + foreach (IRange column in columns) + { + // Do some manipulations + } + + workbook.SaveAs("Columns.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a object that represents the style of the + Range. + + + The following code illustrates how to access CellStyle property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + // Accessing cell style of the Range. + IStyle rangeStyle = sheet["K4"].CellStyle; + rangeStyle.Font.Bold = true; + + workbook.SaveAs("CellStyle.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets name of the object that represents style of the + Range. + + + The following code illustrates how to access CellStyleName property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + // Creating a new style with cell back color, fill pattern and font attribute + IStyle style = workbook.Styles.Add("GreenBoldFillDiagonal"); + style.Color = System.Drawing.Color.LightGreen; + style.FillPattern = ExcelPattern.DarkUpwardDiagonal; + style.Font.Bold = true; + + // Assigning the cell style name to the Range. + sheet["A1"].CellStyleName = "GreenBoldFillDiagonal"; + + workbook.SaveAs("CellStyleName.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets built in style in the Range. + + + + + Gets or sets text contained by the cell. + + + + + Gets or sets TimeSpan contained by the cell. + + + + + Gets or sets the value of the Range. Does not support FormulaArray value. + + + + Sets different data types values as a string, + Value property parses the input string to determine its type which leads performance delay. + + + The only difference between the Value2 property and the Value property + is that the Value2 property does not use the Currency and Date data types. + Also, it does not support FormulaArray value. + + + + The following code illustrates how to set and access Value property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + IRange range= sheet.Range[3, 1]; + range.Value = "1/1/2015"; + range.NumberFormat = "dd-MMM-yyyy"; + string displayText = range.DisplayText; + + workbook.SaveAs("Value.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the calculated value of a formula in the Range. Read-only. + + To compute a formula, it is mandatory to enable calculate engine by + invoking EnableSheetCalculations method of worksheet object. It is also recommend to disable + calculate engine once all formula are computed by invoking DisableSheetCalculations method of worksheet object + + Following code illustrates how to access a calculated value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx", ExcelOpenType.Automatic); + IWorksheet sheet = workbook.Worksheets[0]; + + //Initializes Calculate Engine to perform calculation + sheet.EnableSheetCalculations(); + + //Returns the calculated value of a formula using the most current inputs + string calculatedValue = sheet["C1"].CalculatedValue; + //Formula calculation is disabled for the sheet. + sheet.DisableSheetCalculations(); + + workbook.SaveAs("Formula.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets the cell value. + + + + Sets different data types values as a object. + Value2 first checks whether the specified object has the type known for it (DateTime, TimeSpan, Double, Int). + If yes, then it uses the corresponding typed properties (DateTime, TimeSpan, and Number). + Otherwise, it calls Value property with String data type. + + + The only difference between the Value2 property and the Value property + is that the Value2 property does not use the Currency and Date data types. + Also, it does not support FormulaArray value. + + + + The following code illustrates how to set and access Value2 property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + //Assigning Value2 property of the Range. + sheet["A1"].Value2 = DateTime.Now; + sheet["A2"].Value2 = 45; + sheet["A3"].Value2 = false; + + // Checking Range types. + bool isDateTime = sheet["A1"].HasDateTime; + bool isNumber = sheet["A2"].HasNumber; + bool isboolean = sheet["A3"].HasBoolean; + + workbook.SaveAs("Value2.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets or sets a value indicating whether this instance is num reference for chart axis. + + + true if this instance is num reference; otherwise, false. + + + + + Gets or sets a value indicating whether this instance is a string reference for chart axis. + + + true if this instance is string reference; otherwise, false. + + + + + Gets or sets a value indicating whether this instance is multi reference for chart axis. + + + true if this instance is multi reference; otherwise, false. + + + + + Gets or sets the vertical alignment of the Range. + + + + + Gets the object in which belongs to the Range. Read-only. + + + + + Gets or sets cell range by row and column index. Row and column indexes are one-based. + + + + + Get cell Range. Row and column indexes are one-based. Read-only. + + + + + Gets cell Range with R1C1Notation flag. Read-only. + + + + + Gets cell Range with R1C1Notation flag. Read-only. + + + + + Gets the collection of conditional formats in the Range + Read-only. + + + The following code illustrates how to set and access Value2 property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + // Applying conditional formatting to "A1" + IConditionalFormats condition = sheet.Range["A2"].ConditionalFormats; + IConditionalFormat condition1 = condition.AddCondition(); + + // Represents conditional format rule that the value in target Range should be between 10 and 20 + condition1.FormatType = ExcelCFType.CellValue; + condition1.Operator = ExcelComparisonOperator.Between; + condition1.FirstFormula = "10"; + condition1.SecondFormula = "20"; + sheet.Range["A1"].Text = "Enter a number between 10 and 20"; + + workbook.SaveAs("ConditionalFormats.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + Gets a object that represents the data validation associated with the cell . Read-only. + + + The following code illustrates how to access DataValidation property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + //Data validation for number + IDataValidation validation = sheet.Range["A3"].DataValidation; + validation.AllowType = ExcelDataType.Integer; + + //Value between 0 to 10 + validation.CompareOperator = ExcelDataValidationComparisonOperator.Between; + validation.FirstFormula = "0"; + validation.SecondFormula = "10"; + + workbook.SaveAs("DataValidation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a Boolean value indicating whether Range has formula bool value. Read-only. + + + + + Gets a Boolean value indicating whether Range has formula error value. Read-only. + + + + + Gets a Boolean value indicating whether Range has formula value formatted as DateTime. Read-only. + + + + + Gets a Boolean value indicating whether Range has formula number value. Read-only. + + + + + Gets a Boolean value indicating whether Range has formula value evaluated as string. Read-only. + + + + + Gets a Boolean value indicating whether the Range is blank. Read-only. + + + + + Gets a Boolean value indicating whether the Range has value or style. Read-only. + + + + + Gets a Boolean value indicating whether Range contains bool value. Read-only. + + + The following code illustrates how to set and access HasBoolean property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + //Assigning Value2 property of the Range. + sheet["A3"].Value2 = false; + + // Checking Range types. + bool isboolean = sheet["A3"].HasBoolean; + + workbook.SaveAs("HasBoolean.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a Boolean value indicating whether Range contains DateTime value. Read-only. + + + The following code illustrates how to set and access HasDateTime property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + //Assigning Value2 property of the Range. + sheet["A1"].Value2 = DateTime.Now; + + // Checking Range types. + bool isDateTime = sheet["A1"].HasDateTime; + + workbook.SaveAs("HasDateTime.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a Boolean value indicating whether Range contains number. Read-only. + + + The following code illustrates how to set and access Value2 property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + //Assigning Value2 property of the Range. + sheet["A2"].Value2 = 45; + + // Checking Range types. + bool isNumber = sheet["A2"].HasNumber; + + workbook.SaveAs("HasNumber.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets a Boolean value indicating whether Range contains string. Read-only. + + + + + Gets a object that represents the comment associated with the Range. Read-only. + + + The following code illustrates how to insert Comments property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + // Adding comments to a cell. + sheet.Range["A1"].AddComment().Text = "Comments"; + + // Add Rich Text Comments. + IRange range = sheet.Range["A6"]; + range.AddComment().RichText.Text = "RichText"; + IRichTextString rtf = range.Comment.RichText; + + // Formatting first 4 characters. + IFont redFont = workbook.CreateFont(); + redFont.Bold = true; + redFont.Color = ExcelKnownColors.Red; + rtf.SetFont(0, 3, redFont); + + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets the threaded comment associated with the cell. + + The object + + The following code illustrates how to access ThreadedComment property of IRange + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Access threaded comment from IRange + IThreadedComment threadedComment = worksheet["C2"].ThreadedComment; + + if(threadedComment != null) + string text = threadedComment.Text; + + //Save and dispose + workbook.SaveAs("ThreadedComments.xlsx"); + workbook.Close(); + } + + + + + + Gets string with rich text formatting in the Range. Read-only. + + + + + Gets a Boolean value indicating whether cell contains formatted rich text string. + + + + + Checks whether Range is a part of merged Range. + + + + + Gets a object that represents the merged Range to which the cell or Range belongs. Read-only. + + If the specified cell isn�t in a merged Range, this property gets NULL. + + + + Gets a Boolean value indicating whether cell is initialized. Read-only. + + + + + Gets a Boolean value indicating whether Range's style differs from default style. + Read-only. + + + + + Gets or sets wrap text of the Range. + Read/write Boolean. + + + + + Gets or sets ignore error options for formula auditing. If not single cell gets concatenated flags. + + + + + Gets a Boolean value indicating whether Range has external formula. Read-only. + + + + + Gets a Boolean value indicating whether all values in the Range are preserved as strings. + + + + + String format for the text to be measured in UpdateText method. + + + + + Indicating whether the range indexer is absolute or relative. + + + + + Gets or sets the row height calculated or not. + + + + + Gets the Application object. + + + + + Gets the Parent object. + + + + + Application object for this object. + + + + + Gets the Range reference along with its sheet name in format "'Sheet1'!$A$1". Read-only. + + + The following code illustrates how to access AddressGlobal property of the Range. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[2]; + string address = sheet.Range[4, 3].AddressGlobal; + + workbook.SaveAs("AddressGlobal.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Gets global address (with $ signs) without worksheet name. + + + + + Gets list of all cells. + + + + + Checks if the Range represents a single cell or Range of cells. Read-only. + + + + + Gets or sets first row of the Range. + + + + + Gets or sets first column of the Range. + + + + + If it is a single cell, then it Gets its name; otherwise Gets NULL. Read-only. + + + + + If single cell, Gets its name; otherwise Gets -1. Read-only. + + + + + Gets type of the cell. Read-only. + + + + + Gets index of extended format. Read-only. + + + + + Sets or gets index of extended format. + + + When method is applied for the Range that contains + more than one cell. + + + + + Converts Range to rk subrecord. Read-only. + + + When cell does not contain rk record. + + + + + Gets parent workbook. Read-only. + + + + + Gets merge region if Range is part of any merge region; otherwise + Gets null. Read-only. + + + + + Gets parent worksheet. Read-only. + + + + + Gets or sets Internal record. + + + + + Gets Dictionary where key is ArrayRecord that at least partially intersects + with this Range. Read-only. + + + + + Checks if all formula arrays partially contained by this Range + are fully contained by this Range. Read-only. + + + + + Gets the number of cells in the Range. Read-only. + + + + + Gets number format object corresponding to this Range. Read-only. + + + + + Gets address global in the format required by Excel 2007. + + + + + Gets RowStorage from row + + + + + Gets a date separator of current culture + + + + + Gets a time separator of current culture + + + + + Get / sets type of the format. + + + + + Read-only. Returns FormatRecord for this Range. + + + + + Indicates whether Range contains number. Read-only. + + + + + Gets name of the parent worksheet. + + + + + Returns extended format for this Range. Read-only. + This property should only be used for reading values. + + + + + Returns type code of the underlying record. Read-only. + + + + + Gets or sets cell column. + + + + + Gets or sets cell row. + + + + + Enumeration that contains all possible cell types for the Range. + + + + + Indicates that range contains NumberRecord. + + + + + Indicates that range contains RKRecord. + + + + + Indicates that range contains LabelSSTRecord. + + + + + Indicates that range contains BlankRecord. + + + + + Indicates that range contains FormulaRecord. + + + + + Indicates that range contains BoolErrRecord. + + + + + Indicates that range contains RStringRecord. + + + + + Indicates that range contains LabelRecord. + + + + + + + + + + Event to change cell value + + + + + + + + + + + + + + Resets row and column values. + + One-based row index of the new cell address. + One-based column index of the new cell address. + + + + Set int value + + + + + + Set double value + + + + + + Set DateTime value + + + + + + Set boolean value + + + + + + Set string value + + + + + + This class contains stores true/false/undefined values for ranges. + + + + + Object that contains ranges with value equal to true. + + + + + Object that contains ranges with value equal to false. + + + + + Returns value for the range object. + + Range to get information about. + Value for the range. + + + + Sets property value for the range. + + Range to set value for. + Value to set. + + + + Clears all ranges. + + + + + Represents named range in the excel. + + + + + Represents a defined name for a range of cells. Names can be + either built-in names such as Database, Print_Area, and + Auto_Open or custom names. + + + Below these rules are should be followed, when you're creating a named range in Excel. + 1. The first character of a name must be one of the following characters: + letter, + underscore (_), + backslash (\). + 2. Remaining characters in the name can be + letters, + numbers, + periods, + underscore characters. + 3. The following are not allowed: + Space characters are not allowed as part of a name. + Names can't look like cell addresses, such as A$35 or R2D2. + C, c, R, r - can't be used as names. Excel uses them as selection shortcuts. + 4. Names are not case sensitive. For example, North and NORTH are treated as the same name. + To know more about Named Ranges refer this link. + + + + + Deletes the Named Range object. + + + To know more about Named Ranges refer this link. + + The following code illustrates how to delete a named range in wokbook and worksheet. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Deletes the named range object using workbook + workbook.Names[0].Delete(); + + //Deletes the named range object using worksheet + sheet.Names[0].Delete(); + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Returns the index number of the object within the collection of similar + objects. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of Index property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using workbook + IName namedTitle = workbook.Names.Add("NamedTitle"); + + //Returns the index number of the object within the collection of similar objects + workbook.Names[0].Name = "Titles"; + workbook.Names[0].Value = "Sheet1!$A$1:$C$1"; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("NamedData"); + + //Returns the index number of the object within the collection of similar objects + sheet.Names[0].Name = "Records"; + sheet.Names[0].Value = "Sheet1!$A$2:$C$3"; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the name of the object. Read / write String. + + + Below these rules are should be followed, when you're creating a named range in Excel. + 1. The first character of a name must be one of the following characters: + letter, + underscore (_), + backslash (\). + 2. Remaining characters in the name can be + letters, + numbers, + periods, + underscore characters. + 3. The following are not allowed: + Space characters are not allowed as part of a name. + Names can't look like cell addresses, such as A$35 or R2D2. + C, c, R, r - can't be used as names. Excel uses them as selection shortcuts. + 4. Names are not case sensitive. For example, North and NORTH are treated as the same name. + To know more about Named Ranges refer this link. + + The following code illustrates use of Name property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using workbook + IName namedTitle = workbook.Names.Add("NamedTitle"); + namedTitle.RefersToRange = sheet.Range["A1:C1"]; + + //Sets the name of the object + namedTitle.Name = "Titles"; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("NamedData"); + namedData.RefersToRange = sheet.Range["A2:C3"]; + + //Sets the name of the object + namedData.Name = "Records"; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Returns or sets the name of the object, in the language of the user. + Read / write String for Name. + + + Below these rules are should be followed, when you're creating a named range in Excel. + 1. The first character of a name must be one of the following characters: + letter, + underscore (_), + backslash (\). + 2. Remaining characters in the name can be + letters, + numbers, + periods, + underscore characters. + 3. The following are not allowed: + Space characters are not allowed as part of a name. + Names can't look like cell addresses, such as A$35 or R2D2. + C, c, R, r - can't be used as names. Excel uses them as selection shortcuts. + 4. Names are not case sensitive. For example, North and NORTH are treated as the same name. + To know more about Named Ranges refer this link. + + The following code illustrates use of NameLocal property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using workbook + IName namedTitle = workbook.Names.Add("NamedTitle"); + namedTitle.RefersToRange = sheet.Range["A1:C1"]; + + //Sets the name of the object + namedTitle.NameLocal = "TitlesLocal"; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("NamedData"); + namedData.RefersToRange = sheet.Range["A2:C3"]; + + //Sets the name of the object + namedData.NameLocal = "RecordsLocal"; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Gets / sets associated with the Name object. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of RefersToRange property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using workbook + IName namedTitle = workbook.Names.Add("Titles"); + + //Sets Range associated with the Name object + namedTitle.RefersToRange = sheet.Range["A1:C1"]; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("Records"); + + //Sets Range associated with the Name object + namedData.RefersToRange = sheet.Range["A2:C3"]; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + For the Name object, a string containing the formula that the name is + defined to refer to. The string is in A1-style notation in the language + of the macro, without an equal sign. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of Value property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using workbook + IName namedTitle = workbook.Names.Add("Titles"); + + //Sets string containing the formula that the name is defined to RefersToRange + namedTitle.Value = "Sheet1!$A$1:$C$1"; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("Records"); + + //Sets string containing the formula that the name is defined to RefersToRange + namedData.Value = "Sheet1!$A$2:$C$3"; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Determines whether the object is visible. Read / write Boolean. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of Visible property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using workbook + IName namedTitle = workbook.Names.Add("Titles"); + namedTitle.RefersToRange = sheet.Range["A1:C1"]; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("Records"); + namedData.RefersToRange = sheet.Range["A2:C3"]; + + //Set name visibility as false. + namedData.Visible = false; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether name is local. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of IsLocal property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("Records"); + namedData.RefersToRange = sheet.Range["A2:C3"]; + + //Indicates whether name is local + bool isLocal = namedData.IsLocal; + if (isLocal) + { + //Your Code Here + } + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Gets named range Value in R1C1 style. Read-only. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of ValueR1C1 property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("Records"); + namedData.RefersToRange = sheet.Range["A2:C3"]; + + //Gets named range Value in R1C1 style + string valueR1C1 = namedData.ValueR1C1; + if (valueR1C1 != string.Empty) + { + //Your Code Here + } + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Gets named range RefersTo. Read-only. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of RefersTo property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("Records"); + namedData.RefersToRange = sheet.Range["A2:C3"]; + + //Gets named range RefersTo + string refersTo = namedData.RefersTo; + if (refersTo != string.Empty) + { + //Your Code Here + } + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Gets named range RefersTo in R1C1 style. Read-only. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of RefersToR1C1 property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("Records"); + namedData.RefersToRange = sheet.Range["A2:C3"]; + + //Gets named range RefersTo in R1C1 style + string refersToR1C1 = namedData.RefersToR1C1; + if (refersToR1C1 != string.Empty) + { + //Your Code Here + } + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Returns parent . Read-only. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of Worksheet property in named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + //Gets parent worksheet of named range + IWorksheet namedWorksheet = sheet.Names[0].Worksheet; + if(namedWorksheet != null) + { + //Your Code Here + } + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Returns string representation of the name's scope. Read-only. The Scope property have a separate scope values for Workbook and Worksheet. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of Scope property for named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using workbook + IName namedTitle = workbook.Names.Add("NamedTitle"); + namedTitle.RefersToRange = sheet.Range["A1:C1"]; + + //Gets string representation of the name's scope for workbook + string scopeTitle = namedTitle.Scope; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("NamedData"); + namedData.RefersToRange = sheet.Range["A2:C3"]; + + //Gets string representation of the name's scope for worksheet + string scopeData = namedData.Scope; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Gets/sets the comment associated with the named range. + + + To know more about Named Ranges refer this link. + + The following code illustrates use of Description property for named range. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 88; + + //Create a Named Range using workbook + IName namedTitle = workbook.Names.Add("NamedTitle"); + namedTitle.RefersToRange = sheet.Range["A1:C1"]; + + //Sets the comment associated with the named range + namedTitle.Description = "Sample Workbook Description"; + + //Create a Named Range using worksheet + IName namedData = sheet.Names.Add("NamedData"); + namedData.RefersToRange = sheet.Range["A2:C3"]; + + //sets the comment associated with the named range + namedData.Description = "Sample Worksheet Description"; + + workbook.SaveAs("NamedRange.xlsx"); + workbook.Close(); + } + + + + + + Represents default sheet name separator. + + + + + String format for cell range. + + + + + Represents removed sheet index. + + + + + String representation of the workbook scope value. + + + + + Represents valid symbols. + + + + + Name record with info about this Name object. + + + + + Parent workbook for this object. + + + + + Parent worksheet for this object. + (but NameRecord still must be in Workbook). + + + + + Index of the Name object in the Workbook's Names collection. + + + + + Indicates whether the named range is deleted or not. + + + + + + + + + + + + + + + + + + + + Specifies the comment associated with the named range. + + + + + Specifies if the name is associated with the ListObject i.e. if table name or table column name + + + + + Specifies if the name is associated with the ListObject is deleted i.e. if table name or table column name is deleted. + + + + + Specifies if the name is associated with the Formula. + + + + + Creates a new Name object. + + Application object for the new Name object. + Parent object for the new Name object. + + + + Creates a new Name object. + + Application object for the new Name object. + Parent object for the new Name object. + + NameRecord that contains information about the new Name object. + + + Index of the Name object in the workbook's Names collection. + + + + + Creates a new Name object. + + Application object for the new Name object. + Parent object for the new Name object. + + NameRecord that contains information about the new Name object. + + + + + Creates a new Name object. + + Application object for the new Name object. + Parent object for the new Name object. + Name of the new Name object. + + Range that will be associated with the specified name. + + + + + + Creates new Name object. + + Application object for the new Name object. + Parent object for the new Name object. + Name of the new Name object. + Current index. + + + + Creates new Name object. + + Application object for the new Name object. + Parent object for the new Name object. + Name of the new Name object. + Current index. + Indicates whether name is local. + + + + Creates a new Name object. + + Application object for the new Name object. + Parent object for the new Name object. + Name of the new Name object. + + Range that will be associated with the specified name. + + + + + + + Sets index or global depending on IsLocal property value. + + Indicates whether name should be local. + + + + Copies range to the clipboard. + + + + + Returns a Range object that represents a range thats offset from the specified range. + + The number of rows (positive, negative, or 0 (zero)) by which the range is to be offset + The number of columns (positive, negative, or 0 (zero)) by which the range is to be offset + + + + + Resizes the specified range + + The number of rows in new range + The number of columns in new range + + + + + This method searches for the all cells with specified TimeSpan value. + + Value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified DateTime value. + + Value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified bool value. + + Value to search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified double value. + + Value to search. + Flag that represent type of search. + All found cells, or Null if value was not found. + + + + This method searches for the all cells with specified string value. + + Value to search. + Flag that represent type of search. + All found cells, or Null if value was not found. + + + + This method searches for the first cell with specified TimeSpan value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified DateTime value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified bool value. + + Value to search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified double value. + + Value to search. + Flag that represent type of search. + First found cell, or Null if value was not found. + + + + This method searches for the first cell with specified string value. + + Value to search. + Flag that represent type of search. + + + + + Replaces the string with the specified string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + + Replaces the string with the specified string value based on the given . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + + + + Replaces the string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + + + + Replaces the string with the specified DateTime value. + + The string to be replaced. + The datetime value to replace all occurrences of oldValue. + + + + Replaces the string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces the string with the specified datatable. + + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Replaces the string with the specified datacolumn. + + The string to be replaced. + DataColumn with new data. + Indicates whether field name must be shown. + + + + Adds comment to the range. + + Range's comment. + + + + Creates a threaded comment for the current cell with the specified text. + + Threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . + + + + Creates a threaded comment for the current cell with the specified text and author. + + Threaded comment text + The author of the threaded comment text + Optional. The creation time of the threaded comment + Returns the created instance of . + + + + Autofits all columns in the range. + + + + + Autofits all rows in the range. + + + + + Returns merge of this range with the specified one. + + The Range to merge with. + Merged ranges or NULL if wasn't able to merge ranges. + + + + Returns intersection of this range with the specified one. + + The Range with which to intersect. + Range intersection; if there is no intersection, NULL is returned. + + + + Copies this range into another location. + + Destination range. + Copy range options. + Destination range. + + + + Copies this range into another location using pasteLinkOptions. + + Destination range. + Check to implement the pasteLink option. + Destination range. + + + + Copies the range to the specified destination Range (without updating formulas). + + Destination range. + Range were this range was copied. + + + + Copies the Range to the specified destination Range with copy options and skip blank option. + + Represents the destination Range to copy. + Represents the copy Range options. + Represents the skip blank cells in the source. + Returns the copied Range. + + + + Moves the cells to the specified Range (without updating formulas). + + Destination Range. + + + + Clear the contents of the Range and shifts the cells Up or Left. + + Cells shift direction Up/Left. + Cells shifting options. + + + + Clears the Content, formats, comments based on clear option. + + + + + + Clear the contents of the Range and shifts the cells Up or Left + without formula or merged ranges update. + + Cells shift direction Up/Left. + + + + Clear the contents of the Range with formatting. + + True if formatting should also be cleared. + + + + Clear the contents of the Range. + + + + + Freezes pane at the current range. + + + + + Separates a merged area into individual cells. + + + + + Ungroups current range. + + Indicates type of ungrouping. Ungroup by columns or by rows. + Current range after ungrouping. + + + + Returns sum of numeric cells in the range. + + + + + Returns sum of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns average of numeric cells in the range. + + + + + Returns average of numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns minumum value from numeric cells in the range. + + + + + Returns minumum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Returns maximum value from numeric cells in the range. + + + + + Returns maximum value from numeric cells in the range. + + Considers numeric value of date formatted cells for calculation. + + + + Trim the empty rows at top and bottom of the range, the empty columns at left and right of the range. + + Returns the range after trim. + + + + Creates a merged cell from the specified Range object. + + + + + Creates a merged cell from the specified Range object. + + Indicates whether to clear unnecessary cells. + + + + This method groups current range. + + + This parameter specifies whether grouping should + be performed by rows or by columns. + + Indicates whether group should be collapsed. + Current range after grouping. + + + + This method groups current range. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + Current range after grouping. + + + + Creates Subtotal for the corresponding ranges + + GroupBy + ConsolidationFunction + TotalList + + + + Creates SubTotal for the corresponding Ranges + + GroupByGroupBy + ConsolidationFunction + TotalList + Replace exisiting SubTotal + Insert PageBreaks + SummaryBelowData + + + + Creates SubTotal for the corresponding Ranges + + Columns to GroupBy + ConsolidationFunction + TotalList + Replace exisiting SubTotal + Insert PageBreaks + SummaryBelowData + + + + Activates a single cell, which must be inside the current selection. + To select a range of cells, use the Select method. + + + + + + Activates a single cell, scroll to it and activates the corresponding sheet. + To select a range of cells, use the Select method. + + True to scroll to the cell + + + + + Sets around border for current range. + + + + + Sets around border for current range. + + Represents border line. + + + + Sets around border for current range. + + Represents border line. + Represents border color. + + + + Sets around border for current range. + + Represents border line. + Represents border color as ExcelKnownColors. + + + + Sets inside border for current range. + + + + + Sets inside border for current range. + + Represents border line. + + + + Sets inside border for current range. + + Represents border line. + Represents border color. + + + + Sets inside border for current range. + + Represents border line. + Represents border color as ExcelKnownColors. + + + + Sets none border for current range. + + + + + Collapses current group. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + + + + Expands current group. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + + + + Expands current group. + + + This parameter specifies whether the grouping should be performed by rows or by columns. + + Additional option flags. + + + + Gets the dependent cells which refer to other cells. + + Returns the dependent cells or null if value was not found. + + + + Gets the dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the dependent cells with a specified bool value or null if value was not found. + + + + Gets the precedent cells which are referred by a formula in another cell. + + Returns the precedent cells or null if value was not found. + + + + Gets the precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the precedent cells with a specified bool value or null if value was not found. + + + + Gets the direct dependent cells which refer to other cells. + + Returns the direct dependent cells or null if value was not found. + + + + Gets the direct dependent cells which refer to other cells. + + Indicates whether to check from other worksheets. + Returns the direct dependent cells with a specified bool value or null if value was not found. + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Returns the direct precedent cells or null if value was not found. + + + + Gets the direct precedent cells which are referred by a formula in another cell. + + Indicates whether to check from other worksheets. + Returns the direct precedent cells with a specified bool value or null if value was not found. + + + + Removes this Name object from the workbook's Names collection. + + + + + Sets parent workbook and worksheet. + + + When parent workbook or worksheet cannot be found. + + + + + Reads information from the NameRecord. + + NameRecord to parse + + When specified NameRecord is NULL. + + + + + This method is called when Value property was changed. + + Old value of the property. + New value of the property. + Is Value in R1C1 style. + + + + Sets name value. + + Parsed expression value to set. + + + + This method raises NameIndexChanged event. + + Event arguments. + + + + Checks for valid name. + + String to check. + If true - valid name; otherwise - not valid. + + + + Sets Value. + + New value of the property. + Is Value in R1C1 style. + + + + Converts full row or column tokens between versions. + + Version to convert into. + + + + A string containing the formula that the name is defined to refer to. + + Formula util to take setting from. + Formula string. + + + + Sets index of the named range and raise event. + + New index. + + + + Sets index of the named range. + + New index. + Indicates whether events should be raised. + + + + Saves named range into list of biff records. + + List of biff records to save into. + + + + This method should be called after worksheet index change. + + New sheet index. + + + + Updates the Renamed names in the named range collection. + + + + + Parses named range. + + + + + Gets ptg of current range. + + Returns native ptg. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Returns an enumerator that iterates through the Range. + + + + + + Get new address + + + + + + + + Creates a new object that is a copy of the current instance. + + + + + + + + + Clears the conditional formats + + + + + Rectangles in the range + + + + + + Count of rectangles + + + + + + Name record with info about this Name object. + + + + + Indicates whether the named range is deleted or not. + + + + + Index of the Name object in the workbook's Names collection. + + + + + Index of the Name object in the workbook's or Worksheet's Names collection. + + + + + Gets or sets the name of the Name object. + + + + + Same as Name. + + + + + Gets / sets Range associated with the Name object. + + + + + For the Name object, a string containing the formula that the name is + defined to refer to. The string is in A1-style notation in the language + of the macro, without an equal sign. + + + + + Gets/sets the comment associated with the named range. + + + + + Gets/sets named range Value in R1C1 style. Read-only. + + + + + Gets/sets named range RefersTo. Read-only. + + + + + Gets/sets named range RefersToR1C1 in R1C1 style. Read-only. + + + + + Determines whether the object is visible. Read/write Boolean. + + + + + Indicates whether current name is locally defined name. Read-only. + + + + + Returns parent worksheet. Read-only. + + + + + Represents whether the named range belongs to query table + + + + + Represents the sheet index of the name + + + + + Returns string representation of the name's scope. Read-only. + + + + + Gets or sets HTML string. + + + + + Returns the range reference in the language of the macro. + Read-only String. + + + + + Returns the range reference for the specified range in the language + of the user. Read-only String. + + + + + Returns range Address in format "'Sheet1'!$A$1". + + + + + Returns range address in format "$A$1". + + + + + Returns the range reference using R1C1 notation. + Read-only String. + + + + + Returns the range reference using R1C1 notation. + Read-only String. + + + + + Gets / sets boolean value that is contained by this range. + + + + + Returns a Borders collection that represents the borders of a style + or a range of cells (including a range defined as part of a + conditional format). + + + + + Returns a Range object that represents the cells in the specified range. + Read-only. + + + + + Returns the number of the first column in the first area in the specified + range. Read-only. + + + + + Column group level. Read-only. + -1 - Not all columns in the range have same group level. + 0 - No grouping, + 1 - 7 - Group level. + + + + + Returns or sets the width of all columns in the specified range. + Read/write Double. + + + + + Returns the number of objects in the collection. Read-only. + + + + + Gets / sets DateTime contained by this cell. Read-write DateTime. + + + + + Returns cell value after number format application. Read-only. + + + + + Returns a Range object that represents the cell at the end of the + region that contains the source range. + + + + + Returns a Range object that represents the entire column (or + columns) that contains the specified range. Read-only. + + + + + Returns a Range object that represents the entire row (or + rows) that contains the specified range. Read-only. + + + + + Gets / sets error value that is contained by this range. + + + + + Returns or sets the object's formula in A1-style notation and in + the language of the macro. Read/write Variant. + + + + + Represents array-entered formula. + + + + + Returns or sets the formula array for the range, using R1C1-style notation. + + + + + True if the formula will be hidden when the worksheet is protected. + False if at least part of formula in the range is not hidden. + + + + + Get / set formula DateTime value contained by this cell. + DateTime.MinValue if not all cells of the range have same DateTime value. + + + + + Returns or sets the formula for the range, using R1C1-style notation. + + + + + Indicates whether specified range object has data validation. + If Range is not single cell, then returns true only if all cells have data validation. Read-only. + + + + + Indicates whether range contains bool value. Read-only. + + + + + Indicates whether range contains DateTime value. Read-only. + + + + + Indicates if current range has formula bool value. Read-only. + + + + + Indicates if current range has formula error value. Read-only. + + + + + Indicates if current range has formula value formatted as DateTime. Read-only. + + + + + Indicates if current range has formula value formatted as number. Read-only. + + + + + Indicates if current range has formula value formatted as string. Read-only. + + + + + True if all cells in the range contain formulas; False if + at least one of the cells in the range doesn't contain a formula. + Read-only Boolean. + + + + + Indicates whether range contains array-entered formula. Read-only. + + + + + Indicates whether the range contains number. Read-only. + + + + + Indicates whether cell contains formatted rich text string. + + + + + Indicates whether the range contains String. Read-only. + + + + + Indicates whether range has default style. False means default style. + Read-only. + + + + + Returns hyperlinks for this name. + + + + + Returns or sets the horizontal alignment for the specified object. + Read/write ExcelHAlign. + + + + + Returns or sets the indent level for the cell or range. Can be an + integer from 0 to 15. Read/write Integer. + + + + + Indicates whether the range is blank. Read-only. + + + + + Indicates whether range contains boolean value. Read-only. + + + + + Indicates whether range contains error value. + + + + + Indicates whether this range is grouped by column. Read-only. + + + + + Indicates whether this range is grouped by row. Read-only. + + + + + Indicates whether cell is initialized. Read-only. + + + + + Returns last column of the range. Read-only. + + + + + Returns last row of the range. Read-only. + + + + + Gets / sets double value of the range. + + + + + Format of current cell. Analog of Style.NumberFormat property. + + + + + Returns the number of the first row of the first area in + the range. Read-only Long. + + + + + Row group level. Read-only. + -1 - Not all rows in the range have same group level. + 0 - No grouping, + 1 - 7 - Group level. + + + + + Returns the height of all the rows in the range specified, + measured in points. Returns Double.MinValue if the rows in the specified range + aren't all the same height. Read / write Double. + + + + + For a Range object, returns an array of Range objects that represent the + rows in the specified range. + + + + + For a Range object, returns an array of Range objects that represent the + columns in the specified range. + + + + + Returns a Style object that represents the style of the specified + range. Read/write IStyle. + + + + + Returns name of the Style object that represents the style of the specified + range. Read/write String. + + + + + Gets / sets string value of the range. + + + + + Gets / sets time value of the range. + + + + + Returns or sets the value of the specified range. + Read/write Variant. + + + + + Returns the calculated value of a formula using the most current inputs. + + + + + Returns or sets the cell value. Read/write Variant. + The only difference between this property and the Value property is + that the Value2 property doesn't use the Currency and Date data types. + + + + + Returns or sets the vertical alignment of the specified object. + Read/write ExcelVAlign. + + + + + Returns a Worksheet object that represents the worksheet + containing the specified range. Read-only. + + + + + Collection of conditional formats. + + + + + Data validation for the range. + + + + + Gets / sets string value evaluated by formula. + + + + + Gets / sets number value evaluated by formula. + + + + + Returns the calculated value of the formula as a boolean. + + + + + Returns the calculated value of the formula as a string. + + + + + Comment assigned to the range. Read-only. + + + + + Get the threaded comment. + + + + + String with rich text formatting. Read-only. + + + + + Indicates whether this range is part of merged range. Read-only. + + + + + Returns a Range object that represents the merged range containing + the specified cell. If the specified cell isn�t in a merged range, + this property returns NULL. Read-only. + + + + + True if Microsoft Excel wraps the text in the object. + Read/write Boolean. + + + + + Gets / sets cell by row and column index. Row and column indexes are one-based. + + + + + Get cell range. Row and column indexes are one-based. Read-only. + + + + + Get cell range. Read-only. + + + + + Gets cell range. Read-only. + + + + + Indicates is current range has external formula. Read-only. + + + + + Represents ignore error options. If not single cell returs concatenated flags. + + + + + Indicates whether all values in the range are preserved as strings. + + + + + Gets/sets built in style. + + + + + Get NameRecord to which point current object. + + + + + Get worksheet of Name Object. + + + + + Get workbook of Name Object. + + + + + Indicates whether the name is extern name. + + + + + Name region. + + + + + Indicates whether name is built-in or not. + + + + + Returns count of event handlers for NameIndexChanged event. Read-only. + + + + + Indicates whether this is function. + + + + + Gets or sets a value indicating whether this instance is num reference for chart axis. + + + true if this instance is num reference; otherwise, false. + + + + + Gets or sets a value indicating whether this instance is a string reference for chart axis. + + + true if this instance is string reference; otherwise, false. + + + + + Gets or sets a value indicating whether this instance is multi reference for chart axis. + + + true if this instance is multi reference; otherwise, false. + + + + + It's used to identify the common workbook Names + + + + + Utility event. Raised on Name object index property change. + + + + + Number of cells in the range + + + + + Gets address global in the format required by Excel 2007. + + + + + Gets name of the parent worksheet. + + + + + + + + + + Event arguments for NameIndexChanged event. + + + + + Old index. + + + + + New index. + + + + + To prevent creation without parameters. + + + + + Creates new instance of the event arguments. + + Old index. + New index. + + + + Returns old index. Read-only. + + + + + Returns new index. Read-only. + + + + + Represents the description for headers and footers + + + + + Base interface for Page class. + + + + + Gets or sets left part of header. Read/write string + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of LeftHeader property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets left part of header + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets center part of header. Read/write string + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of CenterHeader property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets center part of header + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets right part of header. Read/write string + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of RightHeader property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets right part of header + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets left part of footer. Read/write string + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of LeftFooter property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets left part of footer + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets center part of footer. Read/write string + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of CenterFooter property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets center part of footer + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets right part of footer. Read/write string + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of RightFooter property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets right part of footer + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets image for left part of header. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of LeftHeaderImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets the image for left part of header + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets image for center part of header. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of CenterHeaderImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets the image for center part of header + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets image for right part of header. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of RightHeaderImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets the image for right part of header + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets image for left part of footer. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of LeftFooterImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets the image for left part of footer + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets image for center part of footer. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of CenterFooterImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets the image for center part of footer + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets image for right part of footer. + + + &L Left aligns the characters that follow. + &C Centers the characters that follow. + &R Right aligns the characters that follow. + &E Turns double-underline printing on or off. + &X Turns superscript printing on or off. + &Y Turns subscript printing on or off. + &B Turns bold printing on or off. + &I Turns italic printing on or off. + &U Turns underline printing on or off. + &S Turns strikethrough printing on or off. + &D Prints the current date. + &T Prints the current time. + &F Prints the name of the document. + &A Prints the name of the workbook tab. + &P Prints the page number. + &P+number Prints the page number plus the specified number. + &P-number Prints the page number minus the specified number. + && Prints a single ampersand. + & "fontname" Prints the characters that follow in the specified font. Be sure to include the double quotation marks. + &nn Prints the characters that follow in the specified font size. Use a two-digit number to specify a size in points. + &N Prints the total number of pages in the document. + To know more about page settings refer this link. + + The following code illustrates the use of RightFooterImage property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:T100"].Text = "PagePrint"; + sheet.PageSetup.DifferentFirstPageHF = true; + + //sets the image for right part of footer + sheet.PageSetup.FirstPage.RightFooterImage = System.Drawing.Image.FromFile("sample5.jpg"); + sheet.PageSetup.FirstPage.RightFooter = "Right Footer &G"; + + sheet.PageSetup.FirstPage.CenterFooter = "Center Footer &G"; + sheet.PageSetup.FirstPage.CenterFooterImage = System.Drawing.Image.FromFile("sample1.jpg"); + sheet.PageSetup.FirstPage.RightHeader = "Right Header &G"; + sheet.PageSetup.FirstPage.RightHeaderImage = System.Drawing.Image.FromFile("sample6.jpg"); + sheet.PageSetup.FirstPage.CenterHeader = "Center Header &G"; + sheet.PageSetup.FirstPage.CenterHeaderImage = System.Drawing.Image.FromFile("sample2.jpg"); + sheet.PageSetup.FirstPage.LeftHeader = "Left Header &G"; + sheet.PageSetup.FirstPage.LeftHeaderImage = System.Drawing.Image.FromFile("sample4.jpg"); + sheet.PageSetup.FirstPage.LeftFooter = "Left Footer &G"; + sheet.PageSetup.FirstPage.LeftFooterImage = System.Drawing.Image.FromFile("sample3.jpg"); + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether the page is EvenPage + + + + + Indicates whether the page is FirstPage + + + + + Parent sheet. + + + + + Page setup for sheet. + + + + + Value of the header string limit + + + + + Value of the footer string limit + + + + + Array of headers: 0 - left header, 1 - center header, 2 - right header. + + + + + Array of footers: 0 - left footer, 1 - center footer, 2 - right footer. + + + + + Name of the shape with header image. + + + + + Name of the shape with footer image. + + + + + + + + + + Initializes new instance of page. + + Worksheet object for the page setup. + + + + This method is called after changes to the page setup. + Sets Saved property of the parent workbook to the False state. + + + + + Clone current instance + + + Copy of current instance + + + + Disposes all the fields used . + + + + + Represents whether the page is Even Page. + + + + + Represents whether the page is First Page. + + + + + Gets or sets the left part of the header. Read/write String. + + + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localised style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets or sets the left part of the footer. Read/write String. + + + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localized style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets or sets the center part of the header. Read/write String. + + + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localised style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets or sets the center part of the footer. Read / write String. + + + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localised style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets or sets the right part of the header. Read / write String. + + + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localised style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets or sets the right part of the footer. Read / write String. + + + Special Formatting symbols: + &P Current page number + &N Page count + &D Current date + &T Current time + &A Sheet name (BIFF5-BIFF8) + &F File name without path + &Z File path without file name (BIFF8X) + &G Picture (BIFF8X) + &B Bold on/off (BIFF2-BIFF4) + &I Italic on/off (BIFF2-BIFF4) + &U Underlining on/off + &E Double underlining on/off (BIFF5-BIFF8) + &S Strikeout on/off + &X Superscript on/off (BIFF5-BIFF8) + &Y Subscript on/off (BIFF5-BIFF8) + &"[FONTNAME]" Set new font [FONTNAME] + &"[FONTNAME],[FONTSTYLE]" Set new font with specified style [FONTSTYLE]. + The style [fontstyle] is in most cases one of Regular, Bold, Italic, + or Bold Italic. But this setting is dependent on the used font, it may + differ (localised style names, or Standard, Oblique, ...). (BIFF5-BIFF8) + &[FONTHEIGHT] Set font height in points ([FONTHEIGHT] is a decimal value). + If this command is followed by a plain number to be printed in the header, + it will be separated from the font height with a space character. + + + + + Gets / set image for left part of the header. + + + + + Gets / set image for left part of the footer. + + + + + Gets / set image for center part of the header. + + + + + Gets / set image for center part of the footer. + + + + + Gets / set image for right part of the header. + + + + + Gets / set image for right part of the footer. + + + + + Stores the whole string value in Header.(left/center/right) + + + + + Stores the whole string value in footer.(left/center/right) + + + + + This Class allows the user to configure Print settings of a document. + + + + + Represents default print area. + + + + + Represents default print title. + + + + + Represents default print area tokens. + + + + + This record contains information as to whether or not the the row/column headers have to be printed. + + + + + This record defines whether or not to print the gridlines. + + + + + This record specifies if the option to print sheet grid lines + (PrintGridlinesRecord)has ever been changed. + + + + + Contains information about the layout of outline symbols. + + + + + Row height for rows with undefined or inexplicitly defined heights. + + + + + This record stores a 16-bit value with Boolean options for the current sheet. + + + + + Parent worksheet for this page setup. + + + + + Represents horizontal page break. + + + + + Represents vertical page break. + + + + + Id of the printer settings part. + + + + + + Size of the required storage space. Read-only. + + Represents Excel version. + + + + Sets application and parent fields. + + Application object for the page setup. + Parent object for the page setup. + + + + Recovers page setup from the stream and sets its Application and Parent fields. + Current record in the stream must be PrintHeadersRecord. + + Application object for the page setup. + Parent object for the page setup. + BiffReader that contains page setup records. + + + + Recovers Page setup from the Biff Records array starting from position + + Application object for the page setup. + Parent object for the page setup. + Array of Biff Records that contains all needed records. + Position of PrintHeadersRecord in the array. + + + + Recovers Page setup from the Biff Records List starting from position. + + Application object for the page setup. + Parent object for the page setup. + List which contains Biff Records. + Position of PrintHeadersRecord in the array. + + + + Find parent worksheet. + + + When can't find parent worksheet. + + + + + Creates necessary records. + + + + + Parses record. + + Record to parse. + True if record was successfully parsed, false otherwise. + + + + Recovers page setup from the stream, first record must be PrintHeadersRecord. + + Stream that contains all needed records. + + + + Skips unknown records. + + Data with records. + Starting position. + + + + Serializes some records before main page setup block. + + OffsetArrayList to serialize into. + + + + Fills stream with some records before main page setup records. + + Writer to write records into. + Object that gives access to the temporary buffer. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the serialized data. + + + + Fills internal guts record with information from Rows + and ColumnInfo records. + + + + + Initialize collections. + + + + + Converts cell range to 3d Range name. + + cell range. + 3d range name. + + + + Converts cell range to Range name. + + cell range. + Indicates Whether Row range or Column range is needed. + Range name. + + + + Parses print area expression. + + Value representing print area. + + + + Parses column print title string and makes appropriate changes to default title named range. + + Column print title string to set. + + + + Parses row print title string and makes appropriate changes to default title named range. + + Row print title string to set. + + + + Extracts print area string. + + Print area string. + + + + Extracts row or column print title from default title named range. + + Defines which print title must be extracted. + Row/column print title string. + + + + Returns global address without sheet name. + + Formula token. + Global address without sheet name. + + + + Creates copy of the current instance. + + Parent for the new instance. + A clone of the current instance. + + + + Dispose Page Setup + + + + + True if cell gridlines are printed on the page. Applies only to + worksheets. Read/write Boolean. + + + To know more about page settings refer this link. + + The following code illustrates the use of PrintGridlines property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1:M20"].Text = "PagePrint"; + sheet.Range["A1:M1"].Text = "Page"; + sheet.Range["C1:C20"].Text = "Page"; + + //True to cell gridlines are printed on the page + sheet.PageSetup.PrintGridlines = true; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + True if row and column headings are printed with this page. Applies + only to worksheets. Read/write Boolean. + + + + + Gets horizontal page break. + + + + + Gets vertical page break. + + + + + Returns or sets the range to be printed, as a string using A1-style + references in the language of the macro. Read/write String. + + + + + Returns or sets the columns that contain the cells to be repeated + on the left side of each page, as a string in A1-style notation + in the language of the macro. Read/write String. + + + + + Returns or sets the rows that contain the cells to be repeated at + the top of each page, as a string in A1-style notation in the + language of the macro. Read/write String. + + + + + Indicates whether fit to page mode is selected. + + + + + Indicates whether summary rows will appear below detail in outlines. + + + + + Indicates whether summary columns will appear right of the detail in outlines. + + + + + Gets / sets default row height. + + + + + Gets / sets default row height option flag. + + + + + Gets / sets relation id to the printer settings part. + + + + + Returns parent worksheet. Read-only. + + + + + Represents single pivot field in the pivot cache. + + + + + Represents the Maximum number of character supported by cache field string value. + + + + + Main field record. + + + + + Type id. + + + + + List with fields data. + + + + + Represents an item within a PivotTable field that uses a formula + + + + + Index in the pivot caches collection. + + + + + Type of the field's data. + + + + + Specifies a boolean value that indicates whether this field came from the source + database + + + + + Specifies the formula for the calculated field + + + + + Represents the field group + + + + + Specifies the caption of the cache field + + + + + Specifies the number format that is applied to all items in the field + + + + + Field group index + + + + + Represents the hierarchy that this field is part of. + + + + + Specifies the hierarchy level that this field is part of. + + + + + Indicates whether the shared items are parsed. + + + + + Represents the Fields items range. + + + + + Represents the list of field items. + + + + + Specifies a boolean value that indicates whether this field has Member Property + database + + + + + Specifies a boolean value that indicates whether this field has mixed type + + + + + Represents the parent field of cache field. + + + + + Initializes a new instance of Pivot cache field. + + + + + Initializes a new instance of pivot cache field and extracts its values from BiffReader. + + Reader to get data from. + + + + Gets item at the specified index. + + Index of the value to get. + Requested value. + + + + Fills field with data. + + Worksheet to get data from. + First row of the source data. + Last row of the source data. + Column index of the source data. + + + + Adds new value to the cache. + + Value to add. + + + + Parses pivot cache field. + + Reader to extract data from. + + + + Serializes pivot cache field into list of Biff records. + + OffsetArrayList to serialize into. + + + + Returns Biff record that corresponds to the specified value. + + Value to get record for. + Created record that contains specified value. + + + + Gets or sets the formula for the calculated field + + + + + Gets or sets a Boolean value indicating whether this field came from the source + database. + + + + + True if the cache field is present in the index list. False otherwise. + + + + + True if the cache field is a double value. False otherwise. + + + + + True if the cache field is a double or int value. False otherwise. + + + + + True if the cache field is a string. False otherwise. + + + + + True if the cache field is unknown. False Otherwise. + + + + + True if the cache field has a long index. False otherwise. + + + + + True if the cache field is unknown2. False Otherwise. + + + + + True if the cache filed is a date. False otherwise. + + + + + Gets the items in the pivot cache field. Read-only. + + + + + Gets or sets teh anme of the pivot cache field. + + + + + Gets or sets the index of this field in the parent collection. + + + + + Gets the type of the field's data. Read-only. + + + + + True if the cache field is formula field. False otherwise. + + + + + Represents the Field group in the Cache Field + + + + + Gets or sets the caption of the cache field. + + + + + Gets or sets the number format that is applied to all items in the field. + + + + + Gets items within a PivotTable field that uses formula. + + + + + Gets or sets the field group index. + + + + + True if the cache field is Field group. False otherwise. + + + + + Represents the hierarchy that this field is part of. + + + + + Specifies the hierarchy level that this field is part of. + + + + + Gets or sets a Boolean value indicating whether the shared items are parsed. + + + + + Represents the Fields items range. + + + + + Gets the field items. + + + + + Specifies a boolean value that indicates whether this field has property field + database + + + + + Specifies a boolean value that indicates whether this field has mixed type + + + + + Gets or sets the parent field. + + + + + Represents a single pivot cache. + + + + + Main cache record. + + + + + Cache data extended record. + + + + + Array of all unparsed cache records. + + + + + Stream with preserved data. + + + + + List with cached fields. + + + + + Indixes to the pivto values. Each item contains indexes to the pivot cache field data for corresponding row. + + + + + Contains source range. + + + + + Contains the name of the pivot cache NamedRange + + + + + Cache index. + + + + + Contains additional information regarding pivot cache. + + + + + Specifies whether the cache's data source supports attribute drilldown. + + + + + Specifies the version of the application that created the cache. This attribute is + application-dependent. + + + + + Specifies the earliest version of the application that is required to refresh the cache. + + + + + Specifies the version of the application that last refreshed the cache. + + + + + Specifies whether the cache's data source supports subqueries + + + + + Specifies a boolean value that indicates whether the cache is scheduled for version + upgrade. + + + + + Preserved XlsIO unsupported elements + + + + + Presreved the Extenal cache source relations + + + + + External cache source relation ID. + + + + + Indicates wheather the pivot cache has records. + + + + + Specifies the preserved cache relations of Consolidation source. + + + + + Stream which preserves the consolidation source of the pivot table. + + + + + Indicates whether the pivot cache has missing items. + + + + + Indicates whether the pivot cache has tuple cache. + + + + + Indicates whether the pivot cache has seriealize or not. + + + + + Indicates whether the pivot cache has slicer or not. + + + + + Initianlizes a new instance of pivot cache class with the specified application and parent objects. + + Reference to Application instance. + + Reference to the Parent object which will host this object + + + If specified application or parent is null. + + + + + Initializes a new instance of pivot cache class with the specified reader to get pivot cache records from. + + Reference to Application instance. + + Reference to the Parent object which will host this object. + + Reader to get pivot cache records from. + Object used to decrypt encrypted records. + + If at least one of arguments is Null. + + + + + Initializes new instance of the cache at the specified range in the worksheet. + + Reference to Application instance. + + Reference to the Parent object which will host this object. + + Range object containing cached data. + + + + Creates cached field. + + Worksheet to create cache for. + First row to get data from. + Last row of the field. + Column index. + + + + Adds the specified array of pivot cache indexes. + + + + + + + Returns the field value based on the specified field and row indexes. + + Field index. + Row index. + Extracted value. + + + + Sets the specified field value at the specified field index. + + + + + + + + Parses pivot cache. + + Records with pivot table cache. + Offset to the first pivot cache record. + Offset to the record after cache records. + + + + Parses data from BiffReader. + + BiffReader with data to parse. + Object used to decrypt encrypted records. + Represent the pivot cache stream code + (helps to preserve unknown pivot cache streams) + + + + Saves pivot cache into OffsetArrayList. + + OffsetArrayList that will get all pivot cache records. + + + + Saves pivot cache into stream using specified encryptor. + + Stream to save into. + Encryptor to use. + + + + Update pivot cache after row/column insert operation. + + + + + + + + + Indicates whether specified insert row/column operation affected pivot cache in some way. + + + + + + + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Creates a new object that is a copy of the current instance with the specified + dictionary containing names in the workbook. + + Parent object for a copy of this instance. + Dictionary containing names in the workbook. + A new object that is a copy of this instance. + + + + Compare preserved data with the specified cache data. + + Pivot cache object with which the preserved data is compared. + True if the preserved data is equal to the specified cache data. False otherwise. + + + + Returns the size of the required storage space. Read-only. + + ExcelVersion of this workbook. + Number of bytes indicating the required storage space. + + + + Saves the pivot cache record data to stream. + + Writer that will receive record data. + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the record. + If writer is NULL. + + If m_iLength of internal record data array is less than zero. + + + + + Get or set the indicate whether the pivot cache has serialize or not. + + + + + Get or set the indicate whether the pivot cache has slicer or not. + + + + + Gets the stream id of the pivot cache. + + + + + Gets or sets the pivot table cache source type. + + + + + True if the cache is scheduled for version + upgrade. False otherwise. + + + + + Gets or sets the user name who last refreshed pivot cache. + + + + + True if the cache's data source supports subqueries. False otherwise. + + + + + Gets or sets a Boolean value indicating whether the pivot records are saved with the + cache. + + + + + Gets or sets a boolean value indicating whether the application will apply optimizations + to the cache to reduce memory usage. + + + + + Gets or sets a Boolean value indicating whether the user can refresh the cache. + + + + + Gets or sets a Boolean value indicating whether the application should query and + retrieve records asynchronously from the cache. + + + + + Gets or sets the the version of the application that created the cache. This attribute is + application-dependent. + + + + + Gets or sets the earliest version of the application that is required to refresh the cache. + + + + + Gets or sets the version of the application that last refreshed the cache. This attribute + depends on whether the application exposes mechanisms via the user interface whereby + the end-user can refresh the cache. + + + + + Gets or sets a Boolean value indicating whether the cache needs to be refreshed. + + + + + True if the the cache's data source supports attribute drilldown. False otherwise. + + + + + Gets or sets a Boolean value indicating whether the application will refresh the cache. + + + + + Gets or sets refresh date of the cache. + + + + + Gets the number of records inside this cache. + + + + + Gets or sets the stream which preserves the consolidation source of the pivot table. + + + + + Gets or sets the data source for the PivotTable report. + + + + + Gets collection of cache fields. Read-only. + + + + + Gets or sets the cache index. + + + + + Gets or sets additional information regarding pivot cache. + + + + + Preserved XlsIO unsupported elements + + + + + Gets or sets the name of the pivot cache NamedRange. + + + + + True if the pivot cache has named range. False otherwise. + + + + + Gets the calculated item index. Read-only. + + + + + Presreved the Extenal cache source relations + + + + + External cache source relation ID. + + + + + Indicates wheather the pivot cache has records. + + + + + Indicates whether the pivot cache has missing items. + + + + + Indicates whether the pivot cache has tuple cache. + + + + + Gets the type code of this record in the biff storage. Read-only. + + + + + Gets the code of the biff storage. Read-only. + + + + + True if the data array is required by this record. False otherwise. + + + + + Gets the record position in stream. This is a utility member of class and + is used only in the serialization process. Does not influence the data. + + + + + Represents a field in a PivotTable report. + + + + + View field record. + + + + + Extended view fields record. + + + + + View items. + + + + + Cache fields which this field is based on. + + + + + Indicates whether this is data field. + + + + + Represents the parent pivot table. + + + + + Specifies a boolean value that indicates whether the application will display fields + compactly in the sheet on which this PivotTable resides + + + + + Specifies a boolean value that indicates whether the field can be removed from the + PivotTable. + + + + + Specifies a boolean value that indicates whether the field can be dragged to the data + region. + + + + + Specifies a boolean value that indicates whether manual filter is in inclusive mode. + + + + + Specifies a boolean value that indicates whether new items that appear after a refresh + should be hidden by default. + + + + + Specifies a boolean value that indicates whether to insert a blank row after each item. + + + + + Specifies a boolean value that indicates whether to insert a page break after each item. + + + + + Specifies the number of items showed per page in the PivotTable. + + + + + Specifies the index of the item in the pivot cache + + + + + Specifies a boolean value that indicates whether field has a measure based filter. + + + + + Specifies a boolean value that indicates whether the field can have multiple items + selected in the page field. + + + + + Specifies a boolean value that indicates whether the items in this field should be shown + in Outline form. + + + + + Specifies a boolean value that indicates whether to hide drop down buttons on PivotField + headers. + + + + + Specifies a boolean value that indicates whether to show the property as a member + caption. + + + + + Specifies a boolean value that indicates whether to show the member property value in a + PivotTable cell. + + + + + Specifies a boolean value that indicates whether to show the member property value in a + tooltip on the appropriate PivotTable cells. + + + + + Specifies the type of sort that is applied to this field. + + + + + Specifies a boolean value that indicates whether an AutoShow filter applied to this field is + set to show the top ranked values + + + + + Specifies the unique name of the member property to be used as a caption for the field + and field items. + + + + + Represents the item attributes + + + + + Preserves the sorting elements of the field + + + + + Indicates whether all items in the field are expanded. + + + + + Indicates whether sort is applied to this field in the data source. + + + + + Indicates the drill state of the attribute hierarchy in an OLAP-based PivotTable. + + + + + Indicates flexible storage extensions for pivot Field + + + + + Indicates values of filter in page field. + + + + + Pivot Filter collection of pivot fields + + + + + Pivot field items collections + + + + + Specifies the number of items of field set as invisible. + + + + + Indicates Page Field Name + + + + + Indicates Page Field Caption + + + + + Indicates Page Hierarchy Index + + + + + Indicates a Boolean value if the item options are sorted. + + + + + Indicates a Boolean value if the cache field is updated. + + + + + Indicates whether the pivot field should be ignored or not. + + + + + Indicates a Boolean value whether to Show or hide repeated item labels in pivot fields. + + + + + Represent the AutoSort item. + + + + + Represents the autoSortScope pivot area + + + + + Represent the collection of AutoSort Field Value information. + + + + + Indicates whether Quarters and Years fields are enabled or not. + + + + + Creates collection and sets its Application and Parent values. + + Parent workbook. + + + + Initializes new instance of the pivot field. + + Parent workbook. + Cache field that corresponds to this field. + + + + Parses specified data at the offset to extract pivot field. + + Records collection with data. + Offset to the first pivot field record. + Offset to the record after field's records. + + + + Saves pivot table into OffsetArrayList. + + OffsetArrayList that will get all pivot table records. + + + + Adds the specified item at the specified index to the pivot field. + + Index at which the item is to be added. + Pivot field item to be added. + + + + Adds the specified item to the pivot field. + + Index at which the item is to be added. + + + + Gets position of the given pivot field item among the pivot field items collection. + + Pivot field item in the field. + Position of the item among the pivot field items collection. + + + + Sets position of the given pivot field item among the pivot field items collection. + + Pivot field item in the field. + + + + Moves the position of the Row Field among the Row fields. + + + + + + Move the position of the column field among column fields. + + + + + + Moves the position of the data field among the data fields + + + + + + Moves the position of page field among the page fields. + + + + + + + + Loads pivot field items from the cache field. + + Cache field that corresponds to this field. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Gets the pivot field group in current pivot field. + + + + + Gets or sets flexible storage extensions as stream for pivot Field. + + + + + Gets or sets the position of the field (first,second,third and so on) among all the fields in its Axis (Row,Column,Page,Data). + + + + + Gets or sets the field axis. + + + Following code snippet illustrates how to add a axis to pivot field. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Create Pivot cache with the given data range + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + //Create "PivotTable1" with the cache at the specified range + IPivotTable pivotTable = worksheet.PivotTables.Add("PivotTable1", worksheet["A1"], cache); + //Add Pivot table fields (Row and Column fields) + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + pivotTable.Fields[6].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + + + + + + + Gets or sets the Filter value of Page fields. + + + + + True if the item options are sorted, False Otherwise. + + + + + Gets or sets a boolean value indicating if the cache field is updated. + + + + + Gets or sets the name of the pivot field. + + + + + Gets the parent cache field. Read-only. + + + + + True if the pivot field is a data field. False otherwise. + + + + + Gets or sets number format index for the pivot field. + + + + + Gets or sets the number format for the pivot field. + + + + + Gets or sets the subtotal function used for pivot field. + + + + + Gets or sets a boolean value indicating whether the subtotal is positioned at the top. The default value is True. + + + + + Gets or sets the custom text that is displayed for the subtotals label. + + + + + True if the number of top or bottom items for a row, page, or column field in the specified PivotTable report + is enabled. False otherwise. + + + + + Gets or sets a Boolean value indicating if user can drag field to row area. + Read/Write Boolean. The default value is True. + + + + + Gets or sets a Boolean value indicating if user can drag field to column area. + Read/Write Boolean. The default value is True. + + + + + Gets or sets a Boolean value indicating if user can drag field to page area. + Read/Write Boolean. The default value is True. + + + + + True if the user can remove field from view. False otherwise. + + + + + Gets or sets a Boolean value indicating if user can remove field from view. + Read/Write Boolean. The default value is True. + + + + + Gets or sets a Boolean value indicating whether newly added pivot table items should be tracked when + manual filtering is applied to pivot field. Read/Write Boolean. + + + + + + Gets or sets a Boolean value indicating whether newly added pivot table items during + manual filtering to pivot field, should be shown after refresh operation. + + + + + Gets or sets a Boolean value indicating if a blank row is inserted + after the specified row field in a PivotTable report. + Read/Write Boolean. + + + + + True if a page break is inserted after each field. False otherwise. + + + + + Gets or sets the number of items showed per page in the PivotTable. + + + + + Specifies the index of the item in the pivot cache + + + + + Gets or sets a Boolean value indicating whether field has a measure based filter. + + + + + Gets or sets a Boolean value indicating whether the field has multiple items + selected in the page field. + + + + + Gets or sets a Boolean value indicating whether to show all items for this field. + + + + + Gets or sets a Boolean value that indicates whether the items in this field should be shown + in Outline form. + + + + + True if the flag for the specified PivotTable field or PivotTable item is set to "drilled" (expanded, or visible). + False otherwise. + + + + + Gets or sets a Boolean value indicating whether to show the property as a + caption. + + + + + Gets or sets a Boolean value indicating whether to show the item property value in a + PivotTable cell. + + + + + Gets or sets a Boolean value that indicates whether to show the item value in a + tooltip on the appropriate PivotTable cells. + + + + + Gets or sets the type of sort that is applied to this field. + + + + + Gets or sets a Boolean value indicating whether AutoShow filter applied to this field is + set to show the top ranked values. + + + + + Gets or sets the unique name to be used as a caption for the field + and field items. + + + + + Represents the item attributes + + + + + Gets or sets a boolean value indicating whether the application will display fields + compactly in the sheet on which this PivotTable resides. + + + + + Gets or sets a Boolean value indicating if the specified field can be dragged to the data position. + Read/Write Boolean. The default value is True. + + + + + Gets or sets the formula for the calculated field. + + + + + Gets or sets a Boolean value indicating if this field is formula field. Read-only. + + + + + Gets or sets the stream that preserves the sorting elements of the field. + + + + + Indicates whether all items in the field are expanded. + + + + + Indicates whether sort is applied to this field in the data source. + + + + + Indicates the drill state of the attribute hierarchy in an OLAP-based PivotTable. + + + + + Gets the collection for the pivot field. Read-only. + + + + + Gets Pivot field items which are the individual data entries in a field category. + Read-only. + + + + + Property for Page Field Name. + + + + + Property for Page Field Caption. + + + + + Property for Page Field Hierarchy Index. + + + + + Property for pivot table. + + + + + Indicates whether the pivot field should be ignored or not. + + + + + Gets or sets visibility of repeated item labels for the specified pivot field. + + + + + Represent the AutoSort item. + + + + + Represents the autoSortScope pivot area. + + + + + Represent the collection of AutoSort Field Value information. + + + + + Get or set a Boolean value indicating whether the Quarters and Years fields are applied to a date field or not. + + + + + Represents a PivotTable on a worksheet. + + + + + Default starting name of the pivot data field. + + + + + Code of the first record for the pivot table. + + + + + When Pivot table create, updated and refreshed + then Excel 2007 stores this version + + + + + When Pivot table create, updated and refreshed + then Excel 2010 stores this version + + + + + When Pivot table create, updated and refreshed + then Excel 2013 stores this version + + + + + When Pivot table create, updated and refreshed + then Excel 2016 stores this version + + + + + Unknown records that belong to pivot table. + + + + + View definition. + + + + + Fields collection. + + + + + Row / column field ids. + + + + + Collection of all LineItemArray records needed for this pivot table. + + + + + This record contains information about additional features + added to PivotTables in Excel. + + + + + Page item. + + + + + Data items. + + + + + Unknown records that belong to pivot table. + + + + + Parent workbook. + + + + + Collection of pivot table fields. + + + + + Table location. + + + + + Table end location. + + + + + Contains all data fields. + + + + + True if row, column, and item labels appear on the first row of each page when + the specified PivotTable report is printed. False if labels are printed only on + the first page. The default value is True. + + + + + Built-in style. + + + + + Custom Style Name + + + + + Parent worksheet. + + + + + Represents the Pivot Table Options + + + + + Specifies the first column of the PivotTable data, relative to the top left cell in the ref + value + + + + + Specifies the first column of the PivotTable data, relative to the top left cell in the ref + value + + + + + Specifies the first row of the PivotTable header, relative to the top left cell in the ref + value. + + + + + Specifies the number of columns per page for this PivotTable that the filter area will + occupy. + + + + + Specifies the number of rows per page for this PivotTable that the filter area will occupy. + + + + + Specifies a boolean value that indicates whether to show column headers for the table. + + + + + Specifies a boolean value that indicates whether to show column stripe formatting for + the table. + + + + + Specifies a boolean value that indicates whether to show the last column. + + + + + Specifies a boolean value that indicates whether to show row headers for the table. + + + + + Specifies a boolean value that indicates whether to show row stripe formatting for the + table. + + + + + Represents the Pivot table column items in Stream + + + + + Represents the Pivot Table row items in stream + + + + + Represents the pivot table to add the Calculated + Data field in rows + + + + + Preserves the XlsIO unsupported elements + + + + + Returns the calculated field collection represents all + the calculated fields int the specified pivot table. + + + + + Indicates wheather the pivot table modified. + + + + + Represents the column field order. + + + + + Represents the Row fields order + + + + + Variable for pivot engine. + + This method is not supported in WinRT, Windows Phone, Portable and Silverlight Platforms. + + + + + Collection of Filters + + + + + Collection of pivot formats + + + + + Pivot formats stream. + + + + + Row fields inner items collection. + + + + + Column fields inner items collection. + + + + + Initializes a new instance of pivot table. + + + Application object that represents the Excel application. + + Parent object of this collection. + + + + Initializes a new instance of pivot table with the specified cache index and pivot table location. + + + Application object that represents the Excel application. + + Parent object of this collection. + Cache index. + Pivot table location. + + + + Sets parent workbook to the correct value. + + + + + Draws a layout for the pivot table. + + + Following code snippet illustrates how to layout a pivot table similar to MS Excel. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("PivotData.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.Fields[4].Axis = PivotAxisTypes.Page; + pivotTable.Fields[2].Axis = PivotAxisTypes.Row; + pivotTable.Fields[6].Axis = PivotAxisTypes.Row; + pivotTable.Fields[3].Axis = PivotAxisTypes.Column; + IPivotField datafield = pivotSheet.PivotTables[0].Fields[5]; + pivotTable.DataFields.Add(datafield, "Sum of Units", PivotSubtotalTypes.Sum); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleDark12; + + //The following code sample must be included to XlsIO layout the pivot table like MS Excel. + pivotTable.Layout(); + + workbook.SaveAs("PivotTable.xlsx"); + workbook.Close(); + excelEngine.ThrowNotSavedOnDestroy = false; + excelEngine.Dispose(); + + + This method is not supported in WinRT, Windows Phone, Portable and Silverlight Platforms. + + + + + Get cell format for the given pivot range. + + Pivot range to get the cell format. + Pivot cell format + + + + Parses pivot table. + + Records with pivot table data. + Offset to the first pivot table record. + Offset to the record after table records. + + + + Saves pivot table into OffsetArrayList. + + OffsetArrayList that will get all pivot table records. + + + + Clears all internal collections. + + + + + Gets the collection of pivot fields based on pivot axis. + + axis type. + Pivot fields collection. + + + + Get the Workbook equalent of + Pivot table version + + + + + + Get cell format for the given pivot range. + + Pivot range to get the cell format. + + + + + Get pivot format for the given pivot range. + + Pivot range to get the cell format. + + + + + Update the pivot area by setting required properties + + Pivot area to be updated + column index of the pivot cell + row index of the pivot cell + Pivot table layout + + + + + + Pivot area to be updated. + column index of the pivot cell. + row index of the pivot cell. + Pivot inner item to be updated. + Indicates whether this is column fields operation or not. + Pivot table layout + + + + + Get parent count of given pivot inner item + + Pivot inner item + Parent count + + + + Get current index of PivotInnerItem collection. + + Pivot inner item collection + Pivot inner item + Current index + + + + + Sorts the pivot table by row or column fields. + + List of pivot inner items for or column fields. + Pivot table the sort to be applied. + Row number. + Pivot inner item. + + + + Get pivot inner items for for the pivot fields. + + Pivot table fields + Returns list of pivot inner items collection. + + + + Get the PivotInnerItem for the given line number. + + List of PivotInnerItem for the row or column field. + Current index number. + Column number. + PivotInnerItem to be returned. + Indicates whether the column sort or row sort. + PivotInnerItem. + + + + Add PivotInnerItems of row or column fields items. + + List of PivotInnerItem. + List of pivot row or column fields. + Pivot field index. + + + + Add PivotInnerItems for the speficied pivot field. + + Pivot field. + Parent PivotInnerItem. + Parent pivot field index. + + + + Check the PivotInnerItem. + + Source range. + Migrant range. + PivotInnerItem to be checked. + Row number of the pivot range. + True if the PivotInnerItem exist. Otherwise returns false + + + + Extract references from pivot inner item and it to the pivot area. + + PivotInnerItem to be extracted. + Pivot area to the reference be added. + + + + Apply pivot formats to layout cells + + pivot table layout to be updated. + Collection of ExtendedFormats with cell indexes + + + + Update pivot table layout cells. + + Pivot table layout to be updated. + Pivot formats to be updated. + Pivot format to update pivot cells. + First row index. + First column index. + TOtal rows. + + + + Get extended format from PivotCellFormat + + PivotCellFormat to get extended format. + Returns extended format + + + + Get line number from PivotAreaReferences. + + PivotAreaReferences to get the line number. + PivotInnerItem to get the line number. + Indicates whether the column fields operation are not. + + + + + Get the children count from given PivotInnerItems. + + Collection of PivotInnerItem to get the inner items count. + + + + + Update the row fields list. + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Return to the PageFields , Pivot PageFields, RowFields , ColumnFields values + + object that is a copy of this instance + return a pivot fields + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + This method autofit the tabular layout pivot table only. + Note: Compact layout and outline layout are autofitted by MS Excel itself. + this method should be removed once tabular form layout is supported using Pivot engine layout. + + + + + + Invoke when changes made in the pivo table. + + + + + Clear the data and the format of the pivot table + + + + + Returns the collection of calculated fields in the specified pivot table + + pivot calculated field collection + + + + Clears all the fields, deletes all filtering and sorting applied to the PivotTable. + + + + + Property for pivot filter collections + + + + + Gets or sets the pivot engine of the pivot table. + + This method is not supported in WinRT, Windows Phone, Portable and Silverlight Platforms. + + + + + Gets or sets the index number of the PivotTable cache. Read-only. + + + + + True if the PivotTable report displays a custom error string in cells + that contain errors. False otherwise. Read/Write Boolean. + + + Use the ErrorString property to set the custom error string. + This property is particularly useful for suppressing divide-by-zero errors when calculated fields are pivoted. + + + + + True if the PivotTable report displays a custom string in cells + that contain null values. False otherwise. Read/Write Boolean. + + Use the NullString property to set the custom null string. The default value is True. + + + + Gets or sets value indicating whether the PivotTable contains + column with grand totals for rows (same as ColumnGrand in VBA). + Default value is true. + + + Following code illustrates how to access the ColumnGrand property of the pivot table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.ColumnGrand = false; + + + + + + True if drilldown into pivot table data is enabled. False otherwise. The default value is True. + + + + + True if the PivotTable Field dialog box is available for the user. False otherwise. The default value is True. + + + + + True if the PivotTable Wizard is available. False otherwise. + The default value is True. + + + + + Gets or sets the string displayed in cells that contain errors + when the DisplayErrorString property is True. + + + + + True if the PivotTable report is recalculated only at the user's request. + The default value is False. + + + + + True if the specified PivotTable report’s outer-row item, + column item, subtotal, and grand total labels use merged cells. + + + + + Gets or sets the pivot table name. + + + + + Gets or sets the string displayed in cells that contain null + values when the DisplayNullString property is True. + + + + + Returns or sets the order in which page fields are added to the PivotTable report’s layout. + + + + + Returns or sets the style used in the bound page field area. + The default value is a null string (no style is applied by default). + + + + + Returns or sets the number of page fields in each column + or row in the PivotTable report. + + + + + Gets or sets value indicating whether the PivotTable contains + row with grand totals for columns (same as RowGrand in VBA). + Default value is true. + + + Following code illustrates how to access the RowGrand property of the pivot table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.RowGrand = false; + + + + + + Gets cache used by this pivot table. Read-only. + + + + + Gets or sets the pivot table location in the worksheet. + + + + + Gets pivot table end location. Read-only. + + + + + Returns collection of pivot fields. Read-only. + + + + + Gets the collection of pivot fields. Read-only. + + + + + Returns collection of pivot fields. Read-only. + + + + + Gets the collection of data fields in pivot table. Read-only. + + + + + Gets collection of pivot table data fields. Read-only. + + + + + Gets parent workbook. Read-only. + + + + + Gets parent worksheet. Read-only. + + + + + + Gets or sets a Boolean value indicating whether filter buttons and pivot field + captions for rows and columns are displayed in the grid. + The default value is True. + + + + + Gets or sets a Boolean value indicating whether labels must be repeated on every page.The default value is True. + + True if row, column, and item labels appear on the first row of each page when + the specified PivotTable report is printed. False if labels are printed only on + the first page. + + + + + Gets or sets the built-in style of the pivot table. + + + Following code illustrates how to access the BuiltInStyle property of the pivot table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + IWorksheet pivotSheet = workbook.Worksheets[1]; + IPivotCache cache = workbook.PivotCaches.Add(worksheet["A1:H50"]); + IPivotTable pivotTable = pivotSheet.PivotTables.Add("PivotTable1", pivotSheet["A1"], cache); + pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleDark12; + + + + + + Gets or sets name of custom style for the pivot table. + + + + + Gets or sets a Boolean value indicating whether the PivotTable contains grand totals for rows. + + + + + Gets or sets a Boolean value indicating whether the PivotTable contains grand totals for columns. + + + + + Gets the pivot table options. Read-only. + + + + + Specifies the first column of the PivotTable data, relative to the top left cell in the ref + value + + + + + Specifies the first column of the PivotTable data, relative to the top left cell in the ref + value + + + + + Specifies the first row of the PivotTable header, relative to the top left cell in the ref + value. + + + + + Gets the number of columns per page for this PivotTable that the filter area will occupy. Read-only. + + + + + Gets the number of rows per page for this PivotTable that the filter area will occupy. Read-only. + + + + + Specifies a boolean value that indicates whether to show column headers for the table. + + + + + Specifies a boolean value that indicates whether to show column stripe formatting for + the table. + + + + + Specifies a boolean value that indicates whether to show the last column. + + + + + Specifies a boolean value that indicates whether to show row headers for the table. + + + + + Specifies a boolean value that indicates whether to show row stripe formatting for the + table. + + + + + Represents the Pivot table column items in Stream + + + + + Represents the Pivot Table row items in stream + + + + + Gets or sets a Boolean value indicating whether the PivotTable data fields are shown in rows. + + + + + Gets the application for this object. + + + + + Preserves the XlsIO unsupported elements + + + + + Gets the collection of calculated fields in the pivot table. Read-only. + + + Following code illustrates how to access the CalculatedFields property of the pivot table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("PivotTable.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + + IPivotTable pivotTable = sheet.PivotTables[0]; + + //Add calculated field to the first pivot table + IPivotField field = pivotTable.CalculatedFields.Add("Percent", "Sales/Total*100"); + + workbook.SaveAs("PivotTable.xlsx"); + workbook.Close(); + excelEngine.ThrowNotSavedOnDestroy = false; + excelEngine.Dispose(); + + + + + + + Gets the collection of page fields in the pivot table. Read-only. + + + + + Returns the collection of Pivot Row field for the specified pivot table. + + + + + Returns the collection of Pivot Page field for the specified pivot table. + + The pivot page fields. + + + + Gets the collection of Row fields in the pivot table. Read-only. + + + + + Gets the collection of column fields in the pivot table. Read-only. + + + + + Represents the pivot table modified. + + + + + Gets the col fields order. + + + + + Gets the Row fields order. + + + + + Collection of pivot formats + + + + + + + + + + Gets or sets the old value. + + The old value. + + + + Gets or sets the new value. + + The new value. + + + + Gets or sets the Range. + + The Range. + + + + Represents the cell formula + + + + + Indicates that this formula needs to be recalculated the next time calculation is performed. + + + + + True if the data table is two-dimentional. + + + + + True if one-dimentional data table is a row, otherwise it's a column. + + + + + Represents type of formula. + + + + + Range of cells which the formula applies to. Only required for shared formula, array formula or data table + + + + + First input cell for data table. Only applies to the data tables array function "TABLE()". + + + + + Second input cell for data table when dt2D is '1'. Only applies to the data tables array function "TABLE()". + + + + + + Gets or sets the text of the cell formula. + + + + + Initializes a new instance of the CellFormula class. + + + + + Initializes a new instance of the CellFormula class with the specified text content. + + Tet to be set. + + + + Indicates that this formula needs to be recalculated the next time calculation is performed. + + + + + True if the data table is two-dimentional. + + + + + True if one-dimentional data table is a row, otherwise it's a column. + + + + + Represents type of formula. + + + + + Range of cells which the formula applies to. Only required for shared formula, array formula or data table + + + + + First input cell for data table. Only applies to the data tables array function "TABLE()". + + + + + Second input cell for data table when dt2D is '1'. Only applies to the data tables array function "TABLE()". + + + + + + Gets or sets the text of the cell formula. + + + + + Summary description for RangeRichTextString. + + + + + Interface for Rich text string wrapper. + + + + + Parent worksheet. + + + + + + + + + + + + + + + + + + Cell index. + + + + + + + + Cell index. + Formatted text object. + + + + This method is called before any changes made to the rich text string. + + + + + This method is called after any changes made to the rich text string. + + + + + Performs application-defined tasks associated with freeing, + releasing, or resetting unmanaged resources. + + + + + Returns default font. Read-only. + + + + + Returns index of the string. + + + + + Parent worksheet. + + + + + + + + + + Parent range. + + + + + Represents an RTF string. + + + + + Private constructor - to prevent user from creating instances without arguments. + + + + + Creates new instance of the RTFStringArray. + + Parent range. + + + + Returns font which is applied to character at the specified position. + + Character index. + Font which is applied to character at the specified position. + + + + Sets font for range of characters. + + First character of the range. + Last character of the range. + Font to set. + + + + Clears string formatting. + + + + + Appends rich text string with specified text and font. + + Text to append. + Font to use. + + + + + + + + + + + + + + Performs application-defined tasks associated with freeing, + releasing, or resetting unmanaged resources. + + + + + + + + + + Gets / sets range of rtftext. + + + + + Gets / sets text of the string. + + + + + Returns text in rtf format. Read-only. + + + + + Indicates whether rich text string has formatting runs. Read-only. + + + + + Application object for this object. + + + + + Parent object for this object. + + + + + + + + + + Parent range. + + + + + Represents an RTF string. + + + + + + + + + + + + Returns font for character at specified position. + + Position of the symbol. + + Font for character at specified position if it is equal for all + cells in the parent range, otherwise NULL is returned. + + + + + Sets font for specified range of characters. + + First character to set font. + Last character to set. + Font to set. + + + + Clears formatting. + + + + + Appends rich text string with specified text and font. + + Text to append. + Font to use. + + + + Clears text and formatting. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Indicates whether rich text string has formatting runs. Read-only. + + + + + Stores created Biff records and allows to get specific record. + + + + + Dictionary with Biff records. Key - Biff record type value. + + + + + Initializes new instance. + + + + + Returns Biff record filled with speciffic values. + + Object that provides access to the data. + Offset to the record's start. + Excel version used for infill. + Extracted record. + + + + Returns empty Biff record. + + Biff record type. + Extracted record. + + + + Rtf text writer used for converting rtf string into rtf format. + + + + + 0 - font index, + 1 - charset, + 2 - font name. + + + + + Font attribute. + + + + + 0 - red component (0-255), + 1 - green, + 2 - blue. + + + + + Underline tags. + + + + + Strike through tags. + + + + + Other tags. + + + + + Array list with all used colors. + + + + + Fonts dictionary. Font - to - font index. + + + + + Colors dictionary. Color - to - color index. + + + + + Indicates whether formatting is enabled. + + + + + Inner text writer. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the image RTF. + + The RTF. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns string that implement current object. + + Returns string that implement current object. + + + + Writes a bool to the text stream. + + Bool param to write. + + + + Writes a character to the text stream. + + Char value to write. + + + + Writes a array of characters to the text stream. + + Array param to write. + + + + Writes a double to the text stream. + + Double param to write. + + + + Writes a int value to the text stream. + + Int value to write. + + + + Writes a long value to the text stream. + + Long value to write. + + + + Writes a object to the text stream. + + Object value to write. + + + + Writes a float value to the text stream. + + Float value to write. + + + + Writes a string to the text stream. + + String to write. + + + + Writes a uint value to the text stream. + + Uint value to write. + + + + Writes out a formatted string, using the same semantics as String.Format. + + The formatting string. + An object to write into the formatted string. + + + + Writes out a formatted string, using the same semantics as String.Format. + + The formatting string. + The object array to write into the formatted string. + + + + Writes out a formatted string, using the same semantics as String.Format. + + The formatting string. + An object to write into the formatted string. + An object to write into the formatted string. + + + + Writes a subarray of characters to the text stream. + + The character array to write data from. + Starting index in the buffer. + The number of characters to write. + + + + Writes a line terminator to the text stream. + + + + + Writes the text representation of a Boolean followed by a line + terminator to the text stream. + + The Boolean to write. + + + + Writes a character followed by a line terminator to the text stream. + + The character to write to the text stream. + + + + Writes an array of characters followed by a line terminator to the text stream. + + The character array from which data is read. + + + + Writes the text representation of a 8-byte floating-point value followed + by a line terminator to the text stream. + + The 8-byte floating-point value to write. + + + + Writes the text representation of a 4-byte signed integer + followed by a line terminator to the text stream. + + The 4-byte signed integer to write. + + + + Writes the text representation of an 8-byte signed + integer followed by a line terminator to the text stream. + + The 8-byte signed integer to write. + + + + Writes the text representation of an object by calling + ToString on this object, followed by a line terminator to the text stream. + + The object to write. + + + + Writes the text representation of a 4-byte floating-point + value followed by a line terminator to the text stream. + + The 4-byte floating-point value to write. + + + + Writes a string followed by a line terminator to the text stream. + + The string to write. + + + + Writes the text representation of a 4-byte unsigned integer followed + by a line terminator to the text stream. + + The 4-byte unsigned integer to write. + + + + Writes out a formatted string and a new line, using the same semantics as Format. + + The formatting string. + The object array to write into format string. + + + + Writes out a formatted string and a new line, using the same semantics as Format. + + The formatted string. + The object to write into the formatted string. + + + + Writes out a formatted string and a new line, using the same semantics as Format. + + The formatting string. + The object to write into the format string. + The object to write into the format string. + + + + Writes a subarray of characters followed by a line terminator to the text stream. + + The character array from which data is read. + The index into buffer at which to begin reading. + The maximum number of characters to write. + + + + Adds new font to the collection. + + Font to add. + Index of the font. + + + + Adds color to the colors table. + + + + + + + Writes fonts table into inner text writer. + + + + + Writes colors table into inner text writer. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Writes the image text. + + The font. + The STR text. + The image. + The align. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Writes the alignment. + + The alignment. + + + + Write end tag for font attributes + + font object for text + + + + + Write underline endtag for the font that contain underline + + font object for text + + + + Write subsuper end tag if the font contain superscript or subscript + + font object for text + + + + + + + + + Returns current Encoding. + + + + + \ul Continuous underline. \ul0 turns off all underlining. + \ulcN Underline color + \uld Dotted underline. + \uldash Dash underline. + \uldashd Dash dot underline. + \uldashdd Dash dot dot underline. + \uldb Double underline. + \ulhwave Heavy wave underline + \ulldash Long dash underline + \ulnone Stops all underlining. + \ulth Thick underline + \ulthd Thick dotted underline + \ulthdash Thick dash underline + \ulthdashd Thick dash dot underline + \ulthdashdd Thick dash dot dot underline + \ulthldash Thick long dash underline + \ululdbwave Double wave underline + \ulw Word underline. + \ulwave Wave underline. + + Elements order is very important. + + + + + Continuous underline. + + + + + Turns off all underlining. + + + + + Dotted underline. + + + + + Dash underline. + + + + + Dash dot underline. + + + + + Dash dot dot underline. + + + + + Double underline. + + + + + Heavy wave underline. + + + + + Long dash underline. + + + + + Stops all underlining. + + + + + Thick underline. + + + + + Thick dotted underline. + + + + + Thick dash underline. + + + + + Thick dash dot underline. + + + + + Thick dash dot dot underline. + + + + + Thick long dash underline. + + + + + Double wave underline. + + + + + Word underline. + + + + + Wave underline. + + + + + Elements order is very important. + + + + + Single is on. + + + + + Single is off. + + + + + Double is on. + + + + + Double is off. + + + + + Elements order is very important. + + + + + Font table begins. + + + + + Font table ends. + + + + + Color table starts. + + + + + Color table ends. + + + + + Bold on. + + + + + Bold off. + + + + + Italic on. + + + + + Italic off. + + + + + Rtf begins. + + + + + Rtf ends. + + + + + Group starts. + + + + + Group ends. + + + + + End of line. + + + + + Foreground color. + + + + + Background color. + + + + + Subscript. + + + + + SuperScript. + + + + + SubScript or SuperScript Off. + + + + + Summary description for IEncryptor. + + + + + Sets information required to encrypt the document. + + Unique document id. + Encryption password. + + + + Encrypts DataProvider and writes result back into it. + + Provider to encrypt. + Offset to the first byte to encrypt. + Number of bytes to encrypt. + Position of the data in the stream. + + + + Encrypts DataProvider and writes result back into it. + + Data to encrypt. + Offset to the first byte to encrypt. + Number of bytes to encrypt. + Position of the data in the stream. + + + + Creates FilPassRecord that corresponds to this document. + This method can only be called after encryption info was set. + + Created record. + + + + Summary description for MD5_CTX. + + + + + + + + + + scratch buffer + + + + + input buffer + + + + + actual digest after MD5Final call + + + + + Initializes a new instance of the class. + + + + + Updates + + The input buf. + The buffer length. + + + + Finals this instance. + + + + + Stores the digest. + + + + + F(x, y, z) + + The x. + The y. + The z. + + + + + G(x, y, z) + + The x. + The y. + The z. + + + + + H(x, y, z) + + The x. + The y. + The z. + + + + + I(x, y, z) + + The x. + The y. + The z. + + + + + ROTATE_LEFT + + The x. + The n. + + + + + FF + + A. + The b. + The c. + The d. + The x. + The s. + The ac. + + + + GG + + A. + The b. + The c. + The d. + The x. + The s. + The ac. + + + + HH + + A. + The b. + The c. + The d. + The x. + The s. + The ac. + + + + II + + A. + The b. + The c. + The d. + The x. + The s. + The ac. + + + + Transforms the specified inn. + + The inn. + + + + Gets or sets the I. + + The I. + + + + Gets or sets the buffer. + + The buffer. + + + + Gets or sets the input buffer. + + The input buffer. + + + + Gets or sets the digest. + + The digest. + + + + Represents an MD5Decryptor. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Last stream position. + + + + + Data provider used to encrypt/decrypt byte arrays. + + + + + Initializes a new instance of the class. + + + + + Checks the password. + + The password. + + + + + Decrypts the stream. + + The stream. + + + + + Decrypts data provider and writes data back into it. + + Provider to decrypt. + Offset to the data. + Size of the data to decrypt. + Record position in the stream position. + + + + Decrypts buffer and puts resulting data back into it. + + Buffer to decrypt. + Offset to the data. + Size of the data to decrypt. + + + + Prepares password. + + Password to convert. + + + + Swaps a and b. + + a. + b. + + + + Prepares the key. + + Key to prepare. + The data. + The length. + + + + Makes the key. + + + The block. + The val context. + + + + Compares memory blocks + + The block1. + The block2. + The length. + + + + + Verifies the password. + + True if password was verified. + + + + + + + + + + + + + + + + + + Decrypts buffer + + An object that gives access to the data storage. + Start offset. + The length. + The key. + + + + Checks whether decryption information was prepared. + Throws ApplicationExcepion if it wasn't. + + + + + + + + + + + + Sets information required to decrypt. + + Unique document id. + Encrypted document id. + Digest used to verify the entered password. + Password to use for verification and decryption. + + + + Sets information required to encrypt the document. + + Unique document id. + Encryption password. + True if password was verified and method succeeded. + + + + Encrypts DataProvider and writes result back into it. + + Provider to encrypt. + Offset to the first byte to encrypt. + Number of bytes to encrypt. + Position of the data in the stream. + + + + Encrypts DataProvider and writes result back into it. + + Data to encrypt. + Offset to the first byte to encrypt. + Number of bytes to encrypt. + Position of the data in the stream. + + + + Creates FilPassRecord that corresponds to this document. + This method can only be called after encryption info was set. + + Created record. + + + + Summary description for Word_key. + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + Gets or sets the status. + + The status. + + + + Gets or sets the x. + + The x. + + + + Gets or sets the y. + + The y. + + + + This class is used to get shapes collection from a worksheet. + + + + + Default constructor. + + + + + Returns a shape collection from the worksheet. + + Worksheet to return sheet data for. + A shape collection from the worksheet. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Class used for Bitmap shape implementation. + + + + + Represents an Image in a worksheet. + + + + + Removes shape from the collection. + + Removes image that is referenced by this shape from collection too, + if we didn't detect image usage. XlsIO doesn't detect this situation correctly in all cases + if there are shapes in charts in Excel 2007 or if some image shapes are grouped in any excel version. + If you are not sure whether image is referenced in charts or grouped shapes and you are working with + Excel 2007 version, set this argument to true (this could cause file size increase, but will keep + document in the correct state). + + The following code illustrates how to remove a from collection. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add images + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, "image.png"); + IPictureShape picture2 = worksheet.Pictures.AddPicture(1, 15, "image.png"); + + //Remove image + picture.Remove(true); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Gets the Filename, Read only. + + + The following code illustrates how to access the FileName property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream from svg + Stream svgStream = new FileStream("image.svg", FileMode.Open); + + //Create image stream from png + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, svgStream, stream, 50, 50); + + //Check + Console.Write(picture.FileName); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //Picture0 + + + + + + Gets or sets the picture. + + + The following code illustrates how Picture property can be accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream from svg + Stream svgStream = new FileStream("image.svg", FileMode.Open); + + //Create image stream from png + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, svgStream, stream, 50, 50); + + //Check + Console.Write(picture.Picture != null); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Gets or sets the svg data for the picture. + + + The following code illustrates how SvgData property can be accessed. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create image stream from svg + Stream svgStream = new FileStream("image.svg", FileMode.Open); + + //Create image stream from png + Stream stream = new FileStream("image.png", FileMode.Open); + + //Add image + IPictureShape picture = worksheet.Pictures.AddPicture(1, 1, svgStream, stream, 50, 50); + + //Check + Console.Write(picture.SvgData != null); + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //True + + + + + + Instance field value for this shape. + + + + + Represents Blip id. + + + + + Name of the blip file. + + + + + Shape's picture (maybe should be moved to BitmapShape class). + + + + + Represents a bitmap image. + + + + + Stream that contains subnodes of the blip xml node in Excel 2007 format. + + + + + Stream that contains shape properties xml-tag in Excel 2007 format. + + + + + Stream that contains svg data. + + + + + Stream that contains shape properties xml-tag in Excel 2007 format. + + + Value indicating relation id for the Svg image. + + + + + Value indicating Svg picture path. + + + + + Boolean value indicating if the Svg stream is updated. + + + + + Stream that contains srcRect tag if shape was extracted from Excel 2007 file. + + + + + Macro name associated with this shape. + + + + + x-coordinate in the offset + + + + + y-coordinate in the offset + + + + + Specifies the length of the extents rectangle in EMUs. + + + + + Specifies the width of the extents rectangle in EMUs. + + + + + Specifies a vertical flip. When true, this attribute defines that the group is flipped + vertically about the center of its bounding box + + + + + Specifies a horizontal flip. When true, this attribute defines that the shape is flipped + horizontally about the center of its bounding box + + + + + Specifies the external link for the image. + + + + + Specifies the external link for the image. + + + + + + CropOptions of BitmapShape + + + + + Refer in Open XML specification for more details: + TODO: Need to add support transparancy details. + + + + + Represents the AlphaModeFix value. + + + + + Represents the Threshold value. + + + + + Indicates whether the GrayScale is applied in picture. + + + + + Indicates whether the alpha value is used in color change. + + + + + Represents the due tone color collection. + + + + + Represents the color change collection. + + + + + Represents the camera tool property. + + + + + Initializes a new instance of the BitmapShapeImpl class. + + Current application. + Parent object + + + + Initializes a new instance of the BitmapShapeImpl class. + + Current application. + Parent object. + Indicates is shape include options. False supports only for header / footer image. + + + + Initializes a new instance of the BitmapShapeImpl class. + + Current application. + Parent object. + Represents array of records. + Represent index. + + + + Initializes a new instance of the BitmapShapeImpl class. + + Current application. + Parent object. + Represents container. + + + + Checks Blip parse option. + + Represents option. + Value indicating parse option. + + + + Parse the Crop Rectangle + + + + + + Parses blip id option. + + Option to parse. + + + + Parses blip name option. + + Option to parse. + + + + Extract necessary option. + + Option to extract. + value indicating extracted option. + + + + Dispose object. + + + + + Serializes shape. + + Represents Spgr container + + + + This method is called inside of PrepareForSerialization to make shape-dependent preparations. + + + + + Serializes options if necessary. + + Low level shapes container. + + + + Serializes client anchor if necessary. + + Low level shapes container. + + + + Serializes client data if necessary. + + Low level shapes container. + + + + Registers shape in all required sub collections. + + + + + This method is called when shapes is deleted. + + + + + This method is called when shapes is deleted. + + Removes image that is referenced by this shape from collection too, + if we didn't detect image usage. XlsIO doesn't detect this situation correctly in all cases + if there are shapes in charts in Excel 2007 or if some image shapes are grouped in any excel version. + If you are not sure whether image is referenced in charts or grouped shapes and you are working with + Excel 2007 version, set this argument to true (this could cause file size increase, but will keep + document in the correct state). + + + + Removes shape from the collection. + + Removes image that is referenced by this shape from collection too, + if we didn't detect image usage. XlsIO doesn't detect this situation correctly in all cases + if there are shapes in charts in Excel 2007 or if some image shapes are grouped in any excel version. + If you are not sure whether image is referenced in charts or grouped shapes and you are working with + Excel 2007 version, set this argument to true (this could cause file size increase, but will keep + document in the correct state). + + + + Creates a clone of the current shape. + + New parent for the shape object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Indicates whether we should add created + shape into all necessary parent collections. This argument is ignored. + A copy of the current shape. + + + + Updates mso object. + + Represents mso object to update. + Returns true if updated otherwise - false. + + + + Generates default shape name and sets it. + + + + + Sets Blip id. + + new Blip id + + + + Download image from url + + Url + Image + + + + Used for internal purpose. + + + + + Gets or sets Blip file name + + + + + Gets or sets external link for the image. + + + + + Gets or sets external link for the image. + + + + + Gets or sets Blip id. + + + + + In and above MS Excel 2007 format, this value should be divided by + 1000 to get the left crop percentage of actual image size. + + + + + In and above MS Excel 2007 format, this value should be divided by + 1000 to get the right crop percentage of actual image size. + + + + + In and above MS Excel 2007 format, this value should be divided by + 1000 to get the bottom crop percentage of actual image size. + + + + + In and above MS Excel 2007 format, this value should be divided by + 1000 to get the top crop percentage of actual image size. + + + + + Gets or sets picture. + + + + + Gets or sets stream that contains subnodes of the blip xml node in Excel 2007 format. + + + + + Gets or sets Stream that contains shape properties xml-tag in Excel 2007 format. Obsolete, will be removed in future release. + + + + + Gets or sets Svg data for the picture. + + + + + Gets or sets the relation id for Svg image. + + + + + Gets or sets a boolean value indicating if the Svg stream is updated. + + + + + Gets or sets value indicating Svg picture path. + + + + + Gets stream of preserved elements in shape properties + + + + + Gets or sets stream that contains srcRect tag if shape was extracted from Excel 2007 file. + + + + + Returns instance value. Read-only. + + + + + Gets or sets macro name associated with this shape. + + + + + Gets or sets if the BitmapShape is DDE + + + + + Gets or sets if the BitmapShape is Camera + + + + + Gets or sets the offset X + + + + + Gets or sets the offset Y + + + + + Gets or sets the extents of X + + + + + Gets or sets the extents of Y + + + + + Gets or Sets vetical flip + + + + + Gets or Sets vetical flip + + + + + Get object that represents the hyperlink for the shape. + + + + + Indicates whether the alpha value is used in color change. + + + + + Represents the due tone color collection. + + + + + Represents the color change collection. + + + + + Represents the AlphaModeFix value. + + + + + Represents the Threshold value. + + + + + Indicates whether the GrayScale is applied in picture. + + + + + Represents the Camera tool property. + + + + + Class used for camera tool implementation. + + + + + Represents shape id. + + + + + Name of the camera tool picture. + + + + + Represents cell address. + + + + + Creates a clone of the camera tool. + + New parent for the camera tool object. + A copy of the current camera tool. + + + + Represents shape id. + + + + + Name of the camera tool picture. + + + + + Represents cell address. + + + + + Class used for Chart Shapes. + + + + + Represents an embedded chart in the worksheet. + + + + + Gets or sets the top row of the chart. Default value for top row is 1. + + + To know more about charts refer this link. + + The following code illustrates the use of TopRow property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Column_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the top row of the chart + chart.TopRow = 5; + chart.BottomRow = 20; + chart.LeftColumn = 5; + chart.RightColumn = 13; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the bottom row of the chart. Default value for bottom row is 20. + + + To know more about charts refer this link. + + The following code illustrates the use of BottomRow property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Column_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the bottom row of the chart + chart.BottomRow = 20; + chart.TopRow = 5; + chart.LeftColumn = 5; + chart.RightColumn = 13; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the left column of the chart. Default value for left column is 1. + + + To know more about charts refer this link. + + The following code illustrates the use of LeftColumn property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Column_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the left column of the chart + chart.LeftColumn = 5; + chart.TopRow = 5; + chart.BottomRow = 20; + chart.RightColumn = 13; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the right column of the chart. Default value for right column is 10. + + + To know more about charts refer this link. + + The following code illustrates the use of RightColumn property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.Name = "Student Sample Chart"; + chart.ChartType = ExcelChartType.Column_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the right column of the chart + chart.RightColumn = 13; + chart.TopRow = 5; + chart.BottomRow = 20; + chart.LeftColumn = 5; + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the name of the chart. Default value for name of chart is "Chart 1". + + + To know more about charts refer this link. + + The following code illustrates the use of Name property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + sheet.Range["A1"].Text = "Student ID"; + sheet.Range["B1"].Text = "Student Name"; + sheet.Range["C1"].Text = "Mark(Out of 100)"; + sheet.Range["A1:C1"].AutofitColumns(); + sheet.Range["A2"].Number = 1; + sheet.Range["A3"].Number = 2; + sheet.Range["A4"].Number = 3; + sheet.Range["A5"].Number = 4; + sheet.Range["A6"].Number = 5; + sheet.Range["B2"].Text = "Andrew"; + sheet.Range["B3"].Text = "Marson"; + sheet.Range["B4"].Text = "Jack"; + sheet.Range["B5"].Text = "Sam"; + sheet.Range["B6"].Text = "Breto"; + sheet.Range["C2"].Number = 77; + sheet.Range["C3"].Number = 45; + sheet.Range["C4"].Number = 92; + sheet.Range["C5"].Number = 39; + sheet.Range["C6"].Number = 55; + + //Create a Chart + IChartShape chart = sheet.Charts.Add(); + chart.ChartType = ExcelChartType.Column_Clustered_3D; + chart.DataRange = sheet.Range["B2:C6"]; + + //sets the name of the chart. + chart.Name = "Student Sample Chart"; + + workbook.SaveAs("Charts.xlsx"); + workbook.Close(); + } + + + + + + Instance value of MsofbtSp record. + + + + + Version value of MsofbtSp record. + + + + + Version value of MsofbtOPT record. + + + + + Instance value of MsofbtOPT record. + + + + + Lock against grouping option value. + + + + + Value of LineColor option. + + + + + Value of NoLineDrawDash option. + + + + + Value of ShadowObscured option. + + + + + Fore color. + + + + + Back color. + + + + + Chart object. + + + + + Zero-based index of top row. + + + + + Zero-based index of bottom row. + + + + + Zero-based index of left column. + + + + + Zero-based index of right column. + + + + + Parent worksheet. + + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + Cloned object. + Dictionary with new names. + Dictionary with new font indexes. + + + + Initializes new instance of the chart shape. + + Application object for the new shape. + Parent object for the new shape. + + + + Initializes new instance of the chart shape. + + Application object for the new shape. + Parent object for the new shape. + Shape container record that describes new shape. + Flags to create. + + + + Makes the current sheet the active sheet. Equivalent to clicking the + sheet's tab. + + + + + Selects current tab sheet. + + + + + Unselects current tab sheet. + + + + + Protects worksheet's content with password. + + Password to protect with. + + + + Protects current worksheet. + + Represents password to protect. + Represents params to protect. + + + + Unprotects worksheet's content with password. + + Password to unprotect. + + + + Method saves the chart as image. + + stream in where the image is streamed. + + + + Creates a clone of the current shape. + + New parent for the shape object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Indicates whether we should add created + shape into all necessary parent collections. + A copy of the current shape. + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Registers shape in all required sub collections. + + + + + This method is called inside of PrepareForSerialization to make shape-dependent preparations. + + + + + Parses client data record. + + Record to parse. + Parse options. + + + + Parses shape group container. + + Group container. + + + + Parses client anchor record. + + Record to parse. + + + + Serializes options. + + Parent record for options. + Create options record. + + + + Creates default options. + + Created MsofbtOPT record. + + + + Searches for all parents + + + + + Converts chart shape into WorksheetBaseImpl. + + Shape to convert. + Converted object. + + + + Disposes the charts elements + + + + + Returns internal chart object. Read-only + + + + + Gets or sets the offset X + + + + + Gets or sets the offset Y + + + + + Gets or sets the extents of X + + + + + Gets or sets the extents of Y + + + + + Get object that represents the hyperlink for the shape. + + + + + Returns or sets the rotation of the 3-D chart view + (the rotation of the plot area around the z-axis, in degrees).(0 to 360 degrees). + + + + + Represents the series name level + + + + + Represents the category name level + + + + + Represents the category collection + + + + + Returns or sets the elevation of the 3-D chart view, in degrees (�90 to +90 degrees). + + + + + Returns or sets the perspective for the 3-D chart view.( 0 - 100 ) + + + + + Returns or sets the height of a 3-D chart as a percentage of the chart width + (between 5 and 500 percent). + + + + + Returns or sets the depth of a 3-D chart as a percentage of the chart width + (between 20 and 2000 percent). + + + + + Returns or sets the distance between the data series in a 3-D chart, as a percentage of the marker width.( 0 - 500 ) + + + + + True if the chart axes are at right angles, independent of chart rotation or elevation. + + + + + True if Microsoft Excel scales a 3-D chart so that it's closer in size to the equivalent 2-D chart.. + + + + + True if gridlines are drawn two-dimensionally on a 3-D chart. + + + + + Returns chart shapes. Read-only. + + + + + Gets or sets the type of the pivot chart. + + The type of the pivot chart. + + + + Gets or sets the pivot source. + + The pivot source. + + + + Gets or sets a value indicating whether [show all field buttons]. + + + true if [show all field buttons]; otherwise, false. + + + + + Gets or sets a value indicating whether [show value field buttons]. + + + true if [show value field buttons]; otherwise, false. + + + + + Gets or sets a value indicating whether [show axis field buttons]. + + + true if [show axis field buttons]; otherwise, false. + + + + + Gets or sets a value indicating whether [show legend field buttons]. + + + true if [show legend field buttons]; otherwise, false. + + + + + Gets or sets a value indicating whether [show report filter field buttons]. + + + true if [show report filter field buttons]; otherwise, false. + + + + + Type of the chart. + + + + + DataRange for the chart series. + + + + + True if series are in rows in DataRange; + otherwise False. + + + + + Title of the chart. + + + + + Gets or sets whether the chart has title. + + + + + Gets title text area. Read-only. + + + + + Title of the category axis. + + + + + Title of the value axis. + + + + + Title of the secondary category axis. + + + + + Title of the secondary value axis. + + + + + Title of the series axis. + + + + + Page setup for the chart. Read-only. + + + + + X coordinate of the upper-left corner + of the chart in points (1/72 inch). + + + + + Y coordinate of the upper-left corner + of the chart in points (1/72 inch). + + + + + Width of the chart in points (1/72 inch). + + + + + Height of the chart in points (1/72 inch). + + + + + Collection of the all series of this chart. Read-only. + + + + + Returns primary category axis. Read-only. + + + + + Returns primary value axis. Read-only. + + + + + Returns primary series axis. Read-only. + + + + + Returns secondary category axis. Read-only. + + + + + Returns secondary value axis. Read-only. + + + + + Returns an object that represents the complete chart area for the chart. Read-only. + + + + + Returns plot area frame format. Read-only. + + + + + Returns chart format collection in primary axis. + + + + + Returns chart format collection in secondary axis. + + + + + Returns picture collection. Valid only for charts with own tab. + + + + + Returns charts collection. Valid only for charts with own tab. + + + + + Gets / sets tab color. + + + + + Indicates whether worksheet is displayed right to left. + + + + + Gets / sets tab color. + + + + + Represents chart walls. Read-only. + + + + + sidewall property.. + + + + + backwall property.. + + + + + Represents chart floor. Read-only. + + + + + Represents charts dataTable object. + + + + + Indicates whether tab of this sheet is selected. Read-only. + + + + + True if the chart has a data table. + + + + + True if the chart has a legend object. + + + + + Represents chart legend. + + + + + Indicates whether chart has plot area. + + + + + Returns index in the parent ITabSheets collection. Read-only. + + + + + Control visibility of worksheet to end user. + + + + + Represents the way that blank cells are plotted on a chart. + + + + + True if only visible cells are plotted. False if both visible and hidden cells are plotted. + + + + + True if Microsoft Excel resizes the chart to match the size of the chart sheet window. + False if the chart size isn't attached to the window size. Applies only to chart sheets. + + + + + Returns collection with all textboxes inside this worksheet. Read-only. + + + + + Returns collection with all checkboxes inside this worksheet. Read-only. + + + + + Returns collection with all option buttons inside this worksheet. Read-only. + + + + + Returns collection with all comboboxes inside this worksheet. Read-only. + + + + + Gets code name of the chart. + + + + + Indicates is current sheet is protected. + + + + + True if objects are protected. Read-only. + + + + + True if the scenarios of the current sheet are protected. Read-only. + + + + + Gets protected options. Read-only. For sets protection options use "Protect" method. + + + + + Indicates if the worksheet is password protected. + + + + + Gets or sets the value that represents zoom factor of document. Value must be in range from 10 till 400. + + + + + Gets or sets the style index chart. + + + + + Class used for comment shapes. + + + + + Represents an Excel comment. + + + + + Represents a cell comment. The Comment object is a member + of the Comments collection. + + + + + Returns or sets the author of the comment. Read-only String. + + + The following code illustrates how to access Author property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + IComment comment = worksheet["C2"].AddComment(); + + //Add text + comment.Text = "Comment"; + + //Get author + Console.Write(comment.Author); + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //{Your username will be printed} + + + + + + Determines whether the object is visible. Read / write Boolean. + + + The following code illustrates how to set the visibility of the comment. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + IComment comment = worksheet["C2"].AddComment(); + + //Add text + comment.Text = "Comment"; + + //Set visibility + comment.IsVisible = true; + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + } + + + + + + Row of the commented cell. Read-only. + + + The following code illustrates how to access the Row property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + IComment comment = worksheet["C2"].AddComment(); + + //Get row + Console.Write(comment.Row); + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //2 + + + + + + Column of the commented cell. Read-only. + + + The following code illustrates how to access the Column property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + IComment comment = worksheet["C2"].AddComment(); + + //Get column + Console.Write(comment.Column); + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //3 + + + + + + True if the size of the specified object is changed automatically + to fit text within its boundaries. Read/write Boolean. + + + The following code illustrates how to set AutoSize property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add comment + IComment comment = worksheet["C2"].AddComment(); + + //Add text + comment.Text = "Comment"; + + //Set auto size + comment.AutoSize = true; + + //Save and dispose + workbook.SaveAs("Comments.xlsx"); + workbook.Close(); + } + + + + + + Instance value of MsofbtSp record. + + + + + Version value of MsofbtSp record. + + + + + Version value of MsofbtOPT record. + + + + + Instance value of MsofbtOPT record. + + + + + Default offset in the cell of comment frame. + + + + + Represents value for make comment shadowed. + + + + + Represents if comment show always. + + + + + Represents if comment doesn't show always. + + + + + Row of the commented cell. + + + + + Column of the commented cell. + + + + + + Comment's author. + + + + + Object to hold the textbody properties. + + + + + True if the comment is a threaded comment. If not, false. + + + + + Creates new comment with specified Application and Parent objects. + + Application object for the current object. + Parent object for the current object. + + + + Creates new comment with specified Application and Parent objects. + + Application object for the current object. + Parent object for the current object. + Indicates is parse comment fill line options. + + + + Creates new comment with specified text. + + Application object for the current object. + Parent object for the current object. + Text of new comment. + + + + Extracts comment from MsofbtSpContainer. + + Application object for the current object. + Parent object for the current object. + Container that represents comment. + + + + Extracts comment from MsofbtSpContainer. + + Application object for the current object. + Parent object for the current object. + Container that represents comment. + Parse options. + + + + Initialize variables. + + + + + Fills client anchor with default values. + + + + + Disposes the comment shape + + + + + Registers shape in all required sub collections. + + + + + Creates a clone of the current shape. + + New parent for the shape object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Indicates whether we should add created + shape into all necessary parent collections. + A copy of the current shape. + + + + Serializes current shape. + + Container that will receive this comment. + + + + Serializes NoteRecord. + + Object id for the NoteRecord. + + + + Serializes Text ID. + + MsofbtOPT record to which text ID will be added. + + If options argument is NULL. + + + + + Serializes option with index 344 (this is unknown option). + + MsofbtOPT record to which text ID will be added. + + If options argument is NULL. + + + + + Creates default options. + + MsofbtOPT record. + + + + Serialize comment shadow. + + Represents option holder. + + + + Indicates is can copy current shape. + + Represents source range dimension. + Represents destination range dimension. + Gets new position of shape. + Returns true if can copy; otherwise - false. + + + + Copies / moves shape in range copy / move. + + Represents destination sheet. + Represents position of . + Indicates is copy. + Returns copied moved shape. + + + + Updates shape that include not size and not move flags. + + Indicates is row or column to update. + One-based row or column index. + Number of inserted/removed rows/column. + + + + Removes shapes from collection. + + + + + Create default fill line formats + + + + + Copy comments options. + + Represents source comment. + Represents dictionary with shape indexes. + + + + This method is called inside of PrepareForSerialization to make shape-dependent preparations. + + + + + Parses Note record. + + Object ID of note to parse. + + + + Row of the commented cell. + + + + + Column of the commented cell. + + + + + Indicates whether comment to be shown or hidden. + + + + + Comment's author. + + + + + Returns instance value. Read-only. + + + + + Get object that represents the hyperlink for the shape. + + + + + Gets the text-body properties + + + + + True if the comment is a threaded comment. False, if not + + + + + This class represents comment for multicell range. + + + + + Parent range. + + + + + Represents the rich-text string + + + + + Creates instance for specified range. + + Application object for new object. + Parent range. + + + + Removes this comment. + + + + + Scales all comments in the array. + + Width scale in percents. + Height scale in percents. + + + + Returns or sets the author of the comment. Read-only String. + + + + + Determines whether the object is visible. Read / write Boolean. + + + + + Row of the commented cell. Read-only. + + + + + Column of the commented cell. Read-only. + + + + + Text of the comment. + + + + + Gets or sets text. + + + + + Indicates whether shape must be moved with cells. + + + + + Indicates whether shape must be sized with cells. + + + + + True if the size of the specified object is changed automatically + to fit text within its boundaries. Read/write Boolean. + + + + + Determines whether the object is visible. Read / write Boolean. + + + + + Gets or sets height of comment shape + + + + + Gets or sets the height of the Shape expressed in decimal units. + + + + + Gets Comments range id. + + + + + Gets or sets left position of the comment + + + + + Gets or sets the left position of the Shape expressed in decimal units. + + + + + Gets or sets the comment shape name. + + + + + Gets or sets the Top position of the shape. + + + + + Gets or sets the top position of the Shape expressed in decimal units. + + + + + Gets or set the width of shape. + + + + + Gets or sets the width of the Shape expressed in decimal units. + + + + + Gets shape type. + + + + + Gets or sets alternative text. + + + + + Represents fill properties. Read-only. + + + + + Represents line format properties. Read-only. + + + + + Gets or sets macro associated with this shape + + + + + Gets the chart3 D properties. + + The chart3 D properties. + + + + Gets the shadow properties. + + The shadow properties. + + + + Returns or sets the rotation of the shape, in degrees. + + + + + + Returns a TextFrame object that contains the + alignment and anchoring properties for the specified shape. Read-only. + + + + + Get object that represents the hyperlink for the shape. + + + + + Horizontal alignment of the text. + + + + + Vertical alignment of the text. + + + + + Text rotation. + + + + + Indicates whether comment text is locked. + + + + + Class used for Form control shapes. + + + + + Represents default lock against grouping value. + + + + + + + + + + Represents default value for no line . + + + + + + + + + + + + + + + List box data. + + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + Array of records that contains the record for new shape. + Index of the records for new shape. + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + Shape container record that describes the new shape. + + + + Initializes new instance of the shape. + + Application object for the new shape. + Parent object for the new shape. + Record that describes the new shape. + + + + Initializes internal variables. + + + + + Creates a clone of the current shape. + + New parent for the shape object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Indicates whether we should add created + shape into all necessary parent collections. + A copy of the current shape. + + + + This method is called inside of PrepareForSerialization to make shape-dependent preparations. + + + + + Serializes shape. + + Container to add shape. + + + + Serialize shape options. + + Parent object. + Record with serialized option. + + + + Parses client data. + + Data to parse. + Parse options. + + + + Indicates whether list box arrow has default or selected color. + + + + + Get object that represents the hyperlink for the shape. + + + + + This class represents single gradient stop of the gradient fill. + + + + + Size of the binary data. + + + + + Gradient stop color. + + + + + Stop position. + + + + + Transparency. + + + + + Tint of the color for this gradient stop. + + + + + Shade of the color for this gradient stop. + + + + + Represent the parent shape fill. + + + + + Creates new instance of the GradientStop. + + Gradient stop color. + Gradient stop position. + Gradient stop transparecy. + + + + Creates new instance of the GradientStop. + + Gradient stop color. + Gradient stop position. + Gradient stop transparecy. + Color tint value. + Color shade value. + + + + Initializes new instance of the gradient stop and extracts settings from specified data array.. + + Data to parse. + Offset to start data parsing from. + + + + Serializes gradient stop into specified stream. + + Stream to serialize data into. + + + + Creates copy of the current instance. + + A copy of the current instance. + + + + Checks whether the specified gradient stop is equal to the current + gradient stop without taking transparency into consideration. + + Represents gradient stop. + Value indicating transparency + + + + Get or set the shape fill. + + + + + Gets / sets color of this gradient stop. + + + + + Gets / sets position of this gradient stop. + + + + + Gets / sets transparency of this gradient stop. + + + + + Gets / sets tint of the color for this gradient stop. + + + + + Gets / sets shade of the color for this gradient stop. + + + + + Represents collection of gradient stops. + + + + + Maximum possible gradient position. + + + + + Gradient angle. + + + + + Gradient type. + + + + + This element defines the "focus" rectangle for the center shade, + specified relative to the fill tile rectangle. + + + + + Gradient fill rect element + + + + + Default constructor. + + + + + Initializes new instance of the gradient stops collection and extracts settings from byte array. + + Byte array to parse. + + + + Saves gradient stops into stream in binary format. + + Stream to serialize into. + + + + Parse byte array. + + Array to parse. + + + + Doubles gradient stops in the collection and updates their positions. + + + + + Inverts gradient stops order and updates their positions correctly. + + + + + Shrinks gradient stop. + + Shrinked Gradient stops. + + + + Creates copy of the current instance. + + Copy of the current instance. + + + + Checks whether specified Gradient stops has colors equal to this gradient stops. + + Represents gradient stop + Value indicating whether gradient stop has color. + + + + Gets / sets gradient angle. + + + + + Gets / sets type of the gradient. + + + + + This element defines the "focus" rectangle for the center shade, + specified relative to the fill tile rectangle. + + + + + it's define the tilerect property. + + + + + Returns true if gradient stops are symmetric. Read-only. + + + + + This enumeration specifies all possible gradient types. + + + + + This element specifies a linear gradient. + + + + + Gradient follows a circular path. + + + + + Gradient follows a rectangular path. + + + + + Gradient follows the shape. + + + + + Specifies x-coordinate in the offset + + + + + Specifies y-coordinate in the offset + + + + + Specifies the width of the extents rectangle. + + + + + Specifies the height of the extents rectangle. + + + + + Specifies the rotation of the shape. + + + + + Specifies the x-coordinate in the child shape offset + + + + + Specifies the y-coordinate in the child shape offset + + + + + Specifies the width of the extents rectangle for child shape. + + + + + Specifies the height of the extents rectangle for child shape. + + + + + Specifies the parent shape. + + + + + Initializes new instance of the shape frame. + + Parent shape. + + + + Set offset values for shape frame. + + shape rotation. + X-coordinate in the offset. + Y-coordinate in the offset. + Width of the extents rectangle. + Height of the extents rectangle. + + + + Set child offset values for shape frame. + + X-coordinate in the child offset. + Y-coordinate in the child offset. + Width of the extents rectangle for child shape. + Height of the extents rectangle for child shape. + + + + Creates a clone of the current shape frame. + + A copy of the current shape frame. + + + + Set parent for shape frame.. + + X-coordinate in the child offset. + + + + Close the shape frame. + + + + + Specifies x-coordinate in the offset + + + + + Specifies y-coordinate in the offset + + + + + Specifies the width of the extents rectangle. + + + + + Specifies the height of the extents rectangle. + + + + + Specifies the x-coordinate in the child shape offset + + + + + Specifies the y-coordinate in the child shape offset + + + + + Specifies the width of the extents rectangle for child shape. + + + + + Specifies the height of the extents rectangle for child shape. + + + + + Specifies the rotation of the shape. + + + + + Class used for Shapes Line Format. + + + + + Represents interface for shape line format. + + + + + Represents weight of the line. + + + The following code illustrates how to set Weight property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set weight + lineFormat.Weight = 6; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents foreground color. + + + The following code illustrates how to set foreground color to the shape's line format from structure. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set color + lineFormat.ForeColor = System.Drawing.Color.Red; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents background color. + + + + + Represents foreground color index. + + + The following code illustrates how to set foreground color to the shape's line format from enumeration. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set color + lineFormat.ForeColorIndex = ExcelKnownColors.Red; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents background color index. + + + + + Represents begin arrow head style. + + + The following code illustrates how to set BeginArrowHeadStyle property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Line, 2, 2, 0, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set arrow style + lineFormat.BeginArrowHeadStyle = ExcelShapeArrowStyle.LineArrowDiamond; + lineFormat.EndArrowHeadStyle = ExcelShapeArrowStyle.LineArrowStealth; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents end arrow head style. + + + The following code illustrates how to set EndArrowHeadStyle property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Line, 2, 2, 0, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set arrow style + lineFormat.BeginArrowHeadStyle = ExcelShapeArrowStyle.LineArrowDiamond; + lineFormat.EndArrowHeadStyle = ExcelShapeArrowStyle.LineArrowStealth; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents begin arrow head length. + + + The following code illustrates how to set BeginArrowheadLength property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Line, 2, 2, 0, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set arrow style + lineFormat.BeginArrowHeadStyle = ExcelShapeArrowStyle.LineArrowDiamond; + + //Set arrow width + lineFormat.BeginArrowheadWidth = ExcelShapeArrowWidth.ArrowHeadWide; + + //Set arrow Length + lineFormat.BeginArrowheadLength = ExcelShapeArrowLength.ArrowHeadLong; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents end arrow head length. + + + The following code illustrates how to set EndArrowheadLength property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Line, 2, 2, 0, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set arrow style + lineFormat.EndArrowHeadStyle = ExcelShapeArrowStyle.LineArrowStealth; + + //Set arrow width + lineFormat.EndArrowheadWidth = ExcelShapeArrowWidth.ArrowHeadWide; + + //Set arrow Length + lineFormat.EndArrowheadLength = ExcelShapeArrowLength.ArrowHeadLong; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents begin arrow head width. + + + The following code illustrates how to set BeginArrowheadWidth property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Line, 2, 2, 0, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set arrow style + lineFormat.BeginArrowHeadStyle = ExcelShapeArrowStyle.LineArrowDiamond; + + //Set arrow width + lineFormat.BeginArrowheadWidth = ExcelShapeArrowWidth.ArrowHeadWide; + + //Set arrow Length + lineFormat.BeginArrowheadLength = ExcelShapeArrowLength.ArrowHeadLong; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents end arrow head width. + + + The following code illustrates how to set EndArrowheadWidth property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Line, 2, 2, 0, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set arrow style + lineFormat.EndArrowHeadStyle = ExcelShapeArrowStyle.LineArrowStealth; + + //Set arrow width + lineFormat.EndArrowheadWidth = ExcelShapeArrowWidth.ArrowHeadWide; + + //Set arrow Length + lineFormat.EndArrowheadLength = ExcelShapeArrowLength.ArrowHeadLong; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents the dash style for the specified line. + + + By default is set to DashStyle. Here for example, we set + to DashStyle property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set line style + lineFormat.DashStyle = ExcelShapeDashLineStyle.Dash_Dot_Dot; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents line style. + + + By default is set to Style. Here for example, we set + to Style property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set line style + lineFormat.Style = ExcelShapeLineStyle.Line_Thick_Between_Thin; + + //Set line wight + lineFormat.Weight = 5; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents line transparency. + + + The following code illustrates how to set Transparency for the shape's line format. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set transparency + lineFormat.Transparency = 0.5; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents if line format is visible. + + + The following code illustrates how to set visibility to shape's line format. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add shape + IShape shape = worksheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 20, 100); + + //Set line format + IShapeLineFormat lineFormat = shape.Line; + + //Set visibility + lineFormat.Visible = false; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Represents line pattern. + + + + + Indicates if current line format contain pattern. + + + + + Represents default line weight mull. + + + + + Represents max line weight. + + + + + Represents length of helper parse array. + + + + + Represents helper byte array to parse pattern. + + + + + Indicates whether the border has edge join or not. + + + + + Represents the borders edge join type. + + + + + Represents the value of border miter join. + + + + + Default Style index + + + + + Indicates whether the line uses default width. + + + + + Represents weight of shape line. + + + + + Represents foreground color. + + + + + Represents foreground color. + + + + + Represents parent book. + + + + + Represents begin arrow style. + + + + + Represents end arrow style. + + + + + Represents begin arrow length. + + + + + Represents end arrow length. + + + + + Represents begin arrow width. + + + + + Represents end arrow width. + + + + + Represents dash style. + + + + + Represents line style. + + + + + Represents line transparency. + + + + + Represents is line format visible. + + + + + Represents line pattern. + + + + + Indicate if line format contain pattern. + + + + + Indicates whether border join is round. + + + + + Represent indicating whether line properties having nofill element or not. + + + + + Represent indicating whether line properties having solid element or not. + + + + + Represent the end cap string. + + + + + Initialize new static members. + + + + + Creates new instance of object. + + Current application. + Parent object. + + + + Creates new instance of object. Autoshape Implementation + + Current application. + Parent object. + + + + Finds all parent objects. + + + + + Parses transparency. + + Transparency value to parse. + Returns parsed value. + + + + Serialize transparency. + + Represents option holder. + Represents transparency id. + Represents transparency value. + + + + Serialize color to stream. + + Represents option holder. + Represents color to serialize. + Represents option id to serialize. + + + + Parses fill options. + + Record to parse. + Value indicating extracted option. + + + + Parses arrows options + + Represents option to parse. + Returns true if parsed; otherwise false. + + + + Parses current pattern. + + Represents pattern option. + Returns parsed pattern value. + + + + Parse visible property. + + Represents visible data. + + + + Serialize shape line format as biff format. + + Represents option holder. + + + + Serialize arrow line options. + + Represents options storage. + Returns updated option storage. + + + + Serialize dash style as biff recorded structure. + + Represents option holder. + + + + Serialize line style as biff recorded structure. + + Represents option holder. + + + + Serialize visible property. + + Represents option holder. + + + + Serialize pattern to mso option. + + Represents option holder. + + + + Gets pattern by pattern data. + + Represents patt data. + Returns parsed data. + + + + Set the group shape property value to all the inner shapes. + + Property value to set. + Property name. + + + + Clones current object. + + Represents parent object for new instance. + Returns cloned object. + + + + Represents weight of the line in pts.( 0 - 1584 ) + + + + + Represents foreground color. + + + + + Represents background color. + + + + + Represents foreground color index. + + + + + Represents background color index. + + + + + Represents begin arrow head style. + + + + + Represents end arrow head style. + + + + + Represents begin arrow head length. + + + + + Represents end arrow head length. + + + + + Represents begin arrow head width. + + + + + Represents end arrow head width. + + + + + Represents the dash style for the specified line. + + + + + Represents line style. + + + + + Represents line transparency. + + + + + Represents if line format is visible. + + + + + Represents line pattern. + + + + + Indicates if current line format contain pattern. + + + + + Represent the end cap type string. + + + + + Represent indicating whether line properties having nofil element or not. + + + + + Represent indicating whether line properties having soild element or not. + + + + + Get or set the indicates whether border has edge join or not. + + + + + Get or set the borders edge join type + + + + + Get or set the value of miter border join. + + + + + Default line style index. + + + + + Indicates whether the line uses default width. + + + + + Returns parent workbook. Read-only. + + + + + Indicates whether join is round. + + + + + Gets stream of preserved elements in schemeColor properties. + + + + + This class represents TextBox form control. + + + + + This interface represents TextBox form control shape. + + + + + Text of the comment. + + + The following code illustrates how to set TextLink property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add data + worksheet["C4"].Value = "Text"; + + //Add shape + ITextBoxShapeEx shape = worksheet.Shapes.AddTextBox(); + + //Set dimensions + shape.Top = 40; + shape.Left = 20; + shape.Height = 30; + shape.Width = 70; + + //Set text link + shape.TextLink = "=C4"; + + //Save and dispose + workbook.SaveAs("Shapes.xlsx"); + workbook.Close(); + } + + + + + + Correct shape instance. + + + + + Correct shape version. + + + + + Represents embedded string. + + + + + Represent the indicating wheather fld element have text or not. + + + + + Represents a formula linking to spreadsheet cell data + + + + + indicates whether the text box is auto fit respect to the text + + + + + Indicates whether to allow text editing within this drawing object when the parent worksheet is protected + + + + + Specifies that the generating application should not allow aspect ratio changes for the corresponding connection shape + + + + + Object to hold the textbody properties. + + + + + Represents vertical flip of the textbox + + + + + Represents Horizontal flip of the textbox + + + + + Represent store the paragraph fld element stream. + + + + + Represent indicating whether text box having the line element or not. + + + + + Represent indicating wheather text box is created or not. + + + + + Indicates whether shape fill color is preserved or not + + + + + Indicates whether text box has noFill or not. + + + + + Indicates whether text box has group fill or not. + + + + + Indicates whether text box is slicer shape or not. + + + + + Represents the slicer id of the textbox shape. + + + + + Textbox text transparency value + + + + + Initialize new instance of the text box shape. + + Application object for the new shape. + Parent object for the new shape. + + + + Initializes new instance of the text box shape. + + Application object for the new shape. + Parent object for the new shape. + Shape's container. + Parsing options. + + + + Initializes shape items. + + + + + This method is called inside of PrepareForSerialization to make shape-dependent preparations. + + + + + Serializes current shape. + + Container that will receive this comment. + + + + Creates default shape options. + + Record with default option specified. + + + + Creates a clone of the current shape. + + New parent for the shape object. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Indicates whether we should add created + shape into all necessary parent collections. + A copy of the current shape. + + + + Gets and sets the indicating wheather fld element have text or not. + + + + + Represent indicating wheather text box is created or not. + + + + + Represents whether the shape is slicer or not. + + + + + Represents the slicer id of the textbox shape. + + + + + Represent indicating whether text box having the line element or not. + + + + + Indicates whether shape fill color is preserved or not + + + + + Indicates whether text box has noFill or not. + + + + + Indicates whether text box has group fill or not. + + + + + Gets or sets the 2007 co-ordinates of TextBox + + + + + Gets or sets the field id of TextBox + + + + + Gets or sets the field type of TextBox + + + + + Specifies a formula linking to spreadhseet cell data + + + + + Indicates whether to allow text editing within this drawing object when the parent worksheet is protected + + + + + Specifies that the generating application should not allow aspect ratio changes for the corresponding connection shape + + + + + Gets or sets text box text respect with this value, isautosize updated + + + + + Get object that represents the hyperlink for the shape. + + + + + Text body properties holder to hold the properties of the textbody. + + + + + Represents vertical flip of the textbox shape. + + + + + Represents the horizontal flip of the textbox shape. + + + + + Gets and sets the paragraph fld element stream. + + + + + Gets and sets the Text Transparency Alpha. + + + + + Represents a style description. The Style object contains + all style attributes (font, number format, alignment, and so on) as + properties. There are several built-in styles, including Normal, + Currency, and Percent. Using the Style object is a fast and efficient + way to change several cell-formatting properties on multiple cells at + the same time. + For the Workbook object, the Style object is a member of the Styles + collection. The Styles collection contains all the defined styles for + the workbook. + + + + + First excel 2007 specific style in the styles array. + + + + + Constant indicating that one object is less than another. Used by CompareTo method. + + + + + Constant indicating that one object is equal to another. Used by CompareTo method. + + + + + Constant indicating that one object is larger than another. Used by CompareTo method. + + + + + Build in style index for RowLevel_n styles. + + + + + Build in style index for ColLevel_n styles. + + + + + Style record that describes style. + + + + + StyleExt record that describes style. + + + + + Indicates whether do not to compare name during CompareTo operation. + + + + + Indicates if the style is used in the workbook. + + + + + Initializes new instance of the style. + + Parent workbook. + + + + Initializes new instance of the style. + + Parent workbook. + Style record to parse. + + + + Initializes new instance of the style. + + Parent workbook. + Name of the style to create. + + + + Initializes new instance of the style. + + Parent workbook. + Name of the style to create. + Base style. + + + + Initializes new instance of the style. + + Parent workbook. + Name of the style to create. + Base style. + Indicates whether created style is built in. + + + + Copies default style settings into internal extended format from built-in style. + + Built-in style index. + + + + Saves style into OffsetArrayList. + + OffsetArrayList to save style into. + + + + Updates style record according to the xf indexes. + + + + + This method is called after any changes are made in styles. + + + + + This method is called before any changed are made in styles. + + + + + Creates copy of the current instance. + + Parent object for the new collection. + Copy of the current instance. + + + + + + + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + Compares the current instance with another object of the same type. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the comparands. + The return value has these meanings: + Value Meaning + Less than zero - This instance is less than obj. + Zero - This instance is equal to obj. + Greater than zero - This instance is greater than obj. + + + + + Gets if the style has border + + + + + Indicates whether style is build in. Read-only. + + + + + Returns name of the style. Read-only. + + + + + Represents actual style name in case of AsciiConversion + + + + + Indicates whether style is initialized (differs from Normal style). + Read-only. + + + + + Returns index of the style's extended format. + + + + + Indicates whether do not to compare name during CompareTo operation. + + + + + Returns style record. Read-only. + + + + + Gets or sets if the style is built in customized + + + + + /Represents if the stylename is encoded, when style name is greater than 256 symbols + + + + + StyleExt record that describes style. + + + + + This event is raised before any changes are made in styles. + + + + + This event is raised after any changes are made in styles. + + + + + This class stores default predefined styles settings. + + + + + Fill settings. + + + + + Font settings. + + + + + Borders information. + + + + + Initializes new instance of the class. + + Fill object. + Font object. + + + + Initializes new instance of the class. + + Fill object. + Font object. + Borders object. + + + + Style options. + + + + + CopyRangeArgument for template marker. Specifies range that should be copied + for each new marker element. + + + + + JumpArgument for marker. Specifies jump position after applying + single template marker element. + + + + + Class used for Marker Argument. + + + + + Argument parts separator. + + + + + Maximum Row Index of the marker variable applied cell + + + + + Initializes a new instance of the MarkerArgument class. + + + + + Tries to parse argument string. + + Argument to parse. + Parsed argument if possible; null otherwise. + + + + Parses regular expression match. + + Match to parse. + Parsed argument of the same type as this instance is. + + + + Applies argument to the marker at the specified position + and to the list of cells with markers. + + Worksheet that contains cell to apply marker argument to. + Previous cell position. + One-based row index of the cell to apply marker argument to. + One-based column index of the cell to apply marker argument to. + List of cells with markers. + Marker options. + + + + Prepares options if necessary. + + Options to prepare. + + + + Creates a new object that is a copy of the current instance. + + Copy of the current instance. + + + + Inserts row int list of cell indexes. + + List with cell indexes. + Starting index. + Row index. + + + + Inserts column int list of cell indexes. + + List with cell indexes. + Starting index. + One-based column index. + + + + Gets/Sets the maximum row index + + + + + Gets regular expression used to check argument. Read-only. + + + + + Gets priority of the argument. Read-only. + + + + + Indicates whether argument is used just to prepare some options before + any values are proceed. Read-only. + + + + + Indicates whether marker should be applies for each marker value. Read-only. + + + + + Indicates whether argument can be present multiple times in single + template marker. Read-only. + + + + + Name of the group in the regular expression for row index. + + + + + Name of the group in the regular expression for column index . + + + + + Copy styles group name. + + + + + Start of the jump argument. + + + + + Value indicating that styles must be copied after jump operation. + + + + + Index of the group in the regular expression to check whether row index is relative. + + + + + Index of the group in the regular expression to check whether column index is relative. + + + + + Argument priority. + + + + + R1C1 cell detection regular expression + + + + + Regular expression to check cell. + + + + + Represents the destination row index. + + + + + Represents the destination column index. + + + + + Determines whether row index is relative or not. + + + + + Determines whether column index is relative or not. + + + + + Determines whether styles must be copied or not. + + + + + Initializes a new instance of the JumpArgument class. + + + + + Initializes a new instance of the JumpArgument class with specified row and column index. + + Destination row index. + Destination column index. + Indicates whether row index is relative. + Indicates whether column index is relative. + + + + Tries to parse the specified argument string. + + Argument to parse. + Parsed argument if possible; null otherwise. + + + + Applies argument to the marker at the specified position + and to the list of cells with markers. + + Worksheet that contains cell to apply marker argument to. + Previous cell position. + One-based row index of the cell to apply marker argument to. + One-based column index of the cell to apply marker argument to. + List of cells with markers. + Marker options. + + + + Evaluates new position of the cell with specified original cell position. + + Original cell position. + Workbook where operation is performed. + Point that contains updated cell position. + + + + Tries to convert string into int value. + + String to parse. + Result integer. + True if conversion succeeded; false otherwise. + + + + Converts regular expressions match into row and column coordinates. + + Value to parse. + Resulting row. + Resulting column. + Indicates whether row index is relative. + Indicates whether column index is relative. + True if parsing succeeded. + + + + Evaluates new position of the cell. + + Original cell position. + Destination row index. + Destination column index. + Indicates whether row index is relative. + Indicates whether column index is relative. + Workbook where operation is performed. + Point that contains updated cell position. + + + + Update the row column value from given merged point value + + input row, column point + + + + Returns priority of the argument. Read-only. + + + + + Indicates whether marker should be applies for each marker value. Read-only. + + + + + /// Start of the copy range argument. + + + + + Default copy options. + + + + + Rectangle used for copy range operations for performance + + + + + Initializes a new instance of the CopyRangeArgument class. + + + + + Destination row index. + + + + + Destination column index. + + + + + Indicates whether row index is relative. + + + + + Indicates whether column index is relative. + + + + + Tries to parse argument string. + + Argument to parse. + Parsed argument if possible; null otherwise. + + + + Applies argument to the marker at the specified position + and to the list of cells with markers. + + Worksheet that contains cell to apply marker argument to. + Previous cell position. + One-based row index of the cell to apply marker argument to. + One-based column index of the cell to apply marker argument to. + List of cells with markers. + Marker options. + + + + Check whether the copyrange rectangle is empty. If not the copy operation will be called + + Input worksheet + Marker options + Point start of the marker applying + + + + Returns priority of the argument. Read-only. + + + + + Indicates whether argument can be present multiple times in single + template marker. Read-only. + + + + + Class used for Direction argument. + + + + + Sorted list with Direction enumeration values, + key - string representation of the current direction. + + + + + Marker direction. + + + + + Initializes static members of the DirectionArgument class. + + + + + Initializes a new instance of the DirectionArgument class. + + + + + Tries to parse argument string. + + String to parse. + Marker direction. + + + + Prepares options if necessary. + + Options to prepare. + + + + Tries and the get direction. + + The marker arguments. + Direction in string + + + + Indicates whether argument is used just to prepare some options before + any values are proceed. Read-only. + + + + + Possible directions. + + + + + Vertical direction. + + + + + Horizontal direction. + + + + + Possible Image vertical positions + + + + + Top position. + + + + + Middle position. + + + + + Bottom position. + + + + + Possible Image Horizontal positions + + + + + Left position. + + + + + Center position. + + + + + Right position. + + + + + Contains settings that are local to a marker and depends on marker arguments. + + + + + Marker direction (horizontal or vertical). + + + + + Current template marker index. + + + + + Workbook where operation takes place. + + + + + Original marker text. + + + + + Boolean value indicates whether the merge has been applied in the process + + + + + Initializes a new instance of the MarkerOptionsImpl class. + + Current workbook. + + + + Gets or sets Marker direction (horizontal or vertical). + + + + + Gets or sets current template marker index. + + + + + Gets workbook where operation takes place. Read-only. + + + + + Gets or sets original marker text. + + + + + Indicates whether the merge copied on insertion + + + + + Class used for Space Argument. + + + + + Priority of the argument. + + + + + Correct marker value. + + + + + Index of the group for copystyles part of the argument. + + + + + It mentions the whether row has to be inserted. + + + + + Regular expression used to check argument. + + + + + Indicates whether styles should be copied. + + + + + Indicates whether cell merges have to be applied each insertion + + + + + Initializes a new instance of the NewSpaceArgument class. + + + + + Parses regular expression match. + + Match to parse. + Parsed argument of the same type as this instance is. + + + + Applies argument to the marker at the specified position + and to the list of cells with markers. + + Worksheet that contains cell to apply marker argument to. + Previous cell position. + One-based row index of the cell to apply marker argument to. + One-based column index of the cell to apply marker argument to. + List of cells with markers. + Marker options. + + + + Applies argument to the marker at the specified position + and to the list of cells with markers. + + Worksheet that contains cell to apply marker argument to. + Previous cell position. + One-based row index of the cell to apply marker argument to. + One-based column index of the cell to apply marker argument to. + List of cells with markers. + Marker options. + the merge point count of the cell + + + + Get the merged range row and column count from given cell info + + input row + input column + input sheet + the merged point count + + + + Returns priority of the argument. Read-only. + + + + + Indicates whether marker should be applies for each marker value. Read-only. + + + + + Regular expression used to check argument. Read-only. + + + + + Read - only property , showing merge is enabled + + + + + Returns the boolean value shows whether the styles has been copied or not. + + + + + boolean value indicates whether row needs to be inserted + + + + + Class used for ImageSize argument. + + + + + Start of the ImageSizeArgument. + + + + + Default Image Width and Height + + + + + Default Priority of an argument + + + + + Initializes a new instance of the ImageSizeArgument class. + + + + + Width Of the Image + + + + + Height Of the Image + + + + + Indicates whether the image width is auto + + + + + Indicates whether the image width is auto + + + + + Tries to parse argument string. + + Argument to parse. + Parsed argument if possible; null otherwise. + + + + Returns the customized width of an image + + + + + Returns the customized height of an image + + + + + Indicates whether marker should be applied for each marker value. Read-only. + + + + + Returns priority of the argument. Read-only. + + + + + Indicates whether the image width is auto. Read-only. + + + + + Indicates whether the image height is auto. Read-only. + + + + + Class used for ImagePosition argument. + + + + + Start of the ImagePositionArgument. + + + + + Default Image Vertical and Horizontal position + + + + + Default Priority of an argument + + + + + Initializes a new instance of the ImagePositionArgument class. + + + + + Horizontal position Of the Image + + + + + Vertical Position Of the Image + + + + + True if the vertical position is set + + + + + True if the horizontal position is set + + + + + Tries to parse argument string. + + Argument to parse. + Parsed argument if possible; null otherwise. + + + + Returns the enum value from a given string + only for vertical and horizontal position enum + + enum variable is passed here as an object + value to be parsed + Parsed argument if possible; null otherwise. + + + + Returns the customized Vertical Position of an image + + + + + Returns the customized horizontal Position of an image + + + + + True if the vertical position is set + + + + + True if the horizontal position is set + + + + + Indicates whether marker should be applies for each marker value. Read-only. + + + + + Returns priority of the argument. Read-only. + + + + + Class used for fit to cell argument + + + + + Priority of the argument. + + + + + Correct marker value. + + + + + Indicates whether the image content to be filled in cell. + + + + + Initializes a new instance of the NewSpaceArgument class. + + + + + Tries to parse argument string. + + Argument to parse. + Parsed argument if possible; null otherwise. + + + + Returns priority of the argument. Read-only. + + + + + Indicates whether marker should be applies for each marker value. Read-only. + + + + + Gives the boolean value to image fitted in cell.Read-Only Property + + + + + Class used for apply import options to the empty cells while importing nested collection objects + + + + + Priority of the argument. + + + + + Default marker value. + + + + + Merge marker value. + + + + + Repeat marker value. + + + + + Merge marker value preservestyle. + + + + + Indicates whether the empty cells can be merged. + + + + + Indicates whether the current object value to be filled in empty cells. + + + + + Indicates whether the empty cells can be merged with preserve style or not. + + + + + Initializes a new instance of the ImportOptionsArgument class. + + + + + Tries to parse argument string. + + Argument to parse. + Parsed argument if possible; null otherwise. + + + + Returns priority of the argument. Read-only. + + + + + Indicates whether marker should be applies for each marker value. Read-only. + + + + + Gives the boolean value to merge the empty cells. + + + + + Gives the boolean value to fill the empty cells with current object value. + + + + + Indicates whether the empty cells can be merged with preserve style or not. + + + + + Class used for group the empty cells while importing nested collection objects + + + + + Priority of the argument. + + + + + Expand group marker value. + + + + + Collapse group marker value. + + + + + Indicates whether the grouping can be collapsed. + + + + + Indicates whether the grouping can be expanded. + + + + + Initializes a new instance of the ImportGroupOptionsArgument class. + + + + + Tries to parse argument string. + + Argument to parse. + Parsed argument if possible; null otherwise. + + + + Returns priority of the argument. Read-only. + + + + + Indicates whether marker should be applies for each marker value. Read-only. + + + + + Gives the boolean value to apply grouping to empty cell and collapse the group. + + + + + Gives the boolean value to apply grouping to empty cell and expand the group. + + + + + Class used for Range Builder. + + + + + List with Rectangles used for range creation. + + + + + Initializes a new instance of the RangeBuilder class. + + + + + Adds cell to the collection for the specified row and column. + + One-based row index of the cell to add. + One-based column index of the cell to add. + + + + Clears collection. + + + + + Returns range object that was built by the current instance. + + Parent worksheet object. + Range object that was built by this instance. + + + + Creates rectangle for the specified row and column. + + One-based row index of the cell. + One-based column index of the cell. + Created rectangle. + + + + Returns single entry from the collection by its index. Read-only. + + + + + Gets number of elements in the collection. Read-only. + + + + + + Class used for TemplateMarker Attribute. + + + + + Represents the processing of a special marker symbol, that appends multiple records from data source into a worksheet. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("FromDate", typeof(DateTime)); + reports.Columns.Add("ToDate", typeof(DateTime)); + reports.Rows.Add("Andy Bernard", new DateTime(2014, 09, 08), new DateTime(2014, 09, 11)); + reports.Rows.Add("Jim Halpert", new DateTime(2014, 09, 11), new DateTime(2014, 09, 15)); + reports.Rows.Add("Karen Fillippelli", new DateTime(2014, 09, 15), new DateTime(2014, 09, 20)); + reports.Rows.Add("Phyllis Lapin", new DateTime(2014, 09, 21), new DateTime(2014, 09, 25)); + reports.Rows.Add("Stanley Hudson", new DateTime(2014, 09, 26), new DateTime(2014, 09, 30)); + marker.AddVariable("Reports", reports); + marker.ApplyMarkers(); + + + + A template marker is a special marker symbol created in an Excel template + that appends multiple records from a data source into a worksheet. + + + + + Represents the processing of a special marker symbol, that appends multiple records from data source into a worksheet. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("FromDate", typeof(DateTime)); + reports.Columns.Add("ToDate", typeof(DateTime)); + reports.Rows.Add("Andy Bernard", new DateTime(2014, 09, 08), new DateTime(2014, 09, 11)); + reports.Rows.Add("Jim Halpert", new DateTime(2014, 09, 11), new DateTime(2014, 09, 15)); + reports.Rows.Add("Karen Fillippelli", new DateTime(2014, 09, 15), new DateTime(2014, 09, 20)); + reports.Rows.Add("Phyllis Lapin", new DateTime(2014, 09, 21), new DateTime(2014, 09, 25)); + reports.Rows.Add("Stanley Hudson", new DateTime(2014, 09, 26), new DateTime(2014, 09, 30)); + marker.AddVariable("Reports", reports); + marker.ApplyMarkers(); + + + + + + Applies markers to the parent object. + + + To ignore marker variables in document that are not used in template marker we can use in the + method. + + + To apply the marker with default option we can use method. The default option will be . + If any text with marker variable syntax appears in the workbook this operation will throw exception. For example, Here we use marker variables + %Names and %Numbers. If we didn't add any one of these two variables in template marker and try to run the code, it will throw exception. This + behaviour can be changed by giving the as a parameter in . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Data to be used for Template Marker. + string[] names = new string[] { "A", "B", "C", "D" }; + string[] numbers = new string[] { "1", "2", "3", "4" }; + + //Add marker variables in the worksheet. + worksheet["A1"].Text = "Names"; + worksheet["B1"].Text = "Numbers"; + worksheet["A2"].Text = "%Names"; + worksheet["B2"].Text = "%Numbers"; + + //Create a Template Marker Instance. + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + + //Add variable names from the binding context to Template Marker. + marker.AddVariable("Names", names); + marker.AddVariable("Numbers", numbers); + + //Apply Marker. + marker.ApplyMarkers(); + + //Save and Dispose. + workbook.SaveAs("TemplateMarker.xlsx"); + workbook.Close(); + } + + + + + + Applies markers to the parent object with the specified . + + Marker unknown variable. + + To preserve the document that has marker variables that are not added to template marker we use method. + + + To avoid the marker throwing exception with default option of method we can use or + . The "Skip" just ignores the marker variables that are not added in Template Marker and the "ReplaceBlank" + can be used to clear the marker variable from the document. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Data to be used for Template Marker. + string[] names = new string[] { "A", "B", "C", "D" }; + + //Add marker variables in the worksheet. + worksheet["A1"].Text = "Names"; + worksheet["B1"].Text = "Numbers"; + worksheet["A2"].Text = "%Names"; + worksheet["B2"].Text = "%Numbers"; + + //Create a Template Marker Instance. + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + + //Add variable names from the binding context to Template Marker. + marker.AddVariable("Names", names); + + //Apply Marker. + marker.ApplyMarkers(UnknownVariableAction.Skip); + + //Save and Dispose. + workbook.SaveAs("TemplateMarker.xlsx"); + workbook.Close(); + } + + + + + + Adds a variable to the collection with the specified variable name and value. + + Name of the variable. + Value of the variable. + + To know more about Template Markers refer this link + + + To load the marker from arrays we can use the marker name and source array name in the method. + For example, here we load data from names array to the marker variable %Names. Other than arrays, we can import data from . + Refer this link to know + how to import data from using template markers. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Data to be used for Template Marker. + string[] names = new string[] { "A", "B", "C", "D" }; + string[] numbers = new string[] { "1", "2", "3", "4" }; + + //Add marker variables in the worksheet. + worksheet["A1"].Text = "Names"; + worksheet["B1"].Text = "Numbers"; + worksheet["A2"].Text = "%Names"; + worksheet["B2"].Text = "%Numbers"; + + //Create a Template Marker Instance. + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + + //Add variable names from the binding context to Template Marker. + marker.AddVariable("Names", names); + marker.AddVariable("Numbers", numbers); + + //Apply Marker. + marker.ApplyMarkers(); + + //Save and Dispose. + workbook.SaveAs("TemplateMarker.xlsx"); + workbook.Close(); + } + + + + + + Adds a variable to the collection with the specified name, value and . + + Name of the variable. + Value of the variable. + Marker variable type. + + Using we can enable template marker to detect the "Number Formats" and "Data Types" of objects and apply + formatting depending on that. For example, Here we use FromDate and ToDate as objects of DateTime. Since we used + default date formatting will be applied for the data for those marker variables. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Data to be used for Template Marker. + string[] names = new string[] { "A", "B", "C", "D" }; + string[] numbers = new string[] { "1", "2", "3", "4" }; + + //Add marker variables in the worksheet. + worksheet["A1"].Text = "SalesPerson"; + worksheet["B1"].Text = "FromDate"; + worksheet["C1"].Text = "ToDate"; + worksheet["A2"].Text = "%Reports.SalesPerson"; + worksheet["B2"].Text = "%Reports.FromDate"; + worksheet["C2"].Text = "%Reports.ToDate"; + + //Create a Template Marker Instance. + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + + //Create DataTable for import using Template Marker. + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("FromDate", typeof(DateTime)); + reports.Columns.Add("ToDate", typeof(DateTime)); + reports.Rows.Add("Andy Bernard", new DateTime(2014, 09, 08), new DateTime(2014, 09, 11)); + reports.Rows.Add("Jim Halpert", new DateTime(2014, 09, 11), new DateTime(2014, 09, 15)); + reports.Rows.Add("Karen Fillippelli", new DateTime(2014, 09, 15), new DateTime(2014, 09, 20)); + reports.Rows.Add("Phyllis Lapin", new DateTime(2014, 09, 21), new DateTime(2014, 09, 25)); + reports.Rows.Add("Stanley Hudson", new DateTime(2014, 09, 26), new DateTime(2014, 09, 30)); + + //Add variable name from the binding context to Template Marker. + marker.AddVariable("Reports", reports, VariableTypeAction.DetectNumberFormat); + + //Apply Marker. + marker.ApplyMarkers(); + + //Save and Dispose. + workbook.SaveAs("TemplateMarker.xlsx"); + workbook.Close(); + } + + + + + + Removes a variable with specified name from the collection. + + Name of the variable. + + If we remove the marker variable from marker and keep the marker variable in document then using will cause exception. + Since the default argument is . To avoid this we can use or + as arguments in method. + + + The variables added in marker can be removed using method. Removing marker variable avoids loading + data that is not required. Here for example, we add marker variables "%Names" and "%Numbers", then we remove "%Numbers" from the marker object. + So the method will import data for the marker "%Names" only and it simply ignores "%Numbers". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Data to be used for Template Marker. + string[] names = new string[] { "A", "B", "C", "D" }; + string[] numbers = new string[] { "1", "2", "3", "4" }; + + //Add marker variables in the worksheet. + worksheet["A1"].Text = "Names"; + worksheet["B1"].Text = "Numbers"; + worksheet["A2"].Text = "%Names"; + worksheet["B2"].Text = "%Numbers"; + + //Create a Template Marker Instance. + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + + //Add variable names from the binding context to Template Marker. + marker.AddVariable("Names", names); + marker.AddVariable("Numbers", numbers); + + //Remove variable from marker object + marker.RemoveVariable("Numbers"); + + //Apply Marker. + marker.ApplyMarkers(UnknownVariableAction.Skip); + + //Save and Dispose. + workbook.SaveAs("TemplateMarker.xlsx"); + workbook.Close(); + } + + + + + + Checks whether template markers object contains variable with the specified name. + + Name to locate. + Indicates whether the markers contains the variable. + + To check whether a marker variable is present in the marker object we can use this method. + For example, here we add marker variable %Names then we check whether the marker object contains the marker variable. If marker + has the variable then it returns "true". + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Data to be used for Template Marker. + string[] names = new string[] { "A", "B", "C", "D" }; + string[] numbers = new string[] { "1", "2", "3", "4" }; + + //Add marker variables in the worksheet. + worksheet["A1"].Text = "Names"; + worksheet["B1"].Text = "Numbers"; + worksheet["A2"].Text = "%Names"; + worksheet["B2"].Text = "%Numbers"; + + //Create a Template Marker Instance. + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + + //Add variable names from the binding context to Template Marker. + marker.AddVariable("Names", names); + + //Check whether marker contains the variables. + Console.WriteLine(marker.ContainsVariable("Names")); + Console.WriteLine(marker.ContainsVariable("Numbers")); + + //Dispose. + workbook.Close(); + } + //Output for the code will be + //True + //False + + + + + + Adds a conditional format to the Template Marker. + + Represents the range where the conditional format to be applied. + To know more about using conditional formats with Template Markers refer this + link. + To get some additional information about conditional formats and applicable format types + check this link. + + Newly added conditional formats. + + Conditional Formats can be applied to the data imported using template marker. In order to do that we have to create conditonal + formats within the template marker range. Here we import data from and apply conditional format for + each column. For this example the marker variables are in cells "A2", "B2" and "C2" so the conditional formats should use these ranges. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Add marker variables in the worksheet. + worksheet["A1"].Text = "SalesPerson"; + worksheet["B1"].Text = "SalesJanJun"; + worksheet["C1"].Text = "SalesJulDec"; + worksheet["D1"].Text = "Change"; + worksheet["A2"].Text = "%Reports.SalesPerson"; + worksheet["B2"].Text = "%Reports.SalesJanJun"; + worksheet["C2"].Text = "%Reports.SalesJulDec"; + worksheet["D2"].Text = "%Reports.Change"; + + //Create Template Marker Processor + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + + //Create Conditional Formats within the Template Marker range. + IConditionalFormats conditionalFormats = marker.CreateConditionalFormats(worksheet["B2"]); + IConditionalFormat condition = conditionalFormats.AddCondition(); + + + //Set the format type + condition.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = condition.DataBar; + + //Set the constraint + dataBar.MinPoint.Type = ConditionValueType.LowestValue; + dataBar.MinPoint.Value = "0"; + dataBar.MaxPoint.Type = ConditionValueType.HighestValue; + dataBar.MaxPoint.Value = "0"; + + //Set color for Bar + dataBar.BarColor = System.Drawing.Color.FromArgb(156, 208, 243); + //Hide the value in data bar + dataBar.ShowValue = false; + + //Add IconSet as second conditional format for the existing databar. + condition = conditionalFormats.AddCondition(); + condition.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = condition.IconSet; + iconSet.IconSet = ExcelIconSetType.FourRating; + iconSet.IconCriteria[0].Type = ConditionValueType.LowestValue; + iconSet.IconCriteria[0].Value = "0"; + iconSet.IconCriteria[1].Type = ConditionValueType.HighestValue; + iconSet.IconCriteria[1].Value = "0"; + iconSet.ShowIconOnly = true; + + //Create Conditional Formats within the Template Marker range. + conditionalFormats = marker.CreateConditionalFormats(worksheet["C2"]); + + //Color Scale + condition = conditionalFormats.AddCondition(); + condition.FormatType = ExcelCFType.ColorScale; + IColorScale colorScale = condition.ColorScale; + + //Sets 3 - color scale. + colorScale.SetConditionCount(3); + colorScale.Criteria[0].FormatColorRGB = System.Drawing.Color.FromArgb(230, 197, 218); + colorScale.Criteria[0].Type = ConditionValueType.LowestValue; + colorScale.Criteria[0].Value = "0"; + colorScale.Criteria[1].FormatColorRGB = System.Drawing.Color.FromArgb(244, 210, 178); + colorScale.Criteria[1].Type = ConditionValueType.Percentile; + colorScale.Criteria[1].Value = "50"; + colorScale.Criteria[2].FormatColorRGB = System.Drawing.Color.FromArgb(245, 247, 171); + colorScale.Criteria[2].Type = ConditionValueType.HighestValue; + colorScale.Criteria[2].Value = "0"; + + //Create Conditional Formats within the Template Marker range. + conditionalFormats = marker.CreateConditionalFormats(worksheet["D2"]); + + //Icon set + condition = conditionalFormats.AddCondition(); + condition.FormatType = ExcelCFType.IconSet; + iconSet = condition.IconSet; + iconSet.IconSet = ExcelIconSetType.ThreeSymbols; + iconSet.IconCriteria[0].Type = ConditionValueType.LowestValue; + iconSet.IconCriteria[0].Value = "0"; + iconSet.IconCriteria[1].Type = ConditionValueType.HighestValue; + iconSet.IconCriteria[1].Value = "0"; + iconSet.ShowIconOnly = false; + + //Add datatable from GetDataTable method as Template Marker variable "Reports". + marker.AddVariable("Reports", GetDataTable()); + + //Process the markers in the template. + marker.ApplyMarkers(); + + //Save and Dispose. + workbook.SaveAs("TemplateMarker.xlsx"); + workbook.Close(); + } + + //GetDataTable method + System.Data.DataTable GetDataTable() + { + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("SalesJanJun", typeof(int)); + reports.Columns.Add("SalesJulDec", typeof(int)); + reports.Columns.Add("Change", typeof(int)); + reports.Rows.Add("Andy Bernard", 45000, 58000, 29); + reports.Rows.Add("Jim Halpert", 34000, 65000, 91); + reports.Rows.Add("Karen Fillippelli", 75000, 64000, 15); + reports.Rows.Add("Phyllis Lapin", 56500, 33600, 40); + reports.Rows.Add("Stanley Hudson", 46500, 52000, 12); + return reports; + } + + + + + + Gets or sets the marker prefix. String indicates that the cells contains marker. + + + To know more about template marker variable syntax refer this link. + + + The default template marker prefix is "%". This can be changed by using property. Here for example, we change + the marker prefix to "*" and use this prefix in our template marker variables. To know about + customizing the argument separator refer Property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Data to be used for Template Marker. + string[] names = new string[] { "SalesPerson", "SalesJanJun", "SalesJulDec", "Change" }; + + //Add marker variables in the worksheet. + worksheet["A1"].Text = "*Names;horizontal"; + worksheet["A2"].Text = "*Reports.SalesPerson;vertical"; + worksheet["B2"].Text = "*Reports.SalesJanJun;vertical"; + worksheet["C2"].Text = "*Reports.SalesJulDec;vertical"; + worksheet["D2"].Text = "*Reports.Change;vertical"; + + //Create a Template Marker Instance. + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + + //Change the default prefix to "*". + marker.MarkerPrefix = "*"; + + //Add variable names from the binding context to Template Marker. + marker.AddVariable("Names", names); + marker.AddVariable("Reports", GetDataTable()); + + //Apply Marker. + marker.ApplyMarkers(); + + //Save and Dispose. + workbook.SaveAs("TemplateMarker.xlsx"); + workbook.Close(); + } + + //GetDataTable method + System.Data.DataTable GetDataTable() + { + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("SalesJanJun", typeof(int)); + reports.Columns.Add("SalesJulDec", typeof(int)); + reports.Columns.Add("Change", typeof(int)); + reports.Rows.Add("Andy Bernard", 45000, 58000, 29); + reports.Rows.Add("Jim Halpert", 34000, 65000, 91); + reports.Rows.Add("Karen Fillippelli", 75000, 64000, 15); + reports.Rows.Add("Phyllis Lapin", 56500, 33600, 40); + reports.Rows.Add("Stanley Hudson", 46500, 52000, 12); + return reports; + } + + + + + + Gets or sets the arguments separator. Default argument separator is ';'. + + + To know more about template marker variable syntax refer this link. + + + The default argument separator for template marker is ';'. We can change this by using Property. + Here for example, we change the default separator to ':' and used this separator in our template marker variables. To know about customizing marker prefix refer property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Data to be used for Template Marker. + string[] names = new string[] { "SalesPerson", "SalesJanJun", "SalesJulDec", "Change" }; + + //Add marker variables in the worksheet. + worksheet["A1"].Text = "%Names:horizontal"; + worksheet["A2"].Text = "%Reports.SalesPerson:vertical"; + worksheet["B2"].Text = "%Reports.SalesJanJun:vertical"; + worksheet["C2"].Text = "%Reports.SalesJulDec:vertical"; + worksheet["D2"].Text = "%Reports.Change:vertical"; + + //Create a Template Marker Instance. + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + + //Change the default separator to ':'. + marker.ArgumentSeparator = ':'; + + //Add variable names from the binding context to Template Marker. + marker.AddVariable("Names", names); + marker.AddVariable("Reports", GetDataTable()); + + //Apply Marker. + marker.ApplyMarkers(); + + //Save and Dispose. + workbook.SaveAs("TemplateMarker.xlsx"); + workbook.Close(); + } + + //GetDataTable method + System.Data.DataTable GetDataTable() + { + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("SalesJanJun", typeof(int)); + reports.Columns.Add("SalesJulDec", typeof(int)); + reports.Columns.Add("Change", typeof(int)); + reports.Rows.Add("Andy Bernard", 45000, 58000, 29); + reports.Rows.Add("Jim Halpert", 34000, 65000, 91); + reports.Rows.Add("Karen Fillippelli", 75000, 64000, 15); + reports.Rows.Add("Phyllis Lapin", 56500, 33600, 40); + reports.Rows.Add("Stanley Hudson", 46500, 52000, 12); + return reports; + } + + + + + + Default marker prefix. + + + + + Delimiter between property parts. + + + + + Default string for Null value. + + + + + Standard separator between marker arguments. + + + + + Default Image Size Argument index for the list of possible arguments + + + + + Default Image Position Argument index for the list of possible arguments + + + + + Number of rows need to be created + + + + + Default index for FitToCell argument in list of possible arguments + + + + + Checks whether template markers Nestobject in first row + + + + + List with instances of possible argument classes. + + + + + Possible parent types. + + + + + Dictionary of markers in the workbook. + + + + + Dictionary with user-defined variables. + + + + + Marker prefix. String that indicates that cell contains marker. + + + + + Arguments separator. + + + + + Parent workbook object. + + + + + Represents the auto detection of the marker variable. + + + + + Represent the conditional formats in the template marker. + + + + + Collection of CallSite delegates stored with the key [typename_propertyname] for custom dynamic object + + + + + List holds the information of inserted cells + + + + + List that holds the text vertical position data of each range builder + + + + + Initializes static members of the TemplateMarkersImpl class. + + + + + Initializes a new instance of the TemplateMarkersImpl class. + + Application object for the new object. + Parent object for the new object. + + + + Applies markers to the parent object. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("FromDate", typeof(DateTime)); + reports.Columns.Add("ToDate", typeof(DateTime)); + reports.Rows.Add("Andy Bernard", new DateTime(2014, 09, 08), new DateTime(2014, 09, 11)); + reports.Rows.Add("Jim Halpert", new DateTime(2014, 09, 11), new DateTime(2014, 09, 15)); + reports.Rows.Add("Karen Fillippelli", new DateTime(2014, 09, 15), new DateTime(2014, 09, 20)); + reports.Rows.Add("Phyllis Lapin", new DateTime(2014, 09, 21), new DateTime(2014, 09, 25)); + reports.Rows.Add("Stanley Hudson", new DateTime(2014, 09, 26), new DateTime(2014, 09, 30)); + + //Detects number format in DateTable values. + marker.AddVariable("Reports", reports,VariableTypeAction.DetectNumberFormat); + marker.ApplyMarkers(); + + + + + + Applies markers to the parent object with the specified . + + Marker Unknown Variable. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("FromDate", typeof(DateTime)); + reports.Columns.Add("ToDate", typeof(DateTime)); + reports.Rows.Add("Andy Bernard", new DateTime(2014, 09, 08), new DateTime(2014, 09, 11)); + reports.Rows.Add("Jim Halpert", new DateTime(2014, 09, 11), new DateTime(2014, 09, 15)); + reports.Rows.Add("Karen Fillippelli", new DateTime(2014, 09, 15), new DateTime(2014, 09, 20)); + reports.Rows.Add("Phyllis Lapin", new DateTime(2014, 09, 21), new DateTime(2014, 09, 25)); + reports.Rows.Add("Stanley Hudson", new DateTime(2014, 09, 26), new DateTime(2014, 09, 30)); + + //Detects number format in DateTable values. + marker.AddVariable("Reports", reports,VariableTypeAction.DetectNumberFormat); + marker.ApplyMarkers(UnknownVariableAction.Exception); + + + + + + Adds a variable to the collection with the specified variable name and value. + + Name of the variable. + Value of the variable. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("FromDate", typeof(DateTime)); + reports.Columns.Add("ToDate", typeof(DateTime)); + reports.Rows.Add("Andy Bernard", new DateTime(2014, 09, 08), new DateTime(2014, 09, 11)); + reports.Rows.Add("Jim Halpert", new DateTime(2014, 09, 11), new DateTime(2014, 09, 15)); + reports.Rows.Add("Karen Fillippelli", new DateTime(2014, 09, 15), new DateTime(2014, 09, 20)); + reports.Rows.Add("Phyllis Lapin", new DateTime(2014, 09, 21), new DateTime(2014, 09, 25)); + reports.Rows.Add("Stanley Hudson", new DateTime(2014, 09, 26), new DateTime(2014, 09, 30)); + marker.AddVariable("Reports", reports); + + + + + + Adds a variable to the collection with the specified name, value and . + + Name of the variable. + Value of the variable. + Marker variable type. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("FromDate", typeof(DateTime)); + reports.Columns.Add("ToDate", typeof(DateTime)); + reports.Rows.Add("Andy Bernard", new DateTime(2014, 09, 08), new DateTime(2014, 09, 11)); + reports.Rows.Add("Jim Halpert", new DateTime(2014, 09, 11), new DateTime(2014, 09, 15)); + reports.Rows.Add("Karen Fillippelli", new DateTime(2014, 09, 15), new DateTime(2014, 09, 20)); + reports.Rows.Add("Phyllis Lapin", new DateTime(2014, 09, 21), new DateTime(2014, 09, 25)); + reports.Rows.Add("Stanley Hudson", new DateTime(2014, 09, 26), new DateTime(2014, 09, 30)); + marker.AddVariable("Reports", reports, VariableTypeAction.DetectNumberFormat); + + + + + + Removes a variable with specified name from the collection. + + Name of the Variable. + + + + Applies markers to the specified worksheet. + + Worksheet to apply markers to. + + + + Applies markers to the specified worksheet. + + Worksheet to apply markers to. + Marker Unknown Variable. + + + + Applies markers to the whole workbook. + + Workbook to apply markers to. + + + + Applies markers to the parent object with the specified . + + Workbook to apply markers to. + Marker Unknown Variable. + + + + Checks whether template markers object contains variable with the specified name. + + Name to locate. + Indicates whether the markers contains the variable. + + + + Adds a conditional format to the Template Marker. + + Represents the range where the conditional format to be applied. + The conditional format range should be within the template marker range. + Newly added conditional formats. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create Template Marker Processor + ITemplateMarkersProcessor marker = workbook.CreateTemplateMarkersProcessor(); + IConditionalFormats conditionalFormats = marker.CreateConditionalFormats(worksheet["C6"]); + + //Data Bar + //Apply markers using Formula + IConditionalFormat condition = conditionalFormats.AddCondition(); + + //Set Data bar and icon set for the same cell + //Set the format type + condition.FormatType = ExcelCFType.DataBar; + IDataBar dataBar = condition.DataBar; + + //Set the constraint + dataBar.MinPoint.Type = ConditionValueType.LowestValue; + dataBar.MinPoint.Value = "0"; + dataBar.MaxPoint.Type = ConditionValueType.HighestValue; + dataBar.MaxPoint.Value = "0"; + + //Set color for Bar + dataBar.BarColor = System.Drawing.Color.FromArgb(156, 208, 243); + //Hide the value in data bar + dataBar.ShowValue = false; + + //IconSet + condition = conditionalFormats.AddCondition(); + condition.FormatType = ExcelCFType.IconSet; + IIconSet iconSet = condition.IconSet; + iconSet.IconSet = ExcelIconSetType.FourRating; + iconSet.IconCriteria[0].Type = ConditionValueType.LowestValue; + iconSet.IconCriteria[0].Value = "0"; + iconSet.IconCriteria[1].Type = ConditionValueType.HighestValue; + iconSet.IconCriteria[1].Value = "0"; + iconSet.ShowIconOnly = true; + conditionalFormats = marker.CreateConditionalFormats(worksheet["D6"]); + + //Color Scale + condition = conditionalFormats.AddCondition(); + condition.FormatType = ExcelCFType.ColorScale; + IColorScale colorScale = condition.ColorScale; + + //Sets 3 - color scale. + colorScale.SetConditionCount(3); + colorScale.Criteria[0].FormatColorRGB = System.Drawing.Color.FromArgb(230, 197, 218); + colorScale.Criteria[0].Type = ConditionValueType.LowestValue; + colorScale.Criteria[0].Value = "0"; + colorScale.Criteria[1].FormatColorRGB = System.Drawing.Color.FromArgb(244, 210, 178); + colorScale.Criteria[1].Type = ConditionValueType.Percentile; + colorScale.Criteria[1].Value = "50"; + colorScale.Criteria[2].FormatColorRGB = System.Drawing.Color.FromArgb(245, 247, 171); + colorScale.Criteria[2].Type = ConditionValueType.HighestValue; + colorScale.Criteria[2].Value = "0"; + conditionalFormats = marker.CreateConditionalFormats(worksheet["E6"]); + + //Icon set + condition = conditionalFormats.AddCondition(); + condition.FormatType = ExcelCFType.IconSet; + iconSet = condition.IconSet; + iconSet.IconSet = ExcelIconSetType.ThreeSymbols; + iconSet.IconCriteria[0].Type = ConditionValueType.LowestValue; + iconSet.IconCriteria[0].Value = "0"; + iconSet.IconCriteria[1].Type = ConditionValueType.HighestValue; + iconSet.IconCriteria[1].Value = "0"; + iconSet.ShowIconOnly = false; + + marker.AddVariable("Reports", GetDataTable()); + + //Process the markers in the template. + marker.ApplyMarkers(); + + + //GetDataTable method + System.Data.DataTable GetDataTable() + { + System.Data.DataTable reports = new System.Data.DataTable(); + reports.Columns.Add("SalesPerson"); + reports.Columns.Add("SalesJanJun", typeof(int)); + reports.Columns.Add("SalesJulDec", typeof(int)); + reports.Columns.Add("Change", typeof(int)); + reports.Rows.Add("Andy Bernard", 45000, 58000, 29); + reports.Rows.Add("Jim Halpert", 34000, 65000, 91); + reports.Rows.Add("Karen Fillippelli", 75000, 64000, -15); + reports.Rows.Add("Phyllis Lapin", 56500, 33600, -40); + reports.Rows.Add("Stanley Hudson", 46500, 52000, 12); + return reports; + } + + + + + + Applies markers to the worksheet. + + Worksheet to apply markers to. + All cell indexes with markers. + + + + Checks the class marker in the worksheet. + + The current sheet object. + The unknown variable action. + The array of cell indexes. + The migrant range to apply the indexes. + Indicates whether the sheet contains the class marker. + + + + Checks and applies headers. + + The obj to get the headers. + The current sheet object. + The unknown variable action. + The array of cells indexes. + The migrant range to set the header names. + Indicates whether the markers are applied. + + + + Try and set headers. + + The obj to get the headers. + indicates the name of class + indicates whether the object is dynamic + The current sheet object. + The unknown variable action. + The array of cells indexes. + The migrant range to set the header names. + Indicates whether the markers are applied. + + + + Sets the object header. + + The obj to get the headers. + The marker text. + The current sheet object. + The migrant range to set the header. + The index of the marker cells. + The list of marker arguments. + The marker options. + Indicates whether the object is dynamic + The unknown variable action. + + + + Arrange the row and columns based on the object headers and direction. + + The curretn sheet object. + The migrant range to inser the rows or columns. + The marker options. + Represent the number of row or columns to insert. + indicates whether arrange cells in rows or columns relatives. + + + + Gets the object members info. + + The obj to get the members. + + + + + Applies the condtional format to the given ranges. + + Represents the ranges where the conditional format to be applied. + + + + Updates chart ranges. + + Parent workbook. + Parent worksheet. + List with cells that contained smartmarkers. + List with RangeBuilder instances. + + + + Update reference to the cell with template. + + Parent workbook. + Parent worksheet. + Cell index. + Builder with info about new range. + + + + Updates all charts in the worksheet. + + Worksheet to update. + Worksheet that contains specified cell. + Cell index with cell address to update. + Contains updated range info. + + + + Updates table range. + + Parent worksheet. + List with RangeBuilder instances. + + + + Updates chart ranges after marker application for single chart. + + Chart to update. + Parent worksheet. + Cell index with cell address to update. + Contains updated range info. + + + + Compares range and cell index. + + Range to compare. + Parent worksheet for the second range to compare. + CellIndex of the second range to compare. + True if range is equal to pair of sheet and cell index. + + + + Searches for all strings that contains smart markers. + + Worksheet to search into. + Labels with smart markers. + List with all cell indexes that contains smart markers. + + + + Applies marker that is located in the specified cell. + + Parent worksheet. + List with all cells that contains markers. + Cell index in the list. + Object that defines current cell, where value must be placed. + Range builder with update marker range information. + + + + Applies the text horizontal position to the range and sets the text vertical position into a list + + parent worksheet + List with marker arguments sorted by priority + Range builder that will get resulting range information + + + + Applies the text vertical position to the range + + parent worksheet + list that contains the range builder + + + + Extracts variable name from existing text and removes it from original text. + + Text to parse. + Marker arguments. + Variable name. + + + + Extracts parent name from existing text. + + Text to parse. + Variable name. + + + + Imports variable value. + + Variable name to set. + Text after variable that can allow to access to different properties. + Worksheet that contains cell with marker to process. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Marker options. + Range builder that will get resulting range information. + + + + Detects variable type and sets value. + + Value to set. + Text after variable that can allow to access to different properties. + Worksheet that contains cell with marker to process. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Template marker options. + Range builder that will get resulting range information. + + + + Detects variable type and sets value. + + Value to set. + Text after variable that can allow to access to different properties. + Worksheet that contains cell with marker to process. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Template marker options. + Range builder that will get resulting range information. + + + + Sets simple value. + + Value to set. + Properties of the object to set cell value to. + Worksheet to set cell in. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Marker options. + Range builder that will get resulting range information. + + + + Set the value in the given migrant range + + input value + parent worksheet of range + input migrant range + list of arguments + marker options value + range builder value + variable action type value + input number format + input value type + + + + Check whether the new space argument is in the list. + On initial cells merge is not enabled on image + + input list arguments + the boolean value represents whether merge is applied or not + + + + Detects and get the value type of the each column. + + values of the data columns. + detected number formats. + Detected values Types. + Format Type. + + + + Get the value based on the valueType + + string value. + Type of the given value. + value as object. + + + + Get value, value type and the number format. + + string value. + number format of the value. + Type of the value. + Indicates, whether to detect Number format. + value as object. + + + + Returns next value in the properties chain. + + First value in the chain. + String representation of the properties chain. + Next value. + + + + Get the type and numberformat from the input value + + input value + input attributes of the property + data type of value + numberformat of the input value + + + + Get the reference of the value from input string value + + input object value + input string property name + output boolean value shows the object is expando or not + output boolean value shows the object is custom defined object + the reference of the value + + + + Check whether the property is available in customized dynamic object + + input custom dynamic object + property name to be checked + if property list is empty returns null, otherwise returns boolean + + + + Check whether the dynamic object is empty or not + + object need to be checked + the boolean value indicates input is empty + + + + Sets array value. + + Value to set. + Text after variable that can allow to access to different properties. + Worksheet that contains cell with marker to process. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Template marker options. + Range builder that will get resulting range information. + Indicates whether to preserver marker type and number format. + + + + Sets array value. + + Value to set. + Text after variable that can allow to access to different properties. + Worksheet that contains cell with marker to process. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Marker options. + Range builder that will get resulting range information. + Indicates whether to preserver marker type and number format. + + + + Set the string value in the given range if the conditions are true + + start index of the range inserting + input migrant range + input value to be set + marker options value + boolean value indicates whether the source range has string number format + range builder object + boolean value indicates whether the value set or not + + + + Check if the given object is nested object and get total children count from the object. + + input object value + Properties + collection count to be extract. + Returns true if the collection count is greater than 0; otherwise false + + + + Sets DataSet value. + + Value to import. + Properties chain. + Worksheet that contains cell with marker. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Marker options. + Range builder that will get resulting range information. + Indicates whether to preserver marker type and number format. + + + + Imports DataView into marker position. + + Value to import. + Text with remaining properties chain. + Worksheet to import data table into. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Marker options. + Range builder that will get resulting range information. + Indicates whether to preserver marker type and number format. + + + + Imports DataTable into marker position. + + Value to import. + Text with remaining properties chain. + Worksheet to import data table into. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Marker options. + Range builder that will get resulting range information. + Indicates whether to preserver marker type and number format. + + + + Processes unknown property based on user-defined action. + + Property name. + Defined action. + Text with remaining properties chain. + Worksheet to import data table into. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Marker options. + Range builder that will get resulting range information. + Indicates whether to preserver marker type and number format. + + + + Imports DataColumn into marker position. + + Value to import. + Text with remaining properties chain. + Worksheet to import data table into. + Object that defines current cell, where value must be placed. + List with all cells that contain template markers. + List with marker arguments sorted by priority. + Marker options. + Range builder that will get resulting range information. + Indicates whether to preserver marker type and number format. + + + + Check whether the list of arguments contains the copyrange argument + And call copy range for stored. + + input worksheet + list of marker arguments + the marker options + Start point of the template marker applying + + + + Prepares next cell for markers import. + + Worksheet to import markers into. + Object that defines current cell, where value must be placed. + List with all marker cells. + List with marker arguments sorted by priority. + Marker options. + True if next cell was prepared; false if it weren't and we need to stop importing values. + + + + Prepares next cell for markers import. + + Worksheet to import markers into. + Object that defines current cell, where value must be placed. + List with all marker cells. + List with marker arguments sorted by priority. + Marker options. + Indicates whether the current object is nested collection or not. + Nested collection count. + Indicates whether the current insert row is first or not. + True if next cell was prepared; false if it weren't and we need to stop importing values. + + + + Indicates whether object is array. + + Value to check. + True if object is array, False otherwise. + + + + Indicates whether object is collection. + + Value to check. + True if object is collection, False otherwise. + + + + Indicates whether object is DataSet. + + Value to check. + True if object is collection, False otherwise. + + + + Indicates whether object is DataTable. + + Value to check. + True if object is collection, False otherwise. + + + + + Indicates whether object is DataTable. + + Value to check. + True if object is collection, False otherwise. + + + + Indicates whether specified object contains property with specified name. + + Object to search property in. + Property name to search. + Output property information, null if no property was found. + True if object contains such property. + + + + Gets name of the next property and updates original text removing that property. + + Text that contains property chain. + Next property in the chain. + + + + Peeks name of the next property without updating original text. + + Text that contains property chain. + Next property in the chain. + + + + Parses arguments. + + Arguments string. + Prepared marker options. + List with arguments that should be applied during next cell preparation. + + + + Converts sorted list with template marker arguments into IList. + + Sorted list to convert. + Template marker options. + Converted IList with all arguments. + + + + Inserts default jump attribute if it is necessary. + + Sorted list with arguments. Key - argument priority, value - argument object. + Prepared marker options. + + + + Parses single marker argument. + + Argument to parse. + Newly created marker argument. + + + + Applies template marker arguments. + + Worksheet to import markers into. + One-based row index of the last filled cell. + One-based column index of the last filled cell. + List with all marker cells. + List with arguments. + Marker options. + Indicates whether the current insert row is first row or not. + Indicates whether the current insert row is last row or not. + + + + Check whether the marker has fit to cell argument + + Image to be set. + Worksheet of the cell with image. + Object that defines current cell, where image must be placed. + List with marker arguments sorted by priority. + Boolean value indicates whether the merge applied + boolean value respect to the image which is stretched in the specified range + + + + Sets image on the cell with its given size and given position + + Image to be set. + Worksheet of the cell with image. + Object that defines current cell, where image must be placed. + List with marker arguments sorted by priority. + Boolean value indicates whether the merge applied + + + + Check for any ImagePositonArgument is in the list of arguments + If it is set the position,else assign default value. + + Object that defines picture to be aligned in the specified range + Range of the size + List with marker arguments sorted by priority. + + + + Check the ImageSizeArgument is available in lstArguments + if available returns customized size,else default size + + Image to be set. + List with marker arguments sorted by priority. + Worksheet of the cell with image. + Object that defines current cell, where image must be placed. + size of the image + + + + + Gets or sets the arguments separator. Default argument separator is ';'. + + + + + structure used to store the information of insert-copystyles applied cells + + + + + Parametered Constructor + + boolean value shows style is copied + integer cells count to be inserted + + + + This class represents an Excel Workbook. + + + + + Represents an MS Excel Workbook. + + + + + Creates the Data sorter to sort the data. + + Returns the Data Sorter. + + + + Activates the first window associated with the workbook. + + + + + Adds font to the inner fonts collection. Read-only. + + Font to add. + Added . + + The following code illustrates how to add to the . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Create font + IFont font = workbook.CreateFont(); + + //Add font + workbook.AddFont(font); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Closes the object and saves workbook to the specified file name.If True, all changes will be saved. + + If True, all changes will be saved. + Name of the file. + The following code illustrates how to Closes the object and saves workbook to the specified file name. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.Close(true,"Output.xlsx"); + + + + + + Closes the object. If True, all changes will be saved. + + If True, all changes will be saved. + The following code illustrate how to closes the object with specified bool value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.Close(true); + + + + + + Closes the object without saving. + + The following code illustrate how to closes the object without saving. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.Close(); + + + + + + Closes the object and saves workbook to the specified file name. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + File name in which workbook will be saved if SaveChanges is true. + + The following code illustrates how to closes the object and saves workbook with specified name. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.Close("Output.xlsx"); + + + + + + Save changes to the specified workbook. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.Save(); + + + + + + Saves workbook with the specified file name. + + Name of the file. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.xls"); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves workbook with the specified file name and . + + Name of the file. + Excel save type. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.xls", ExcelSaveType.SaveAsXLS); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves workbook with the specified file name and . + + File name to save into. + Xml save type. + + The following code snippet illustrates how to save as Xml. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAsXml("Output.xml", ExcelXmlSaveType.MSExcel); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves workbook with specified file name using separator. Used only for CSV files. + + Path to save. + Denotes separator for the CSV file types. + + The following code snippet illustrates how to save as CSV. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.csv", ","); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves workbook with specified file name with given separator and encoding. Used only for CSV files. + + + This overloaded method can be used to apply encoding to the CSV file in particular. The default encoding type is UTF-8. Other encoding types include ASCII, UTF-7, and UTF-32. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + Path to save the CSV file. + Denotes separator for the CSV file types. + The name of a character encoding that is supported by the .NET Framework. + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "This"; + worksheet["B1"].Text = "is"; + worksheet["C1"].Text = "a"; + worksheet["D1"].Text = "sample"; + worksheet["E1"].Text = "to"; + worksheet["F1"].Text = "set"; + worksheet["G1"].Text = "encoding"; + workbook.SaveAs("Output.csv", ",",Encoding.Unicode); + } + + + + + + Saves as Html to specified file name based on . + + Name of the file. + Save options in html + + The following code snippets illustrates how to save as html to the specified file name. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAsHtml("Output.html",HtmlSaveOptions.Default); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves as Html to the specified stream. + + stream that will receive html data. + + The following code snippets illustrates how to save as html to the specified stream. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + Stream stream = new MemoryStream(); + workbook.SaveAsHtml(stream); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves as Html to the specified stream based on . + + stream that will receive html data. + Save options in html + + The following code snippets illustrates how to save as html to the specified stream. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + Stream stream = new MemoryStream(); + workbook.SaveAsHtml(stream,HtmlSaveOptions.Default); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Creates a font object based on native font. + + Native font to get settings from. + returns newly created font. + + The following code illustrates how to create a object based on native . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + IRichTextString richText = worksheet["B2"].RichText; + + //Get font + System.Drawing.Font nativeFont = new System.Drawing.Font(System.Drawing.FontFamily.GenericSerif, 9); + + //Create font + IFont font = workbook.CreateFont(nativeFont); + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set text + richText.Text = "Sample"; + + //Set font + richText.SetFont(0, 5, font); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Replaces string with the specified data table value. + + String value to replace. + Data table with new data. + Indicates whether field name must be shown. + + The following code snippet illustrates how to replace the string value with data table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + // create the data table + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("Dosage", typeof(int)); + table.Rows.Add(1); + string oldvalue = "AB2"; + // Replace the value with data table. + workbook.Replace(oldvalue, table, true); + + + + + + Replaces string with the specified DataColumn value. + + String value to replace. + Data table with new data. + Indicates whether field name must be shown. + + The following code snippet illustrates how to replace the string value with data table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + // create the data table + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("Dosage", typeof(int)); + table.Rows.Add(1); + System.Data.DataColumn dataColumn = table.Columns[0]; + string oldvalue = "AB2"; + // Replace the value with data column. + workbook.Replace(oldvalue, dataColumn, true); + + + + + + Creates header or footer engine. + + Returns a new instance of header or footer engine. + + + + Copies workbook to the clipboard. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Save changes to the specified HttpResponse,using separator with the specified and . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + Denotes separator for the CSV file types. + HttpResponse that will receive workbook's data. + Download type. + Http content type. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.csv", ",", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.CSV); + + + + + + Save changes to the specified HttpResponse,using separator and encoding with the specified and . + + + This overloaded method can be used to apply encoding to the CSV file in particular. The default encoding type is UTF-8. Other encoding types include ASCII, UTF-7, and UTF-32. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + Name of the file in HttpResponse. + Denotes separator for the CSV file types. + HttpResponse that will receive workbook's data. + Enumeration to specify the download type. + Enumeration to specify the Http content type. + The name of a character encoding that is supported by the .NET Framework. + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "This"; + worksheet["B1"].Text = "is"; + worksheet["C1"].Text = "a"; + worksheet["D1"].Text = "sample"; + worksheet["E1"].Text = "to"; + worksheet["F1"].Text = "set"; + worksheet["G1"].Text = "encoding"; + workbook.SaveAs("Output.csv", ",", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.CSV, Encoding.UTF7); + } + + + + + + Save changes to the specified HttpResponse based on . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + Type of the Excel file. + HttpResponse that will receive workbook's data. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.xls", ExcelSaveType.SaveAsXLS, Response); + + + + + + Save changes to the specified HttpResponse based on and . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + Type of the Excel file. + HttpResponse that will receive workbook's data. + Content type to use. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.xls", ExcelSaveType.SaveAsXLS, Response, ExcelHttpContentType.Excel97); + + + + + + Save changes to the specified HttpResponse based on . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + HttpResponse to save in. + Content type to use. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.xls", Response, ExcelHttpContentType.Excel97); + + + + + + Save changes to the specified HttpResponse based on and . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + Type of the Excel file. + HttpResponse that will receive workbook's data. + Download type. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.xls", ExcelSaveType.SaveAsXLS, Response, ExcelDownloadType.PromptDialog); + + + + + + Save changes to the specified HttpResponse based on , and . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + Type of the Excel file. + HttpResponse that will receive workbook's data. + Download type. + Content type to use. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.xls", ExcelSaveType.SaveAsXLS, Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.Excel97); + + + + + + Save changes to the specified HttpResponse based on . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + HttpResponse that will receive workbook's data. + Download type. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.xls", Response, ExcelDownloadType.PromptDialog); + + + + + + Save changes to the specified HttpResponse based on and . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + HttpResponse that will receive workbook's data. + Download type. + Content type to use. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.xls", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.Excel97); + + + + + + Create an instance that can be used for template markers processing. + + Returns the Object that can be used for template markers processing. + + + + Marks workbook as final. Read-Only. + + + + + Saves workbook as stream. + + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, ASP.NET Core, Blazor, and Xamarin platforms. + Stream that will receive workbook data. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + Stream stream = new MemoryStream(); + workbook.SaveAs(stream); + + + + + + Saves workbook as stream with specified . + + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, ASP.NET Core, Blazor, and Xamarin platforms. + Stream that will receive workbook data. + Type of the Excel file. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + Stream stream = new MemoryStream(); + workbook.SaveAs(stream, ExcelSaveType.SaveAsXLS); + + + + + + Saves workbook in xml format with the specified. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + XmlWriter to save into. + Xml save type. + + The following code snippet illustrates how to save as Xml using Xml writer. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + System.Xml.XmlWriter writer = System.Xml.XmlWriter.Create("Output.xml"); + workbook.SaveAsXml(writer, ExcelXmlSaveType.MSExcel); + + + + + + Saves workbook as stream with specified . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Stream to save into. + Xml save type. + + The following code snippet illustrates how to save the stream as Xml. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + Stream stream = new MemoryStream(); + workbook.SaveAsXml(stream, ExcelXmlSaveType.MSExcel); + + + + + + Saves workbook as stream using separator. Used only for CSV files. + + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, ASP.NET Core, Blazor, and Xamarin platforms. + Stream to save. + Denotes separator for the CSV file types. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + Stream stream = new MemoryStream(); + workbook.SaveAs(stream, ","); + + + + + + Saves workbook as stream with given separator and encoding. Used only for CSV files. + + + This overloaded method can be used to apply encoding to the CSV file in particular. The default encoding type is UTF-8. Other encoding types include ASCII, UTF-7, and UTF-32. + + Stream to save the CSV file. + Denotes separator for the CSV file types. + The name of a character encoding that is supported by the .NET Framework. + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "This"; + worksheet["B1"].Text = "is"; + worksheet["C1"].Text = "a"; + worksheet["D1"].Text = "sample"; + worksheet["E1"].Text = "to"; + worksheet["F1"].Text = "set"; + worksheet["G1"].Text = "encoding"; + MemoryStream stream = new MemoryStream(); + workbook.SaveAs(stream, ",",Encoding.Unicode); + } + + + + + + Saves the workbook to a JSON file. + + File name to save into. + + + + Saves the workbook to a JSON file as schema. + + File name to save into. + Indicates whether to save the workbook as JSON in schema type html + + + + Saves the worksheet to a JSON file. + + File name to save into. + Worksheet to save as JSON. + + + + Saves the worksheet to a JSON file as schema. + + File name to save into. + Worksheet to save as JSON. + Indicates whether to save the worksheet as JSON in schema type html + + + + Saves the range to a JSON file. + + File name to save into. + Range to save as JSON. + + + + Saves the range to a JSON file as schema. + + File name to save into. + Range to save as JSON. + Indicates whether to save the range as JSON in schema type html + + + + Saves the workbook to a JSON file stream. + + Stream to save into. + + + + Saves the workbook to a JSON file stream as schema. + + Stream to save into. + Indicates whether to save the workbook as JSON in schema type html + + + + Saves the worksheet to a JSON file stream. + + Stream to save into. + Worksheet to save as JSON. + + + + Saves the worksheet to a JSON file stream as schema. + + Stream to save into. + Worksheet to save as JSON. + Indicates whether to save the worksheet as JSON in schema type html + + + + Saves the range to a JSON file stream. + + Stream to save into. + Range to save as JSON. + + + + Saves the range to a JSON file stream as schema. + + Stream to save into. + Range to save as JSON. + Indicates whether to save the range as JSON in schema type html + + + + Sets the palette color for the given index. + + Index of Color in array. + New color which must be set. + + The following code snippet illustrates how to set palette color. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set palette color + workbook.SetPaletteColor(10, System.Drawing.Color.Red); + + //Set color + worksheet["B2"].CellStyle.Color = workbook.Palette[10]; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Recover palette to default values. + + + The following code snippets illustrates how to reset the palette. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get colors + System.Drawing.Color[] colors = workbook.Palette; + + //Check color + Console.WriteLine(colors[2].Name); + + //Set color + colors[2] = System.Drawing.Color.Yellow; + + //Reset palette + workbook.ResetPalette(); + + //Check color + Console.WriteLine(workbook.Palette[2].Name); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + Console.ReadKey(); + } + //Output will be + //ffff0000 + //ffff0000 + + + + + + Returns Color object from predefined colors by its index. + + Index from palette array. + RGB Color. + + The following code illustrates how to get the RGB color value for the specified color from enumeration. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get color + System.Drawing.Color color = workbook.GetPaletteColor(ExcelKnownColors.Red); + + //Set color + worksheet["B2"].CellStyle.Color = color; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets the nearest color with the specified Color structure + from Workbook palette. + + system color. + Returns Color index from workbook palette. + + The following code illustrates how to get the indexed color from for the given color from structure. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get color + ExcelKnownColors color = workbook.GetNearestColor(System.Drawing.Color.Red); + + //Set color + worksheet["B2"].CellStyle.ColorIndex = color; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets the nearest color with the specified red, green, and blue + color values from Workbook palette. + + Red component of the color. + Green component of the color. + Blue component of the color. + Returns Color index from workbook palette. + + The following code illustrates how to get the indexed color from for the given color from structure. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get color + ExcelKnownColors color = workbook.GetNearestColor(255, 0, 0); + + //Set color + worksheet["B2"].CellStyle.ColorIndex = color; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets the color or Gets nearest color. + + + If there is at least one free color, define a new color; + if not, search for the closest one to the specified Color structure + from Workbook palette. + + System color + Color index from workbook palette. + + The following code illustrates how to get the indexed color from for the given color from structure. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get color + ExcelKnownColors color = workbook.SetColorOrGetNearest(System.Drawing.Color.Red); + + //Set color + worksheet["B2"].CellStyle.ColorIndex = color; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Sets the color or Gets nearest color with the specified red, green and blue color value. + + + If there is at least one free color, define a new color; + if not, search for the closest one to the specified by red, green, and blue + values color from Workbook palette. + + Red component of the color. + Green component of the color. + Blue component of the color. + Color index from workbook palette. + + The following code snippet illustrates how to set color or get nearest color by red,green and blue. + + workbook.SetColorOrGetNearest(123,45,56); + + + + The following code illustrates how to get the indexed color from for the given color from structure. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get color + ExcelKnownColors color = workbook.SetColorOrGetNearest(255, 0, 0); + + //Set color + worksheet["B2"].CellStyle.ColorIndex = color; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Creates a object. + + Returns the newly created . + + The following code illustrates how to create object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + IRichTextString richText = worksheet["B2"].RichText; + + //Create font + IFont font = workbook.CreateFont(); + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set text + richText.Text = "Sample"; + + //Set font + richText.SetFont(0, 5, font); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Creates font object based on another font object. + + Base font for the new one. + Returns a newly created font. + + The following code illustrates how to create a using existing . + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + IRichTextString richText = worksheet["B2"].RichText; + + //Get font + IFont defaultFont = worksheet["B2"].CellStyle.Font; + + //Create font + IFont font = workbook.CreateFont(defaultFont); + + //Set color + font.Color = ExcelKnownColors.Red; + + //Set text + richText.Text = "Sample"; + + //Set font + richText.SetFont(0, 5, font); + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Replaces string with the specified another string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string oldValue = "Find"; + string newValue = "NewValue"; + workbook.Replace(oldValue, newValue); + + + + + + Replaces string with the specified string value based on the given . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + The following code snippet illustrates how to replace the string with another string. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + string oldValue = "Find"; + string newValue = "NewValue"; + sheet.Replace(oldValue, newValue, ExcelFindOptions.MatchCase); + + + + + + Replaces string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string oldValue = "Find"; + double newValue = 9.00; + workbook.Replace(oldValue, newValue); + + + + + + Replaces string with the specified DateTime value. + + The string to be replaced. + The DateTime to replace all occurrences of oldValue. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string oldValue = "Find"; + DateTime dateTime = DateTime.Now; + workbook.Replace(oldValue, dateTime); + + + + + + Replaces specified string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string oldValue = "Find"; + string[] newValues = { "X values", "Y values" }; + workbook.Replace(oldValue, newValues, true); + + + + + + Replaces specified string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string oldValue = "Find"; + int[] newValues = { 1, 2 }; + workbook.Replace(oldValue, newValues, true); + + + + + + Replaces specified string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string oldValue = "Find"; + double[] newValues = { 1.00, 3.00 }; + workbook.Replace(oldValue, newValues, true); + + + + + + Returns the first occurrence of the specified string value with the specified . + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string value = "value"; + IRange result = workbook.FindFirst(value, ExcelFindType.Text); + + + + + + Returns the first occurrence of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search the value. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string findvalue = "value"; + IRange result = workbook.FindFirst(findvalue, ExcelFindType.Text, ExcelFindOptions.None); + + + + + + Returns the first occurrence that starts with the specified string value. + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string value = "value"; + IRange result = workbook.FindStringStartsWith(value, ExcelFindType.Text); + + + + + + Returns the first occurrence that starts with the specified string value which ignores the case. + + Value to search. + Type of value to search. + true to ignore case wen comparing this string to the value;otherwise,false + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string value = "value"; + IRange result = workbook.FindStringStartsWith(value, ExcelFindType.Text, true); + + + + + + Returns the first occurrence that ends with the specified string value. + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string value = "value"; + IRange result = workbook.FindStringEndsWith(value, ExcelFindType.Text); + + + + + + Returns the first occurrence that ends with the specified string value which ignores the case. + + Value to search. + Type of value to search. + true to ignore case wen comparing this string to the value;otherwise,false + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string value = "value"; + IRange result = workbook.FindStringEndsWith(value, ExcelFindType.Text, true); + + + + + + Returns the first occurrence of the specified double value with the specified . + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + double value = 9.00; + IRange result = workbook.FindFirst(value, ExcelFindType.Number); + + + + + + Returns the first occurrence of the specified bool value. + + Value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IRange result = workbook.FindFirst(true); + + + + + + Returns the first occurrence of the specified DateTime value. + + Value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + DateTime dateTime = DateTime.Now; + IRange result = workbook.FindFirst(dateTime); + + + + + + Returns the first occurrence of the specified TimeSpan value. + + Value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + TimeSpan timeSpan = new TimeSpan(2, 30, 30); + IRange result = workbook.FindFirst(timeSpan); + + + + + + Returns the cells with specified string value. + + Value to search. + Type of value to search. + Returns all found cells, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IRange[] results = workbook.FindAll("Hello World", ExcelFindType.Text); + + + + + + Returns the cells of the specified string value with the specified . + + Value to search. + Type of value to search. + Way to search. + + Returns all found cells, or Null if value was not found. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IRange[] results = workbook.FindAll("Hello World", ExcelFindType.Text, ExcelFindOptions.MatchCase); + + + + + + Returns the cells of the specified double value with the specified . + + Value to search. + Type of value to search. + Returns all found cells, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IRange[] results = workbook.FindAll(100.32, ExcelFindType.Number); + + + + + + Returns the cells of the specified bool value. + + Value to search. + Returns all found cells, or Null if value was not found + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IRange[] range = workbook.FindAll(true); + + + + + + Returns the cells of the specified DateTime value. + + Value to search. + Returns all found cells, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IRange[] results = workbook.FindAll(DateTime.Now); + + + + + + Returns the cells of the specified TimeSpan value. + + Value to search. + Return all found cells, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + TimeSpan value = new TimeSpan(2, 30, 30); + IRange[] results = workbook.FindAll(value); + + + + + + Sets separators for formula parsing. + + Arguments separator to set. + Array rows separator to set. + + The following code illustrates how to set separators. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SetSeparators(',', ';'); + + + + + + Sets protection for workbook. + + Indicates if protect workbook window. + Indicates if protect workbook content. + + The following code snippet illustrates how to protect the workbook. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.Protect(true, true); + + + + + + Sets protection for workbook with specified password. + + Indicates if protect workbook window. + Indicates if protect workbook content. + Password to protect with. + + The following code snippet illustrates how to protect the workbook using password. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.Protect(true, true, "Password"); + + + + + + Unprotects workbook. + + + The following code illustrates how to unprotect a workbook. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + //Unprotects the password. + workbook.Unprotect(); + + + + + + Unprotects workbook using password. + + + Throws ArgumentOutOfRangeException when password is wrong. + + Password to unprotect workbook. + + The following code illustrates how to unprotect a workbook using password. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + //Unprotects the password using password. + workbook.Unprotect("Password"); + + + + + + Creates copy of the current instance. + + Copy of the current instance. + + + + Sets write protection for workbook using password. + + Password to set. + + The following code snippet illustrates how to set write protection password. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SetWriteProtectionPassword("Password"); + + + + + + Import XML document to the workbook. + + File name of XML document. + + + + Imports XML data into workbook from the specified XML data stream. + + Stream of XML document. + + + + Gets Vba Project in the workbook. + + + The following code snippet illustrates how to get Vba Project from the workbook. + + ExcelEngine engine = new ExcelEngine(); + IWorkbook workbook = engine.Excel.Workbooks.Create(); + IWorksheet sheet = workbook.Worksheets[0]; + + sheet["A1"].Value = "Test"; + + IShape shape = sheet.Shapes.AddAutoShapes(AutoShapeType.Rectangle, 2, 2, 40, 40); + + Syncfusion.Office.IVbaProject project = workbook.VbaProject; + + Syncfusion.Office.IVbaModule module = project.Modules.Add("Test", Syncfusion.Office.VbaModuleType.StdModule); + + module.Code = "Sub ShowMessage()" + "\r\n" + + " MsgBox \"Shape Clicked!\"" + "\r\n" + + "End Sub"; + + shape.OnAction = "Test.ShowMessage"; + + workbook.SaveAs("Output.xlsm"); + + workbook.Close(); + engine.Dispose(); + + + + + + Gets the table styles object. + + + + + Gets an object that represents the active sheet (the sheet on top) in the + active workbook or in the specified window or workbook. Returns Nothing if no sheet is active. Read-only. + + + + + Gets or sets index of the active sheet. + + + + + Gets collection of all workbook's add-in functions. Read-only. + + + + + Gets or sets the author of the comment. + + + + + Gets or sets a value indicating whether to display horizontal scroll bar. + + + This sample shows how to hide horizontal scroll bar. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.IsHScrollBarVisible = false; + + + + + + Gets or sets a value indicating whether to display vertical scroll bar. + + + This sample shows how to hide vertical scroll bar. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.IsVScrollBarVisible = false; + + + + + + Gets collection that represents all the built-in document properties + for the specified workbook. Read-only. + + + The following code snippet illustrates how to get the built in document properties. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + //Get the built in document properties. + IBuiltInDocumentProperties builtInDocumentProperties = workbook.BuiltInDocumentProperties; + + + + + + Name which is used by macros to access the workbook items. + + + + + Gets collection that represents all the custom document properties + for the specified workbook. Read-only. + + + The following code snippet illustrates how to get the custom document properties. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + //Get the document properties. + ICustomDocumentProperties documentProperties = workbook.CustomDocumentProperties; + + + + + + Gets a MetaProperties collection that describes the meta data stored in the workbook. Read-only. + + + + + Gets collection that represents all the Custom Xml parts + for the specified workbook. Read-only. + + + The following code snippet illustrates how to get the custom Xml parts. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + //Get the customXml parts. + ICustomXmlPartCollection CustomXmlparts = workbook.CustomXmlparts; + + + + + + Gets the name of the object, including its path on disk. + + + Returns the name of the object, including its path on disk, as a string. Read-only String.This property is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + property is used to get the full file name of the workbook. + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string workbookPath = workbook.FullFileName; + workbook.Close(); + } + + + + + + True if the workbook uses the 1904 date system. + + + + + True if the precision to be used as displayed. Read-only. + + + + + True if cell is protected. Read-only. + + + + + True if window is protected. Read-only. + + + + + Gets Names collection. + + + For an Application object, returns a Names collection that represents + all the names in the active workbook. For a Workbook object, returns + a Names collection that represents all the names in the specified + workbook (including all worksheet-specific names). + + + The following code snippet illustrates how to get names. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + INames names = workbook.Names; + + + + + + True if the workbook has been opened as Read-only. Read-only Boolean. + + + + + True if no changes have been made to the specified workbook since + it was last saved. If current value is false then setting it to true cause Save() method call. + + + + + Gets a Styles collection that represents all the styles + in the specified workbook. Read-only. + + + The following code snippet illustrates how to get the Styles. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["B2"].Text = "Text"; + + //Set styles + IStyles styles = workbook.Styles; + + //Set style + IStyle style = styles[0]; + + //Set color + style.ColorIndex = ExcelKnownColors.Red; + + //Apply style + worksheet["B2"].CellStyle = style; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets a Sheets collection that represents all the worksheets + in the specified workbook. Read-only Sheets object. + + + The following code snippet illustrates how to get the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheets worksheets = workbook.Worksheets; + + + + + + True if workbook contains VBA macros. Read-only. + + + + + Gets the color from the Excel document color palette. + + + The following code snippet illustrates how to get palette color. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + System.Drawing.Color[] palette = workbook.Palette; + + + + + + Gets the color from the Excel document color palette. + + + The following code illustrates how to access the default colors of excel color palette. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Get colors + System.Drawing.Color[] colors = workbook.Palette; + + //Get color + System.Drawing.Color color = colors[2]; + + //Set color + worksheet["B2"].CellStyle.Color = color; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets index of tab which will be displayed on document open. + + + + + Gets the collection of the chart objects. + + + + + Indicates whether exception should be thrown when unknown + name was found in a formula. + + + The following code snippet illustrates how to gets or sets the ThrowOnUnknownNames. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.ThrowOnUnknownNames = true; + bool isThrowOnUnknownNames = workbook.ThrowOnUnknownNames; + + + + + + Disables loading of macros from document. + + + Excel on file open will simply skip macros and will + work as if document does not contain them. This options works + only when file contains macros (HasMacros property is True). + + + + + Gets or sets the standard font size, in points. + + + The following code illustrates how to set the standard font size for the workbook. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["B2"].Text = "Text"; + + //Set standard font + workbook.StandardFont = "Arial"; + + //Set standard font size + workbook.StandardFontSize = 18; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Gets or sets the name of the standard font. + + + The following code illustrates how to set the standard font for the workbook. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + + //Set text + worksheet["B2"].Text = "Text"; + + //Set standard font + workbook.StandardFont = "Arial"; + + //Set standard font size + workbook.StandardFontSize = 18; + + //Save and dispose + workbook.SaveAs("CellFormats.xlsx"); + workbook.Close(); + } + + + + + + Indicates whether to allow usage of 3D ranges in DataValidation + list property (MS Excel doesn't allow). + + + + + Gets calculation options. Read-only. + + + The following code snippet illustrates how to get the calculation options. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + //Get the calculation options. + ICalculationOptions calculationOptions = workbook.CalculationOptions; + + + + + + Gets or sets row separator for array parsing. + + + The following code snippet illustrates how to get row separator. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + string rowSeparator = workbook.RowSeparator; + + + + + + Gets the formula arguments separator. + + + The following code snippet illustrates how to get the argument separator. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + //Get the chart argumentSeparator. + string argumentSeparator = workbook.ArgumentsSeparator; + + + + + + Gets grouped worksheets. Read-only. + + + The following code snippet illustrates how to get the grouped sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheetGroup worksheetGroup = workbook.WorksheetGroup; + + + + + + Indicates whether worksheet is displayed right to left. + + + + + True if the tabs are visible. otherwise False. + + + + + Gets collection of tab sheets. Read-only. + + + The following code snippet illustrates how to get the tabsheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + ITabSheets tabsheets = workbook.TabSheets; + + + + + + Indicates whether detect string value passed to Value (and Value2) + property as DateTime. Default value is true. + + + Setting this property to false can increase performance. + + + + + Toggles string searching algorithm.Default value is true. + + + If true then Dictionary will be used + to locate string inside strings dictionary. This mode is faster but uses + more memory. If false then each time string is added to strings dictionary + we will have to iterate through it and compare new strings with existing ones. + + + + + True to display a message when the file is opened, recommending that the file be opened as read-only. + + + + + Gets or sets password to encrypt or decrypt document. + + + + + Gets maximum row count for each worksheet in the workbook. Read-only. + + + + + Gets maximum column count for each worksheet in the workbook. Read-only. + + + + + Gets or sets excel version. + + + + + Gets pivot caches collection. Read-only. + + + The following code snippet illustrates how to get pivot caches. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IPivotCaches pivotCaches = workbook.PivotCaches; + + + + + + Gets the workbook connections. Read Only + + + The following code snippet illustrates how to get the connections from the workbook. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + //Gets the workbook connections. + IConnections connections = workbook.Connections; + + + + + + Returns the collection of XmlMap object. Read-Only. + + + + + This event is fired after workbook is successfully saved. + + + + + This event is fired when trying to save to a Read-only file. + + + + + Stream name that represent summary name. + + + + + Stream name that represent document summary name. + + + + + Stream name used by new versions of Excel. + + + + + Old styled name of stream in Excel binary file. + + + + + Name of sub-storage in input file which contains macros of opened file. + + + + + Sub-storage of Macros storage. Used for checks is file format correct + or not. + + + + + Self-referential external reference. + + + + + File name has been excoded. + + + + + Reference to an empty workbook name. + + + + + Represents an MS-DOS drive letter. It is followed by the drive letter. + For example, the formula ='D:\SALES.XLS'!A1 generates this character key + when the dependent workbook is not on the D drive. UNC file names, such as + \\server\share\myfile.xls, generate an @ character after this character key; + this replaces the initial double backslash (\\). + + + + + Indicates that the source workbook is on the same drive as the + dependent workbook (the drive letter is omitted). For example + the formula ='\SALES.XLS'!A1 generates this key when + the dependent workbook is not in the root directory. + + + + + Indicates that the source workbook is in a subdirectory of the current directory. + For example, the formula ='XL\SALES.XLS'!A1 generates the DEF_CHAR_DOWNDIR key. + The subdirectory name precedes the DEF_CHAR_DOWNDIR key, and the file + name follows it. + + + + + Indicates that the source workbook is in the parent directory of the current directory. + For example, the formula ='..\SALES.XLS'!A1 generates the DEF_CHAR_UPDIR key. + + + + + Not used. + + + + + Indicates that the source workbook is in the startup directory + (the Xlstart subdirectory of the directory that contains Excel.exe). + + + + + Indicates that the source workbook is in the alternate startup directory. + + + + + Indicates that the source workbook is in the Library directory. + + + + + Indicates that path is UNC file name (is replaced by \\). + + + + + Start of the UNC network path. + + + + + Indicates that current workbook is not protected. + + + + + Index of the removed sheet. + + + + + Start of the http url string. + + + + + Defines a new line character + + + + + First user-defined color. + + + + + + + + + + + + + + + + + + + + + + + + + Index of the removed sheet. + + + + + Content type for Excel 97. + + + + + Content type for Excel 2000. + + + + + Content type for Excel 2007. + + + + + Content type for CSV. + + + + + Content type for ODS. + + + + + Standard password. + + + + + TextQualifier. + + + + + Default regular expression options. + + + + + Name of the directory's group in regular expressions. + + + + + Name of the book's group in regular expressions. + + + + + Name of the sheet's group in regular expressions. + + + + + Index of worksheet used for workbook references. + + + + + Name prefix for styles in ignore style mode. + + + + + Default theme version on excel workbook 2016 + + + + + Default theme version on excel workbook 2013 + + + + + Default theme version on excel workbook 2007 and 2010 + + + + + + Text for evaluation warning. + + + + + Text for evaluation warning. + + + + + Name of the expired evaluation sheet. + + + + + First chart color index. + + + + + Last chart color index. + + + + + Excel97to2003 entension. + + + + + Excel2007 extension. + + + + + Excel97to2003 template file extension. + + + + + Excel2007 template file extension. + + + + + Excel2007 template file with macro extension. + + + + + Excel2007 Macro file extension. + + + + + ODS entension. + + + + + Excel2007 Xlsb extension. + + + + + Separator between worksheets in the cross-worksheet formula (Sheet1:Sheet3!A1). + + + + + Represents the Difference value of 1904 and 1899 date system format. + + + + + Defines a default script factor. + + + + + Default Palette colors. + + + + + Records that should be stored in m_arrPivotRecords. + + + + + Regular expression for workbook-worksheet pair. + + + + + Regular expression for workbook-worksheet pair with directory name + + + + + + Array with characters that are reserved. + + + + + + + + + + + + + + + Default theme colors. + + + + + Default theme colors on Excel version 2013. + + + + + Collects the workbook's name ranges in a dictionary + + + + + Represent to indicate whether pivot table count in workbook. + + + + + Xlsb Data holder + + + + + Indicates whether it is XLSB. + + + + + Create and store the table styles object. + + + + + Indicates the slicer cache + + + + + Indicates the slicer cache collection + + + + + Formula existing row indexes with sheet. + + + + + Represents the person dictionary that contains all the created person object + + + + + Indicates whether all the formula in the workbook is evaluated. + + + + + Used to store records which belong to the Workbook part. + Temporary array which must be cleaned after read/parse operations. + + + + + Active sheet in the current workbook. + + + + + Denotes whether to display sheet tabs or not. + + + + + Active tab sheet in the current workbook. + + + + + Returns a Sheets collection that represents all the worksheets + in the specified workbook. Read-only Sheets object. + + + + + Styles collection that represents all the styles + in the specified workbook. + + + + + Storage of all Fonts created in a workbook. + + + + + Storage of all ExtendedFormats created in a workbook. + + + + + Storage of NameRecords. + + + + + New value changes for the format Record + + + + + Collection of workbook's formats. + + + + + Storage of BoundSheet records. Is a temporary storage which + after read / parse operations must be cleaned. + + + + + Dictionary which is used for storage of SST strings. + + + + + Collection contains all SupBookRecords. + + + + + Represents the continuity of ExternSheet record + + + + + List of the ranges that should be reparsed. + + + + + Full name of the file where workbook was saved or loaded. + + + + + True if the workbook uses the 1904 date system. + + + + + True if workbook uses Precision + + + + + True if the workbook has been opened as Read-only. + + + + + True if no changes have been made to the specified workbook since + it was last saved. Read / write Boolean. + + + + + + + + + + Indicates whether workbook is in loading state. + + + + + Indicates whether workbook is in saving state. + + + + + True if cells are protected. + + + + + True if window is protected. + + + + + Default name of workbook used by macros. + + + + + True if pivot table Fields lists are hidden + + + + + Indicates default theme version for wokbook. + + + + + True - indicates that current workbook contains macros sub-storage. + + + + + True - indicates that current workbook contains summary information. + + + + + True - indicates that current workbook contains document summary information. + + + + + True - indicate that macros exists in document and they + are disabled, otherwise False. + + + + + Stores current workbook's palette. + + + + + True- indicates that user used custom palette instead of the default. + + + + + Window one record for the workbook. + + + + + Collection of all Name objects defined in the workbook + + + + + Collection of all Chart objects of the workbook. + + + + + Collection of all Dialog sheets of the workbook. + + + + + Collection of all Macrosheets and IntlMacrosheets of the workbook + + + + + Collection of Charts and Worksheets objects. + + + + + One of protection records. + + + + + One of protection records. + + + + + One of protection records. + + + + + + + + + + Data needed by workbook shapes (unique images and other things). + + + + + First unused color (color that wasn't redefined yet). + + + + + Current object id. + + + + + First free shape id. + + + + + + + + + + List of ExtendedXF Format record + + + + + + Stream from which workbook was read. + + + + + + + + + + Indicates whether to allow usage of 3D ranges in DataValidation + list property (MS Excel doesn't allow). + + + + + Collection of extern workbooks. + + + + + Collection of all add-in functions used in this workbook. + + + + + Collection of header / footer pictures. + + + + + Calculation options. + + + + + Collection of pivot caches. + + + + + Workbook level Conditional Priority count. + + + + + Graphics used for string measurement. + + + + + Graphics used for string measurement. + + + + + Represents the destination file path. + + + + + Formula parser. + + + + + Represents group of selected worksheets. + + + + + Indicates whether original worksheet contains duplicated names. + + + + + Collection of built-in document properties. + + + + + Collection of custom document properties. + + + + + Collection of Content Type properties. + + + + + Collection of CustomXmlParts. + + + + + Indicates whether workbook is write protected. + + + + + File sharing record. + + + + + Indicates whether library should try to detect string value passed to Value (and Value2) + property as DateTime. Setting this property to false can increase performance greatly for + such operations especially on .Net Framework 1.0 and 1.1. Default value is true. + + + + + Size of the default character measured using first function. + + + + + Size of the default character measured using second function. + + + + + Password used to encrypt document. + + + + + Encryption type. + + + + + Document id. + + + + + Maximum row count for each worksheet in this workbook. + + + + + Maximum column count for each worksheet in this workbook. + + + + + Maximum possible number of extended formats. + + + + + Maximum possible indent value. + + + + + Current excel version. + + + + + Default XF index. + + + + + File data holder, used to store data for Excel 2007 format. + + + + + Maximum digit width (used to evaluate different column width) + + + + + Workbook's heap handle. + + + + + This field is used to preserve BookExt record. + + + + + This field is used to preserve Theme record. + + + + + Contains list of theme colors. + + + + + Unparsed controls stream. + + + + + Maximum used table index. + + + + + Country code. + + + + + Stream contains custom table styles + + + + + Indicates whether workbook was loaded or it is created. + + + + + Indicates whether the theme colors of the workbook is parsed or not + + + + + Represents the Compatibility record + + + + + Represents the Shared string stream + + + + + Represents whether workbook has Inlinestring. + + + + + Represents the Data sorter. + + + + + Denotes whether is workbook is 'Strick Open Xml spreadsheet'. + + + + + Preserves the pivot cache. + + + + + Store the font indexes. + + + + + Represents the Excel Parse Options. + + + + + Preserves the unique styles cells count. + + + + + Represents the unique styles count. + + + + + Boolean that represent the extended format CRC value status. + + + + + Extended format CRC value. + + + + + Find the beginning version of excel + + + + + + + + + + Preserves the child element in the document management properties. + + + + + Preserves the child element in the document management properties. + + + + + Illegal xml character defined names count. + + + + + Connections collections + + + + + Connection Support for Excel2003 + + + + + Represents to parse sheet on demand + + + + + ReCalculation Identifier. + + + + + Calc Identifier. + + + + + Preserves the DDE type link in workbook + + + + + Alogrithm name to protect/unprotect Workbook. + + + + + Hash value to ensure the workbook protected password. + + + + + Random generated Salt for the workbook password. + + + + + Spin count to loop the hash algorithm. + + + + + Custom date patterns in excel + + + + + Date time pattern for the current culture with custom date pattern + + + + + Indicates whether workbook is converting to Pdf or Image or HTML. + + + + + Contains list of used cell StyleIndex. + + + + + Number of XF records removed. + + + + + Start index of XF record in InnerExtFormats collection. + + + + + Indicates whether Start index of XF record in InnerExtFormats collection is found. + + + + + Indicates whether the unused XF record removed or not. + + + + + Indicates whether the workbook is xml. + + + + + Indicates whether the workbook styles are copied during addCopy. + + + + + Indicates whether the styles are created during copy. + + + + + Indicates whether the version is set. + + + + + Collection of XmlMap object. + + + + + Maintains the precedents cell collection for all cells + + + + + Dictionary to hold processed number format indexes + + + + + Indicates whether the calc engine enabled and disabled on parsing and serializing + + + + + Vba project + + + + + Vba project macro storage. + + + + + Theme line styles + + + + + Represents the name of substitute font used. + + + + + Indicates whether the styles has color palette or not. + + + + + Indicates slicer cache id + + + + + Represents the pivot slicer caches + + + + + Represents the pivot slicer cache id + + + + + Indicates whether slicer properties parsed in the workbook. + + + + + Extension list stream + + + + + Represents the slicer names in the worksheet. + + + + + Represents the lambdaFormulaArgument dictionary that contains all the created lambdaFormulaArgument object + + + + + ExcelSheetType-to-Name. + + + + + Parse the string and tries to retrive the required table + + input name range value + the required table range + + + + returns the required range from given table details + + input table name + boolean value indicates whether the table all values to be returned + boolean value indicates whether the table header values only to be returned + boolean value indicates whether the table first row values to be returned + array having the columns to defind the region + the required range + + + + Gets the table with the given name + + Worksheet + Name of the table + + + + + Clears all pivot caches. + + + + + generates Global Unique Identifier (GUID) + + GUID in string representation + + + + Returns theme color by its index. + + + + + + + Returns theme color by its index on ExcelVersion 2013. + + index value on list of colors + the Color value + + + + Creates extended format record and registers it in workbook. + + Indicates whether to force add to collection. + Newly created extended format. + + + + Creates extended format based on baseFormat and registers it in workbook. + + Base format for the new format. + Indicates whether to force add. + Newly created format. + + + + Creates extended format based on baseFormat without registering it in the workbook. + + Base format for the new format. + Newly created format. + + + + Registers extended format. + + Format to register. + + Format from the collection if there were such format; + otherwise returns format that was added. + + + + + Registers extended format. + + Format to register. + Indicates whether to force format object registration in the collection. + + Format from the collection if there were such format; + otherwise returns format that was added. + + + + + Copies to clipboard the selected worksheet or all worksheets if sheet is NULL. + + Worksheet that would be copied into the clipboard. + + + + Copies workbook and all its worksheets to the clipboard. + + + + + Inserts SupbookRecord describing this workbook. + + + Index to the SupBookRecord that describes current workbook. + + + + + Adds internal sheet reference. + + Name of the sheet that should be referenced. + Index to the sheet in ExternSheetRecord. + + When can't find specified worksheet in this workbook. + + + + + Gets file name with extension from the path. + + Url to get name from. + File name without extension from the path. + + + + Gets create workbook name. + + Workbook to get name from. + Workbook name. + + + + Returns the file name from the full path. + + URL to get file name. + Workbook name. + + + + Adds reference to the extern worksheet. + + + Workbook name (can be null or empty than sheet name is treated as book name. + + Worksheet name. + Index in the ExternSheet record. + + + + Adds internal sheet reference. + + Name of the sheet that should be referenced. + Worksheet to be referenced. + + When can't find specified worksheet in this workbook. + + + + + Adds internal sheet reference. + + Name of the sheet that should be referenced. + Worksheet to be referenced. + + When can't find specified worksheet in this workbook. + + + + + Adds internal sheet reference. + + Name of the sheet that should be referenced. + Worksheet to be referenced. + + When can't find specified worksheet in this workbook. + + + + + This method adds one TREF structure to the list. + + SUPBOOK index. + Index to first SUPBOOK sheet. + Index to last SUPBOOK sheet. + + Index of the old REF structure (if there was one) + or new REF structure. + + + + + Adds incorrect sheet reference. + + Worksheet to be referenced. + + When can't find specified worksheet in this workbook. + + + + + Adds incorrect book reference. + + Worksheet to be referenced. + + When can't find specified worksheet in this workbook. + + + + + Decreases index (in ExternSheet record) of all worksheets with index + that is smaller than specified index. + + + + + + Increases index (in ExternSheet record) of all worksheets with index + that is larger or equal than specified index. + + + + + + This method updates external sheet table when a worksheet was moved. + + Old index of the worksheet. + New index of the worksheet. + + + + Updates active sheet index after move operation. + + Old sheet index. + New sheet index. + + + + Gets sheet index after move operation. + + Current sheet index. + Old index of the sheet that was moved. + New index of the sheet that was moved. + New index for current sheet index. + + + + Returns worksheet name. + + Reference to worksheet. + Returns sheet name. + + + + Returns worksheet name. + + Reference to worksheet. + Returns sheet name. + + + + Returns worksheet name. + + Reference to worksheet. + Returns sheet name. + Indicates whether to throw exception if reference index is out of range. + + + + Get name of the external worksheet by reference. + + + + + Get name of the internal worksheet by reference. + + + + + Returns worksheet by its reference index. + + Reference index of the sheet. + Found worksheet. + + When can't find referenced worksheet. + + + + + Returns worksheet by its reference index. + + Reference index of the sheet. + + Indicates whether to throw exception when can't + find worksheet with specified index. + + Found worksheet. + + When can't find referenced worksheet. + + + + + Check for internal Reference; If external - rise NotSupported exception. + + Ref index. + + + + Indicates whether reference is reference to local worksheet. + + Reference index. + Value that indicates whether reference is reference to local worksheet. + + + + + + + + + + + Inserts reparse into array of object that should be reparsed + when loading will be complete. + + Object that will be reparsed later. + + + + Returns number from the style name, i.e. Normal_1 result is 1. + + Style name. + Parsed number. + + + + Raises argument to the second power. + + Value to be squared. + Squared value. + + + + Calculates distance between two colors. + + First color. + Second color. + Distance between two colors. + + + + Clears collection of references. + + + + + Raises FileSaved event. + + + + + Raises OnReadOnlyFile event. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns reference index by extern workbook index. + + Index of the extern workbook. + Reference index if extern workbook was found; otherwise returns -1. + + + + Returns extern workbook index by reference index. + + Reference index. + Extern workbook index. + + + + Returns external sheet object by reference index. + + Reference index. + External worksheet that corresponds to the specified reference index. + + + + Decodes name encoded in supbook. + + Name to decode. + Decoded name. + + + + + + + + + + Decodes name encoded in supbook. + + Name to decode. + Decoded name. + + + + Modifies record in skip styles mode. + + Record to modify. + Boolean value indicating that record should be added to the array. + + + + Modifies record in skip styles mode. + + Records to modify. + + + + Compares two colors. + + First color to compare. + Second color to compare. + True if colors are equal. + + + + Removes extended format by its index. + + Index to the extended format to remove. + + + + Removes extended format by its index. + + Index to the extended format to remove. + + + + Checks whether protected content is correct. + + Worksheet to check. + True if content is correct. + + + + Optimizes internal references by removing unused ones. + + + + + Updates reference indexes. + + Array with updated indexes. + + + + Updates pivot caches after insert. + + Worksheet where insert operation took place. + + + + Indicates whether this is remove operation. + + + + Get the stack collection of range from ptg array. + + input array of Ptgs + the stack of range + + + + Initialize the PrecedentsCache member. + + + + + Determines whether the start of the main string matches the specified substring. + + The string to check. + The substring to compare to the start of the main string. + + true if the main string starts with the specified substring; otherwise, false. + + + + + Determines whether the end of the main string matches the specified substring. + + The string to check. + The substring to compare to the end of the main string. + + true if the main string ends with the specified substring; otherwise, false. + + + + + Returns true if the last character matches the given character. + + + + + Static constructor. + + + + + Base constructor which must be used when workbook is created + from scratch (maybe clipboard data)and not from file. + + Application object for the workbook. + Parent object for the workbook. + Excel version. + + + + Creates workbook with specific number of worksheets. + + Application object for the workbook. + Parent object for the workbook. + Quantity of empty worksheets to create. + Excel version. + + + + Create Workbook from file. + + Application object for the workbook. + Parent object for the workbook. + Name of the file with workbook. + Excel version. + + When can't find workbook stream in the file. + + + + + Create Workbook from file. + + Application object for the workbook. + Parent object for the workbook. + Name of the file with workbook. + Parse options. + Excel version. + + When can't find workbook stream in the file. + + + + + Create Workbook from file. + + Application object for the workbook. + Parent object for the workbook. + Name of the file with workbook. + Parse options. + Indicates whether to open workbook in read-only mode. + Password to decrypt workbook stream. + Excel version. + + When can't find workbook stream in the file. + + + + + Initializes a new instance of the class. + + Application object for the workbook. + Parent object for the workbook. + Name of the file with workbook. + Parse options. + Indicates whether to open workbook in read-only mode. + Password to decrypt workbook stream. + Excel version. + + When can't find workbook stream in the file. + + + + + Create WorkBook from file. + + Application object for the workbook. + Parent object for the workbook. + Stream to open. + Denotes separator for the CSV file types. + Number of first row to write. + Number of first column to write. + Excel version. + Filename is used to generate worksheet name + + + + Create Workbook from stream. + + Application object for the workbook. + Parent object for the workbook. + Stream that contains workbook's data. + Excel version. + + When specified stream is NULL. + + + + + Create Workbook from stream. + + Application object for the workbook. + Parent object for the workbook. + Stream that contains workbook's data. + Parse options. + Excel version. + + When specified stream is NULL. + + + + + Parses new workbook from xml stream. + + Current application + Parent object. + Xml reader. + Xml open type. + + + + Initializes all internal collections. + + + + + Creates graphics object. + + + + + Fills collection with default formats, extended format, and styles. + + + + + Inserts all default extended formats into special list. Excel has 21 + default formats for each workbook. + + + + + Inserts all default styles into special list. + + + + + Inserts all default styles into special list. + + Styles that were read from file. + + + + Registers default style inside styles collection. + + Style to register. + + + + + + + + + + + + + + + + + + + + + + + Compares two style records. + + First style record to compare. + Second style record to compare. + True if records describe same default style. + + + + Inserts default fonts into special list. + + + + + Disposes internal collections. + + + + + Clears all internal collections. + + + + + Clears the extended formats. + + + + + + + Storage object to extract pivot cache from. + Object used to decrypt encrypted records. + + + + Parse StgStream. + + Storage object to extract data from. + Parse options. + Password to decrypt if necessary. + + + + + + + + + + Searches for the stream name, case-insensitive. + + Storage object to search inside of. + Name of the stream to locate. + Case-sensitive stream name if stream was found; null otherwise. + + + + This method parses stream that holds data in Excel 2007 format (Open XML). + + Stream to parse. + Password to use during for decryption. + + + + Parses specified file. + + File to parse. + Password to use for decryption (null if file is not encrypted). + Excel version. + Parsing options. + + + + Parses specified stream. + + Stream to parse. + Password to use for decryption (null if file is not encrypted). + Excel version. + Parsing options. + + + + Class finalizer. + + + + + Reads workbook from the specified reader. + + BiffReader that contains workbook. + + + + Reads workbook from the specified reader. + + BiffReader that contains workbook. + Parsing options. + + Password - used for decryption.Otherwise this argument is ignored. + + Decryptor used for parsing, if it was created; null otherwise. + + + + Extracts pivot caches information from the workbook pivot records. + + + + + + Recheck the Format Record + + + + + + Normalizes border settings for specified extended format record in some incorrect files. + + ExtendedFormatRecord to process. + + + + Creates decryptor. + + Password that should be used for decryption. + Contains encryption information. + + + + Checks password provided password or asks to provide a password for the first time. + + Provided password; null if there was no password provided. + Resulting decryptor object. + Part of the decryption structure used to check password. + + + + Checks whether document was encrypted with standard password and creates decryptor object if necessary. + + Decryptor to create. + Part of the decryption structure used to check password. + True if file was encrypted with standard password. + + + + check whether apssword is correct or not + + + + + + + + + + + + + + Parses internal sst record. + + SSTRecord to parse. + Parse options. + + + + Prepares fonts, formats and styles collections. + + Indicates whether parsing is made in ignore styles mode. + List with all styles. + Dictionary with new extended format indexes for ignore styles mode. + + + + Prepares extended format records. + + + + + Parses autofilters. + + + + + Method to extract all worksheets from stream. + + BiffReader that contains worksheets. + Parse options. + First worksheet to parse. + Last worksheet to parse. + + Dictionary with new extended format indexes for ignore styles mode. + + Object used to decrypt encrypted records. + + + + Reads worksheet data from the reader without parsing worksheets. + + Reader to read data from. + Parse options. + The first worksheet to parse. + The last worksheet to parse. + Dictionary with new extended format indexes for ignore styles mode. + Object used to decrypt encrypted records. + + + + Prepares named ranges (just create them without parsing). + + + + + Parses set of Name records. + + + + + Parses all worksheets, charts, etc. + + + + + Parses all worksheets, charts, etc. on demand + + + + + Reparses all ranges that were not parsed because of + insufficient data (that weren't loaded when parsing). + + + + + Creates all necessary styles for the workbook. + + Array of all read StyleRecords. + + + + Searches StyleRecord for the specified index of the Extended + Format record in the list. + + List that contains StyleRecord. + Index of the Extended Format. + + Found style index (if it is greater or equal to zero than it is index + from arrStyles array; otherwise it is evaluated as index in arrDefaultStyles + increased by 1 and multiplied by -1. + . + + + + Returns array of default styles. + + Array of StyleRecords with default styles. + + + + Creates style each number format. + + + Dictionary with new extended format indexes. + + + + + Read document properties from StgStream. + + Storage to read properties from. + + + + Reads document properties using native objects. + + Storage to get document properties from. + + + + Read document properties using managed classes. + + Storage to get document properites from. + + + + Parse the slicers in the workbook + + + + + Creates the Data sorter to sort the data.. + + Data Sorter. + + + + Copies to the clipboard whole workbook. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Activates the first window associated with the workbook. + + + + + Closes the object and saves workbook to the specified file name. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + File name in which workbook will be saved if SaveChanges is true. + + The following code illustrates how to closes the object and saves workbook with specified name. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.Close("Output.xlsx"); + + + + + + Closes the object and saves workbook to the specified file name.If True, all changes will be saved. + + If True, all changes will be saved. + Name of the file. + The following code illustrates how to Closes the object and saves workbook to the specified file name. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.Close(true,"Output.xlsx"); + + + + + + Closes the object. If True, all changes will be saved. + + If True, all changes will be saved. + The following code illustrate how to closes the object with specified bool value. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.Close(true); + + + + + + Closes the object without saving. + + The following code illustrate how to closes the object without saving. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.Close(); + + + + + + Create an instance that can be used for template markers processing. + + Returns the Object that can be used for template markers processing. + + + + Marks workbook as final. Read-Only. + + + + + Saves changes to the specified workbook. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + If file name was not specified before. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.Save(); + + + + + + Saves workbook with the specified file name. + + + Name of the file into which workbook will be saved. + + + When FileName is NULL. + + + When FileName is empty. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.SaveAs("Output.xls"); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves workbook with the specified file name and . + + + Name of the file into which workbook will be saved. + + Options for save. + + When FileName is NULL. + + + When FileName is empty. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.SaveAs("Output.xls", ExcelSaveType.SaveAsXLS); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Converts XLS/XLSX file to ODS + + + + + + Short variant of SaveAs method. + + + Name of the file into which workbook will be saved. + + Options for save. + Excel version that should be used. + + When FileName is NULL. + + + When FileName is empty. + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves as Html to specified file name based on . + + Name of the file. + Save options in html + + The following code snippets illustrates how to save as html to the specified file name. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.SaveAsHtml("Output.html",HtmlSaveOptions.Default); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves as Html to the specified stream based on . + + stream that will receive html data. + Save options in html + + The following code snippets illustrates how to save as html to the specified stream. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + Stream stream = new MemoryStream(); + workbook.SaveAsHtml(stream,HtmlSaveOptions.Default); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves as Html to the specified stream. + + stream that will receive html data. + + The following code snippets illustrates how to save as html to the specified stream. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + Stream stream = new MemoryStream(); + workbook.SaveAsHtml(stream); + + + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Prepares shapes for serialization. + + + + + Registers new shapes (that have no shapeId yet) inside shapeIdReserver. + + IdReserver that helps in the id generation process. + Delegate used to get necessary shapes collection from a TabSheet. + + + + Updates shapes that were added after last save operation. + + IdReserver that helps in the id generation process. + Delegate used to get necessary shapes collection from a TabSheet. + + + + Assigns indexes to the new shapes. + + IdReserver that helps in the id generation process. + Shape collection to process. + + + + Gets number of free indexes inside currently allocated/reserved ids. + + IdReserver that helps in the id generation process. + Shape collection to process. + Number of free indexes inside currently allocated/reserved ids. + + + + Evaluates number of shapes without assigned id. + + Shape collection to check. + Number of shapes without assigned id. + + + + Registers absolutely new shape collections using IdReserver. + + IdReserver that helps in the id generation process. + Delegate used to get necessary shapes collection from a TabSheet. + + + + Allocates and assigns indexes for all shapes inside shape collection. + + IdReserver that helps in the id generation process. + Shape collection to process. + + + + Creates IdReserver based on the current shapes. + + Delegate used to get necessary shapes collection from a TabSheet. + IdReserver filled with current shape id's data. + + + + Re-indexes shape collections if necessary. + + Delegate used to get necessary shapes collection from a TabSheet. + True if there are shapes inside the workbook. + + + + Returns sheet's shapes collection. + + TabSheet to get collection from. + Extracted collection. + + + + Returns header/footer shapes collection. + + TabSheet to get collection from. + Extracted collection. + + + + Saves changes to the specified HttpResponse. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + HttpResponse to save in. + + + + Saves workbook with specified file name using separator. Used only for CSV files. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Path to save. + Denotes separator for the CSV file types. + + The following code snippet illustrates how to save as CSV. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SaveAs("Output.csv", ","); + + + + + + Saves workbook with specified file name with given separator and encoding. Used only for CSV files. + + + This overloaded method can be used to apply encoding to the CSV file in particular. The default encoding type is UTF-8. Other encoding types include ASCII, UTF-7, and UTF-32. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + Path to save the CSV file. + Denotes separator for the CSV file types. + The name of a character encoding that is supported by the .NET Framework. + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "This"; + worksheet["B1"].Text = "is"; + worksheet["C1"].Text = "a"; + worksheet["D1"].Text = "sample"; + worksheet["E1"].Text = "to"; + worksheet["F1"].Text = "set"; + worksheet["G1"].Text = "encoding"; + workbook.SaveAs("Output.csv", ",",Encoding.Unicode); + } + + + + + + Saves workbook as stream using separator. Used only for CSV files. + + Stream to save. + Denotes separator for the CSV file types. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + Stream stream = new MemoryStream(); + workbook.SaveAs(stream, ","); + + + + + + Saves workbook as stream with given separator and encoding. Used only for CSV files. + + + This overloaded method can be used to apply encoding to the CSV file in particular. The default encoding type is UTF-8. Other encoding types include ASCII, UTF-7, and UTF-32. + + Stream to save the CSV file. + Denotes separator for the CSV file types. + The name of a character encoding that is supported by the .NET Framework. + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "This"; + worksheet["B1"].Text = "is"; + worksheet["C1"].Text = "a"; + worksheet["D1"].Text = "sample"; + worksheet["E1"].Text = "to"; + worksheet["F1"].Text = "set"; + worksheet["G1"].Text = "encoding"; + Stream stream = new MemoryStream(); + workbook.SaveAs("Output.csv", ",",Encoding.Unicode); + } + + + + + + Saves active Worksheet using separator. + + Stream to save int. + Denotes separator for the CSV file types. + The name of a character encoding that is supported by the .NET Framework. + + + + Save changes to the specified HttpResponse based on and . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + HttpResponse that will receive workbook's data. + Download type. + Content type to use. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xls"); + + workbook.SaveAs("Output.xls", Response, ExcelHttpContentType.Excel97); + + + + + + Save changes to the specified HttpResponse based on . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + Type of the Excel file. + HttpResponse that will receive workbook's data. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xls"); + + workbook.SaveAs("Output.xls", ExcelSaveType.SaveAsXLS, Response); + + + + + + Save changes to the specified HttpResponse based on and . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + Type of the Excel file. + HttpResponse that will receive workbook's data. + Content type to use. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xls"); + + workbook.SaveAs("Output.xls", ExcelSaveType.SaveAsXLS, Response, ExcelHttpContentType.Excel97); + + + + + + Save changes to the specified HttpResponse based on . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + HttpResponse that will receive workbook's data. + Download type. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xls"); + + workbook.SaveAs("Output.xls", Response, ExcelDownloadType.PromptDialog); + + + + + + Saves changes to the specified HttpResponse based on download type and content type. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + HttpResponse that will receive workbook's data. + Download type. + Content type to use. + + + + Save changes to the specified HttpResponse based on and . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + Type of the Excel file. + HttpResponse that will receive workbook's data. + Download type. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xls"); + + workbook.SaveAs("Output.xls", ExcelSaveType.SaveAsXLS, Response, ExcelDownloadType.PromptDialog); + + + + + + Save changes to the specified HttpResponse,using separator with the specified and . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + Denotes separator for the CSV file types. + HttpResponse that will receive workbook's data. + Download type. + Http content type. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.SaveAs("Output.csv", ",", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.CSV); + + + + + + Save changes to the specified HttpResponse,using separator and encoding with the specified and . + + + This overloaded method can be used to apply encoding to the CSV file in particular. The default encoding type is UTF-8. Other encoding types include ASCII, UTF-7, and UTF-32. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + Name of the file in HttpResponse. + Denotes separator for the CSV file types. + HttpResponse that will receive workbook's data. + Enumeration to specify the download type. + Enumeration to specify the Http content type. + The name of a character encoding that is supported by the .NET Framework. + + + using(ExcelEngine engine = new ExcelEngine()) + { + IApplication application = engine.Excel; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet worksheet = workbook.Worksheets[0]; + worksheet["A1"].Text = "This"; + worksheet["B1"].Text = "is"; + worksheet["C1"].Text = "a"; + worksheet["D1"].Text = "sample"; + worksheet["E1"].Text = "to"; + worksheet["F1"].Text = "set"; + worksheet["G1"].Text = "encoding"; + workbook.SaveAs("Output.csv", ",", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.CSV, Encoding.UTF7); + } + + + + + + Save changes to the specified HttpResponse based on , and . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Name of the file in HttpResponse. + Type of the Excel file. + HttpResponse that will receive workbook's data. + Download type. + Content type to use. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xls"); + + workbook.SaveAs("Output.xls", ExcelSaveType.SaveAsXLS, Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.Excel97); + + + + + + Prepares response before saving. + + + + + + + + + Saves workbook in xml format. + + XmlWriter to save into. + Xml save type. + + + + Saves workbook in xml format with the specified. + + XmlWriter to save into. + Xml save type. + + The following code snippet illustrates how to save as Xml using Xml writer. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + System.Xml.XmlWriter writer = System.Xml.XmlWriter.Create("Output.xml"); + workbook.SaveAsXml(writer, ExcelXmlSaveType.MSExcel); + + + + + + Saves workbook with the specified file name and . + + File name to save into. + Xml save type. + + The following code snippet illustrates how to save as Xml. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.SaveAsXml("Output.xml", ExcelXmlSaveType.MSExcel); + + + + This method is not supported in WinRT, Windows Phone, Universal and Portable platforms. + + + + + Saves workbook as stream with specified . + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Stream to save into. + Xml save type. + + The following code snippet illustrates how to save the stream as Xml. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + Stream stream = new MemoryStream(); + workbook.SaveAsXml(stream, ExcelXmlSaveType.MSExcel); + + + + + + Returns string that corresponds to contentType. + + Content type for browser. + String that corresponds to contentType. + + + + Saves workbook as stream. + + Stream that will receive workbook data. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + Stream stream = new MemoryStream(); + workbook.SaveAs(stream); + + + + + + Saves workbook as stream with specified . + + Stream that will receive workbook data. + Type of the Excel file. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + Stream stream = new MemoryStream(); + workbook.SaveAs(stream, ExcelSaveType.SaveAsXLS); + + + + + + Converts XLS/XLSX file to ODS stream + + + + + + Saves the workbook to a JSON file. + + File name to save into. + + + + Saves the workbook to a JSON file as schema. + + File name to save into. + Indicates whether to save the workbook as JSON in schema type html + + + + Saves the worksheet to a JSON file. + + File name to save into. + Worksheet to save as JSON. + + + + Saves the worksheet to a JSON file as schema. + + File name to save into. + Worksheet to save as JSON. + Indicates whether to save the worksheet as JSON in schema type html + + + + Saves the range to a JSON file. + + File name to save into. + Range to save as JSON. + + + + Saves the range to a JSON file as schema. + + File name to save into. + Range to save as JSON. + Indicates whether to save the range as JSON in schema type html + + + + Saves the workbook to a JSON file stream. + + Stream to save into. + + + + Saves the workbook to a JSON file stream as schema. + + Stream to save into. + Indicates whether to save the workbook as JSON in schema type html + + + + Saves the worksheet to a JSON file stream. + + Stream to save into. + Worksheet to save as JSON. + + + + Saves the worksheet to a JSON file stream as schema. + + Stream to save into. + Worksheet to save as JSON. + Indicates whether to save the worksheet as JSON in schema type html + + + + Saves the range to a JSON file stream. + + Stream to save into. + Range to save as JSON. + + + + Saves the range to a JSON file stream as schema. + + Stream to save into. + Range to save as JSON. + Indicates whether to save the range as JSON in schema type html + + + + Serialize the JSON using JsonWriter in schema format. + + JSON writer + Worksheet to convert. + + + + Serialize the JSON using JsonWriter in schema format. + + JSON writer + Range to convert. + + + + Serialize the JSON using JsonWriter in non-schema format. + + JSON writer + Range to convert. + + + + Gets names of all worksheets. + + Names of all worksheets. + + + + Returns array odd elements (sheets, charts, etc. ) of which + are workbook's part name and even number of such elements + in the workbook. + + + Array odd elements (sheets, charts, etc. ) of which + are workbook's part name and even number of such elements + in the workbook. + + + + + Returns Dictionary ExcelSheetType - to - number of such + elements in the workbook. + + + Dictionary ExcelSheetType - to - number of such + elements in the workbook. + + + + + Sets the palette color for the given index. + + Index of Color in array. + New color which must be set. + + The following code snippet illustrates how to set palette color. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.SetPaletteColor(0, System.Drawing.Color.Aqua); + + + + + + Copies palette colors to workbook/ + + Workbook to copy palette into. + + + + Recover palette to default values. + + + The following code snippets illustrates how to reset the palette. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.ResetPalette(); + + + + + + Returns Color object from predefined colors by its index. + + Index from palette array. + RGB Color. + The following code illustrates how to get the color value for the specified excel known color. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + System.Drawing.Color color = workbook.GetPaletteColor(ExcelKnownColors.Aqua); + + + + + + Gets the nearest color with the specified Color structure + from Workbook palette. + + system color. + Returns Color index from workbook palette. + + + + Gets the nearest color to the specified Color structure + from Workbook palette. + + Color to look for. + Start index. + Color index from workbook palette. + + + + Gets the nearest color with the specified red, green, and blue + color values from Workbook palette. + + Red component of the color. + Green component of the color. + Blue component of the color. + Returns Color index from workbook palette. + + + + Sets the color or Gets nearest color. + + + If there is at least one free color, define a new color; + if not, search for the closest one to the specified Color structure + from Workbook palette. + + System color + Color index from workbook palette. + + The following code snippets illustrates how to set color or get nearest color. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.SetColorOrGetNearest(System.Drawing.Color.Aqua); + + + + + + Sets the color or Gets nearest color with the specified red, green and blue color value. + + + If there is at least one free color, define a new color; + if not, search for the closest one to the specified by red, green, and blue + values color from Workbook palette. + + Red component of the color. + Green component of the color. + Blue component of the color. + Color index from workbook palette. + + The following code snippet illustrates how to set color or get nearest color by red,green and blue. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.SetColorOrGetNearest(123,45,56); + + + + + + Replaces string with the specified string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string oldValue = "Find"; + string newValue = "NewValue"; + workbook.Replace(oldValue, newValue); + + + + + + + Replaces string with the specified DateTime value. + + The string to be replaced. + The DateTime value to replace all occurrences of oldValue. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string oldValue = "Find"; + DateTime dateTime = DateTime.Now; + workbook.Replace(oldValue, dateTime); + + + + + + Replaces string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string oldValue = "Find"; + double newValue = 9.00; + workbook.Replace(oldValue, newValue); + + + + + + Replaces specified string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string oldValue = "Find"; + string[] newValues = { "X values", "Y values" }; + workbook.Replace(oldValue, newValues, true); + + + + + + Replaces specified string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string oldValue = "Find"; + int[] newValues = { 1, 2 }; + workbook.Replace(oldValue, newValues, true); + + + + + + Replaces specified string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string oldValue = "Find"; + double[] newValues = { 1.00, 3.00 }; + workbook.Replace(oldValue, newValues, true); + + + + + + Replaces string with the specified DataTable value. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + The following code snippet illustrates how to replace the string value with data table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + // create the data table + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("Dosage", typeof(int)); + table.Rows.Add(1); + string oldvalue = "AB2"; + // Replace the value with data table. + workbook.Replace(oldvalue, table, true); + + + + + + Replaces string with the specified DataColumn value. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + The following code snippet illustrates how to replace the string value with data table. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + // create the data table + System.Data.DataTable table = new System.Data.DataTable(); + table.Columns.Add("Dosage", typeof(int)); + table.Rows.Add(1); + System.Data.DataColumn dataColumn = table.Columns[0]; + string oldvalue = "AB2"; + // Replace the value with data column. + workbook.Replace(oldvalue, dataColumn, true); + + + + + + Creates a font object. + + Returns the newly created font. + + + + Creates a font object based on native font. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Native font to get settings from. + returns newly created font. + + The following code illustrates how to create a font object based on native font. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + System.Drawing.Font font = new System.Drawing.Font(System.Drawing.FontFamily.GenericSerif, 9); + workbook.CreateFont(font); + + + + + + Adds font to the inner fonts collection. Read-only. + + Font to add. + + Current font with correct font index, or same font from the collection if was added before. + + + The following code illustrates how to add font in the collections. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + IFont font = workbook.CreateFont(); + workbook.AddFont(font); + + + + + + Creates font object based on another font object. + + Base font for the new one. + Returns a newly created font. + + + + Method that creates font object based on another font object + and registers it in the workbook. + + Base font for the new one. + Indicates whether font should be added to the collection. + Newly created font. + + + + Returns the first occurrence of the specified string value with the specified . + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string value = "value"; + IRange result = workbook.FindFirst(value, ExcelFindType.Text); + + + + + + Returns the first occurrence that starts with the specified string value. + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string value = "value"; + IRange result = workbook.FindStringStartsWith(value, ExcelFindType.Text); + + + + + + Returns the first occurrence that starts with the specified string value which ignores the case. + + Value to search. + Type of value to search. + true to ignore case wen comparing this string to the value;otherwise,false + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string value = "value"; + IRange result = workbook.FindStringStartsWith(value, ExcelFindType.Text, true); + + + + + + Returns the first occurrence that ends with the specified string value. + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string value = "value"; + IRange result = workbook.FindStringEndsWith(value, ExcelFindType.Text); + + + + + + Returns the first occurrence that ends with the specified string value which ignores the case. + + Value to search. + Type of value to search. + true to ignore case wen comparing this string to the value;otherwise,false + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string value = "value"; + IRange result = workbook.FindStringEndsWith(value, ExcelFindType.Text, true); + + + + + + Returns the first occurrence of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search the value. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string findvalue = "value"; + IRange result = workbook.FindFirst(findvalue, ExcelFindType.Text, ExcelFindOptions.None); + + + + + + Returns the first occurrence of the specified double value with the specified . + + Value to search. + Type of value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + double value = 9.00; + IRange result = workbook.FindFirst(value, ExcelFindType.Number); + + + + + + Returns the first occurrence of the specified bool value. + + Value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + IRange result = workbook.FindFirst(true); + + + + + + Returns the first occurrence of the specified DateTime value. + + Value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + DateTime dateTime = DateTime.Now; + IRange result = workbook.FindFirst(dateTime); + + + + + + Returns the first occurrence of the specified TimeSpan value. + + Value to search. + First found cell, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + TimeSpan timeSpan = new TimeSpan(2, 30, 30); + IRange result = workbook.FindFirst(timeSpan); + + + + + + Returns the cells with specified string value. + + Value to search. + Type of value to search. + Returns all found cells, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + IRange[] results = workbook.FindAll("Hello World", ExcelFindType.Text); + + + + + + Returns the cells of the specified string value with the specified . + + Value to search. + Type of value to search. + Way to search. + + Returns all found cells, or Null if value was not found. + + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + IRange[] results = workbook.FindAll("Hello World", ExcelFindType.Text, ExcelFindOptions.MatchCase); + + + + + + Returns the cells of the specified double value with the specified . + + Value to search. + Type of value to search. + Returns all found cells, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + IRange[] results = workbook.FindAll(100.32, ExcelFindType.Number); + + + + + + Returns the cells of the specified bool value. + + Value to search. + Returns all found cells, or Null if value was not found + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + IRange[] range = workbook.FindAll(true); + + + + + + This method searches for the all cells with specified DateTime value. + + Value to search. + All found cells, or Null if value was not found. + + + + Returns the cells of the specified TimeSpan value. + + Value to search. + Return all found cells, or Null if value was not found. + + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + TimeSpan value = new TimeSpan(2, 30, 30); + IRange[] results = workbook.FindAll(value); + + + + + + Sets separators for formula parsing. + + Arguments separator to set. + Array rows separator to set. + + The following code illustrates how to set separators. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.SetSeparators(',', ';'); + + + + + + Creates header/footer engine. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + New instance of header/footer engine. + + + + Sets protection for workbook. + + Indicates if protect workbook window. + Indicates if protect workbook content. + + The following code snippet illustrates how to protect the workbook. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.Protect(true, true); + + + + + + Sets protection for workbook with password. + + Indicates if protect workbook window. + Indicates if protect workbook content. + Password to protect with. + + The following code snippet illustrates how to protect the workbook using password. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + workbook.Protect(true, true, "Password"); + + + + + + Unprotects workbook. + + + The following code illustrates how to unprotect a workbook. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Unprotects the password. + workbook.Unprotect(); + + + + + + Unprotects workbook using password. + + + Throws ArgumentOutOfRangeException when password is wrong. + + Password to unprotect workbook. + + The following code illustrates how to unprotect a workbook using password. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Unprotects the password using password. + workbook.Unprotect("Password"); + + + + + + Creates copy of the current instance. + + Copy of the current instance. + + + + Find the font object style. + + The cell text + The rich text string + RTF Collection + The excel font + + + + + Update the rtf text. + + XlsIO font. + Pdf font collection. + DrawString Collection. + RTF text. + + + + Sets write protection for workbook using password. + + Password to set. + + The following code snippet illustrates how to set write protection password. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.SetWriteProtectionPassword("Password"); + + + + + + Protects the workbook + + Password to generate the hash value. + + + + Creates random salt. + + Desired salt length. + Array with random data. + + + + Creates copy of the palette. + + Copy of the palette. + + + + Saves workbook data in Excel 2007 format into specified stream. + + Stream to save into. + Represents type of the saving document (on the current + moment supported values are template or ordinary document). + + + + Creates serializator that can be used to serialize workbook into file or stream. + + Version that must be used to serialize workbook. + Created serializator. + + + + This method changes internal styles structure for Excel 97. + + + + + + + + + + + + + + + + + This method checks whether we must change styles model from 2007 into 97 format + (if document (or file) was created by XlsIO we don't need to change styles). + + True if additional styles must be added for Excel 97. + + + + + + + + + + + Converts extended format colors. + + + + + + + Reduces font count based by switching all colors into indexed color mode. + + List with new font indexes. + + + + Reads the complete stream and retruns false if the doument is notvalid. + + Read to get data from. + Separator between cell values. + Encoding scheme for the StreamReader. + boolean value. + + + + Get excel version from file name. + + File name. + Returns ExcelVersion. + + + + Get the Excel save type from file version + + input file name + the save type + + + + Get excel version from stream. + + File name. + Returns ExcelVersion. + + + + Serialize workbook for the clipboard. + + Record's list to serialize into. + Worksheet to serialize. + + + + Serialize clipboard. + + Record's list to serialize into. + Worksheet to serialize. + Clipboard to range. + + + + Sets active worksheet. + + Worksheet that will be activated. + + + + + + + + + + + + + + + + + Updates index of all named ranges. + + Key - old index, value - new index. + + + + Sets Saved flag to the False state. + + + + + Updates string indexes. + + List with new indexes. + + + + Copies externsheets to to another workbook. + + Represents base extern sheets. + Represents dictionary with new sub books indexes. + Dictioanry with new indexes. Key - old index; value - new index. + + + + Looks through all records and calls AddIncrease for each LabelSST record. + + + + + Updates indexes in all records accordingly to the new maximum count property. + + New value of maximum possible XF index. + + + + Indicates whether specified xf index differs from the default one. + + XFIndex to check. + True if there is no difference. + + + + Evaluates maximum digit width of the font for Normal style. + + Maximum digit width of the font for Normal style. + + + + Evaluates maximum digit width of the font for Normal style. + + Maximum digit width of the font for Normal style. + + + + Evaluates maximum digit width of the specified font. + + Font to measure. + Maximum digit width of the specified font. + + + + Gets maximum digit height. + + Font to get digit height for. + Maximum digit height. + + + + Updates width from the rectangle. + + Current rectangle. + Current maximum value. + + + + Updates height from the rectangle. + + Current rectangle. + Current maximum value. + + + + Measures all digits using specified font and calls digitProcessor passing measurement results. + + Font to use. + DigitProcessor to call. + Value returned by digitProcessor after processing all digits. + + + + Converts column width in characters into column width in file. + + Column width in characters. + Column width in file. + + + + Convert column width that is stored in file into pixels. + + Column width in file. + Column width in pixels. + + + + Converts column width in pixels into column width in characters. + + Column width in pixels. + Column width in characters. + + + + Checks cache refer by pivot table in the workbook. + + + + + + + + Delete Connection + + + + + + Removes the unused XF and updates in innerExtFormats collection. + + + + + Adds the used style index into the collection + + + + + Updates the used style index into the collection + + + + + + + + + + + + Byte array values store the individual sheet calcEngine member values. + + + + + Set true flags to the CalcEngine members for the performance, with preserving previous values + + boolean value indicates whether the flags to be true and preserve the flags + + + + CRC checksum calculation + + + + + formula that contains @ symbol + Workbook + returns true if formula does not contains "@" symbol else false + returns the replaced formula + + + + + ReplaceSymbolToStringInFormula method replace the string and returns the formula with @ symbol + + formula that contains the _xlfn.Single string + Workbook + returns the replaced formula + + + + Parses the Vba Project + + + + + + Code name change event + + sender + Code name + + + + Add a Vba code module to the workbooks + + Vba Module + + + + Creates a Vba Project in the workbook. + + + + + Creates a macro storage + + Root storage + Indicates whether this is a Excel binary document + + + + Add list of extended properties into XF extended record. + + + + + Add extended property into list. + + + + + Returns extended property. + + + + + Get extended property type. + + + + + Convert ARGB to RGBA. + + + + + Convert ARGB to RGBA. + + + + + Convert Color object to unsigned integer. + + + + + Convert unsigned integer to Color object. + + + + + Whether a given character is allowed by XML 1.0. + + + + + Remove illegal xml character which is not allowed by XML 1.0. + + + + + Update standartd rowheight when standard font name or size changed. + + + + + Import XML document to the workbook. + + File name of XML document. + + + + Imports XML data into workbook from the specified XML data stream. + + Stream of XML document. + + + + Parse XML mapping. + + XML Reader. + + + + To update the cell scaled width and height. + + scale[0] refers to the cell width. + scale[1] refers to the cell height + + + + To get the cell scaled height. + + The cell font name. + The cell font size. + + + + Method add the watermark if license validation fails. + + input workbook object + + + + Gets the system font from XlsIO font. + + XlsIO font. + New font name for the font object. + returns system font. + + + + Gets the font style. + + XlsIO font. + return font style. + + + + Gets the font style. + + XlsIO font. + return font style. + + + + Gets the font size. + + XlsIO font. + returns font size based on superscript and subscript. + + + + Gets the system font from XlsIO font. + + XlsIO font. + returns system font. + + + + Indicates whether the text is null or whitespace. + + The text. + returns true if the text is null or whitespace otherwise false. + + + + Warning event + + + + + Workbook Vba Code Module + + + + + Contains the macro storage + + + + + + Indicates whether the Vba Project Created + + + + + Represents the pivot slicer caches + + + + + Represents the pivot slicer cache id + + + + + Gets an object that represents the active sheet (the sheet + on top) in the active workbook or in the specified window or + workbook. Returns Nothing if no sheet is active. Read-only. + + + + + Gets an object that represents the active tab sheet (the sheet + on top) in the active workbook or in the specified window or + workbook. Returns Nothing if no sheet is active. Read-only. + + + + + Preserves the DDE type links in workbook + + + + + Gets or sets index of the active sheet. + + + + + Denotes whether to display sheet tabs or not. + + + + + Gets or sets the author of the comment. + + + The following code snippet illustrates how to get the built in document properties. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Get the built in document properties. + IBuiltInDocumentProperties builtInDocumentProperties = workbook.BuiltInDocumentProperties; + string author = builtInDocumentProperties.Author; + + + + + + Gets collection that represents all the built-in document properties + for the specified workbook. Read-only. + + + + + This event is raised after code name changed. + + + + + Name which used by macros to access to workbook items. + + + + + Indicates whether pivot table fields option is hidden or not. + + + + + Indicates default theme version for wokbook + + + + + Gets collection that represents all the custom document properties + for the specified workbook. Read-only. + + + The following code snippet illustrates how to get the custom document properties. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Get the document properties. + ICustomDocumentProperties documentProperties = workbook.CustomDocumentProperties; + + + + + + Gets a MetaProperties collection that describes the meta data stored in the workbook. Read-only. + + + + + Gets collection that represents all the CustomXmlParts collection + for the specified workbook. Read-only. + + + The following code snippet illustrates how to get the custom Xml parts. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Get the customXml parts. + ICustomXmlPartCollection CustomXmlparts = workbook.CustomXmlparts; + + + + + + True if the workbook uses the 1904 date system. + + + + + True if the workbook uses precision. Read-only. + + + + + True if cells are protected. Read-only. + + + + + True if window is protected. Read-only. + + + + + Gets Names collection. + + + For an Application object, returns a Names collection that represents + all the names in the active workbook. For a Workbook object, returns + a Names collection that represents all the names in the specified + workbook (including all worksheet-specific names). + + + The following code snippet illustrates how to get names. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + INames names = workbook.Names; + + + + + + True if the workbook has been opened as Read-only. Read-only Boolean. + + + + + True if no changes have been made to the specified workbook since + it was last saved. If current value is false then setting it to true cause Save() method call. + + + + + Gets a Styles collection that represents all the styles + in the specified workbook. Read-only. + + + The following code snippet illustrates how to get the styles. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + IStyles styles = workbook.Styles; + + + + + + Gets a Sheets collection that represents all the worksheets + in the specified workbook. Read-only Sheets object. + + + The following code snippet illustrates how to get the worksheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + IWorksheets worksheets = workbook.Worksheets; + + + + + + Gets the workbook connections. Read Only + + + The following code snippet illustrates how to get the connections from the workbook. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Gets the workbook connections. + IConnections connections = workbook.Connections; + + + + + + True if workbook contains Vba macros. Read-only. + + + + + Deleted connections + + + + + Gets a Palette of colors the Excel document can have. + Here is a Table of color indexes their places in the color tool box + provided by XlsIO application: + -------------------------------------------- + | | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | + ---+---------------------------------------- + |0 | 00 | 51 | 50 | 49 | 47 | 10 | 53 | 54 | + |1 | 08 | 45 | 11 | 09 | 13 | 04 | 46 | 15 | + |2 | 02 | 44 | 42 | 48 | 41 | 40 | 12 | 55 | + |3 | 06 | 43 | 05 | 03 | 07 | 32 | 52 | 14 | + |4 | 37 | 39 | 35 | 34 | 33 | 36 | 38 | 01 | + ---+---------------------------------------- + |5 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | + |6 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | + -------------------------------------------- + + + + + + Gets or sets index of tab which will be displayed on document open. + + + + + Gets the collection of the chart objects. + + + + + Indicates whether exception should be thrown when unknown + name was found in a formula. + + + The following code snippet illustrates how to gets or sets the ThrowOnUnknownNames. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.ThrowOnUnknownNames = true; + bool isThrowOnUnknownNames = workbook.ThrowOnUnknownNames; + + + + + + Gets/Sets value to display horizontal scrollbar + + + This sample shows how to hide horizontal scroll bar. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.IsHScrollBarVisible = false; + + + + + + Gets/Sets value to display vertical scrollbar + + + This sample shows how to hide vertical scroll bar. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + workbook.IsVScrollBarVisible = false; + + + + + + Disables loading of macros from document. + + + Excel on file open will simply skip macros and will + work as if document does not contain them. This options works + only when file contains macros (HasMacros property is True). + + + + + Gets or sets the standard font size. + + + + + Gets or sets the name of the standard font. + + + + + Indicates whether to allow usage of 3D ranges in DataValidation + list property (MS Excel doesn't allow). + + + + + Gets collection of add-in functions. Read-only. + + + + + Gets calculation options. Read-only. + + + The following code snippet illustrates how to get the calculation options. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Get the calculation options. + ICalculationOptions calculationOptions = workbook.CalculationOptions; + + + + + + Gets or sets row separator for array parsing. + + + The following code snippet illustrates how to get row separator. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + string rowSeparator = workbook.RowSeparator; + + + + + + Gets the formula arguments separator. + + + The following code snippet illustrates how to get the argument separator. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + //Get the chart argumentSeparator. + string argumentSeparator = workbook.ArgumentsSeparator; + + + + + + Gets grouped worksheets. Read-only. + + + The following code snippet illustrates how to get the grouped sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + IWorksheetGroup worksheetGroup = workbook.WorksheetGroup; + + + + + + Indicates whether worksheet is displayed right to left. + + + + + True if the tabs are visible. otherwise False. + + + + + Gets collection with all tabsheets in the workbook. Read-only. + + + The following code snippet illustrates how to get the tabsheets. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + ITabSheets tabsheets = workbook.TabSheets; + + + + + + Indicates whether detect string value passed to Value (and Value2) + property as DateTime. Default value is true. + + + Setting this property to false can increase performance. + + + + + Toggles string searching algorithm.Default value is true. + + + If true then Dictionary will be used + to locate string inside strings dictionary. This mode is faster but uses + more memory. If false then each time string is added to strings dictionary + we will have to iterate through it and compare new strings with existing ones. + + + + + True to display a message when the file is opened, recommending that the file be opened as read-only. + + + + + Gets or sets password to encrypt document. + + + + + Gets maximum row count for each worksheet in the workbook. Read-only. + + + + + Gets maximum column count for each worksheet in the workbook. Read-only. + + + + + Gets maximum possible number of extended formats. Read-only. + + + + + Gets maximum possible indent value. Read-only. + + + + + Maximum columns to import + + + + + Represents the unique styles count. + + + + + Indicates whether slicer properties are parsed in the workbook. + + + + + Extension list stream + + + + + Gets the LambdaFormulaArgument dictionary that contains LambdaFormulaArgument objects + + + + + Get or set indicates whether the styles has color palette or not. + + + + + Gets the person dictionary that contains person objects + + + + + Indicates slicer cache id + + + + + Gets and sets pivot table count in workbook. + + + + + True if the workbook has threaded comments. False if not + + + + + Gets and sets pivot table count in workbook. + + + + + Indicates whether the unused XF record removed or not. + + + + + create and gets the table styles. + + + + + Indicates the slicer cache collection + + + + + Contains formula existing row index with sheet name. It will be used in subtotal process. + + + + + Workbook level Conditional Priority count. + + + + + If palette is defualt or not + + + + + Indicates whether all the formula in the workbook is evaluated. + + + + + Represents the Excel Parse Options. + + + + + gets/ Sets the pivot table last index + + + + + Preserves the pivot cache. + + + + + Store the font indexes. + + + + + /Return file data holder, used to store data for Excel 2007 format. + + + + + Return WorkbookNamesColection from parent WorkBook. + + + + + Return ContententType Properties from the workbook + + + + + Return CustomXmlParts from the workbook + + + + + Returns collection of add-in functions. Read-only. + + + + + Returns name of the file the workbook was saved + in last time or loaded from. + + + + + Collection of all fonts used in the workbook. Read-only. + + + + + Collection of all ExtendedFormats used in the workbook. + + + + + Collection of all formats used in the workbook. Read-only. + + + + + SSTDictionary that contains all strings used in the workbook. Read-only. + + + + + Indicates whether workbook is loading. Read-only. + + + + + Indicates whether workbook is in saving process. Read-only. + + + + + Stores the attributes of the workbook window. Read-only. + + + + + Returns count of charts and worksheets in the workbook. + + + + + + + + + + Gets or sets the SST stream. + + The SST stream. + + + + Gets or sets a value indicating whether this instance has inline strings. + + + true if this instance has inline strings; otherwise, false. + + + + + Gets / sets PasswordRecord. + + + + + + + + + + + + + + + + + + + + First free shape id. + + + + + + + + + + + + + + + Returns collection of named objects owned by the workbook + (worksheet and charts). Read-only. + + + + + + + + + + Worksheets collection. + + + + + Charts collection. + + + + + Dialogsheet collection. + + + + + Macrosheet and IntlMacrosheet collection + + + + + Returns collection of external workbooks. + + + + + Returns calculation options. Read-only. + + + + + Returns workbook graphics. + + + + + Gets or sets the destination file path. + + + + + Returns class for formula parsing. Read-only. + + + + + Returns grouped worksheets. Read-only. + + + + + Indicates whether original file contains duplicated external names. + + + + + Returns data that is shared by all shapes (global options, unique pictures, etc. ). + + + + + Returns data that is shared by all header/footers. + + + + + Gets externSheet record. Read - only. + + + + + Gets / sets internal flag that indicates whether workbook was saved or not. + + + + + + + + + + + + + + + Gets a value indicating whether this Workbook is converted. + + + true if this instance is converted; otherwise, false. + + + + + Beginning version of Excel + + + + + Represents the Data sorter. + + + + + Indicates whether the workbook format is Strict Open XML Spreadsheet. + + + + + Gets / sets excel version. + + + + + Returns index to the default extended format. + + + + + Returns internal array with palette colors. Read-only. + + + + + + + + + + Gets pivot caches collection. Read-only. + + + The following code snippet illustrates how to get pivot caches. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + + IPivotCaches pivotCaches = workbook.PivotCaches; + + + + + + Returns collection of workbook pivot caches. Read-only. + + + + + Gets value indicating whether workbook controls stream or not. Read-only. + + + + + Gets value indicating whether workbook controls stream or not. Read-only. + + + + + Gets or sets maximum used table (list object) index. + + + + + Indicates whether workbook is converting to Pdf or Image or HTML. + + + + + Gets value indicating whether workbook was loaded from file or stream. + + + + + Line Styles in themes.xml + + + + + Specifies wheather the workbook checks the Compability of earlier version + + + + + Gets or sets a value indicating whether the name ranges has apostrophe. + + + true if this instance has apostrophe; otherwise, false. + + + + + Indicates whether book has oleObjects + + This property is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Indicates whether Ole Objects are copied + + This property is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + OleStorageCollection of workbook + + + + + Gets or sets boolean value to parse worksheets on demand + + + + + Alogrithm name to protect/unprotect workbook. + + + + + Hash value to ensure the workbook protected password. + + + + + Random generated Salt for the workbook password. + + + + + Spin count to loop the hash algorithm. + + + + + Contains the Date Time patterns od the current culture with date custom format + + + + + Returns the collection of XmlMap object. Read-Only. + + + + + Gets value indicating whether the FileSharing Record is null or not. + + + true When FileSharing record is not null; otherwise, false. + + + + + Maintains the precedents cell collection for all cells + + + + + Gets or sets the dictionary to hold processed number format indexes + + + + + Indicates whether the calc engine enabled and disabled on parsing and serializing + + + + + Gets or sets the substitute font name. + + + + + Represents the slicer names in the worksheet. + + + + + This event is fired after workbook is successfully saved. + + + + + This event is fired when user tries to save into read-only file. + + + + + Gets or sets standard ( default ) row height of all the worksheets. + in points. Double. + + + + + Gets or sets row height in pixels + + + + + Summary description for WorkbookExcel97Serializator. + + + + + Classes that implement this interface are responsible for whole + workbook serialization into stream or into file. + + + + + Saves workbook into specified file. + + Destination file name. + Workbook to save. + Save type. + + + + Saves workbook into stream. + + Stream to save into. + Workbook to save. + Save type (template or ordinary xls). + + + + Maximum password length. + + + + + Followed Hyperlink Style + + + + + Hyperlink Style + + + + + Reserved shape ids. + + + + + Default constructor. + + + + + Saves workbook into specified file. + + Destination file name. + Workbook to save. + Save type. + + + + Saves workbook into stream. + + Stream to save into. + Workbook to save. + Save type (template or ordinary xls). + + + + Saves all workbook records into specified array. + + Array that will receive all workbook records. + Format in which worksheet should be saved. + Object that is used to encrypt data. + Workbook to serialize. + Worksheet that must be serialized when we are + serializing data for clipboard. + Indicates whether we are serializing data + for saving into file or into clipboard. + + + + Saves all workbook records into specified array. + + Array that will receive all workbook records. + Format in which worksheet should be saved. + Object that is used to encrypt data. + Workbook to serialize. + Worksheet that must be serialized when we are + serializing data for clipboard. + Indicates whether we are serializing data + for saving into file or into clipboard. + clipBoard range. + + + + Serializes pivot caches info. + + Records to serialize into. + Worbook to get data from. + + + + Serializes all mso drawings (picture, header/footer images, etc.) if necessary. + + Record's list to serialize into. + Workbook to serialize. + + + + Creates encryptor. + + Encryption type to use. + Workbook to serialize. + Created encryptor. + + + + This function is looking for unused formats and for formats + that have equal data. + + + + + Removes unused or equal fonts from internal lists. Also will be updated styles + and formats which have references on unused or optimized fonts. + + + + + Method remove from list equal styles. + + Workbook to serialize. + + + + Creates BoundSheetRecord that corresponds to the specified worksheet. + + INamedObject the BoundSheetRecord is created for. + Created BoundSheetRecord. + + + + Saves workbook into compound storage. + + Storage to save workbook into. + Indicates whether + Record collection that should be filled during serialization + Object that is used to encrypt data. + Workbook to serialize. + + + + Copies storage subitems. + + Storage to copy into. + Parent workbook. + + + + Copies substorages. + + Storage to copy into. + Storage to copy from. + + + + Copies substreams. + + Storage to copy into. + Storage to copy from. + + + + Serializes all names defined in the workbook. + + OffsetArrayList that will receive all records. + Workbook to serialize names from. + + When specified OffsetArrayList is NULL. + + + + + Fill BoundSheetRecord that corresponds to the specified worksheet. + + Record to fill. + Worksheet the BoundSheetRecord is created for. + + + + Fills BoundSheetRecord that corresponds to the specified worksheet. + + Record to fill. + Chart the BoundSheetRecord is created for. + Created BoundSheetRecord. + + + + Warning Event handler + + Workbook + Warninginfo + + + + Shapes Getter Method + + + + + + + Delegate used for digit size evaluation. + + Rectangle containing current digit size. + Current maximum value. + + + + This class is used to convert worksheet into image. + + + + + Object that helps to get formatting of the cells with conditional formats. + + + + + Indicates the sortedList for conditional formatting + + + + + Represents the final resultant image. + + + + + Represents width after the current column for drawing aligned text. + + + + + Represents width before the current column for drawing aligned text. + + + + + Represents the RightToLeft Worksheet. + + + + + Use this NumberFormatChar to check the Unicodes. + + + + + Converts worksheet into image. + + Worksheet to convert. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Type of the image to create. + Output stream, if null it is ignored. + Image containing worksheet data. + + + + Converts worksheet into image. + + Worksheet to convert. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Image containing worksheet data. + + + + Converts worksheet into image. + + Worksheet to convert. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Metafile EmfType. + Output stream, if null it is ignored. + Image containing worksheet data. + + + + Converts worksheet into image. + + Worksheet to convert. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Type of the image to create. + Output stream, if null it is ignored. + Image containing worksheet data. + + + + Converts worksheet into image. + + Worksheet to convert. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Type of the image to create. + Output stream, if null it is ignored. + Metafile EmfType. + Image containing worksheet data. + + + + Converts worksheet into image. + + Worksheet image. + Worksheet that is being converted into image. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Helper object to get row height faster. + Helper object to get column width faster. + Total image width. + Total image height. + + + + Draws the shapes. + + Array that contains shapes to be rendered + Worksheet that is being converted into image. + Graphics to draw cells at. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Helper object to get row height faster. + Helper object to get column width faster. + + + + Draw the chart. + + Chart that is being converted into image. + Graphics to draw cells at. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Helper object to get row height faster. + Helper object to get column width faster. + + + + Draws a shape onto the image. + + Shape to be drawn + Worksheet where the shape is present + graphics to render the shape + + + + Draw Rich text inside the AutoShape. + + RichText object that holds the formatted text. + AutoShape for which text should be rendered. + worksheet where the shape is present + Rectangle bounds of the text to be rendered.. + PdfGraphics object to render the RichText. + + + + Draw the RTf text. + + The cell rectangle. + string format of the text + worksheet where the Rtf text is present + The graphics object + Font collection. + DrawString collection. + Indicating wheather shape or not. + Indicating wheather is wrapText or not + Indicating wheather shape Horizontal Text is overflow or not + Indicating wheather shape vertical Text is overflow or not. + + + + checks and applies fill in shape + + graphicsPath of the textbox + shape for which fill to be applied + pen to draw textbox + graphics to draw textbox + rectangle bounds of the shape + + + + Fills the shape Background + + graphics to apply fill + shape for which fill should be applied + path of the shape on the graphics + fill format of the shape + rectangle of the shape + + + + Get gradient brush for shapes + + path of the shape on the graphics + fill to the shape + shape for which fill should be applied + rectangle of the shape + graphics to apply fill to + Brush + + + + Linear gradient fill implementation + + GradientStops used to find the parsing angle + path of the shape on the graphics + Collection of colors with respective positions + fill to the shape + rectangle of the shape + linearGradientBrush + + + + Radial Gradient Fill implementation + + Path of the shape on the graphics + Collection of colors with respective positions + path of the shape on the graphics + GradientStops used to find the parsing angle + RadialGradientBrush + + + + Get scaled rectangle + + rectangle of the graphics path + scale of the 3d default scale factor + + + + + Draws the background image + + Worksheet that is being converted into image. + Graphics to draw cells at. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Helper object to get row height faster. + Helper object to get column width faster. + + + + Gets the background image width coordinates. + + The start X. + The start Y. + Width of the image. + Height of the image. + The image coordinates. + The PDF page. + + The collection coordinates and the sizes of Background image width. + + + + + Gets the background height coordinates. + + The start X. + The start Y. + Width of the image. + Height of the image. + The image coordinates. + The PDF page. + + The collection coordinates and the sizes of Background height. + + + + + Draws all required merged regions. + + Worksheet that is being converted into image. + One-based index of the first row to export. + One-based index of the first column to export. + One-based index of the last row to export. + One-based index of the last column to export. + Graphics object to draw at. + Helper object to get row height faster. + Helper object to get column width faster. + Method to call for each found merge. + + + + Draws merged region. + + Worksheet that is being converted into image. + Merged region to draw. + One-based index of the first row of the drawn range that contains part or whole merged range. + One-based index of the first column of the drawn range that contains part or whole merged range. + Graphics to draw at. + Helper object to get row height faster. + Helper object to get column width faster. + + + + Gets coordinates of the merge. + + Worksheet containing merge region. + Merge region to get rectangle for. + One-based index of the first row of the drawn range that contains part or whole merged range. + One-based index of the first column of the drawn range that contains part or whole merged range. + Helper object to get row height faster. + Helper object to get column width faster. + + + + + Draws merged region background. + + Worksheet that is being converted into image. + Merged region to draw. + One-based index of the first row of the drawn range that contains part or whole merged range. + One-based index of the first column of the drawn range that contains part or whole merged range. + Graphics to draw at. + Helper object to get row height faster. + Helper object to get column width faster. + + + + Iterates through all cells and calls specified method for each. + + Worksheet that is being converted into image. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Graphics to draw cells at. + Helper object to get row height faster. + Helper object to get column width faster. + Method to call for each cell. + + + + Draws separate cell value. + + Worksheet that is being converted into image. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Graphics to draw cells at. + Helper object to get row height faster. + Helper object to get column width faster. + + + + Adds adjacent cells to the cell's range if necessary. + + Cell to try to add to. + Original rectangle. + Helper object to get column width faster. + Represents first column. + Represents second cell. + Updated rectangle. + + + + Gets updated X position to draw the aligned text. + + Specifies the current cell. + Specifies the bounds for current cell. + Specified the helper to get column width. + Specified the first column for the text. + Specifies the adjacent cell of teh current cell. + Specifies whether to consider previous or next column. + Specifies the worksheet. + Specifies the column width of current cell. + Specified the width required to draw current cell text. + Specifies the updated width to draw the text. + + + + + Draws worksheet gridlines. + + Worksheet that is being converted into image. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Graphics to draw cells at. + Helper object to get row height faster. + Helper object to get column width faster. + Total image width. + Total image height. + + + + Draw the image. + + The shape. + Image that is being converted into image. + Graphics to draw cells at. + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Helper object to get row height faster. + Helper object to get column width faster. + + + + Draws specified cell object. + + Cell to draw. + Rectangle to draw cell inside (borders). + Bounding rectangle for cell value. + Graphics to draw at. + + + + Draws specified cell object. + + Extended format to use for cell drawing. + Cell to draw. + Rectangle to draw cell inside (borders). + Bounding rectangle for cell value. + Graphics to draw at. + + + + Checks the unicode. + + The unicode text. + + True if the text is an unicode else false will returned. + + + + + Get the text have symbols + + The given text + If text have symbols return true + + + + Checks for Segoe UI symbols characters in the Unicode string + + Input Unicode string + True if the Unicode string contain Segoe UI symbols characters. False otherwise + + + + Checks for Segoe UI Emoji symbols characters in the Unicode string + + Input Unicode string + True if the Unicode string contain Segoe UI Emoji Symbols characters. False otherwise + + + + Checks for Segoe UI Emoji symbols characters in the Unicode string + + Input Unicode string + True if the Unicode string contain Segoe UI Emoji symbols characters. False otherwise + + + + Checks for Segoe UI Emoji symbols characters in the Unicode string + + Input Unicode string + True if the Unicode string contain Segoe UI Emoji symbols characters. False otherwise + + + + Modifies font name so as to render Unicode characters. + + The sting in test for Unicode characters. + The Charset of the font. + The name of the font. + + + + + Gets fall back font to preserve the text in converted Image. + + Represent original Font stream. + Represent original System font. + Represent a input text. + Represent a font style. + Returns a fall back font instance, if it has; otherwise returns original Font. + + + + Check unicode symbols for unicode string. + + string + True, if string value as unicode symbol, otherwise false. + + + + Checks for amharic characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Amharic characters. False otherwise. + + + + Checks for khmer characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Khmer characters. False otherwise. + + + + Checks for thai characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Thai characters. False otherwise. + + + + Checks for sinhala characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Sinhala characters. False otherwise. + + + + Checks for myanmar characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Myanmar characters. False otherwise. + + + + Checks for tamil characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Tamil characters. False otherwise. + + + + Checks for telugu characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Telugu characters. False otherwise. + + + + Checks for punjabi characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Punjabi characters. False otherwise. + + + + Checks for malayalam characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Malayalam characters. False otherwise. + + + + Checks for kannada characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Kannada characters. False otherwise. + + + + Checks for gujarati characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Gujarati characters. False otherwise. + + + + Checks for marathi characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Marathi characters. False otherwise. + + + + Checks for bengali characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Bengali characters. False otherwise. + + + + Checks for odia characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contain Odia characters. False otherwise. + + + + Checks for Latin characters in the Unicode string. + + Input Unicode string. + True if the Unicode string does not contain Latin characters. False otherwise. + + + + Checks for CJK characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contains CJK characters. False otherwise. + + + + Checks for Hebrew or Arabic characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contains Arabic or Hebrew characters. False otherwise. + + + + Checks for Korean characters in the Unicode string. + + Input Unicode string. + True if the Unicode string contains Korean characters. False otherwise. + + + + Gets the font style. + + XlsIO font. + return font style. + + + + Draws IconSet image. + + Represents the graphics object. + The extended format of the cell. + The adjacent cell rect. + The Pdf font in the cell. + The string format of the cell value. + + + + Draws the RTF string (Rich Text Format string) + + Bounding rectangle for cell value. + Cell to draw. + Cell string value + Graphics to draw at. + + + + Draws rotated text. + + Rectangle used for cell drawing. + Cell's format. + Cell to draw. + + Graphics object to draw at. + Represents native font. + Represents brush to fill the interior. + Represents string format. + + + + Aligns the rotated text based on string format. + + string format. + Rotation angle. + returns string format. + + + + Rotates rectangle at coordinates (0,0) and specified size at specified angle. + + Size of the rectangle to rotate. + Angle to rotate at. + Rectangle points after rotation. + + + + Aligns rectangle specified by points inside another rectangle. + + Points to align. + Rectangle to align in. + Horizontal alignment. + Vertical alignment. + Required offset to get correct point for string drawing. + + + + Converts rotation angle into counter-clockwise value. + + Angle to convert. + Converted value. + + + + Updates string for top to bottom text drawing if necessary. + + Value to update. + Rotation angle. + Updated value. + + + + Draws cell background. + + Cell to draw background for. + Cell's rectangle. + Graphics to draw at. + + + + Draws background at the specified position. + + Object containing background settings. + Rectangle specifying coordinates of the drawn background. + Graphics to draw at. + + + + Draw the data bar + + ExtendedFormatStandAlone + percent of the data bar + left of the rectangle + right of the rectangle + top of the rectangle + bottom of the rectangle + x of the rectangle + y of the rectangle + width of the rectangle + height of the rectangle + The sheet + The graphics + the cell range + Return the rectangle in float + + + + Creates brush object based on specified extended format. + + Extended format to get brush for. + Created brush object. + + + + Get Linear Gradient Brush + + The cell gradient fill + The cell rectangle + LinearGradientBrush + + + + Normalizes color - makes it non-transparent. + + Color to normalize. + Non-transparent color (Alpha = 255) based on specified color. + + + + Gets vertical string alignment based on the cell style. + + Style to get data from. + String alignment. + + + + Gets horizontal string alignment based on the cell style. + + Style to get data from. + Cell to get alignment for. + String alignment. + + + + Draws cell borders (including gridlines if necessary). + + Border collection. + Cell's rectangle. + Graphics to draw at. + Represents cell Range to draw border. + + + + Draws specified border. + + + + + + + + + + + + + Draws doubled border. + + + + + + + + + + + + + Draws outer line of the double border. + + Graphics to draw at. + Pen to draw with. + Borders collection containing border that is being drawn. + Border that is being drawn. + X coordinate of the starting point for ordinary border. + Y coordinate of the starting point for ordinary border. + X coordinate of the finishing point for ordinary border. + Y coordinate of the finishing point for ordinary border. + + + + + + + Draws inner line of the double border. + + Graphics to draw at. + Pen to draw with. + Borders collection containing border that is being drawn. + Border that is being drawn. + X coordinate of the starting point for ordinary border. + Y coordinate of the starting point for ordinary border. + X coordinate of the finishing point for ordinary border. + Y coordinate of the finishing point for ordinary border. + + + + + + + Updates delta coordinates for double border drawing, if necessary. + + + + + + + + + + + + + + + + + + + + + + + + + Draws single border at specified position. + + Border to draw. + X coordinate of the first point. + Y coordinate of the first point. + X coordinate of the second point. + Y coordinate of the second point. + Graphics to draw at. + + + + Creates pen for the specified border. + + Border to create pen for. + Created pen. + + + + Gets DashStyle for the pen based on the border settings. + + Border to get DashStyle for. + DashStyle closest to the border line settings. + + + + Evaluates line width based on border settings. + + Border to get data from. + + + + + Creates image of the specified size and type. + + Image width. + Image height. + Type of the image to create. + Stream to save into. + Metafile EmfType. + Created image. + + + + String Format + + + + + Represents left width. + + + + + Represents right width. + + + + + Represent the GDI graphics string format. + + + + + Represent the GDI graphics. + + + + + Represent the text rectangle inside shape. + + + + + Represent the workbookImpl. + + + + + Represent the ChartImpl. + + + + + Create a covertChartShapes object. + + WorkbookImpl + ChartImpl + + + + Draw the shapes and picutre inside the chart. + + Chart stream + chart width + chart height + + + + Draw the shapes. + + Shapes collection inside chart + Graphics + Scale width + Scale height + + + + Draw groupShape inside the chart. + + GroupShapeImpl + Graphics + ScaleWidth + Scaleheight + + + + Draw Image inside the chart. + + ShapeImpl + Image inside chart + Graphics + ScaleWidth + ScaleHeight + + + + Crops the image with the specified offset. + + Source image to crop. + Left offset to crop from. + Top offset to crop from. + Right offset to crop. + Bottom offset to crop. + Indicates whether the destination image is transparent. + Returns the cropped image for the offsets specified. + + + + Apply duotone to the give image. + + Picture shape. + ImageAttributes need to be applied. + Color changed ImageAttributes. + + + + Apply duotone to the give image. + + In where the duotone need to apply. + duotone color informations. + Duotone applied image. + + + + Executes Linear interpolation for Duotone. + + In where the factor is applied. + In where the factor is applied. + Factor value. + Final factorized color. + + + + Create Non-Index image from source image. + + Source Image. + Created Non-Indexed image. + + + + Apply Image transparency. + + In where the transparency need to apply. + Transparency to apply. + + + + Apply recolor to the give image. + + In where the recolor need to apply. + Picture shape. + Recolored image. + + + + Draw the shapes inside the chart. + + ShapeImpl + GDI graphics + Scale width + Scale height + + + + Draw the RotateText. + + Text rectangle area + Text direction type + GDI graphics + + + + Applies rotation for the AutoShape/Textbox. + + Shape for which rotation should be applied. + Rectangle bound values of the Shape. + Rotation angle to apply the rotation. + PdfGraphics to render the Shape. + + + + Updates the bound's of the text inside the AutoShape. + + Rectangle bounds of the text inside the AutoShape. + Rectangle bounds of the AutoShape. + AutoShape for which text bounds should be updated. + + + + Gets the vertical alignment from shape. + + The text box shape. + The pdfVerticalAlignment value + + + + Get rotation angle. + + Text direction in inside shape + Rotation angle + + + + Gets the text alignment from shape. + + The shape. + The PdfTextAlignment value. + + + + Get the anchor position from text direction and alignment + + input text direction of the text body + input text body vertical alignment + input text body horizontal alignment + + + + Draw Rich text inside the AutoShape. + + RichText object that holds the formatted text. + AutoShape for which text should be rendered. + Rectangle bounds of the text to be rendered.. + PdfGraphics object to render the RichText. + + + + Aligns the rotated text based on string format. + + string format. + Rotation angle. + Shape object + returns string format. + + + + Draw the RTf text. + + The cell rectangle. + The cell adjacent rectangle. + The pdf graphics. + Font collection. + DrawString collection. + Indicating wheather shape or not. + Indicating wheather is wrapText or not + Indicating wheather shape Horizontal Text is overflow or not + Indicating wheather shape vertical Text is overflow or not. + + + + Gets the font. + + The font object of the cell. + Name of the font. + The size of the font. + Font object + + + + Gets the text layout's bounds for the AutoShape. + + AutoShape for which the text bounds should be obtained. + Bound value of the shape from which text bounds to be calculated. + Rectangle bound values for the text inside the AutoShape. + + + + Draw the shape and applied the fill color. + + GDI graphics path + ShapeImpl + + GDI grphics + Shape rectangle area + + + + Fills the shape background. + + pdfGraphics to apply fill to. + Shape for which fill should be applied. + Path of the shape on the PdfGraphics. + Fill format of the shape. + + + + Creates image in the meta format. + + Boundary values of the image. + Memorystream to save the image to. + Newly created image stream. + + + + Check whether the AutoShape type is line. + + AutoShape to be checked. + Returns true if the AutoShape is a type of line else returns false. + + + + Check whether shape can be set fill or not. + + Shape to check. + Returns true if fill can be applied to shape else returns false. + + + + Applied the shape rotation. + + GDI graphics + ShapeImpl + shape rectangle area + + + + Gets the lattitude value of the shape from Scene 3D. + + AutoShape for which the lattitude value should be obtained. + Boolean value indicates whether AutoShape is flipped horizontally. + Rotation angle of the AutoShape. + + + + Checked whether the group shape contains Vertical flip. + + Group Shape. + True if the group shape contains flip.. + + + + Checked whether the group shape contains Horizontal flip. + + Group Shape. + True if the group shape contains flip.. + + + + Get Horizontal flip count. + + Group Shape. + Flip count. + Flip count. + + + + Get Vertical flip count. + + Group Shape. + Flip count. + Flip count. + + + + Gets the graphics path for autoshapes. + + Bounds to indicate the size of the autoshape. + PdfPen to draw outlines of the autoshapes. + pdfGraphics object in which autoshapes has to be drawn. + Autoshape for which path should be obtained. + Newly created pdfPath for the autoshape. + + + + Get custom geomentryPath. + + Shape rectangle area + GDI graphich path + ShapeImpl + GDI grphics path + + + + Get geomentry path. + + GDI grphics path + Path element collection + path width + path height + shape rectangle area + + + + Convert EMU to Point. + + EMU value. + Point value. + + + + Get geomentry path y value. + + Path height + Update y value + shape rectangle area + + + + + Get transform matrix. + + Shape rectangle area + Rotation angle + flipV + FlipH + Matrix + + + + Get drark color. + + Fill color + Increase or decrease the color vlaue based on given value. + Fill color + + + + Creates the pen. + + The format of the line. + The Pen object. + + + + Normalizes the color. + + The color. + The Normailzed Color + + + + Create graphics pen. + + ShapeImpl + Shape lineFormat + scaled width + + + + + Gets the custom line head style. + + Head style of the arrow. + Head lenght of the arrow. + Head width of the arrow. + + + + + Gets the custom line style's graphics path. + + Arrow head style of the line. + Arrow head length of the line. + Arrow head width of the line. + Base in set value. + + + + + Gets the Arrow head's style value. + + Arrow head's style. + Graphics path to draw. + Style value to be returned. + Returns true if not drawn else returns false. + + + + Get hatch style. + + Pattern style + HasStyle pattern + + + + Gets the dash style. + + Theformat of the line. + The PdfDashStyle value. + + + + String Format + + + + + + + + + + + + + + + + + + + + + + Get Curved Connector path + + + formulaColl.Add("x2","*/ w adj1 100000"); + formulaColl.Add("x1","+/ l x2 2"); + formulaColl.Add("x3","+/ r x2 2"); + formulaColl.Add("y3","*/ h 3 4"); + + + + + + + + Get Curved Connector path + + + formulaColl.Add("x2","*/ w adj1 100000"); + formulaColl.Add("x1","+/ l x2 2"); + formulaColl.Add("x3","+/ r x2 2"); + formulaColl.Add("y3","*/ h 3 4"); + + + + + + + + Get Bent Connector path + + + formulaColl.Add("x1","*/ w adj1 100000"); + > + + + + + + + Get Bent Connector path + + + formulaColl.Add("x1","*/ w adj1 100000"); + > + + + + + + + Get bend connector 2 path. + + bend connector2 points + + + + Get bend connector 2 path. + + Graphics path for bend connector2 points + + + + Get bend connector4 path. + + Pdf path for bentconnector4 points + + + + Get bent connector5 path. + + Pdf path for bent connector5 points + + + + Get bent connector4 path. + + Graphics path for bent connector4 points + + + + Get bent connector 5 path. + + Graphics path for bent connector5 points + + + + Get curved connector 2 path + + Grpahics path for curved connector 2 points + + + + Get curved connector 4 path. + + Graphics path for curved connector4 points + + + + Get curved connector5 path. + + Graphics path for curved connector5 points + + + + Get curved connector2 path. + + Pdf path for curved connector2 points + + + + Get curved connector 4 path. + + Pdf path for curved connector4 points + + + + Get curved connector 5 path. + + GraphicsPath for curved connector 5 path + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Get Triangle path + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the right arrow path. + + + + + + Gets the left arrow path. + + + + + + Gets down arrow path. + + + + + + Gets the left right arrow path. + + + + + + Gets the curved right arrow path. + + + + + + Gets the curved left arrow path. + + + + + + Gets the curved up arrow path. + + + + + + Gets the curved down arrow path. + + + + + + Gets up down arrow path. + + + + + + Gets the quad arrow path. + + + + + + Gets the left right up arrow path. + + + + + + Gets the bent arrow path. + + + + + + Gets the U trun arrow path. + + + + + + Gets the left up arrow path. + + + + + + Gets the bent up arrow path. + + + + + + Gets the striped right arrow path. + + + + + + Gets the notched right arrow path. + + + + + + Gets the pentagon path. + + + + + + Gets the chevron path. + + + + + + Gets the right arrow callout path. + + + + + + Gets down arrow callout path. + + + + + + Gets the left arrow callout path. + + + + + + Gets up arrow callout path. + + + + + + Gets the left right arrow callout path. + + + + + + Gets the quad arrow callout path. + + + + + + Gets the circular arrow path. + + + + + + Gets the math plus path. + + + + + + Gets the math minus path. + + + + + + Gets the math multiply path. + + + + + + Gets the math division path. + + + + + + Gets the math equal path. + + + + + + Gets the math not equal path. + + + + + + Gets the flow chart alternate process path. + + + + + + Gets the flow chart predefined process path. + + + + + + Gets the flow chart internal storage path. + + + + + + Gets the flow chart document path. + + + + + + Gets the flow chart multi document path. + + + + + + Gets the flow chart terminator path. + + + + + + Gets the flow chart preparation path. + + + + + + Gets the flow chart manual input path. + + + + + + Gets the flow chart manual operation path. + + + + + + Gets the flow chart connector path. + + + + + + Gets the flow chart off page connector path. + + + + + + Gets the flow chart card path. + + + + + + Gets the flow chart punched tape path. + + + + + + Gets the flow chart summing junction path. + + + + + + Gets the flow chart or path. + + + + + + Gets the flow chart collate path. + + + + + + Gets the flow chart sort path. + + + + + + Gets the flow chart extract path. + + + + + + Gets the flow chart merge path. + + + + + + Gets the flow chart online storage path. + + + + + + Gets the flow chart delay path. + + + + + + Gets the flow chart sequential access storage path. + + + + + + Gets the flow chart magnetic disk path. + + + + + + Gets the flow chart direct access storage path. + + + + + + Gets the flow chart display path. + + + + + + Gets the rectangular callout path. + + + + + + Gets the rounded rectangular callout path. + + + + + + Gets the oval callout path. + + + + + + Gets the cloud callout path. + + + + + + Gets the line callout1 path. + + + + + + Gets the line callout2 path. + + + + + + Gets the line callout3 path. + + + + + + Gets the line callout1 accent bar path. + + + + + + Gets the line callout2 accent bar path. + + + + + + Gets the line callout3 accent bar path. + + + + + + Gets the line callout1 no border path. + + + + + + Gets the line callout2 no border path. + + + + + + Gets the line callout3 no border path. + + + + + + Gets the line callout1 border and accent bar path. + + + + + + Gets the line callout2 border and accent bar path. + + + + + + Gets the line callout3 border and accent bar path. + + + + + + + + + + + + + + + + + + + + + Get Path adjust value + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Class used to parse check box in Excel 2007 xml format. + + + + + Extracts shape type settings from the reader and creates shape with default settings. + + XmlReader to get general shape settings from. + Parent worksheet for the shape. + Shape with default settings without adding it to any collection + + + + Tries to parse unknown client data tag. + + Reader to get data from. + Shape to put data into. + + + + Registers shape in all necessary collections. + + Shape to register. + + + + Creates shape with default settings + + Worksheet Shape Collection + Shape with default settings + + + + This class is used for header/footer images parsing. + + + + + Maximum crop value. + + + + + Crop value regex pattern. + + + + + Extracts shape type settings from the reader and creates shape with default settings. + + XmlReader to get general shape settings from. + Parent worksheet for the shape. + + Shape with default settings without adding it to any collection + + + + + Parses shape and adds it to all necessary shapes collections. + + XmlReader to get shape from. + Default shape that must be cloned to get resulting shape. + Corresponding relations collection. + Path to the parent item (item which holds all these xml tags). + + + + Parses style attribute of the comment shape. + + Reader to get attribute data from. + Comment shape to set values to. + + + + Parses style properties. + + Textbox to put properties into. + String representation of the style properties + (key - property name, value - property value). + + + + Parses shape id + + Extracted shapeid or -1 if format was incorrect. + + + + Parses image data. + + XmlReader to get required information from. + Name of the new shape. + Parent worksheet to place new shape into. + Corresponding relations collection. + Path to the parent item. + + + + Creates shape with default settings + + Worksheet Shape Collection + Shape with default settings + + + + Get crop value. + + The cropped string value. + + + + Summary description for UnmanagedArray. + + + + + Memory block that contains array data. + + + + + Size of the memory block. + + + + + Default constructor. + + + + + Initializes new instance of the array. + + Memory size in bytes. + Indicates whether to zero memory. + + + + Frees all allocated resources. + + + + + Disposes this object. + + + + + Returns Int32 value from the array. + + Index of the Int32 value in the array (offset will be 4 * index). + Int32 value from the array. + + + + Returns Int16 value from the array. + + Index of the Int16 value in the array (offset will be 2 * index). + Int16 value from the array. + + + + Returns Byte value from the array. + + Index of the Byte value in the array. + Int32 value from the array. + + + + Sets Int32 value into the array. + + Index of the Int32 value in the array (offset will be 4 * index). + Value to set. + + + + Sets Int16 value into the array. + + Index of the Int16 value in the array (offset will be 2 * index). + Value to set. + + + + Sets Byte value into the array. + + Index of the Byte value in the array. + Value to set. + + + + Resizes current array. + + Desired size in bytes. + Indicates whether to zero memory. + + + + Copies memory from source unmanaged array to current unmanaged array. + + Represents source array. + Returns updated current array. + + + + Clears current array. + + + + + + This class contains utility methods, that cannot be logically placed in any other class. + + + + + Number of days that are incorrectly displayed by MS Excel. + + + + + Excel 2007 maximum row count. + + + + + Excel 2007 maximum column count. + + + + + Excel 97-03 maximum row count. + + + + + Excel 97-03 maximum column count. + + + + + To prevent creation instances of this class. + + + + + Determines if rectangles intersect with each other. + + The first rectangle to test. + The second rectangle to test. + This method returns true if there is any intersection. + + + + + + + + + + + + + Searches for the specified object and returns the index of + the first occurrence within the entire one-dimensional array. + + Array to search. + Value to locate in the array. + + The index of the first occurrence of value within the entire array, if found; + otherwise, -1. + + + + Searches for the specified object and returns the index of + the first occurrence within the entire one-dimensional array. + + Array to search. + Value to locate in the array. + + The index of the first occurrence of value within the entire array, if found; + otherwise, -1. + + + + Searches for the specified object and returns the index of + the first occurrence within the entire one-dimensional array. + + Array to search. + Value to locate in the array. + + The index of the first occurrence of value within the entire array, if found; + otherwise, -1. + + + + Converts DateTime into number. + + Value to convert. + Converted value. + + + + Converts number into DateTime. + + Number to convert. + Converted value. + + + + Creates new cell without adding it to the collection.. + + Zero-based row index of the cell to create. + Zero-based column index of the cell to create. + Record type. + Created cell. + + + + Removes first character from the string. + Warning: this method doesn't performs any argument check for performance purposes. + + Value to remove first character from. + Updated string. + + + + + + + + + + + + Gets maximum row and column count for specific version. + + + + + + + + Copies one stream into another. + + Source stream to copy from. + Destination stream to copy into. + + + + Creates copy of the MemoryStream. + + Source stream to copy. + A copy of the original MemoryStream. + + + + Creates xml reader to read data from the stream. + + Data to read. + Created xml reader. + + + + Creates a XmlReader from data stream. + + Data stream to create reader from. + Xml element tag to return the reader. + Newly created XmlReader from given stream. + + + + Clones and returns list of . + + list to clone. + copy of the input list of . + + + + Creates xml reader to read data from the current stream position. + + Data to read. + Created xml reader. + + + + Creates xml reader to read data from the stream. + + Data to read. + Created xml reader. + + + + Creates xml writer to read data from the stream. + + Data to read. + Created xml writer. + + + + Creates xml writer to read data from the stream. + + Data to read. + Created xml writer. + + + + Creates xml writer to read data from the stream. + + Data to read. + Created xml writer. + + + + This class contains information about Vertical Page Break. + + + + + Represents a vertical page break. The VPageBreak object is a member + of the VPageBreaks collection. + + + + + Used without an object qualifier, this property returns an + object that represents the Excel . + + The following code illustrates how to access the property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + //Get Page break with corresponding column + IVPageBreak vPageBrk = sheet.VPageBreaks.GetPageBreak(5); + + //property returns an Application object that represents the Microsoft Excel application + IApplication vPageBreakApplication = vPageBrk.Application; + + object vPageBreakParent = vPageBrk.Parent; + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + For the HPageBreak and VPageBreak objects, this property returns or + sets the cell (a Range object) that defines the page-break location. + Horizontal page breaks are aligned with the top edge of the location + cell; vertical page breaks are aligned with the left edge of the + location cell. Read / write . + + + To know more about page setting refer this link. + + The following code illustrates the use of Location property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + //Get Page break with corresponding column + IVPageBreak vPageBrk = sheet.VPageBreaks.GetPageBreak(5); + + //Get the IRange Location + IRange range = vPageBrk.Location; + + //Set the IRange Location + vPageBrk.Location = sheet.Range["F1:S10"]; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Returns the parent object for the specified object. + + The following code illustrates the use of Parent property. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create a worksheet. + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sample.xlsx"); + IWorksheet sheet = workbook.Worksheets[0]; + //Get Page break with corresponding row + IVPageBreak vPageBrk = sheet.VPageBreaks.GetPageBreak(5); + + //The parent object for the specified object + object vPageBreakParent = vPageBrk.Parent; + + workbook.SaveAs("PageSetup.xlsx"); + workbook.Close(); + } + + + + + + Record with vertical page break. + + + + + Type of the page break. + + + + + Represents worksheet. + + + + + Creates page break by application and parent objects. + + Application object for the page break. + Parent object for the page break. + + + + Creates page break by application, parent objects and reader. + + Application object for the page break. + Parent object for the page break. + Reader that contains page break record. + + + + Constructs page break by application, parent object, and TVPageBreak object. + Always creates manual page break. + + Application object for the page break. + Parent object for the page break. + Vertical page break. + + + + Initializes new instance of the vertical page break. + + Application object. + Parent object. + Page break location. + + + + Finds parent object. + + + + + Clones current instance. + + Parent for new instance. + A clone of the current instance. + + + + Location of the page break. + + + + + Type of the page break. + + + + + Gets / Sets vertical page break record. + + + + + Returns zero-based column index of the page break. Read-only. + + + + + Get the Macrosheet and IntlMacrosheet + + + + + Get the macrosheet and intlmacrosheet + + Name of the macrosheet and intlmacrosheet + The bool value is consider macrosheet or intlmacrosheet + + + + find the macrosheet or intlmacrosheet + + + + + stream of the macrosheet and intlmacrosheet + + + + + sheet name of the macrosheet and intlmacrosheet + + + + + dataholder of the macrosheet and intlmacrosheet + + + + + Summary description for WorkbookShapeDataImpl. + + + + + Array of blips that should be parsed by MsoMetafilePicture. + + + + + Contains all workbook's pictures. + + + + + Drawing group not parsed records. + + + + + Parent workbook. + + + + + Dictionary, key - image hash (ArrayWrapper), value - MsofbtBSE structure that describes + + + + + Shape getter. + + + + + Last used worksheet shapes collection id. + + + + + Dictionary blip type - to - Instance, RequiredMac, RequiredWin32, subrecord type values. + + + + + Indicates the image item path. + + + + + Preserved Clusters. + + + + + Indexed Pixel Types and not supported image format + + + + + Static constructor. + + + + + Initializes new instance. + + Application object for the new instance. + Parent object for the new instance. + Shape getter to use for retrieving shapes from worksheet. + + + + Searches for all necessary parent objects. + + + + + Parses drawing group record. + + Record to parse. + + + + Parses picture container. + + + + + Dispose + + + + + Serializes MsoDrawingGroupRecord if necessary. + + OffsetArrayList that will receive all records. + Record code for serialization. + + + + Serializes drawing group options. + + Options container. + + + + Serialize default options + + Options to serialize. + + + + Fills MsofbtDgg record. + + Record to fill. + Shape getter. + + + + Adds picture to the storage. + + Picture to add. + Desired image format. + Name of the picture. + Number of pictures after adding new picture (blip id). + + + + Adds picture to the storage. + + Picture to add. + Number of pictures after adding new picture.. + + + + Returns picture record. + + Picture index. + Picture record. + + + + Removes picture from this collection. + + Picture id to remove. + Indicates whether to remove image (not picture + shape) from workbook if we didn't detect any reference to it. + + + + Clears all internal data. + + + + + Creates a new object that is a copy of the current instance. + + Parent object for a copy of this instance. + A new object that is a copy of this instance. + + + + Registers new shapes collection. + + + + + + Clear preserved clusters + + + + + Converts image format into blip type. + + Format to convert. + Returns appropriate image format. + + + + Converts image format into blip type. + + Format to convert. + Desired image format. + + + + + Indicates whether blip is bitmap blip. + + Blip type to check. + True if specified blip is bitmap blip; False otherwise. + + + + Returns BlipParams for picture record. + + MsofbtBSE record to set fields. + BlipParams for picture record. + + + + Get or set the image item path + + + + + List with all pictures. Read-only. + + + + + Indicates whether this mso drawing group has to be serialized. + + + + + Contains information about different properties of image. + + + + + Instance property value. + + + + + ReqMac property value. + + + + + ReqWin32 property value. + + + + + SubRecordType property value. + + + + + + + + + + + + + + Represents worksheet custom property. + + + + + Represents single worksheet custom property. + + + + + Returns the name of the property. + + + + + Gets / sets value of the property. + + + + + Low level record. + + + + + Default constructor. + + + + + Creates new instance of the class. + + Name of the new property. + + + + Creates new instance of the class. + + Low level property data. + + + + Serializes property into list of Biff records. + + OffsetArrayList to serialize into. + + + + Creates a copy of the current object. + + A copy of the current object. + + + + Returns name of the property. Read-only. + + + + + Gets / sets value of the property. + + + + + Represents a worksheet in a workbook. + + + + + Default regular expression options. + + + + + Default character (for width measuring). + + + + + One degree in radians. + + + + + Maximum column width. + + + + + Width of the zero character. + + + + + Default size for the dictionary of ranges. + + + + + Default size of autofilter arrow width. + + + + + Represents indent width. + + + + + + Maximum OleDateValue + + + + + Represents the Carriage Return character. + + + + + Represents the Carriage new line character. + + + + + Represents the Comma character. + + + + + Microsoft Excel. + + + + + Default number format index for date. + + + + + Indicates whether the sheet is created using Addcopy method or not + + + + + Indicates whether this instance has Alernate Content. + + + + + Represents the RTFReader + + + + + Represents threaded comments collection + + + + + Contains the merged cells + + + + + Indicates whether the range contains conditional format or not. + + + + + Contains the named range names. + + + + + Gets the number of slicers present in the worksheet. + + + + + Indicate the shapes are able to copy for sorting + + + + + Stores a collection of merged region identifiers and their statuses. + + + + + Enables the calculation support. + + Enabling this method will initialize objects and retrieves calculated values of formulas in a worksheet. + + + + + Create and update named ranges + + + + + Update external formula. + + + + + Try to Get Identifier of given formula. + + External workbook. + Identifier to get. + Sheet index to get. + the boolean value, indicates whether the Identifier is updated + + + + Try to Get Identifier of given formula. + + Workbook. + Formula to updated. + the boolean value, indicates whether the formula is updated + + + + Checked whether the string is a cell range or not. + + workbook. + string to check. + True if the string is cell range, otherwise false + + + + Gets external worksheet index from the specified external workbook. + + worksheet name to search. + External workbook. + External worksheet index. + + + + Get external worksheet. + + + + + Disables the calculation support in this workbook and disposes of the associative objects. + + + + + Returns the formula string if the cell contains a formula, or the value if + the cell cantains anything other than a formula. + + The row of the cell. + The column of the cell. + The formula string or value. + + + + Gets the position of array record position of the cell. + + Input row + Input column + Height to be considered + Width to be considered + Returns Array Record Position + + + + Gets the position of array record position of the cell. + + Input row + Input column + Height to be considered + Width to be considered + Sheet reference to be considered + Returns Array Record Position + + + + Get the Formula value from the sheet with the given row and column + + input row + input column + the formula value from the cell + + + + Get array formula. + + input row + input column + It's true formula string to array formula, otherwise formula + Formula array ptg + formula string + + + + Sets the value of a cell. + + The value to be set. + The row of the cell. + The column of the cell. + + + + Not implemented. + + + + + Raises the event. + + The row of the change. + The column of the change. + The changed value. + + + + Array with autofilter record types. + + + + + Hyperlink regex pattern for url link. + + + + + Hyperlink regex pattern for mailto. + + + + + Collection of regex pattern and their hyperlink type. + + + + + Represents the slicers in the worksheet. + + + + + Represents the scenarios in the worksheet. + + + + + Represents the slicer caches + + + + + Represents the slicer cache id + + + + + Represents the pivot slicer cache id + + + + + Contains inserted rows for subtotal process. + + + + + Rows moved in subtotal process. + + + + + Contains formula for range + + + + + Represents to parse sheet on demand + + + + + Range that contains all used cells. + + + + + The dictionary holds a records objects, representing each cell. + Holds information about used cells only. + Key - cell index. + Value - corresponding BiffRecordRaw. + + + + + In the dictionary store, where ColumnIndex-to-ColumnInfoRecord. + Column Index is started from 1. + + + + + Indicates whether page breaks should be displayed. + + + + + Object that contains information about page setup, i.e. + paper size, paper orientation, footers, headers, etc. + + + + + Standard column width. + + + + + Object that contains all merged regions of the worksheet. + + + + + Array store containing all selection records. + + + + + + + + + + Collection of all names defined in the worksheet (like named ranges). + + + + + Type of the worksheet. + + + + + Indicates if values are preserved as strings. + + + + + Array of all records for autofilter. + + + + + SortedList with all NoteRecords. + + + + + Notes sorted by cell index, key - cell index, value - note record. + + + + + + + + + + Collection of all data validations in the worksheet. + + + + + Collection of worksheet's autofilters. + + + + + Collection of worksheet's pivot tables. + + + + + Collection of all hyperlinks in the current worksheet. + + + + + Contains all worksheet's sort records. + + + + + Start index for pivot table records. + + + + + Start index for hyperlinks records. + + + + + Start index for conditional formatting records. + + + + + Start index for data validation formatting records. + + + + + Start index of custom properties block. + + + + + DCon records. + + + + + List with all conditional format collections. + + + + + Collection of custom properties. + + + + + Migrant range - row and column of this range object can be changed by user. + + + + + Worksheet's index record. This member is used for parsing only. + + + + + There are two different algorithms to create UsedRange object: + 1) Default. This property = true. The cell is included into UsedRange when + it has some record created for it even if data is empty (maybe some formatting + changed, maybe not - cell was accessed and record was created). + 2) This property = false. In this case XlsIO tries to remove empty rows and + columns from all sides to make UsedRange smaller. + + + + + Indicates to include the CFRange in UsedRange. + + + + + Contains settings of string preservation for ranges. + + + + + Object used for shape coordinates evaluation on loading. + + + + + Represents collection of all list objects in the worksheet. + + + + + List with preserved table object's records. + + + + + To set Ishidden property + + + + + For Zeroheight attribute to enable or disable + + + + + Specifies the number of characters of the maximum digit width of the normal style's font. + + + + + 'True' if rows have a thick bottom border by default. + + + + + 'True' if rows have a thick top border by default. + + + + + Highest number of outline levels for columns in this sheet. + + + + + Default column width of sheet. + + + + + Highest number of outline level for rows in this sheet. + + + + + List of CondFMT records. + + + + + List of CFEx Records. + + + + + List of Outline Wrappers collection + + + + + Represents the Column group outline dictionary collection + + + + + Represents the row group outline dictionary collection + + + + + Indicates whether the merged cell has a wrapped text. + + + + + Represents the Collection of OleObject + + + + + Represents the Collection of SparklineGroups + + + + + Represents the Collection of InlineStrings + + + + + Preserves the External connection setting in the worksheet. + + + + + Preserves the pivot tables. + + + + + Stream to preserve the worksheet slicer + + + + + Represents the Data table export + + + + + Indicates whether the column is inserting in this worksheet. + + + + + Indicates whether the row is inserting in this worksheet. + + + + + Inserting row count in this worksheet. + + + + + Inserting row index in this worksheet. + + + + + Deleting row count in this worksheet. + + + + + Deleting row index in this worksheet. + + + + + Indicates whether the row is deleting in this worksheet. + + + + + Indicates whether the column is deleting in this worksheet. + + + + + + + + + + + returns true when the moverange is made along with updated CF range which is applied outside the UsedRange. + else returns false. + + + + + + + + Represent the Unsupported forumulas. + + + + + Indicates whether current process is subtotal. + + + + + Indicates whether existing subtotal removed. + + + + + Indicates whether subtotal applied worksheet contains array separated formula. + + + + + Represents default XF index. + + + + + Cell address list which to be merged while importing nested collection. + + + + + Range collection which to be merged while importing nested collection. + + + + + Denotes if the document has BaseColWidth property alone. + + + + + Represents collection of Cell Formulas + + + + + Represents collection of auto filter displaytexts + + + + + Slicer ext stream + + + + + Indicates whether the AutoFitPivotTable method is called. + + + + + Indicates whether importing data table for xml mapping. + + + + + Indicates pivot table. + + + + + Indicates pivot table range. + + + + + Static constructor. + + + + + Initializes a new instance of the Worksheet class with specified application and parent properties. + + Application object for the worksheet. + Parent object for the worksheet. + + + + Initializes a new instance of the Worksheet class with specified parsing option along with application and parent properties. + + Application object for the worksheet. + Parent object for the worksheet. + reader object for the worksheet data. + Parse options. + Indicates whether to skip the parsing of data or not. + + Dictionary with new extended format indexes used in ignore styles mode. + + Object used to decrypt encrypted records. + + + + Initializes all inner data such as Comments collection, + Page setup, etc. + + + + + Clear all internal collections. + + + + + Clear all internal collections but excluding mentioned flags. + + Allows to avoid clearing of some properties. + + + + //Updates the style index while copying from one workbook to another workbook. + + Worksheet + Dictionary with new indexes of extended formats. + + + + Copies names from another worksheet. + + Worksheet to copy names from. + Dictionary with new worksheet names. + Dictionary, key - old name index, value - new name index. + Represents hash table with new extern sheet indexes. + + + + Searches for all used named range objects. + + Dictionary where key means named range index. + + + + Change the reference index of name record . + + source workbook. + destination workbook. + Old name. + New name. + + + + Copies row height. + + Source worksheet. + Dictionary with new extended format indexes. + + + + Copies conditional formats. + + Base worksheet. + + + + Copies autofilters. + + Base worksheet. + + + + Copies data validations. + + Base worksheet. + + + + Copies column width. + + Source worksheet. + Array with new extended format indexes. + + + + Returns true if specified column index can be found inside list of columns with default width. + + List of columns with default width (sorted). + Start index in the list. + Column index to check. + True if specified column index can be found inside list if columns. + + + + Updates indexes of extended formats. + + Collection with IOutline elements that should be updated. + Source worksheet. + Dictionary with new extended format indexes. + + + + Updates indexes of extended formats. + + Collection with IOutline elements that should be updated. + Source worksheet. + Dictionary with new extended format indexes. + Indicates whether update default format index. + + + + Updates indexes of extended formats. + + Collection with IOutline elements that should be updated. + Array with new extended format indexes. + + + + Creates columns on update. + + Represents column collection. + Represents new XF indexes. + List of columns that had default column width and were create by this method. + Items in this list are placed in ascending order. + + + + Copies merged regions. + + Source worksheet. + + + + Binds the specified function to an event, so that the function gets called whenever the event fires on the object. + + + + + Unbinds the specified function from the event, so that the function stops receiving notifications when the event fires. + + + + + This method is called during dispose operation. + + + + + Copies page setup from another worksheet. + + Worksheet to copy from. + + + + Imports extended format from anther worksheet. + + Extended format to import. + Source workbook. + Dictionary key - old xf index, value - new xf index. + Index of the new format. + + + + Updates style indexes. + + Array with changed style indexes. + + + + Indicates whether to parseCF or not. + + + + + Clears all pivot tables. + + + + + Sorts the group. + + + + + Adds the outer level group into inner group. + + + + + Merge the group. + + + + + Updates outline levels for row storages in the worksheet. + + + + + Updates outline levels for column records in the worksheet. + + + + + Updates outline level for the specified row/column. + + Row/column index to be updated. + Outline level for the row/column. + Dictionary to store levels as key and corresponding group points as values. + + + + Updates row/column index in all existing group levels. + + Outline level for the row/column. + Row/column index to be updated. + Dictionary to store levels as key and corresponding group points as values. + + + + Gets the Range object that represents the used range on the specified worksheet + + True if UsedRange property is accessed + + + + + Set the standard with in parsing, it does not affect the DefaultColWidht member. + + Represents the Standard Width. + + + + Gets outline levels dictionary collection create outline wrapper collection + + + + + + + + Gets object that is clone of current worksheet in the specified workbook. + + Dictionary with update worksheet names. + New workbook object. + Object that is clone of the current worksheet. + + + + Parses Excel 2007 conditional formatting. + + Workbook file data holder. + + + + Parses worksheet conditional formats in Excel2007 version. + + + + + This method should be called immediately after extended format removal. + + Dictionary with updated extended formats. + + + + This method updates indexes to the extended formats after version change. + + New restriction for maximum possible XF index. + + + + Creates Rtf string for LabelSST record. + + Cell index. + Created rtf string. + + + + Returns found values or null. + + Storage range. + Value for finding. + If true - finds as error; otherwise as bool value. + If true - finds first value; otherwise - all values. + If findfirst - true then returns range; otherwise - array with all found values. + + + + Returns found values or null. + + Storage range. + Value for finding. + Finding flags. + If true - finds first value; otherwise - all values. + If findfirst - true then returns range; otherwise - array with all found values. + + + + Returns found values or null. + + Storage range. + Value for finding. + Range array with found values. + + + + Returns found values or null. + + Storage range. + Value for finding. + If true - finds first value; otherwise - all values. + If findfirst - true then returns range; otherwise - array with all found values. + Range array with found values. + + + + Returns found values or null. + + Storage range. + Value for finding. + If true - finds first value; otherwise - all values. + If findfirst - true then returns range; otherwise - array with all found values. + Range array with found values. + + + + Finds the specified value in the comments of the worksheet. + + Value to search. + The find options based on which search is made. + All found cells containing the comment, or Null if value not found. + + + + Copies worksheet data to the clipboard. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Moves range to new position. + + Destination range. + Source range. + Move options. + + Indicates whether row information such as row height, default style, etc. + must be copied from cache. + + + When source and destination ranges have different sizes. + + + + + moves range to new range with proper updation of CF Range + + Destination range. + Source range. + Move options. + Indicates whether row information such as row height, default style, etc. must be copied from cache. + Represents before move operation. + updated Destination range when CF applied outside usedRange. + updated Source range when CF applied outside usedRange. + + + + Moves range to new position. + + Destination range. + Source range. + Move options. + + Indicates whether row information such as row height, default style, etc. + must be copied from cache. + + Represents before move operation. + + When source and destination ranges have different sizes. + + + + + Moves the table or pivot table to its destination. + + Destination range. + Source range. + Move options. + + + + Checks whether the pivot object range is overlap with another pivot table or table in destination range. + + Destination sheet. + Index of pivot table. + pivot table to be paste in destination range. + + + + Checks whether the list object range is overlap with another table or pivot table in destination range. + + Destination sheet. + Index of table. + Table to be paste in destination range. + + + + Checks whether the given object is overlap in destination range. + + Range in which the IListObject or pivot table object is present. + Index of table or table. + Pivot table or table. + + + + Creates a table range for pasting the table + + List Objects index. + Destination sheet. + Destination range. + Source range. + Table range. + Range for creating table. + + + + Copies range from one range into another with formulas update. + + Destination range. + Source range. + Range into which source was copied. + + + + Copies range from one range into another with paste link options. + + Destination range. + Source range. + Implement pasteLinkoption or not. + Range into which source was copied. + + + + + Copy Values from source range to destination range + + source range worksheet + destination range worksheet + source range row + source range column + destination range row + destination range column + + + + Copies range from one range into another. + + Destination range. + Source range. + Copy options. + Range into which source was copied. + + + + Copies range from one range into another. + + Destination range. + Source range. + Copy options. + Range into which source was copied. + + + + Update the row and column. + + Source range + destination range + True if soure range isEntireColumn, otherwise fasle. + + + + Checks if destination range for paste value has table with header on. + + Destination range for paste value. + Returns table object which has its header in the specified range. + + + + Checks if destination range is table range or not. + + Destination range for paste value. + Returns table object which is intersect with destination range. + + + + Checks if destination range is table range or not. + + Destination range for paste value. + Returns table object which is intersect with destination range. + + + + Checks if destination range is table range or not. + + Destination range for paste value. + Returns table object which is intersect with destination range. + + + + Checks if destination range is entire table range or not. + + Source range of value. + Returns table object with source range. + + + + Copies range without checking range sizes. + + Source range to copy. + Destination range. + Copy options. + + + + Check whether the given named range name is exist in the range. + + Range need to be checked + Named range name + boolean + + + + Copies range without checking range sizes. + + Source range to copy. + Destination range. + Copy options. + A boolean variable indicating if conditional format copy is in progress. + + + + Update the table columns. + + The table to add columns. + Column count to add. + + + + Update the table rows. + + The table to add Rows. + Row count to add. + + + + Get named range names from formula. + + The range. + returns the list of named range names in given range. + + + + Copy sparklines from source range to destination. + + Source range. + Destination range. + Destination worksheet. + Represents is move SparkLines. + + + + Get spaklines from range. + + The Range. + returns list of sparklines from given range. + + + + Removes existing comments from destination range. + + Destination worksheet. + Destination range rectange. + + + + Update the range from merged region. + + Range. + returns the updated range from merged region. + + + + Copies or moves data validations. + + Represents source row index. + Represents source column index. + Represents row count. + Represents column count. + Represents destination row index. + Represents destination column index. + Represents destination sheet. + Represents is move data validations. + + + + Copies or moves conditional formats. + + Represents source row index. + Represents source column index. + Represents row count. + Represents column count. + Represents destination row index. + Represents destination column index. + Represents destination sheet. + Represents is move conditional formats. + + + + Updates priority for the newly copied format and already exixting formats in the destination. + + The destination worksheet for conditional formats. + The formats to be copied to destination worksheet. + A boolean variable indicating if the entire destination range is copied. + + + + Copies the multi cell's CF into single CF. + + Represents formats of destination Sheet. + Represents the destination range. + Represents destination sheet's CF count. + Represents destination sheet. + Represents destination sheet's conditional formats. + + + + Copies or moves Hyperlinks. + + Represents source row index. + Represents source column index. + Represents row count. + Represents column count. + Represents destination row index. + Represents destination column index. + Represents destination sheet. + Represents is move Hyperlinks. + + + + Copies or moves Hyperlinks. + + Represents source row index. + Represents source column index. + Represents destination row index. + Represents destination column index. + Represents destination sheet. + Represents source used range. + Represents destination used range. + Represents destination migrant range. + Represents is move Hyperlinks. + Represents the current row. + Represents the current column. + + + + Remove the Hyperlink from the specific range. + + + + + + Copies or move error indicators. + + Represents source row index. + Represents source column index. + Represents row count. + Represents column count. + Represents destination row index. + Represents destination column index. + Represents destination sheet. + Represents is move error indicators. + + + + Copies cell into another worksheet. + + Cell to copy. + Formula string value of the cell. + + Dictionary with updated extended format indexes, + or Null if indexes were not updated. + + New cell index + Source workbook. + + Dictionary with updated font indexes or Null if indexes were not updated. + + Copy options. + + + + Copies cell into another worksheet. + + Cell to copy. + Formula string value of the cell. + + Dictionary with updated extended format indexes, + or Null if indexes were not updated. + + New cell index + Source workbook. + + Dictionary with updated font indexes or Null if indexes were not updated. + + Copy options. + Source sheet to copy from. + Skip blank cells from being copied to destination. + + + + Copies cells from one range into another. + + One-based index of the source row. + One-based index of the source column. + Number of rows to copy. + Number of columns to copy. + One-based index of the destination row. + One-based index of the destination column. + Destination worksheet. + DictionaryEntry with records and strings intersection part. + Rectangle with intersection information. + Copy options. + + + + Copies cells from one range into another. + + One-based index of the source row. + One-based index of the source column. + Number of rows to copy. + Number of columns to copy. + One-based index of the destination row. + One-based index of the destination column. + Destination worksheet. + DictionaryEntry with records and strings intersection part. + Rectangle with intersection information. + Copy options. + A boolean variable indicating if conditional format copy is in progress. + True, if source range is entire row or column, otherwise fasle. + + + + Removes all formulas in colRemove from internal ArrayFormula collection. + + Formulas to remove. + Indicates whether to clear range before remove operation. + + + + Updates formulas after copy operation. + + Formula to update. + Row offset. + Column offset. + + + + + Updates formulas after copy operation. + + Current worksheet index. + Source worksheet index. + Source rectangle. + Destination worksheet index. + Destination rectangle. + + + + Changes the height of the specified row to achieve the best fit. + + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, Windows Phone, Universal, UWP, Xamarin and NetStandard platforms only. + Row Index + + + + Changes the width of the specified column to achieve the best fit. + + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, Windows Phone, Universal, UWP, Xamarin and NetStandard platforms only. + Column index. + + + + Autofits column by checking only the cells in the column that are specified by row range + + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, Windows Phone, Universal, UWP, Xamarin and NetStandard platforms only. + Column index. + One-based index of the first row to be used for autofit operation. + One-based index of the last row to be used for autofit operation. + + + + Copies all data from another worksheet. + + Parent worksheet. + Dictionary with style names. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Copy flags. + + + + Copies all data from another worksheet. + + Parent worksheet. + Dictionary with style names. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Copy flags. + + Dictionary with new extended format indexes. + + Dictionary with new name indexes. + + + + Copies all data from another worksheet. + + Parent worksheet. + Dictionary with style names. + Dictionary with new worksheet names. + Dictionary with new font indexes. + Copy flags. + + Dictionary with new extended format indexes. + + Dictionary with new name indexes. + Represents collection with extern sheets indexes. + + + + Copies all pivot table objects. + + Worksheet to copy pivot table objects from. + + + + Copies all table objects. + + Worksheet to copy table objects from. + + + + Update CalculatedFormula and TotalsCalculation + + Copied table object collection. + Source of copied table object collection. + + + + + Update the table formula in cells + + + + + + Change the table named range Ptg. + + The source workbook. + The destination workbook. + Named range to change. + Cell formula ptg array. + + + + Change the table named range Ptg. + + The source workbook. + The destination workbook. + Named range to change. + Cell formula ptg array. + + + + Create external workbook for the formula. + + The source workbook. + The destination workbook. + The destination worksheet. + Cell formula array. + + + + Copies error indicators. + + Represents source error indicators. + + + + Copies hyperlinks. + + Source hyperlink collection. + + + + Indicates whether source range can be moved into new location. + + Destination range. + Source range. + True if source range can be moved. + + + + Checks whether it is possible insert row into iRowIndex. + + Index of row to insert. + Number of rows to insert. + Insert options. + True if it is possible to insert row. + + + + Checks whether it is possible to insert column into iRowIndex. + + Index of column to insert. + Number of columns to insert. + Insert options. + True if it is possible to insert column. + + + + Gets range from string value. + + Range value represented in string. + boolean value indicates whether the formula in the input + Extracted Range. + + + + Check whether the string conatins in the error values + + input computed value from calculate base + the list of error strings + the list of formula error strings + the boolean value indicates whether the string is in the list + + + + Check and set the OFFSET function with required parameters + + input formula util class for ptg array + input ptg array + input formula + output formula + + + + Updates indexes to named ranges. + + New indexes. + + + + Updates indexes to named ranges. + + New indexes. + + + + Returns string index of the specified cell. + + Cell index to locate. + String index of the specified cell. + + + + Returns TextWithFormat object corresponding to the specified cell. + + Cell index. + TextWithFormat object corresponding to the specified cell. + + + + Returns TextWithFormat object corresponding to the specified cell. + + Cell index. + Object corresponding to the specified cell. + + + + Returns extended format for specified cell. + + Cell index. + Extended format for specified cell. + + + + Returns extended format for specified cell. + + Cell range + Extended format for specified cell. + + + + Sets string index in the specified cell. + + Cell index to set sst index in. + SST index to set. + + + + Updates string indexes. + + List with new indexes. + + + + Removes merged cells. + + Represent range of merged cells. + + + + Sets active cell + + Cell to activate. + + + + Sets active cell + + Cell to activate. + + + + Gets or sets index of the active pane. + + + + + Gets selection with active cell. + + + + + + Returns active cell. + + Currently active cell. + + + + Tells whether specific FormulaRecord is array-entered formula. + + FormulaRecord to check. + True if it is array-entered formula. + + + + Returns true if the formula record is a array record. + + + + + + + + + Indicates whether cell contains array-entered formula. + + Cell index to check. + True if cell contains array-entered formula. + + + + Returns height from RowRecord if there is a corresponding RowRecord. + Otherwise returns StandardHeight. + + One-based index of the row + Indicates whether to raise events on row autofitting. + + Height from RowRecord if there is corresponding RowRecord. + Otherwise returns StandardHeight. + + + + + Returns height from RowRecord if there is a corresponding RowRecord. + Otherwise returns StandardHeight. + + One-based index of the row + Indicates whether to raise events on row autofitting. + + Height from RowRecord if there is corresponding RowRecord. + Otherwise returns StandardHeight. + + + + + Creates copy of the current object and indicates whether we should copy the shapes or not. + + Parent object for the new object. + Indicates whether we should clone shapes or not. + Copy of the current object. + + + + Looks through all records and calls AddIncrease for each LabelSST record. + + + + + Gets string preservation option for the range. + + Range to get value for. + True if strings are preserved for all cells of the range, + false - if it is not preserved, + null - undefined or different cells have different values. + + + + Sets value indicating whether string should be preserved for range. + + Range to set value for. + Value to set. + + + + Sets items with used reference indexes to true. + + Array to mark used references in. + + + + Updates reference indexes. + + Array with updated indexes. + + + + Creates default pane. + + + + + Copies cell value from sourceCell into destCell. + DOES NOT COPY FORMULAARRAYS (THIS SHOULD BE DONE IN DIFFERENT PLACE). + + Destination cell. + Source cell. + + + + Copies cell value from sourceCell into destCell. + DOES NOT COPY FORMULAARRAYS (THIS SHOULD BE DONE IN DIFFERENT PLACE). + + Destination cell. + Source cell. + Options for coping. + + + + Updates the hyperlinks. + + The source. + The dest. + + + + Gets the column count. + + The source. + The dest. + + + + + Gets the row count. + + The source. + The dest. + + + + + Copies comment from one cell into another. + + Source cell. + Destination cell. + + + + Removes last row from the worksheet. + + Indicates whether to update formulas after row remove. + + + + Removes required number of last rows from the worksheet. + + Indicates whether to update formulas after row remove. + Number of rows to remove. + + + + Removes last column from the worksheet. + + Indicates whether update formulas after removing. + + + + Removes last column from the worksheet. + + Indicates whether update formulas after removing. + Number of columns to remove. + + + + Partially clears cells if necessary. + + Range to clear. + + + + Caches cells from the source range and removes them from it. + + Source range. + Destination range. + Maximum row after moving into destination range. + Maximum column after moving into destination range. + Source records collection. + Boolean flag to indicate if a row is moved or inserted. + Returns hashtable (index-RangeImpl) with all cached cells. + + + + Copies source dictionary into destination. + + Source table. + Destination table. + + Indicates whether row information such as row height, default style, etc. + must be copied from cache. + + + + + Clears range in the dictionary that corresponds to the specified range. + + Dictionary to clear. + Rectangle to clear. + + + + Updates formula array after copy range operation. + + ArrayRecord to update. + Destination worksheet. + Row difference. + Column difference. + + + + Returns record table that should contain cell information. + + One-based row index of the cell. + One-based column index of the cell. + Intersection rectangle. + RecordTable with intersection data. + Another RecordTable that contains cell that are not included into intersection. + RecordTable that should contain cell information. + + + + Adds all necessary styles into collection. + + Start row of the range to copy styles from. + Start column of the range to copy styles from. + Number of rows in the range. + Number of columns in the range. + Destination worksheet. + Dictionary that will get updated indexes. + Dictionary with updated extended format indexes + + + + Clear specified cell. + + Cell to clear. + + + + Sets range values accordingly to an ArrayRecord. + + ArrayRecord that has cells values. + + + + Removes all formulas in colRemove from internal ArrayFormula collection. + + Formula to remove. + Indicates whether to clear range before remove operation. + + + + Creates new ArrayFormula based on specified ArrayFormula. + Used in copy and move range operations. + + Source ArrayFormula. + Destination range. + Source range. + Row (IN THE SOURCE range) of the array formula. + Column (IN THE SOURCE range) of the array formula. + Indicates whether to update formulas. + New array formula. + + + + Checks the source snd destination ranges + + Destination range. + Source Range. + + + + Copies merged regions. + + Destination range. + Source range. + + + + Copies merged regions. + + Destination range. + Source range. + Indicates whether to delete source merges after copy. + + + + Returns note record by object index. + + Object index to find NoteRecord for. + Corresponding NoteRecord, or Null if not found. + + + + Adds note + + Specifies a comment associated with a particular cell + + + + Autofits row by checking only the cells in the row that are specified by column range + + This method is supported on Windows Forms, WPF, ASP.NET, ASP.NET MVC, WinRT, Windows Phone, Universal, UWP, Xamarin and NetStandard platforms only. + Row index. + One-based index of the first column to be used for autofit operation. + One-based index of the last column to be used for autofit operation. + If true then raise events. + + + + Sets inner row height. + + Row index. + Value to set. + If true then bad row height. + Current units. + if true then raise events. + + + + Returns True if row is empty;Checking only for styles. + + One-based row index to check. + True if row is empty. + + + + Returns True if row is empty + + One-based row index to check. + If true - checking for styles and value, otherwise - for value only. + True if row is empty. + + + + Returns True if column is empty. + + One-based column index to check. + True if column is empty. + + + + Indicate if column is empty. + + One-based Column index. + If true - ignore styles. + If true - column is empty. + + + + Parses Range. + + Current Range. + String where parsing is. + Current separator. + Current index of parsing string. + Index of parsed range. + + + + Gets size of string that contain cell found by cellindex. + + Cell to measure. + If true then autofit Rows, otherwise - columns. + Indicates whether rotation must be ignored. + Returns new size of string. + + + + Gets size of string that contain cell found by cellindex. + + Cell index to Autofit. + If true then autofit Rows, otherwise - columns. + Indicates whether rotation must be ignored. + Returns new size of string. + + + + Gets size of string that contain cell found by cellindex. + + Cell index to Autofit. + If true then autofit Rows, otherwise - columns. + RichTextString object to use for text measuring - + to reduce time and memory consumption. + Indicates whether rotation must be ignored. + Returns new size of string. + + + + Updates indent size. + + Represents current size. + Represents extended format. + Returns updated size by indent value. + + + + Updates text width by rotation. + + String size without rotation. + Current rotation. + If true then update height otherwise - width. + Updated width or height. + + + + Gets font by extended format index. + + Record that contain extended format index. + Represents the rotation. Out Parameter. + Returns font, rotation by extended format. + + + + Copies different sheet options. + + Source sheet. + + + + This method is called after RealIndex property change. + + Old value. + + + + This method is called after insert row or column operation is complete + and it fires event handlers if necessary. + + Row or column index to insert at. + Number of inserted rows or columns. + Indicates whether rows were inserted. + + + + Updates fit size by autofilter arrow. + + Represents current size. + Represents extended format. + Represents cell records collection. + Represents cell index. + Returns new size, that contain size of arrow. + + + + Updates size for general alignment for autofilter arrow. + + Represents current size. + Represents rotation. + Represents cells collection. + Represents cell index. + Returns updated size. + + + + Creates migrant range. + + + + + Returns default outline style. + + Dictionary with outlines. + Outline index. + Extracted outline style. + + + + Sets row or column default style. + + Row or column index. + End row or column index. + Style to set. + Collection of outlines that contains style info. + Delegate used for outline creation. + Indicates is in row or column. + XF index that was set. + + + + Sets row or column default style. + + Row or column index. + End row or column index. + Style to set. + Collection of outlines that contains style info. + Delegate used for outline creation. + Indicates is in row or column. + XF index that was set. + + + + Converts style object into XF index that can be assigned to cell or ColumnInfo, Row records. + + Style to convert. + Converted style. + + + + Creates new column record. + + Column index to create record for. + Created row. + + + + Copies conditional formats after row/column insert. + + Row/column index. + Rows/columns count. + Excel insert option. + True if row was inserted, false if column was inserted. + + + + Copies style from above/below/left/right after insert row/column operation. + + Index where insert operation took place. + Number of inserted rows/columns. + Insert options. + Indicates whether rows where inserted. + + + + Copies row and column settings + + Represents source row. + Represents source column. + Represents row or column + Source index + Current index + Insert option + + + + Calculates row or column index from which style must be copied + into inserted area. + + Row or column index whether insert operation was called. + Number of rows/columns to insert. + Insert options. + Update row or column index. + + + + Returns format type for specified column. + + One-based row index for exported cell. + One-based column index for exported cell. + Indicates whether to use default style. + Format type for specified column. + + + + Returns type of the elements based on format type. + + Format type that must be converted into System.Type. + Represents cell's row index. + Represents cell's column index. + Represents maximum numbre of rows to export. + Export options. + Type of the elements based on format type. + + + + Returns type of the elements based on format type. + + Export type that must be converted into System.Type. + Type of the elements based on format type. + + + + Returns cell value. + + One-based row index of the cell to get value from. + One-based column index of the cell to get value from. + Format type. + Indicates whether to export formula values. + Cell value. + + + + Get the formula value. + + Row index + Column index + formula value + + + + Gets value from the cell record. + + Cell to get value from. + String representation of the cell's value. + + + + Updates dictionary with outlines after extended format removal. + + Dictionary to update. + Dictionary with updated extended formats. + + + + Converts minute and seconds to hour. + + + + + + + + Convert seconds into minute and minutes into hour. + + + + + + + + Converts list of cell indexes into ranges array. + + List of cell indexes. + Array with ranges. + + + + Finds value for number. + + Record that represents current cell. + Value for find. + If true - find as number. + If true find as formula value. + Returns cell or null. + + + + Finds bool or error. + + BoolError record that represents current cell. + Value to find. + If true - finds error; otherwise bool + Returns cell or null. + + + + Returns Range which represents specified cell. + + Column index of the cell. + Row index of the cell. + Range which represents specified cell. + + + + Returns Range which represents specified cell. + + Column index of the cell. + Row index of the cell. + Index to extended format for new range. + Range which represents specified cell. + + + + Returns Range which represents specified cell. + + Column index of the cell. + Row index of the cell. + Index to extended format for new range. + Range which represents specified cell. + + + + Converts biff record into range. + + Record to convert. + Created range. + + + + Updates first cell and last cell if necessary. + + Row index. + Column index. + + + + Sets Range which represents specified cell. + + Column index of the cell. + Row index of the cell. + Range which represents specified cell. + + + + Sets cell value. + + Cell index. + Record to set into cell. + + + + Sets cell value. + + One-based column index. + One-based row index. + Record to set into cell. + + + + Returns dimensions of the worksheet. + + Variable that receives index of the first used column. + Variable that receives index of the first used row. + Variable that receives index of the last used column. + Variable that receives index of the last used row. + + + + Calculates dimensions of the specified column. + + Column dimension of which will be calculated. + + Variable that will receive first used row in the specified column. + + + Variable that will receive last used row in the specified column. + + + + + Updates LabelSST indexes after SST record parsing. + + Dictionary with indexes to update, key - old index, value - new index. + + + + Insert into columns. + + Represents column index. + Represents number of columns to be inserted. + Represents insert options. + + + + Remove from column. + + Represents column index. + Represents number of columns to remove. + Insert Options + + + + Updates coordinates for used range, by removing empty rows and columns if necessary. + + First row to start looking from. + First column to start looking from. + Last row to finish looking at. + Last column to finish looking at. + + + + Checks whether row is empty. + + Row index to check. + True if the whole row is empty. + + + + Checks whether column is empty. + + Column index to check. + True if the whole column is empty. + + + + Creates used range. + + Represents first row of the range. + Represents first column of the range. + Represents last row of the range. + Represents last column of the range. + + + + Prepares protection options before setting protection. + + + + + + + Show/hide a row by checking/changing the property HiddenByFilters + + row index the that need to show or hide + Filter applied column + TRUE - show row, FALSE - hide row. + + + + Check the given range's formula is refer to single cell + + index of the row + index of the column + the boolean value indicates whether is refer to single cell + + + + Method extracts biff records belonging to the worksheet. + + BiffReader that contains worksheet's records. + Object used to decrypt encrypted records. + + + + Prepares variables to worksheet parsing. + + + + + Parses single record. + + Record to parse. + Indicates whether to ignore styles information. + Dictionary with new extended format index. + + + + Parses error indicators. + + Represents + + + + Updates duplicated name indexes. + + Represents formula. + + + + Returns new index of the extended format in ignore styles mode. + + Old extended format index. + Dictionary with new extended format indexes. + New index of the extended format. + + + + Method opens excel file using separator. + + Stream to reading. + Denotes separator for the CSV file types. + First row to write. + First column to write. + boolen value for the valid document + + + + Read single cell value plus ending separator or new line character if present. + + Read to get data from. + Separator between cell values. + Builder to store temporary results. + Boolean value for the Valid Document. + Extracted cell value. + + + + Checks whether data inside specified string builder ends with specified string. + + Builder to check. + Separator to locate. + True if it ends with specified value. + + + + Read data from reader until it find specified character. + + Reader to read data from. + Character to locate. + Builder to put extracted data into. + BoolenValue for the ValidDocument. + + + + Calculates number of specified character in the specified string. /// + Value to check. + Character to count. + Number of found characters. + + + + Parse binary data. + + SST dictionary + Xlsb Data holder + + + + Parses worksheet's data. + + + + + Replaces all shared formula with ordinary formula. + + + + + Parses ColumnInfo record. + + Record to parse. + Indicates whether we should ignore styles settings. + + + + Parses row record. + + Record to parse. + Indicates whether we should ignore styles settings. + + + + Parses The DefaultColumnWidth record. + + Record to parse. + + + + Extracts hyperlinks from internal array of biff records. + + + Index to the first hyperlink in the array of biff records, + less then zero if there are no hyperlinks. + + + + + Extracts calculation options. + + Position in the records array after extraction. + + + + Extracts page setup from biff records array + + Start index of the first pagesetup record. + + + + Extracts conditional formats from biff records array + + Position of the first conditional format + + + + Extracts data validation data from internal records array. + + Position of the first data validation record. + + + + Extracts custom properties from the records array. + + Position of the first custom property record. + + + + Creates collection of conditional formats. + + Record that describes formats collection. + + Conditional formats that will be inserted into the collection. + + + + + Creates collection of conditional formats. + + Record that describes formats collection. + + Conditional formats that will be inserted into the collection. + + + + + Returns width from ColumnInfoRecord if there is corresponding ColumnInfoRecord + or StandardWidth if not. + + One-based index of the column. + Width of the specified column. + + + + Converts the specified column width from points to pixels. + + Width in points. + Column width in pixels. + + + + Converts the specified column width from points to pixels in double. + + + + + + + Converts the specified column width from pixels to points. + + Width in pixels. + Width in points. + + + + Filters or copies data from a list based on a criteria range.. + + Whether filter in the place or copy to another place. + The filter range. + The criteria range. + The destination range for the copied rows if ExcelFilterAction is FilterCopy. Otherwise, this argument is ignored. + True to filter unique records; Otherwise filters all the records that meet the criteria. The default value is False. + + + + returns the cloned ptg array from input ptg array + + input ptg array + the cloned ptg array + + + + Read the input ptg and checks whether its valid. + If replace enabled, replace with the current row passed + + input ptg array + filter range to be filtered + boolean value indicates whether the row needs to be replaced + output ptg replaced + the current row to be replaced + the boolean value teh range is valid to be filtered + + + + Check whether the input value is match with the criteria value + + criteria value + input condition to be checked + input filter value + the boolean value, indicates whether the condition satisfied or not + + + + From the input criteria Cell value creates the regex + + input criteria Cell value + condition used + the regex needed + + + + Check with input criteria value and filtering value with the conditions + + input criteria value + input condition + input filter value + input criteria type + input filter value type + + + + + Extracts the comparision operators from the string + + input string value + output string value + the comparision operator from input string + + + + Get text based on cell type. + + Row + Column + + + + + Try to Get intersection range of given names. + + cell range string or named range string + intersection range to be got + the boolean value, indicates whether the given ranges are intersected or not + + + + Check if the string is entire range or not. + + Range string to be checked + The boolean value, indicates whether the given string is entire range + + + + Try to Get intersection range of external ranges. + + External cell range string or named range string + intersection range to be got + the boolean value, indicates whether the given ranges are intersected or not + + + + Add worksheet name to range address. + + range address + range address with sheet name + + + + Get the intersection range. + + named range collection + range address array + intersection range + + + + Returns width displayed by Excel. + + Width written in file. + Width displayed by Excel. + + + + Converts width displayed by Excel to width that should be written into file. + + Width displayed by Excel. + width written into file. + + + + Handler for NameIndexChanged event. + + Event sender. + Event arguments. + + + + Attaches events to Named ranges used in array-entered formulas. + + + + + Attaches events to Named ranges used in array-entered formulas. + + Start index of named ranges. + + + + Parses autofilters. + + + + + Extracts pivot tables from records array. + + Index to the first pivot table record. + + + + Returns record at specified cell index. + + Record's cell index. + Record at specified cell index. + + + + Returns record at specified cell index. + + One-based row index. + One-based column index. + Record at specified cell index. + + + + Extracts next record from reader and parses it. + + Reader to extract record from. + Number of BOF records without closing EOF record. + Indicates whether styles information must be skipped. + Parsing options. + + Dictionary with new extended format indexes for ignore styles mode. + + Object that decrypts data if necessary. + Updated number of BOF records without closing EOF record. + + + + Parses dimensions record. + + Record to parse. + + + + Sets cell at which panes are frozen. + + + + + Creates all necessary selection records. + + + + + Re-indexes selection records. + + Dictionary with currently used selection indexes. + + + + Tries to add next pane index if necessary. + + Dictionary with pane indexes that must be present in the file. + Panes that are absent. + Indexes that are currently present. + Pane index to add. + + + + Gets free index for the selection. + + Start index to try. + Dictionary with used indexes. + Unused index that can be used as pane index. + + + + Clears the worksheet data, formats and merged cells. + + + + + Clears all data. + + + + + Clears the worksheet data. + + + + + Checks whether the specified cell is initialized or accessed. + + One-based row index of the cell. + One-based column index of the cell. + True if the cell was initialized or accessed by the user; otherwise False. + + + + Creates a new instance of the . + + New instance of ranges collection. + + + + Creates a named ranges with the specified named range's value as a name for the specified range. + + Existing named ranged. + Address of the named range to be created. + True if the named range values are vertically placed in the sheet. + This method is used to create named ranges from the discontinuous ranges. + + + + Applying the conidtional formats to the given range. + + The range to apply CF. If range is Null then the conditional formats will be applied for entire worksheet. + SortedList containing ExtendedFormats for each cell within the Conditional Format range. + + + + Apply Conditional Formatting to the entire worksheet. + + Returns a sortedlist containing ExtendedFormats for all the cells within the Conditonal Format range. + + + + From Range Address string the Rectangle bounds calculated and returned. + + input the Range address string + output rectangle bounds + + + + Create an instance of that can be used for template markers processing. + + Object that can be used for template markers processing. + + + + Shows the specified column. + + Index at which the column should be hidden. + True - Column is visible; False - hidden. + + + + Hides the specified column. + + One-based column index. + + + + Hides the specified row. + + One-based row index. + + + + Shows or Hides the specified row. + + Index at which the row should be hidden. + True - Row is visible; False - hidden. + + + + Show/hide a row by checking/changing the property HiddenByFilters + + row index the that need to show or hide + Filter applied column + TRUE - show row, FALSE - hide row. + + + + Shows or Hides the specified range. + + Range specifies the particular range to show / hide. + True - Row is visible; False - hidden. + + + + Shows or Hides the collection of range. + + Ranges specifies the range collection. + True - Row is visible; false - hidden. + + + + Shows or Hides an array of range. + + Ranges specifies the range array. + True - Row is visible; False - hidden. + + + + Returns True if the specified column is visible to end user. + + One-based column index. + True if column is visible; otherwise, False. + + + + Returns True if the specified row is visible to end user. + + One-based row index. + True if row is visible; otherwise, False. + + + + Inserts an empty row in the specified row index. + + Index at which new row should be inserted. + + + + Inserts an empty rows in the specified row index based on row count. + + Index at which new row should be inserted. + Number of rows to insert. + + + + Inserts an empty row in the specified row index with specified based on row count. + + Index at which new row should be inserted. + Number of rows to insert. + Insert options. + + + + Updates the calcualted formula for newly created row inside a table. + + Index at which new row in which calculated formula is to be updated + Parent table + + + + Updates the new calculated column formula with respect to newly created table name + + Calculated formula which has to be updated + Name for updating in calculated formula + Updated calculated column formula + + + + Updates rowoutline level for newly inserted row if the included range is grouped. + + Index at which new row should be inserted. + Number of rows to insert + + + + Inserts an empty column for the specified column index. + + Index at which new column should be inserted. + + + + Inserts an empty column in the specified column index based on column count. + + Index at which new column should be inserted. + Number of columns to insert. + + + + Inserts an empty column with default formatting with specified Inserting options. + + Index at which new column should be inserted + Number of columns to insert. + Insert options. + + + + Updates rowoutline level for newly inserted column if its included range is grouped. + + Index at which new column should be inserted. + Number of columns to insert. + + + + Moves DataValidation of the succeeding cells + + Row / Column to start with + Toggles between insertion of Row or Column + + + + Update data validation object based on insert options. + + Index where row or column was (were) inserted. + Number of inserted rows/columns. + Insert options. + Indicates whether rows were inserted. + + + + Removes specified row (with formula update). + + One-based row index to remove + + + + Removes the specified number of rows from the given index(with formula update). + + One-based row index to remove + Number of rows to delete. + + + + Copies row. + + Zero-based destination row index. + Zero-based source row index. + + + + Removes the specified column. + + One-based column index. + + + + Removes the specified number of columns from the given index. + + One-based column index. + Number of columns to remove. + + + + range of the conditional formats which are applied out of used range is obtained. + + first row of the sheet which contains CF if applied,else the actual usedrange first row + first Column of the sheet which contains CF if applied,else the actual usedrange first column + last row of the sheet which contains CF if applied,else the actual usedrange last row + last column of the sheet which contains CF if applied,else the actual usedrange last column + + + + Returns the width of the specified column in pixels. + + One-based column index. + Width in pixels of the specified column. + + + + Returns width of the specified column in pixels. + + One-based index of the column. + Width in pixels of the specified column. + Otherwise it returns the StandardHeight + + + + Returns width of the specified column in pixels in double value. + + + + + + + + Returns width of the specified hidden column in pixels. + + One-based index of the column. + Width of the specified hidden column in pixels. + + + + Returns height of the specified hidden row in pixels. + + One-based index of the row. + Height of the specified hidden row in pixels. + + + + Returns the height of the specified row. + + Otherwise it gets the StandardHeight + One-based row index. + + Returns height of the specified row. + Otherwise returns StandardHeight. + + + + + Returns the height of the specified row in pixels. + + Otherwise it gets the StandardHeight in pixels + One-based row index. + + Returns height of the specified row in pixels. + Otherwise returns StandardHeight. + + + + + Returns height of the specified row in pixels in Double value. + + + + + + + Return the total column width in pixels from the given column limit + + First column of the sheet + Last column of the sheet + the total column width in pixels + + + + Return the total row height in pixels from the given row limit + + First row of the sheet + Last row of the sheet + the total row height in pixels + + + + Imports an array of objects into a worksheet with specified alignment. + + Array to import. + + Row of the first cell where array should be imported. + + + Column of the first cell where array should be imported. + + + TRUE if array should be imported vertically; FALSE - horizontally. + + Number of imported elements. + + + + Checks the string object is a formula. + + The value. + + + + + Imports an array of objects into a worksheet with specified alignment. + + Array of object. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of string values into a worksheet. + + Array of string value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of integer values into a worksheet. + + Array of int value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of double values into a worksheet. + + Array of double value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of DateTime values into a worksheet. + + Array of datetime value. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + True if array should be imported vertically; False - horizontally. + Number of imported elements. + + + + Imports an array of objects into a worksheet. + + Array of object. + Row of the first cell where array should be imported. + Column of the first cell where array should be imported. + Number of imported rows. + + + + Imports data from a DataTable into a worksheet with specified row and column. + + DataTable with desired data. + TRUE if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into a worksheet with the specified row and column along with save option. + + Data Table with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data table must be serialized directly on save. + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into a worksheet with the specified row and column along with save option. + + Data Table with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data table must be serialized directly on save. + TRUE if column names must be imported. + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into a worksheet with specified row and column along with the preserve type. + + DataTable with desired data. + True if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into a worksheet with the specified range. + + DataTable with desired data. + True if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into a worksheet with specified range along with the specified preserve type. + + DataTable with desired data. + True if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Maximum number of rows to import. + Maximum number of columns to import. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into worksheet + + DataTable with desired data + TRUE if column names must also be imported + + First row from where the data should be imported. + + + First column from where the data should be imported. + + Maximum number of rows to import + Maximum number of columns to import + Array of columns to import. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Imports data from a DataTable into worksheet + + DataTable with desired data + TRUE if column names must also be imported + + First row from where the data should be imported. + + + First column from where the data should be imported. + + Maximum number of rows to import + Maximum number of columns to import + Array of columns to import. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Indicates whether to serialize the data table directly. + Number of imported rows + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Replace the string data type value into SST index. + + DataTable with desired data. + Represents shared string collection. + Date time style index. + + + + Imports data from DataTable into the specified NamedRange of current worksheet. + + Data Table with desired data. + Represents named range. + TRUE if column names must be imported. + Number of imported rows. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Imports data from DataTable into the specified NamedRange of current worksheet with row and column offset. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Data Table with desired data. + Represents named range. + TRUE if column names must also be imported. + Represents row offset into named range to import. + Represents column offset into named range to import. + Number of imported rows. + + + + Imports data from DataTable into the specified NamedRange of current worksheet with row and column offset. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + DataTable with desired data. + Represents named range. + TRUE if column names must be imported. + Represents row offset into named range to import. + Represents column offset into named range to import. + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + + + + Imports data from DataTable into the specified NamedRange of current worksheet with row and column offset. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + DataTable with desired data. + Represents named range. + TRUE if column names must be imported. + Represents row offset into named range to import. + Represents column offset into named range to import. + Maximum number of rows to import. + Maximum number of columns to import. + Indicates whether to preserve column types. + Number of imported rows. + + + + Imports data from a DataColumn into a worksheet. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + DataColumn with desired data. + TRUE if column name must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Number of imported rows. + + + + Imports data from a DataColumn into a worksheet. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + DataColumn with desired data. + TRUE if column name must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + + + + Imports data from DataReader into worksheet from the specified row and column. + + The or object which contains data. + TRUE if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Imports data from DataReader into worksheet from the specified row and column along with save option. + + The or object which contains data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if data must be serialized directly on save. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Imports data from DataReader into worksheet from the specified row and column along with the preserve type. + + The or object which contains data. + TRUE if column names must be imported. + First row from where the data should be imported. + First column from where the data should be imported. + + Indicates whether XlsIO should preserve column types from DataReader. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Imports data from DataReader into the specified NamedRange of current worksheet. + + The or object which contains data. + Represents named range. + TRUE if column names must be imported. + Number of imported rows. + + This method is not supported in WinRT, Windows Phone, Portable, Universal and Silverlight platforms. + + + + + Imports array of data columns. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Data columns to import. + Indicates whether to import field names. + Index to the first row. + Index to the first column. + Number of imported rows. + + + + Imports array of data columns. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Data columns to import. + Indicates whether to import field names. + Index to the first row. + Index to the first column. + + Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + Number of imported rows. + + + + Imports data from MS DataGrid into worksheet. + + DataGrid with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + Sets font style of Winforms grid. + + Represents font style of the grid. + Represents font style of the cell. + + + + Finds the data source type and import the data into worksheet. + + Data source to import. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + Dataset contains more then one data source, Which data source is need to import in worksheet. + Retrun number of imported rows + + + + Sets font style of web grid. + + Represents font style of the grid. + System grid font style + + + + Imports data from MS DataGrid (Web) into worksheet. + + DataGrid with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + Sets font style of web grid. + + Current cell Range of worksheet + Represents font style of the grid. + DataGrid + TRUE if header must be imported. FALSE otherwise. + + + + Sets border style of web grid. + + Represents border style of the grid cell. + Represents border color of the grid cell. + current worksheet of migrent range + + + + Imports data from MS GridView into worksheet. + + GridView with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + Imports data from MS DataGridView into worksheet. + + DataGridView with datasource. + Represents the first row of the worksheet to import. + Represents the first column of the worksheet to import. + TRUE if header must be imported. FALSE otherwise. + TRUE if row style must be imported. FALSE otherwise. + + + + + Imports data from a DataView into a worksheet with the specified range and preserve type. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + DataView with desired data. + TRUE if column names must be imported. + + Row of the first cell where DataView should be imported. + + + Column of the first cell where DataView should be imported. + + Indicates whether to preserve column types. + Number of imported rows. + + + + Imports data from a DataView into a worksheet with specified row, column and preserve type. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Data View with desired data. + TRUE if column names must be imported. + + Row of the first cell where DataView should be imported. + + + Column of the first cell where DataView should be imported. + + Maximum number of rows to import. + Maximum number of columns to import. + Number of imported rows. + + + + Imports data from a DataView into a worksheet with specified range and preserve type. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + DataView with desired data. + TRUE if column names must also be imported. + + Row of the first cell where DataView should be imported. + + + Column of the first cell where DataView should be imported. + + Maximum number of rows to import. + Maximum number of columns to import. + Indicates whether XlsIO should try to preserve types in Data Table, i.e. if it is set to False (default) and in Data Table we have in + string column value that contains only numbers, it would be converted to number. + Number of imported rows. + + + + Exports worksheet data in the specified row and column into a DataTable. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Row of the first cell from where DataTable should be exported. + Column of the first cell from where DataTable should be exported. + Maximum number of rows to export. + Maximum number of columns to export. + Export options. + DataTable with worksheet data. + + + + Exports worksheet data into a DataTable. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + Row of the first cell from where DataTable should be exported + + + Column of the first cell from where DataTable should be exported + + Maximum number of rows to export + Maximum number of columns to export + Export options. + Data Table with worksheet data + + + + Check the next cell exportType and formatType + + Row of the cell from where DataTable should be exported + Column of the first cell from where DataTable should be exported + first detect column type + Maximum number of rows to export + Export options + return exportType + + + + Exports worksheet data into a DataTable with the specified data range based on the exporting options. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Range to export. + Export options. + Data Table with worksheet data. + + + + Exports worksheet data into a DataTable with the specified data range based on the export options. + + When exportDataOption is null or the value of the ColumnTypeDeductionRow property in a row is less than or equal to 0, then By default the second row from the export range is used for detecting the column types. And the default value will be exported in the data table if the cell value does not match with the column type. + Range to export. + Export options. + Export Data options + Data Table with worksheet Data. + + + + Exports worksheet data in the specified row and column into a DataTable based on the export options. + + When exportDataOption is null or the value of the ColumnTypeDeductionRow property in a row is less than or equal to 0, then By default the second row from the export range is used for detecting the column types. And the default value will be exported in the data table if the cell value does not match with the column type. + Row of the first cell from where DataTable should be exported. + Column of the first cell from where DataTable should be exported. + Maximum number of rows to export. + Maximum number of columns to export. + Export options. + Export Data options. + Data Table with worksheet Data. + + + + Exports worksheet data into a Data Table. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + Range to export. + Export options. + Data Table with worksheet data. + + + + + + Get all the property names from worksheet. + + Type of the class to be exported. + Row of the first cell should be exported. + Column of the first cell should be exported. + LastColumn is used to find the upto lastColumn of data to export. + Collection of column index and names. + Migrant range. + Parent object name. + + + + Get the property value from worksheet. + + Type of the class to be exported. + Current row to be exported. + Current row to be exported. + Collection of column index and names. + Migrant range + Parent object name. + The mismatched CLR Object index. + Inner columns count of nested object. + Property value + + + + Preparing ExportEvent args for TypeMisatchOnExport event. + + Typecode of the current range. + The current range. + The current property. + Celltype of the current range. + The mismatched CLR Object index + Returns the new value of the given property type + + + + Imports data from class objects into a worksheet with specified row and column. + + IEnumerable object with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if class properties names must be imported. + Number of imported rows. + + + + Imports data from class objects into a worksheet with specified row and column along with import data options. + + IEnumerable object with desired data. + Import data options. + Number of imported rows. + + + + Imports data from class objects into a worksheet with specified row and column along with import data options and group options. + + IEnumerable object with desired data. + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if class properties names must be imported. + TRUE if parent class properties names must be imported. + Import nested data options for when importing nested collection data. + Grouping options for when importing nested collection data. + The group will be expanded before this level and collapse will be applied from this level. + Indicates whether XlsIO should preserve column types from Data. + Number of imported rows. + + + + Add headers to specified row and column for importing data from class objects into a worksheet. + + First row from where the data should be imported. + First column from where the data should be imported. + TRUE if the object is dynamic object. + Dynamic object property names collection + Dynamic object call site collection + Object property types collection. + Object property informations collection. + The object to be imported to worksheet. + TRUE if parent class properties names must be imported. + Parent object name. + Number of columns are inserted. + + + + Insert object members values to specified row and column when importing data from class objects into a worksheet. + + First row from where the data should be imported. + First column from where the data should be imported. + Enumerator value of the object. + Object property informations collection. + Object property types collection. + TRUE if the object is dynamic object. + Dynamic object call site collection. + Dynamic object property names collection. + Null property indexes collection. + Total number of rows are inserted. + Import data options. + Grouping options for when importing nested collection data. + The current object level in nested object. + The group will be expanded before this level and collapse will be applied from this level. + Indicates whether XlsIO should preserve column types from Data. + Number of rows are inserted for current object. + Number of columns are inserted. + + + + Get the property value and name from the object + + Type of the element + Get the name from the object + Get the property valur from the object + Number of count + Object to get the property value + property value from the object + + + + Get the type code from the object + + Type to get the type code from the object + Type code of the object + + + + Set Repeat LayoutOptions Range values based on the cell type. + + First Row + First Column + Last Row + Last Column + + + + Get the property values from the object. + + object to get property value from. + TRUE if the object is dynamic object. + PropertyInfo to get value from. + Dynamic object call site collection. + Dynamic object property names collection. + Property value. + + + + Check whether the object is dynamic object. + + Object to be checked. + Dynamic object properties collection. + True if the object is dynamic object, Otherwise false. + + + + Set proper property types based on their values. + + Object property informations collection. + Object property types collection. + + + + Imports Data with type preservation, but without checking arguments for correctness. + + Property type code + Property value + Migrant range to import + + + + Imports Data without checking arguments for correctness. + + Property type code + Property value + Migrant range to import + + + + Get the property types and values from the object. + + Property value to be get. + Enumerator value of the object. + Object to get PropertyInfo from. + TRUE if the object is dynamic object. + Object property types collection. + Object property informations collection. + Dynamic object properties collection. + Dynamic object property names collection. + Dynamic object call site collection. + Null property indexes collection. + True if the property is IEnumerable collection, Otherwise false. + + + + Get the property types and values from the object. + + Property value to be get. + TRUE if the object is dynamic object. + Object property types collection. + Object property informations collection. + Dynamic object properties collection. + Dynamic object property names collection. + Dynamic object call site collection. + Null property indexes collection. + True if the current object contains properties, Otherwise false. + + + + Get the property types and values from the dynamic object. + + Enumerator value of the dynamic object. + Object to get PropertyInfo from. + Dynamic object properties collection. + Dynamic object property names collection. + Dynamic object call site collection. + Null property indexes collection. + Property types collction of the dynamic object + + + + Get total children count from the object. + + input object value + collection count to be extract. + Returns true if the collection count is greater than 0; otherwise false + + + + Get the property information from expando objects + + input expando objects + the list of type code from expando object properties + + + + Get the properties list from the object type. + + Type + Properties list + List of Properties + + + + Removes panes from a worksheet. + + + + + Intersects two ranges. + + First range to intersect. + Second range to intersect. + Intersection of two ranges or NULL if there is no range intersection. + + When range1 or range2 is NULL. + + + + + Merges two ranges. + + First range to merge. + Second range to merge. + Merged ranges or NULL if is not able to merge ranges. + + When range1 or range2 is NULL. + + + + + Find a range with the given value. + + Value to find. + Range array that contains the given value. + + + + collect the same value ranges. + + + + + + + + Replaces string with the specified another string value. + + The string to be replaced. + The string to replace all occurrences of oldValue. + + + + Replaces string with the specified another string value based on the . + + The string to be replaced. + The string to replace all occurrences of oldValue. + Specifies the find options for the oldValue. + + + + Replaces string with the specified DateTime value. + + The string to be replaced. + The DateTime to replace all occurrences of oldValue. + + + + Replaces string with the specified double value. + + The string to be replaced. + The double value to replace all occurrences of oldValue. + + + + Replaces specified string with the specified array of string values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces specified string with the specified array of int values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces specified string with the specified array of double values. + + The string to be replaced. + Array of new values. + + Indicates whether array should be inserted vertically. + + + + + Replaces string with the specified datatable value. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Replaces string with the specified datacolumn value. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + The string to be replaced. + Data table with new data. + Indicates whether field name must be shown. + + + + Removes worksheet from parent worksheet collection. + + + + + Moves worksheet to the specified index. + + New index of the worksheet. + + + + + + + + + + Sets column width for the specified column. + + One-based column index. + Width to set. + + + + Sets column width in pixels for the specified column. + + One-based column index. + Width in pixels to set. + + + + Sets column width in pixels for the specified column. + + One-based column index. + Width in pixels to set. + Bool value is find autofit or not ,if true autofit or not + + + + Sets column width for the specified column. + + One-based column index. + Width to set. + Bool value is find autofit or not ,if true autofit or not + + + + Sets column width in pixels to the given number of columns from the specified column index. + + Start Column index + No of Column to be set width + Value in pixel to set + + + + Sets row height for the specified row. + + One-based row index. + Height to set. + + + + Sets row height in pixels for the specified row. + + One-based row index. + Value in pixels to set. + + + + Sets row height in pixels to the given number of rows from the specified row index. + + Starting row index. + No of Row to be set width. + Value in pixels to set. + + + + Returns the first occurrence of the specified string value with the specified . + + Value to search. + Type of value to search. + Returns the first cell with a specified string value, or null if value was not found. + + + + Returns the first occurrence that starts with the specified string value. + + Value to search. + Type of value to search. + Returns the first occurrence that starts with the specified string value, or null if value was not found. + + + + Returns the first occurrence that starts with the specified string value which ignores the case. + + Value to search. + Type of value to search. + true to ignore case wen comparing this string to the value;otherwise,false + Returns the first occurrence that starts with the specified string value, or null if value was not found. + + + + Returns the first occurrence that ends with the specified string value. + + Value to search. + Type of value to search. + Returns the first occurrence that ends with the specified string value, or null if value was not found. + + + + Returns the first occurrence that ends with the specified string value which ignores the case. + + Value to search. + Type of value to search. + True to ignore case when comparing this string to the value; otherwise, False. + Returns the first occurrence that ends with the specified string value, or null if value was not found. + + + + Returns the first occurrence of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search the value. + Returns the first cell with a specified string value and specified find options , or null if value was not found. + + + + Returns the first occurrence of the specified double value with the specified . + + Value to search. + Type of value to search. + Returns the first cell with a specified double value, or null if value was not found. + + + + Returns the first occurrence of the specified bool value. + + Value to search. + Returns the first cell with a specified bool value, or null if value was not found. + + + + Returns the first occurrence of the specified DateTime value. + + Value to search. + Returns the first cell with a specified DateTime value, or null if value was not found. + + + + Returns the first occurrence of the specified TimeSpan value. + + Value to search. + Returns the first cell with a specified TimeSpan value, or null if value was not found. + + + + Returns the cells of the specified string value with the specified . + + Value to search. + Type of value to search. + Returns the cells with a specified string value, or null if value was not found. + + + + Returns the cells of the specified string value with the specified and . + + Value to search. + Type of value to search. + Way to search. + + Returns the cells with a specified string value and specified find options , or null if value was not found. + + + + + Returns the cells of the specified double value with the specified . + + Value to search. + Type of value to search. + All found cells, or Null if value was not found. + + + + Returns the cells of the specified bool value. + + Value to search. + Returns the cells with a specified bool value, or null if value was not found. + + + + Returns the cells of the specified DateTime value. + + Value to search. + Returns the cells with a specified DateTime value, or null if value was not found. + + + + Returns the cells of the specified TimeSpan value. + + Value to search. + Returns the cells with a specified TimeSpan value, or null if value was not found. + + + + Saves worksheet with specified file name using separator. Used only for CSV files. + + File to save. + Denotes separator for the CSV file types. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet using separator with specified file name and encoding. Used only for CSV files. + + File to save. + Denotes separator for the CSV file types. + Encoding to use. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet as stream using separator. Used only for CSV files. + + Stream to save. + Denotes separator for the CSV file types. + + + + Save tabsheet using separator. + + Stream to save. + Denotes separator for the CSV file types. + Encoding to use. + + + + Saves worksheet as stream using separator with specified encoding. Used only for CSV files. + + Stream to save. + Denotes separator for the CSV file types. + Encoding to use. + + + + Saves worksheet with specified filename. + + File to save. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet as stream. + + Stream to save. + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet with specified filename and . + + File to save. + Save Options + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Saves worksheet as stream with the specified . + + Stream to save. + Save Options + + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + + Sets the default column style for the specified column. + + One-based column index. + Default style. + + + + Sets the default column style for the specified starting and ending column. + + Starting column index. + Ending column index. + Default style. + + + + Sets the default row style for the specified row. + + One-based row index. + Default style. + + + + Sets the default row style for the specified starting and ending row. + + Starting row index. + Ending row index. + Default style. + + + + Sets by row index default style for cell. + + Column index. + Default style index. + + + + Returns the default column style for the specified column. + + One-based column index. + Default column style for the specified column or null if style wasn't set. + + + + Returns default row style for the specified row. + + One-based row index. + Default row style for the specified row or null if style wasn't set. + + + + Frees range object. + + Range to remove from internal cache. + + + + Frees range object for the specified row and column. + + One-based row index of the range object to remove from internal cache. + One-based column index of the range object to remove from internal cache. + + + + Converts the specified range into image. Default image type is Bitmap. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Converts the specified range into image with the specified type. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Type of the image to create. + Stream to be converted to an image. It is ignored if null. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Converts the specified range into Metafile. + + One-based index of the first row to convert. + One-based index of the first column to convert. + One-based index of the last row to convert. + One-based index of the last column to convert. + Enhanced MetaFile, to render the image in meta file format. + Stream to be converted to an image. It is ignored if null. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Converts the specified range into image along with Metafile. + + One-based index of the first row. + One-based index of the first column. + One-based index of the last row. + One-based index of the last column. + Type of the image to create. + Stream to be converted to an image. It is ignored if null. + Enhanced MetaFile, to render the image in meta file format. + Converted Image for the specified range. + Subscript/Superscript,RTF,Shrink to fit,Shapes (except TextBox shape and Image),Charts and + Chart Worksheet and Complex conditional formatting features are not supported in Worksheet + to image conversion. Gradient fill is partially supported. + This method is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + + + Import XML document with specified cell position to the worksheet using file path. + + FilePath of the speciifed xml file. + Row where the data to be imported. + Column where the data to be imported. + + + + Imports XML data into a worksheet at the specified row and column from a given XML data stream. + + Stream data of the xml file. + Row where the data to be imported. + Column where the data to be imported. + The stream should be passed as file stream to bind the xml + + + + Imports data table without checking arguments for correctness. + + Data table to import. + Index of the first row to import. + Index of the first column to import. + Maximum number of rows to import. + Maximum number of columns to import. + Array of columns to import. + + + + Imports data table with type preservation, but without checking arguments for correctness. + + Data table to import. + Index of the first row to import. + Index of the first column to import. + Maximum number of rows to import. + Maximum number of columns to import. + Array of columns to import. + + + + Imports DataView without checking arguments for correctness. + + DataView to import. + Index of the first row to import. + Index of the first column to import. + Maximum number of rows to import. + Maximum number of columns to import. + + + + Imports DataView with type preservation, but without checking arguments for correctness. + + DataView to import. + Index of the first row to import. + Index of the first column to import. + Maximum number of rows to import. + Maximum number of columns to import. + + + + Converts object value into RangeProperty enum. + + Value to convert. + Column index in DataRowView. + Dictionary to cache results. + Corresponding RangeProperty. + + + + Return the type codes of a properties from the customized dynamic objects + + overrided dynamic object + list of property names + List of call site for properties + index of null values, to identify the type later + the typecodes for each properties + + + + Check whether the string is link address and add the hyperlink for the range. + + input string value need to be checked. + Range the hyperlink to add. + Returns true if the hyperlink is added. + + + + Get the hyperlink type if the string is detected as hyperlink. + + input string value need to be checked. + Returns true if the string value is matched for regex values. + + + + Saves worksheet into specified OffsetArrayList. + + + OffsetArrayList that will receive all of the worksheet's records. + + + When records is null + + + + + Serialize error indicators. + + Represents record storage. + + + + Serializes worksheet if it wasn't parsed. + + Record list to serialize into. + + + + Saves worksheet into specified OffsetArrayList in Clipboard format + + + OffsetArrayList that will receive all worksheet's records + + + When records is null + + + + + Saves worksheet into specified OffsetArrayList in Clipboard format + + OffsetArrayList that will receive all worksheet's records + It's serilize the clipboard, othewise false. + clipboard range + + + + Saves ColumnInfoRecords into specified OffsetArrayList + + + OffsetArrayList that will receive all ColumnInfoRecords + + Number of ColumnInfoRecords + + When records is null + + + + + Saves specified ColumnInfoRecords into specified OffsetArrayList + + + OffsetArrayList that will receive all ColumnInfoRecords + + Index of last column + + When records or values is null + + + + + Serializes conditional formats. + + OffsetArrayList that will receive format records. + + + + Serializes data validation table. + + OffsetArrayList that will receive data validation records. + + + + Compares two DVRecords ignoring ranges information. + + First DVRecord to compare. + Second DVRecord to compare. + TRUE if they are equal; FALSE otherwise. + + + + Merges DVRecords. + + Destination DVRecord. + DVRecord to add regions from. + + + + Saves all shapes. + + List to save records into. + + + + Saves worksheet into specified OffsetArrayList. + + + OffsetArrayList that will receive all of the worksheet's records. + + Indicates whether we need to serialize all records to be able to copy them into clipboard. + Clipboard range + + When records is null + + + + + Raises ColumnWidthChanged event. + + Zero-based column index. + New width value. + + + + Raises RowHeightChanged event. + + Zero-based row index. + New height. + + + + This method is called when normal font changes. + + Event sender. + Event arguments. + + + + Sets formula value in the specified cell. + + One-based row index of the cell to set value. + One-based column index of the cell to set value. + Value to set. + + + + Tries to convert string into datetime value. + + String to parse. + Converted value. + True if conversion succeeded, false otherwise. + + + + Tries to convert string into datetime value. + + String to parse. + Converted value. + True if conversion succeeded, false otherwise. + + + + Returns range from the formula string + + formula string. + Range referred by formula. + + + + Sets value for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + + + Sets number for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets boolean value for the specified cell. + + One-based row index. + One-based column index. + Value to set. + + + + Sets text for the specified cell. + + One-based row index. + One-based column index. + Text to set. + + + + Sets formula for the specified cell. + + One-based row index. + One-based column index. + Formula to set. + + + + Sets formula in the specified cell. + + One-based row index of the cell to set value. + One-based column index of the cell to set value. + Formula to set. + Indicates is formula in R1C1 notation. + + + + Sets error for the specified cell. + + One-based row index. + One-based column index. + Error to set. + + + + Blanks the specified cell. + + One-based row index. + One-based column index. + + + + Sets blank record into cell with specified row and column. + + Row index. + Column index. + + + + Sets number record into cell with specified row and column. + + One-based row index. + One-based column index. + Value to set. + Represents xf index. + + + + Sets rk record into cell with specified row and column. + + One-based row index. + One-based column index. + Value to be set. + + + + Sets formula value. + + One based row index. + One based column. + Formula value to set. + Indicates whether range is represented as R1C1 notation. + + + + Sets formula number value for the specified cell. + + One-based row index. + One-based column index. + Represents formula number value. + + + + Sets formula error value for the specified cell. + + One-based row index. + One-based column index. + Represents formula error value. + + + + Sets formula bool value for the specified cell. + + One-based row index. + One-based column index. + Represents formula bool value. + + + + Sets formula string value for the specified cell. + + One-based row index. + One-based column index. + Represents formula string value. + + + + Sets error value. + + Row index. + Column index. + Value representing error name. + Indicates whether to set text. + + + + Sets string to a range. + + Row index + Column index + String value to set. + + + + Removes string from a cell. + + Row index. + Column index. + Index to extended format + + + + Returns index of an extended format for specified cell. + + One-based row index. + One-based column index. + Index to the extended format. + + + + Returns index of an extended format for specified Row. + + One-based row index. + Index to the extended format. + + + + Returns index of an extended format for specified Column. + + first column index. + last column index. + Index to the extended format. + + + + Tries to create Rk record from double value. + + Row index. + Column index. + Double that should be converted to RkRecord. + Created RkRecord if succeeded, null otherwise. + + + + Tries to create Rk record from double value. + + Row index. + Column index. + Double that should be converted to RkRecord. + Represents xf index. + Created RkRecord if succeeded, null otherwise. + + + + Creates record. + + Record to create. + One-based row index. + One-based column index. + Created biff record. + + + + Creates record. + + Record to create. + One-based row index. + One-based column index. + Represents xf index. + Created biff record. + + + + Sets formula number. Use for setting FormulaError, FormulaBoolean, FormulaNumber values. + + One based row index. + One based column index. + Represents value for set. + + + + Sets formula value. Use for setting FormulaError, FormulaBoolean, FormulaNumber, FormulaString values. + + One based row index. + One based column index. + Represents value for set. + Represents string record as formula string value. Can be null. + + + + Returns formula value from specified row and column. + + One-based row index. + One-based column index. + Indicates whether R1C1 notation should be used. + Returns formula string. + + + + Returns formula corresponding to the cell. + + One-based row index of the cell to get value from. + One-based column index of the cell to get value from. + Indicates whether R1C1 notation should be used. + Formula contained by the cell. + + + + Returns formula corresponding to the cell. + + One-based row index of the cell to get value from. + One-based column index of the cell to get value from. + Indicates whether R1C1 notation should be used. + Formula utilities to use for parsing. + Formula contained by the cell. + + + + Returns formula corresponding to the cell. + + Zero-based row index of the cell to get value from. + Zero-based column index of the cell to get value from. + Array with formula tokens. + Indicates whether R1C1 notation should be used. + Formula utilities to use for parsing. + Formula contained by the cell. + + + + Returns formula array. + + Represents formula. + Formula array. + + + + Returns string value corresponding to the cell. + + Cell index to get value from. + String contained by the cell. + + + + Returns string value from the specified row and column. + + One-based row index. + One-based column index. + String contained by the cell. + + + + Returns formula string value from the specified row and column. + + One-based row index. + One-based column index. + String contained by the cell. + + + + Returns number value from the specified row and column. + + One-based row index. + One-based column index. + Number contained by the cell. + + + + Returns formula number value from the specified row and column. + + One-based row index. + One-based column index. + Number contained by the cell. + + + + Returns error value from the specified row and column. + + One-based row index. + One-based column index. + Returns error value or null. + + + + Gets the error value to string. + + The value. + Row index. + Returns error string or null. + + + + Returns formula error value from the specified row and column. + + One-based row index. + One-based column index. + Returns error value or null. + + + + Returns bool value from the specified row and column. + + One-based row index. + One-based column index. + Returns found bool value. If cannot found returns false. + + + + Returns formula bool value from the specified row and column. + + One-based row index. + One-based column index. + True if bool value is found. otherwise False. + + + + Indicates is has array formula. + + Represents row index. + Represents column index. + Indicates is contain array formula record. + + + + Indicates whether tokens array contains array formula reference. + + Tokens to check. + True if it refers to + + + + Gets cell type from current column. + + Indicates row. + Indicates column. + Indicates is need to indentify formula sub type. + Returns cell type. + + + + Indicates is formula in cell is formula to external workbook. + + Represents row index. + Represents column index. + If contain extern formula returns true; otherwise false. + + + + Get the idex of the first row in UsedRange + + index of first row + + + + get the index of the last row in UsedRange + + index of last row + + + + This API supports the .NET Framework infrastructure and is not intended to be used directly from your code + + + + + + Gets the first column index. + + Index of first column + + + + Gets the last column index / column count. + + Index of last column + + + + This API supports the .NET Framework infrastructure and is not intended to be used directly from your code + + + + + + Builds the merged regions. + + + + + + Calculate all the formulas in worksheet. + + The following code illustrates how to calculate all the formulas in the worksheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Formulas.xlsx"); + IWorksheet worksheet = workbook.Worksheets[0]; + + // Calculate all the formulas in the worksheet. + worksheet.Calculate(); + + workbook.SaveAs("Calculation.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports HTML table of a HTML file into worksheet from the specified row and column. + + Specifies the HTML file. + Specifies the starting row index. + Specifies the starting column index. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + sheet.ImportHtmlTable("HTMLtable.html", 1, 1); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports HTML table of a file stream into worksheet from the specified row and column. + + Specifies the HTML filestream. + Specifies the starting row index. + Specifies the starting column index. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + FileStream html = new FileStream("HTMLtable.html", FileMode.Open, FileAccess.ReadWrite); + + sheet.ImportHtmlTable(html, 1, 1); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports tables from HTML document into Excel worksheet from the specified row and column with HTML import options. + + Specifies the HTML file. + Specifies the starting row index. + Specifies the starting column index. + Specifies the html import options. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + + sheet.ImportHtmlTable("HTMLtable.html", 1, 1, HtmlImportOptions.DetectFormulas); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Imports HTML table of a file stream into worksheet from the specified row, column and html import options. + + Specifies the HTML filestream. + Specifies the starting row index. + Specifies the starting column index. + Specifies the html import options. + + The following code illustrates how to convert HTML table to Excel. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Create(1); + + IWorksheet sheet = workbook.Worksheets[0]; + FileStream html = new FileStream("HTMLtable.html", FileMode.Open, FileAccess.ReadWrite); + + sheet.ImportHtmlTable(html, 1, 1, HtmlImportOptions.DetectFormulas); + + workbook.SaveAs("HTMLToExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + Event raised when an unknown function is encountered. + + + + + Occurs when the value of a cell changes. + + + + + Event to choose an action while exporting data from Excel to data table. + + + + + Provides access to the collection of merged region identifiers. + Initializes the collection if it has not been created yet. + + + + + Gets or sets the a object associated with implementation. + + + + + Indicates the shapes can be copied while sorting + + + + + Indicates whether the conditional format is copied or not. + + + + + Gets a value indicating whether this instance has sheet calculation. + + + true if this instance has sheet calculation; otherwise, false. + + + + + Gets and set the Addcopy value of the worksheet + + + true if the sheet is copied using AddCopy method; otherwise, false. + + + + + Gets a value indicating whether this instance has Alernate Content. + + + true if this instance has sheet AlernateContent; otherwise, false. + + + + + An event raised on the IWorksheet whenever a value changes. + + + + + Slicer Ext stream + + + + + Returns true if the AutoFitPivotTable method is called. Otherwise False. + + + + + Gets the Slicers. + + + + + Get the scenarios collection for the current worksheet. + + + + + Gets the threaded comments collection for a current worksheet. + + The collection. + + + + Represents the slicer caches + + + + + Represents the slicer cache id + + + + + Indicates whether current process is subtotal. + + + + + Indicates whether existing subtotal removed. + + + + + Indicates whether subtotal applied worksheet contains array separated formula. + + + + + The dictionary holds a records objects, representing each cell. + Holds information about used cells only. + Key - cell index. + Value - corresponding BiffRecordRaw. + + + + + Contains inserted rows for subtotal process. + + + + + Rows moved in subtotal process. + + + + + Contains formulas for range + + + + + Stream to preserve the worksheet slicer + + + + + returns true when cell contains hyperlinks + + + + + Default column width mentioned in the attribute + + + + + Read-only. Access to merged cells. + + + + + Read-only. Access to column info records. + + + + + Gets or sets the position of vertical split in the worksheet. + + + Position of the vertical split (px, 0 = No vertical split): + Unfrozen pane: Width of the left pane(s) (in twips = 1/20 of a point) + Frozen pane: Number of visible columns in left pane(s) + + + + + Gets or sets the position of horizontal split in the worksheet. + + + Position of the horizontal split (by, 0 = No horizontal split): + Unfrozen pane: Height of the top pane(s) (in twips = 1/20 of a point) + Frozen pane: Number of visible rows in top pane(s) + + + + + Gets or sets the first visible row index. + + + + + Max_Coloumn width + + + + + Gets or sets the first visible column index. + + + + + Worksheet's print area. + + + + + Gets a value indicating selection count of pane. + + + + + Gets data validation collection. + + + + + Gets the auto filters collection in the worksheet. Read-only. + + + + + Collection of all hyperlinks in the current worksheet. + + + + + Collection of all hyperlinks in the current worksheet. + + + + + Gets or sets the view setting of the worksheet. + + + + + Return default row height in pixel. + + + + + Returns inner names collection. Read-only. + + + + + Returns inner data validation table. Read-only. + + + + + Returns collection of cell records. Read-only. + + + + + Returns a PageSetup object that contains all the page setup settings + for the specified object. Read-only. + + + + + Returns collection with all conditional formats in the worksheet. Read-only. + + + + + Gets pain record or null. Read-only. + + + + + Gets array with selection records or null. Read-only. + + + + + Returns collection of the custom properties. Read-only. + + + + + Indicates whether all created range objects should be cached or not. + + + + + Returns all autofilter records. Read-only. + + + + + Returns all DCon records that were met in the source document. Read-only. + + + + + Returns all Sort records that were met in the source document. Read-only. + + + + + Represents error indicators. + + + + + Returns quoted name of the worksheet. + + + + + Gets or sets excel version. + + + + + Returns object used for records creation/extraction from data provider. Read-only. + + + + + + + + + + Indicates whether IsHidden property is set. + + + + + Indicates whether ZeroHeight property has enabled or not. + + + + + Specifies the number of characters of the maximum digit width of the normal style's font. + + + + + 'True' if rows have a thick bottom border by default. + + + + + 'True' if rows have a thick top border by default. + + + + + Highest number of outline levels for columns in this sheet. + + + + + Highest number of outline level for rows in this sheet. + + + + + Highest number of outline level for rows in this sheet. + + + + + Returns the rows outline level count + + + + + Returns the columns outline level count + + + + + Returns or sets the list of outline wrapper collection + + + + + Gets the boolean value indicating whether the row is inserting in this worksheet. + + + + + Gets the boolean value indicating whether the row is deleting in this worksheet. + + + + + Represents collection of Cell Formulas + + + + + Indicates whether worksheet has merged cells. Read-only. + + + + + Gets collection of all list objects in the worksheet. + + + + + Gets default protection options for the worksheet. + + + + + Returns un protected options + + + + + Gets the inline strings. + + The inline strings. + + + + Preserves the External connection setting in the worksheet. + + + + + Preserves the pivot tables. + + + + + Gets or sets the boolean value to load worksheets on demand + + + + + Return or sets the columns outline levels collection + + + + + Returns the row outline levels collection + + + + + Cell address list which to be merged while importing nested collection. + + + + + Range collection which to be merged while importing nested collection. + + + + + Gets or sets cell range by row and column index. Row and column indexes are one-based. + + One-based row index. + One-based column index. + + + + Get cell Range. Row and column indexes are one-based. Read-only. + + First row index. One-based. + First column index. One-based. + Last row index. One-based. + Last column index. One-based. + + + + Gets cell Range. Read-only. + + + + + Gets cell Range with R1C1Notation flag. Read-only. + + + + + Gets or sets index of the active pane. + + + + + Gets the used cells in the worksheet. Read-only. + + + + + Gets a Range object that represents all the columns in the specified worksheet. Read-only. + + + + + Gets or sets a value that indicates whether page breaks (both automatic and manual) + on the worksheet are displayed. + + + + + Gets a collection of OleObjects in the worksheet. + + This property is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + The OLE objects. + + + + Gets whether the OLE object is present in the worksheet. Read-only. + + This property is supported on Windows Forms, WPF, ASP.NET and ASP.NET MVC platforms only. + + True if this instance is OLE object; otherwise, False. + + + + + Gets the sparkline groups. + + The sparkline groups. + + + + Gets a that represents the horizontal + page breaks in the worksheet. Read-only. + + + + + Gets a hyperlink collections in the worksheet. Read-only. + + + + + True if zero values to be displayed. otherwise, False. + + + + + True if grid lines are visible. otherwise, False. + + + + + True if row and column headers are visible. otherwise, False. + + + + + True if all values in the worksheet are preserved as strings. otherwise, False. + + + + + Gets all the merged ranges in the worksheet. Read-only. + + + + + Gets a Names collection that represents + the worksheet-specific names (names defined with the "WorksheetName!" + prefix) in the worksheet. Read-only. + + + + + Gets a object that contains all the page setup settings + for the specified object. Read-only. + + + + + Gets or sets range indicating first visible row and column. + + + + + Gets a Range object that represents a cell or a range of cells in the worksheet. + + + + + Gets a Range object that represents the rows in the specified worksheet. Read-only. + + + + + Defines whether freezed panes are applied. + + + + + Gets split cell range. + + + + + Gets or sets the standard (default) height of all the rows in the worksheet, + in points. + + Standard Height sets the height for each row if the row contains data. + So To improve performance, set standard height of the worksheet before set value in cells. + + + + + + Gets or sets the standard (default) height option flag. + + + Which defines that standard (default) row height and book default font height do not match. + + + + + Gets or sets the standard (default) width of all the columns in the + worksheet. + + + + + Gets the worksheet type. Read-only ExcelSheetType. + + + + + Gets a Range object that represents the used range on the + specified worksheet. Read-only. + + + + + Gets all not empty or accessed cells. Read-only. + + + WARNING: This property creates Range object for each cell in the worksheet + and creates new array each time user calls to it. It can cause huge memory + usage especially if called frequently. + + + + + Gets a that represents the vertical page + breaks on the sheet. Read-only. + + + + + Indicates whether worksheet is empty. Read-only. + + + + + Gets a collection of custom properties of the worksheet. Read-only. + + + + + Gets instance of migrant range. Read-only. + + The IMigrantRange interface can also be used to access a single cell + or group of cells and manipulate it. You can prefer IMigrantRange instead of IRange + while writing large amount of data which is an optimal way. + Row and Column index can be changed by using method. + + + + + Gets or sets whether used range should include cells with formatting. + + + There are two different algorithms to create UsedRange object: + 1) Default. This property = true. The cell is included into UsedRange, + even data is empty (maybe some formatting + changed, maynot be - cell was accessed and record was created). + 2) This property = false. In this case XlsIO tries to remove empty rows and + columns from all sides to make UsedRange smaller. + + + + + Indicates whether to include CFRange in Used range. + + + + + Gets a collection of pivot tables in the worksheet. Read-only. + + + + + Retruns internal pivot table collection. Read-only. + + + + + Gets a collection of list objects in the worksheet. Read-only. + + + + + Indicates is current sheet is protected. + + + + + Returns ImportDTHelper objects. + + + + + Indicates whether it is importing. + + + + + + Gets the DataSorter. + + The DataSorter. + The following code illustrates how to get the DataSorter from the sheet. + + ExcelEngine excelEngine = new ExcelEngine(); + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Open("Sorting.xlsx"); + + //Create DataSorter for worksheet. + IDataSort sheetSort = workbook.Worksheets[0].DataSorter; + + //Adding Sort range for worksheet + sheetSort.SortRange = workbook.Worksheets[0].UsedRange; + + //Adding Sorting fields for DataSorter. + sheetSort.SortFields.Add(1, SortOn.Values, OrderBy.Ascending); + + //Perform Sorting for worksheet range. + sheetSort.Sort(); + + workbook.SaveAs("SortedExcel.xlsx"); + workbook.Close(); + excelEngine.Dispose(); + + + + + + + Start index for conditional formatting records. + + + + + Gets or sets the default worksheet extended format index. + + + + + Denotes if the document has BaseColWidth property alone. + + + + + This event is raised after column width changed. + + + + + This event is raised after column height changed. + + + + + Gets top left cell of the worksheet. + + + + + + Returns if contains protection + + + + + Event delegate to export data from Excel to data table with the action mentioned. + + + + + Defines which property of IRange should be used. + + + + + Represents range value type. + + + + + Represents Blank type. + + + + + Represents Error type. + + + + + Represents Boolean type. + + + + + Represents Number type. + + + + + Represents Formula type. + + + + + Represents String type. + + + + + Delegate for outline creation. + + + + + This class is used for sorting cell indexes by row. + + + + + Compares two cell indexes by row value + + First cell index to compare + Second cell index to compare + + 0 - if rows are equal; + -1 - when the second row is greater than the first; + 1 - when the first row is greater than the second; + + + + + This class is used for sorting cell indexes by column + + + + + Compares two cell indexes by column value + + First cell index to compare + Second cell index to compare + + 0 - if columns are equal; + -1 - when the second column is greater than the first; + 1 - when the first column is greater than the second; + + + + + This class is used for sorting ranges by row index + + + + + Compares two ranges by row index + + First range to compare + Second range to compare + + 0 - if rows are equal; + -1 - when the second row is greater than the first; + 1 - when the first row is greater than the second; + + + + + This class is used for sorting ranges by column index + + + + + Compares two ranges by column index + + First range to compare + Second range to compare + + 0 - if rows are equal; + -1 - when the second column is greater than the first; + 1 - when the first column is greater than the second; + + + + + + Represents the method that will return array of biff records for MsoDrawing record. + + + + + Event delegate for MissingFunction event. + + The CalcEngine. + The for this event. + + + + The event args for the MissingFunction event which is raised whenever the CalcEngine encounters a function + that is does not know. + + + + + Gets the name of the unknown function. + + + + + Gets the location of the missing function. + + + + + Struct contains X,Y and isParse. + + + + + Merged cells information. + + + + + Reperesents the table span. + + + + + Number of rows. + + + + + Number of columns. + + + + + Reperesents first cell in merged region. + + + + + Reperesents the first cell index. + + + + + Reperesents the table span. + + + + + Number of rows. + + + + + Number of columns. + + + + + Reperesents first cell in merged region. + + + + + Reperesents the first cell index + + + + + Reperesents the table span. + + + + + Represents the default span. + + + + + Represents the row span. + + + + + Represents the column span. + + + + + Summary description for Dxf style implementation. + + + + + Borders collection. + + + + + Fill implementation. + + + + + Font implementation. + + + + + Format implementation. + + + + + Vertical border color. + + + + + Horizontal border color. + + + + + Veritcal Border line style. + + + + + Horizontal border line Style. + + + + + Represent the vertical border format modified or not. + + + + + Represent the Horizontal border format modified or not. + + + + + Indent value. + + + + + Indent options of the Dfx. + + + + + Indent options of the Dfx. + + + + + True indicates shrinking content to fit into cell. + + + + + True indicates that text is wrapped at right border. + + + + + Horizontal alignment options of the Dfx. + + + + + Vertical Alignment options of the Dfx. + + + + + True if cell is locked. + + + + + True if formula is hidden. + + + + + Flag for horizontal and vertical alignment, text wrap, indentation, + orientation, rotation, and text direction. + + + + + Flag for cell protection (cell locked and formula hidden). + + + + + Initializes new instance of the Dxf style. + + + + + Copies all dxf style settings into conditional format. + + Conditional format to copy data into. + + + + Copies all dxf style settings into table style element. + + Table style element object + + + + Copies all dxf style settings into pivot cell format. + + Pivot Cell Format + + + + Copies all dxf style settings into sort field. + + Conditional format to copy data into. + + + + Creates copy of the current object. + + A copy of the current object. + + + + Gets/sets Format record. + + + + + Gets/sets fill. + + + + + Gets/sets font. + + + + + Gets/sets borders. + + + + + Gets and sets the horizontal border color. + + + + + Gets and sets the vertical border line style. + + + + + Gets and sets the horizontal border line style. + + + + + Gets and sets the horizontal border modified or not. + + + + + Gets and sets the vertical border modified or not. + + + + + Horizontal alignment. + + + + + Vertical alignment. + + + + + True means that text is wrapped at right border. + + + + + Gets or sets indent level. + + + + + True means to shrink content to fit into cell. + + + + + Text direction, the reading order for far east versions. + + + + + Text rotation angle: + 0- Not rotated + 1-90- 1 to 90 degrees counterclockwise + 91-180- 1 to 90 degrees clockwise + 255- Letters are stacked top-to-bottom, but not rotated. + + + Thrown when value is more than 0xFF. + + + + + True if cell is locked. + + + + + True if formula is hidden. + + + + + Flag for horizontal and vertical alignment, text wrap, indentation, + orientation, rotation, and text direction. + + + + + Flag for cell protection (cell locked and formula hidden). + + + + + Class used for parsing Excel 2007 workbooks. + + + + + Represents HLS max value. + + + + + Represents RGB max value. + + + + + Represents undefined HLS value. + + + + + Additional progress items + + + + + CarriageReturn ControlCharacters + + + + + LineFeed ControlCharacters + + + + + NullChar ControlCharacters + + + + + BackSpace ControlCharacters + + + + + Tab ControlCharacters + + + + + Content TypeSchema + + + + + Content Type NameSpace + + + + + Xml Schema NameSpace + + + + + Element Name + + + + + Name Attribute + + + + + Display Name Attribute + + + + + Internal Name Attribute + + + + + Ref attribute + + + + + Complex content + + + + + Represents string DoubleEqualSymbol + + + + + 3 Stars + + + + + 3 Triangles + + + + + 5 Boxes + + + + + Parent workbook. + + + + + Formula utils. + + + + + Dictionary with all available shape parsers. Key - shape instance value, + or o:spt value; Value - shape parser. + + + + + Theme colors list. + + + + + Dictionary of theme colors: key - theme color name, value - corresponding color. + + + + + Line styles + + + + + Contains list of ZipArchiveItem for background images + + + + + Parent element name. + + + + + Represents the current worksheet. + + + + + Represent the OutlineWrapperUtility object. + + + + + The number format indexes that are always serialized. + + + + + used to store the current theme colors for parsing + + + + + Regex pattern for decoding a encoded text. + + + + + Initializes new instance of the parser. + + Parent workbook. + + + + Converts theme color name into rgb color value. + + Color name to get rgb color value for. + Rgb color object that corresponds to the theme color. + + + + Converts theme color name into rgb color value. + + Color name to get rgb color value for. + Dictionary that holds theme color name and color. + Rgb color object that corresponds to the theme color. + + + + + + + + + + + + Parses the slicer cache item + + Represent the parent workbook + Represent the Xml reader + + + + Parses the slicer cache item + + Represent the parent workbook + Represent the Xml reader + Represent the slicer cache source name + Represent the slicer cache name + + + + Parses workbook part. + + XmlReader to extract workbook part data from. + Workbook relations. + Object that stores document data. + Absolute path in zip archive to the parent workbook. + Stream that will get all xml tags before worksheets. + Stream that will get all xml tags after named ranges section. + Workbook views collection. + + + + Parses Meta Properties + + File Data Holder + XML Reader + DataStream + Item Name + + + + Parses DocumentManagement Schema Elements + + List of elements in DocumentManagement + Xml Reader + + + + Parses DocumentManagement child Elements + + Xml Reader + + + + Parses workbook part. + + Xml Reader + + + + Gets meta property by name + + property name + Property + + + + Reads management child element + + Xml reader + name + Child count + + + + Parse pivot tables + + + + + Parse worksheets + + + + + + + Extracts pivot caches from the reader. + + Xml reader to get pivot caches data from. + + + + Extracts pivot cache from the reader. + + Xml reader to get data from. + + + + Parses FileSharing tag + + Reader to get data from. + + + + Parses workbook Pr tag and parses Date1904 value + + XmlReader to extract workbook part data from. + + + + Parses calculation tag and reads Precision + + XmlReader to extract workbook part data from. + + + + Extracts workbook protection options. + + XmlReader to extract protection options from. + + + + Parses workbook views. + + Reader to get data from. + Active sheet index. + Display tab index. + Workbook views collection. + + + + Parses workbook view. + + Reader to get data from. + Dictionary where key - attribute name, value - attribute value. + + + + Parses sheet (chart of worksheet). + + Reader to get data from. + Sheet to parse. + Absolute path to the parent worksheet item. + This stream will receive xml text starting just + after "worksheet" tag to "col" or "sheetData" tag. + This stream contains conditional formatting. + List with new style indexes (index - old + style index, value - new one). + Dictionary with archive items to remove after parsing. + + + + Parses worksheet before sheetData tag. + + + + + + + + + Parses sheet views. + + Reader to get data from. + Worksheet to place extracted data into. + + + + Parses single sheet view item. + + XmlReader to get data from. + Worksheet to put extracted data into. + + + + Extracts selection data. + + XmlReader to get data from. + Worksheet to put extracted data into. + + + + Extracts pane objects. + + XmlReader to get data from. + Worksheet to put extracted data into. + + + + Parses pane state. + + WindowTwo record that stores pane state flags. + State value to parse + + + + Extracts chart sheet from XmlReader. + + XmlReader to extract chart sheet data from. + Chart toi fill with data. + + + + Parses drawing associated with chartsheet. + + XmlReader that contains drawing data. + Chart to put extracted data into. + + + + Parse the drawing relations remove fallback items chart found + + input XML reader + input chart + input drawing file path name + data holder of chart + parent drawing relation of chart + + + + + + + + + + + Boolean value indicates whether the chart is chatEx or not. + + + + Extracts default row height from sheet format properties tag. + + XmlReader to get info from. + Worksheet to put settings into. + + + + Extracts Zero row height from sheet format properties tag. + + XmlReader to get info from. + Worksheet to put settings into. + + + + Parse the scenarios + + XmlReader to get data from + Worksheet to put data into + Represeent the scenarios to parse + + + + + + This methods extracts merged cells information from XmlReader. + + Reader to get merge information from. + Parent worksheet. + + + + This methods extracts named ranges from XmlReader. + + Reader to get information from. + + + + Parses styles of the workbook. + + XmlReader to read styles data from. + Stream that will get Dxfs formatting. + + + + Parses shared strings table. + + XmlReader to get data from. + Dictionary with updated string indexes. + + + + Parses string item. + + XmlReader to get data from. + Added string index. + + + + Parses string item. + + XmlReader to get data from. + Added string index. + + + + Parses Vml shapes. + + XmlReader to get data from. + Worksheet to put extracted shapes into. + Corresponding relations collection. + Path to the parent item. + + + + Extracts relations collection from XmlReader. + + Reader to extract data from. + Extracted relations collection. + + + + Extracts sheet data from reader and insets it into worksheet. + + XmlReader to get data from. + Worksheet to put data into. + List with new style indexes (index - old style index, value - new one). + Tag used for cell definition. + Dictionary with all attributes of sheetData tag. + + + + Parse xml document with comments data (author, text). + + XmlReader to get data from. + Worksheet to put extracted comments data into. + + + + Parse xml document with threaded comments + + XmlReader to get data from. + Worksheet to put extracted comments data into. + + + + Parse each threaded comment from the xml file + + XmlReader to get data from. + Worksheet to put extracted comments data into + threaded comment ojbect to store data from each each threaded comment + + + + Parse mentions within a threaded comment + + XmlReader to get data from. + Threaded comment to store mention list + + + + Parse each mention within mentions + + XML reader to get data from + mention to be parsed + + + + This method extracts drawings from specified XmlReader. + + XmlReader to extract data from. + Worksheet to place extracted shapes into. + Absolute path to the drawings. + List that will get relation id of the picture + (used to remove parsed relations after parsing). + Dictionary with archive items to remove after parsing. + + + + This method extracts drawings from specified XmlReader. + + XmlReader to extract data from. + Worksheet to place extracted shapes into. + Absolute path to the drawings. + List that will get relation id of the picture + (used to remove parsed relations after parsing). + Dictionary with archive items to remove after parsing. + + + + This method extracts all xml tags after SheetData tag. + + Reader to get data from. + Sheet to parse. + This stream contains conditional formatting. + Absolute path to the parent worksheet item. + Dictionary with archive items to remove after parsing. + + + + Parses the extensionlist. + + The reader. + The sheet. + + + + Parses the ext. + + The sheet. + The reader. + + + + Parses the slicer list + + The work sheet. + The Xml reader. + + + + Parses the sparkline groups. + + The sheet. + The reader. + + + + Parses the sparkline group. + + The reader. + The sheet. + + + + Parses the sparklines. + + The reader. + The sheet. + + + + + Parses the sparkline. + + The reader. + The sheet. + + + + + Parses the OLE objects. + + The reader. + The sheet. + + + + Parses the fallback. + + The reader. + The sheet. + + + + Parses the Fallback ole object + + The reader. + The sheet. + + + + Parses the OLE object. + + The reader. + The sheet. + The OLE object. + + + + Parses the objectPr. + + The reader. + The sheet. + The OLE object. + + + + Parses the Anchor value. + + The reader. + The sheet. + The OLE object. + + + + Extracts all table parts for the specified worksheet. + + Reader to get table parts from. + Worksheet to put extracted table parts into. + Path to the parent sheet object. + + + + Extracts table part. + + Reader to get table part from. + Worksheet to put extracted table part into. + Path to the parent sheet object. + + + + Extracts controls tag from a reader. + + XmlReader to get data from. + + + + + Parse the alternateContent form controls stream. + + + + + + + Parse choice element from controls stream. + + XmlReader + Current workhseet + + + + parse the control element from controls stream + + XmlReader + Current worksheet + + + + parse the controlPr element form controls stream + + XmlReader + Current worksheet + + + + Parse the anchor values for column, row, rowOffset, column offset. + + XmlReader + Current worksheet + + + + Extracts protection options. + + XmlReader to extract from. + Worksheet to put extracted protection options into. + + + + Checks single protection attribute and updates protection flags as necessary. + + XmlReader to get attribute value from. + Attribute name to check. + Flag value that corresponds to the protection attribute. + Default value of the attribute. + Current protection settings. + Updated protection settings. + + + + Checks single protection attribute and updates protection flags as necessary. + + XmlReader to get attribute value from. + Attribute name to check. + Flag value that corresponds to the protection attribute. + Default value of the attribute. + Current protection settings. + Updated protection settings. + + + + Extracts ignore error options from XmlReader. + + XmlReader to get data from. + Worksheet to put extracted data into. + + + + Extracts ignore error option from a reader. + + XmlReader to extract ignored error settings. + Worksheet to put extracted data into. + + + + Adds error indicator to the corresponding worksheet's collection. + + String representation of the cells with such options. + Ignore error options. + Parent worksheet. + + + + Extracts custom worksheet properties. + + XmlReader to get data from. + Worksheet to put extracted properties into. + + + + Extracts single custom property from specified reader. + + XmlReader to get data from. + Worksheet to put extracted data into. + + + + Gets the parsed XML value. + + The XML value. + + + + + + + + + + + + + Parses header/footer drawings. + + XmlReader to get data from. + Worksheet to put data into. + + + + This method parses Drawings xml tag (shapes). + + XmlReader to get data from. + Worksheet to put extracted data into. + Dictionary with archive items to remove after parsing. + + + + This method parses LegacyDrawings xml tag (vml shapes). + + XmlReader to get data from. + Worksheet to put extracted data into. + + + + Extracts single drawing defined by TwoCellAnchor tag name from the specified XmlReader. + + XmlReader to get shape data from. + Worksheet to put extracted shape into. + Absolute path to the drawings. + Relation ids that were parsed (to remove them from the collection later). + Dictionary with archive items to remove after parsing. + + + + Calculate chart with shapes position. + + Chart impl + chart width + chart height + + + + Parse group shape specified by "grpSp" tag and registers it in required collections. + + XmlReader to get shape data from. + Worksheet to put extracted shape into. + Absolute path to the drawings. + Relation ids that were parsed (to remove them from the collection later). + Created group shape object. + + + + Extracts shape specified by "sp" tag and registers it in required collections. + + XmlReader to get data from. + Parent worksheet. + Stream that will contains xml representation of the shape if necessary. + Absolute path to the drawings. + Created shape object. + + + + Checks and returns of type if AutoShape type is . + + Custom geometry's stream. + Parent Worksheet of the . + XmlReader to extract the properties. + + + + + Check whether the choice denotes chartEx or not + + input XML reader + the boolean value indicates the chartEx choice or not + + + + Parse AutoShape + + + + + + + Parse AutoShape + + AutoshapeImpl + XmlReader + Relation collection + + + + Parse custom geometry path of the freeform shape. + + XmlReader to extract data from. + object to set extracted data to. + + + + This method extracts all xml tags from group shape spPr element. + + Reader to get data from. + Group shape to parse. + + + + Extracts paragraph properties + + XmlReader to get data from. + autoShape to put data into. + + + + Parses the transformation2D of picture + + xmlreader object + picture being parsed + + + + Parses the transformation2D of group shape + + xmlreader object + group shape being parsed + + + + Tries to extract chart object from specified stream with GraphicFrame tag. + + Stream with GraphicFrame tag. + Parent worksheet. + Path to the drawing item. + Boolean value indicates whether the chart is chatEx or not. + Extracted chart shape; or null if chart wasn't located. + + + + Tries to extract chart object from specified stream with GraphicFrame tag. + + Stream with GraphicFrame tag. + Parent worksheet. + Path to the drawing item. + List that will get relation id of the picture. + Extracted chart shape; or null if chart wasn't located. + + + + Extract relation from group shape and remove it form lstRelationIds. + + Stream with GraphicFrame tag. + Picture stream or shape stream. + List that will get relation id of the picture. + + + + + + + + + + + + Extracts extent settings from reader and converts them into pixels. + + Reader to get extent data from. + Size of the shape in pixels. + + + + Parses EditAs attribute. + + Shape to set properties for. + Value to parse + + + + Sets shape anchor. + + Shape to set anchor for. + Rectangle that defines top-left shape's position in Excel 2007 units. + Rectangle that defines bottom-right shape's position in Excel 2007 units. + Width and height of the shape if extent token was present, -1 otherwise. + + + + Sets shape anchor. + + Shape to set anchor for + Rectangle that defines top-left shape's position in Excel 2007 units + Rectangle that defines bottom-right shape's position in Excel 2007 units. + + + + Converts anchor offsets from Excel 2007 units into Excel 97-2003 units (used by XlsIO). + + Rectangle with shape coordinates (left-top or bottom-right corner). + Parent worksheet. + Rectangle with converted values from Excel 2007 coordinates space into Excel 97-2003 coordinates. + + + + Extracts anchor point from the specified XmlReader. + + Reader to get data from. + Rectangle with extracted data. + + + + Parse the row and column emu value is convert to rectangle. + + XmlReader + + + + + Parse picture shape. + + XmlReader to get picture data from. + Worksheet to place extracted shape into. + Absolute path to the drawings. + List that will get relation id of the picture + (used to remove parsed relations after parsing). + Dictionary with archive items to remove after parsing. + + + + This method extracts shape properties from the specified XmlReader. + + XmlReader to get data from. + Shape to put extracted data into. + + + + Extracts blip data from the specified XmlReader. + + Reader to get blip data from. + Shape to put extracted data into. + Worksheet drawings relations collection. + Path to the parent item. + Parent file data holder. + List that will get relation id of the picture + (used to remove parsed relations after parsing). + Dictionary with archive items to remove after parsing. + + + + Parses blip tag and sets appropriate image to the specified shape. + + Reader to get data from. + Shape to put image into. + Collection with all drawings relations. + Path to the parent item (used to resolve related relation path). + Parent file data holder. + List that will get relation id of the picture + (used to remove parsed relations after parsing). + Dictionary with archive items to remove after parsing. + + + + Parses the Blip image. + + Reader to get data from. + Shape to put image into. + Collection with all drawings relations. + Path to the parent item (used to resolve related relation path). + Parent file data holder. + List that will get relation id of the picture + (used to remove parsed relations after parsing). + + + + Parses color change effect. + + Reader to get data from. + Picture shape to be parsed. + + + + Parse the Blip Extension List. + + Reader to get data from. + Shape to put image into. + Collection with all drawings relations. + Path to the parent item (used to resolve related relation path). + Parent file data holder. + List that will get relation id of the picture + (used to remove parsed relations after parsing). + + + + Parse blip image properties. + + Reader to get data from. + Shape to put image into. + Collection with all drawings relations. + Path to the parent item (used to resolve related relation path). + Parent file data holder. + List that will get relation id of the picture + (used to remove parsed relations after parsing). + + + + Read the SVG image data. + + Reader to get data from. + Shape to put image into. + Collection with all drawings relations. + Path to the parent item (used to resolve related relation path). + Parent file data holder. + List that will get relation id of the picture + (used to remove parsed relations after parsing). + + + + This method parses picture properties. + + Reader to extract data from. + Shape to put properties into. + + + + Parses non visual picture canvas properties. + + XmlReader to get data from. + Shape to place extracted data into. + + + + Parses non visual picture canvas extension properties. + + XmlReader to get data from. + Shape to place extracted data into. + + + + Parses shape id + + String shape id to parse. + Extracted shapeid or -1 if format was incorrect. + + + + Parses non visual canvas properties. + + XmlReader to get data from. + Shape to store extracted data. + + + + Parses non visual canvas properties. + + XmlReader to get data from. + Shape to store extracted data. + + + + Parses Click Hyper link properties. + + XmlReader to get data from. + Shape to store extracted data. + + + + Parses commentList tag. + + XmlReader to get data from. + List with comment authors. + Worksheet + + + + This method extracts single comment from the specified reader. + + XmlReader to get comment from. + List of comment authors. + Parent worksheet for the comment. + + + + Extracts authors from the specified reader. + + XmlReader to get list of comment authors from. + List with comment authors. + + + + Extracts shape from the reader. + + XmlReader to get shape settings from. + Dictionary with default shape settings. + Key - shape type, Value - default shape + Corresponding relations collection. + Path to the parent item. + Worksheet shapes Collection + Indicates whether the shape types defined ot not + + + + Extracts shape type from the specified reader. + + XmlReader to get shape type from. + Worksheet that is being currently parsed. + Dictionary that will get default shape for the current shape type. + + + + Extracts shape from the reader if shape type does not exist. + + XmlReader to get shape settings from. + Shape collection to process + Corresponding relations collection. + Path to the parent item. + + + + Parses rich text run. + + XmlReader to get data from. + Index of the added string. + + + + Extracts TextWithFormat from the specified XmlReader. + + XmlReader to get data from. + Tag that means that we have to stop parsing. + Parsed text with format. + + + + + + + + + + + Parses text content. + + XmlReader to get data from. + Parsed string index. + + + + Parses text content. + + XmlReader to get data from. + Parsed string index. + + + + Parses rich text run. + + XmlReader to get data from. + Index of the added string. + + + + Extracts named styles from specified XmlReader. + + XmlReader to get data from. + List with updated font indexes, index - font index + in the file, value - font index in our document (we can change indexes during parsing). + List with extracted fill objects. + List with extracted borders. + List with indexes of created extended formats. + + + + Extracts cell formats from specified XmlReader. + + XmlReader to get data from. + List with updated font indexes, index - font index + in the file, value - font index in our document (we can change indexes during parsing). + List with extracted fill objects. + List with extracted borders. + List with updated parent indexes, index - xfId in + the xml document, value - xf index in our internal collection. + List with indexes of created extended formats. + + + + Parses named style settings (name, etc.). + + XmlReader to get data from. + List with modified indexes to named + style's extended formats. + + + + Converts style name sting to Ascii string + + + + + + + Parses single style object. + + XmlReader to get data from. + List with modified indexes to named + style's extended formats. + + + + Extracts single extended format from the XmlReader. + + XmlReader to get data from. + List with updated font indexes, index - font index + in the file, value - font index in our document (we can change indexes during parsing). + List with extracted fill objects. + List with extracted borders. + List with updated parent indexes. + Created ExtendedFormat object. + + + + Parse alignment and protection properties for extended format + if they are present in the document. + + XmlReader to get data from. + ExtendedFormatRecord to put data into. + + + + Parses alignment settings. + + XmlReader to get alignment data from. + Record to write alignment data into. + + + + Parses protection settings. + + XmlReader to get protection data from. + Record to write protection data into. + + + + Extracts Include (IncludeAlignment, IncludeFont, etc.) attributes from XmlReader. + + XmlReader to get data from. + ExtendedFormat to put data into. + + + + This method extracts font, fill and border settings from specified + XmlReader and sets inside specified ExtendedFormat. + + XmlReader to get data from. + Extended format to put data into. + List with updated font indexes, index - font index + in the file, value - font index in our document (we can change indexes during parsing). + List with extracted fill objects. + List with extracted borders. + + + + Copies border settings from specified borders collection into ExtendedFormatImpl. + + BordersCollection to copy settings from. + Format object to copy into. + + + + Extracts single relation item from the reader and puts it into relations collection. + + XmlReader to extract relation from. + Relations collection that should get extracted value. + + + + Parses sheet options. + + XmlReader to extract sheet options from (name, visibility, relation, etc.). + Workbook relations. + Object that holds document data. + Absolute path in zip archive to the parent workbook. + + + + Parses Extension list + + XmlReader to extract slicer list. + Represents the relation of slicer. + Represents the file holder. + + + + Parses Extension list + + XmlReader to extract slicer list. + Represents the relation of slicer. + Represents the file holder. + + + + Parses sheet entry from workbook item. + + Reader to extract data from. + Workook's relations collection. + FileDataHolder that stores document data. + Absolute path in zip archive to the parent workbook. + + + + Sets sheet visibility. + + Worksheet to set visibility into. + Visibility string value. + + + + + + + + + + + + + Parse the scenario + + XmlReader to get data from + Worksheet to put data into + Represent the scenario to parse + + + + + Parse the scenario value and address + + XmlReader to get data from + Worksheet to put data into + Represent the scenario to parse + Represent the range collection + + + + Extracts single MergeRegion from reader and inserts it into collection inside worksheet. + + XmlReader to get data from. + Worksheet to put data into. + + + + Extracts single MergeRegion from reader and inserts it into collection inside worksheet. + + XmlReader to get data from. + Named range value. + + + + Extracts collection of number formats from specified reader. + + XmlReader to get data from. + + + + Extracts fonts from XmlReader. + + XmlReader to get data from. + List with new font indexes. + + + + Extracts font object from specified XmlReader. + + Reader to read font data from. + List to add new font index into. + + + + Extracts font object from specified XmlReader. + + Reader to read font data from. + Extracted font. + + + + Extracts font settings from specified XmlReader. + + Reader to read font data from. + Font to extract data into. + + + + Parses the family. + + The reader. + + + + + Extracts + + + + + + + Extracts collection of number formats from specified reader. + + XmlReader to get data from. + + + + Extracts single number format entry from specified reader. + + Reader to extract from. + + + + Extracts color from XmlReader. + + XmlReader to get data from. + Extracted color index (on the current moment we support only indexed colors). + + + + Extracts color from XmlReader. + + XmlReader to get data from. + Color object to put extracted values into. + + + + Extracts backgroundcolor from XmlReader. + + XmlReader to get data from. + Color object to put extracted values into. + + + + Applies tint to the specified color. + + Color to apply tint value to. + Tint value to apply. + Color after applying tint value. + + + + Applies tint to the specified color. + + Color to apply tint value to. + Tint value to apply. + The parsed color is updated or not + Color after applying tint value. + + + + Applies tint to the specified color. + + Color to apply tint value to. + Tint value to apply. + Color after applying tint value. + + + + Calculate double value from int. + + + double value + + + + Calculate int value from double. + + + int value. + + + + Converts color to HLS values. + + Color to convert. + Hue value. + Luminance value. + Saturation value. + + + + Converts color to HLS values. + + Color to convert. + Hue value. + Luminance value. + Saturation value. + + + + Converts HLS components to RGB color values and returns Color, according to this values. + + Hue value. + Luminance value. + Saturation value. + + + + + Converts HLS components to RGB color values and returns Color, according to this values. + + Hue value. + Luminance value. + Saturation value. + + + + + Converts Hue value to RGB single component. + + Magic number 1. + Magic number 2. + Hue value. + RGB component value. + + + + Extracts boolean value from the current xml tag. + + XmlReader to get value from. + Name of the attribute where value is stored. + Default value (when there is no attribute specified). + Extracted value. + + + + Extract value of the attribute from reader. + + XmlReader to get data from. + Name of the attribute to extract. + Extracted value; or null if there were no attribute with such name. + + + + Extracts fill objects from XmlReader. + + XmlReader to get data from. + List with all extracted fills. + + + + Extracts single fill object from specified XmlReader. + + XmlReader to read fill data from. + Indicates whether fore and back colors should be swapped. + Extracted Fill object. + + + + Extracts single gradient fill object from specified XmlReader. + + XmlReader to read gradient fill from. + Extracted gradient fill object. + + + + Extracts single path gradient fill object from specified XmlReader. + + XmlReader to read gradient fill from. + Extracted path gradient fill object. + + + + Extracts stop colors from specified XmlReader. + + XmlReader to read stop colors from. + Colors list. + + + + Extracts single linear gradient fill object from specified XmlReader. + + XmlReader to read linear gradient fill from. + Extracted linear gradient fill object. + + + + Sets gradients fill style and variant values according to degree value. + + Fill to set data into. + Degree value. + + + + Extracts attribute value. + + XmlReader to extract attribute value from. + Attribute name. + Attribute double value. + + + + Extracts pattern fill from specified XmlReader. + + XmlReader to get data from. + Indicates whether fore and back colors should be swapped. + Extracted fill object. + + + + Converts specified string in MS Excel 2007 pattern format into pattern value. + + Value to convert. + Converted value. + + + + Extracts border objects from XmlReader. + + XmlReader to get data from. + List with new borders indexes. + + + + Extracts border collection from specified XmlReader. + + XmlReader to get data from + Extracted borders collection + + + + Extracts border collection from specified XmlReader. + + XmlReader to get data from. + Extracted borders collection. + + + + Extracts single border from the XmlReader. + + XmlReader to get data from. + Output - index of the extracted border (left, top, etc.). + Extracted border. + + + + Parses alignment settings. + + XmlReader to get alignment data from. + Pivot cell format to write alignment data into. + + + + Parses protection settings. + + XmlReader to get protection data from. + Pivot cell format to write protection data into. + + + + Extracts row data from reader and inserts it into worksheet. + + XmlReader to get data from. + Worksheet to put data into. + Style hashtable. Key - recovered from xml extended format id, + value - extended format index in workbook collection. + Current row id. + + + + Extracts cell from reader and inserts it into worksheet. + + XmlReader to get data from. + Worksheet to put data into. + Style hashtable. Key - recovered from xml extended format id, + value - extended format index in workbook collection. + + + + Returns type of the cell. + + String representation of the cell type. + + + + + Extracts formula from reader and inserts it into worksheet. + + XmlReader to get data from. + Worksheet to put data into. + Current row index. + Current column index. + Extended format index. + + + + return formula type based on value. + + + + + Extracts and fills palette settings from specified XmlReader. + + XmlReader to get palette from. + + + + + + + + + + Parses columns collection. + + XmlReader to get data from. + Worksheet that will store extracted data. + List with new style indexes. + + + + + + + + + + + + + + + + + Extracts data validation from reader and inserts it into worksheet. + + XmlReader to get data from. + Worksheet to put data into. + + + + Extracts data validation from reader and inserts it into data validation collection. + + XmlReader to get data from. + Data validation collection. + + + + + + + + + + + Detext value of IsStrListExplicit property. + + + + + Parse data sorter information. + + XmlReader to get data from. + Worksheet to put data into. + + + + Parse data sorter information. + + XmlReader to get data from. + Worksheet to put data into. + + + + Parse data sorter information. + + XmlReader to get data from. + DataSoter to get data from. + Worksheet to put data into. + + + + Extracts data validation formula values from reader and inserts it into data validation. + + XmlReader to get data from. + Data validation implementation. + + + + Extracts auto filters from reader and inserts it into worksheet. + + XmlReader to get data from. + Worksheet to put data into. + + + + Extracts auto filters from reader and inserts it into worksheet. + + XmlReader to get data from. + AutoFilter Collection of a worksheet or ListObject to get data into. + + + + Extracts filter column from reader and inserts it into auto filter collection. + + XmlReader to get data from. + Auto filter collection to put data into. + + + + Extracts filters from reader and inserts it into auto filter. + + XmlReader to get data from. + Auto filter to put data into. + + + + Extracts color filter from reader and inserts it to autofilter + + XmlReader to get data from. + Auto filter to put data into. + + + + Extracts Icon Filter and inserts it into AutoFilters Collection. + + XmlReader to get data from. + AutoFilter to put data into. + + + + Extracts auto filter top ten from reader and inserts it into auto filter. + + XmlReader to get data from. + Auto filter to put data into. + + + + Extracts custom filters from reader and inserts it into auto filter. + + XmlReader to get data from. + Auto filter to put data into. + + + + Extracts custom filter from reader and inserts it into auto filter. + + XmlReader to get data from. + Auto filter to put data into. + + + + Return Condition operation + + The default condition + + + + Extract person's information from person.xml file + + XML reader object + parent workbook + + + + Extract each person's information from person.xml file + + XML reader object + parent workbook + + + + Extracts themes. + + XmlReader to get data from. + + + + Parse Theme Elements + + + + + + + Parses the format scheme + + Xml reader + + + + Parses the line styles + + + + + + + Get Font + + + + + + + Skips the white spaces in the XML. + + + + + + Extracts theme colors. + + XmlReader to get data from. + Dictionary that will be filled with theme colors, + key - color name, value - color value. + Returns theme colors list. + + + + Extracts Dxfs collection from XmlReader. + + XmlReader to extract data from. + List of Dxf styles. + + + + Extracts single Dxf style record from XmlReader. + + XmlReader to extract data from. + Dxf style object. + + + + Extracts worksheet conditional formats from XmlReader. + + XmlReader to extract data from. + Worksheet conditional formats. + Dxf styles collection. + + + + Parse the Table styles. + + + + + Parse the dxfs styles to store list. + + Return file data holder, used for parse the dxfs collection + + + + Parse the table styles and attributes. + + Xml reader + List of the dxfs styles + + + + Parse tha table style and attributes. + + Xml reader + Table style object + List of the dxfs style + + + + Parse the table style element and attributes. + + XmlReader + Table style element object + List of the dxfs styles + + + + Updates the usedRange. + + + + + Extracts conditional formats from XmlReader. + + XmlReader to extract data from. + Conditional formats. + Dxf styles collection. + + + + Updates the CRRange in used Range. + + address of conditional format.s + Worksheet. + + + + Parses the Range Reference for Conditional formatting + + XmlReader to extract data from + Conditional format value + + + + Parses conditional formatting rule tag. + + XmlReader to extract data from. + Condition to extract data into. + Dxf styles collection. + + + + Parses conditional formatting rule tag. + + XmlReader to extract data from. + Condition to extract data into. + Dxf styles collection. + Conditional format range address + + + + Extracts conditional formats single condition from XmlReader. + + XmlReader to extract data from. + Condition to extract data into. + Dxf styles collection. + + + + Extracts color scale from the reader. + + XmlReader to get data from. + Color scale to fill. + Parent workbook. + + + + Extracts data bar object from the reader. + + XmlReader to get data from. + Data bar to put extracted data into. + Parent workbook. + + + + Extracts icon set object from the reader. + + XmlReader to get icon set from. + Icon set object to put extracted data into. + Parent workbook. + + + + Extracts conditional format value object from reader. + + XmlReader to get data from. + Parent workbook. + Condition object to put extracted data into. + Extracted object. + + + + Converts string representation of conditional format value object type to corresponding enumeration. + + String value to convert. + Converted enumeration object. + + + + Extract conditional format formulas. + + Reader to get values from. + Conditional format to put extracted formulas into. + + + + Parses print options. + + XmlReader to parse print options from. + PageSetup object to put print options into. + + + + Parses page margins. + + XmlReader to get values from. + Object to put extracted values into. + + + + Serialize PageSetup tag. + + XmlReader to get page setup values from. + Object to put extracted values into. + + + + Parse header footer tags. + + XmlReader to get all necessary data from. + Object that would store all extracted settings. + + + + Converts string into ExcelPrintLocation. + + Value to convert. + Converted value. + + + + Converts string value to ExcelPrintErrors. + + Value to convert. + Converted value. + + + + Extracts hyperlinks from reader and inserts them into worksheet. + + XmlReader to get data from. + Worksheet to put data into. + + + + Extracts hyperlink from reader and inserts it into worksheet. + + XmlReader to get data from. + Worksheet to put data into. + Hyperlinks collection to insert link into. + Relations collection. + + + + Extracts sheet-level properties from reader and inserts it into worksheet. + + XmlReader to get data from. + Worksheet to put data into. + + + + Parses worksheet page setup properties. + + Reader to extract data from. + Object to put extracted data into. + + + + Parses worksheet outline properties. + + Reader to get data from. + Page setup to put data into. + + + + Extracts background image from reader and inserts it into worksheet. + + XmlReader to get data from. + Worksheet to put data into. + Worksheet parent path. + + + + Parses the CustomXmlParts + + XmlReader + Schema Reference + + + + Parses the CustomXmlParts + + XmlReader + Schema Reference + + + + Parses the Each Schemas and added to Schema collections + + XmlReader + Schema Reference + + + + Extracts core properties from reader and inserts it workbook. + + XmlReader to extract core properties from. + + + + Extracts extended properties from reader and inserts it workbook. + + XmlReader to extract extended properties from. + + + + Extracts custom properties from reader and inserts it workbook. + + XmlReader to extract custom properties from. + + + + Extracts custom property from reader and inserts it into custom property implementation. + + XmlReader to extract data from. + Custom property. + + + + Parses external link file. To set URL field we have to have access to + relations, so it is better to do it in some other place. + + XmlReader to get data from. + Item's relations. + + + + Parses external link file. To set URL field we have to have access to + relations, so it is better to do it in some other place. + XmlReader to get data from. + Item's relations. + + + + Parses the OLE object link. + + The reader. + The relations. + + + + + + + + + + + Adds default sheet into the external workbook, if the sheet is empty. + + External Workbook + Realtions + Relation Id + External Workbook + + + + Extracts external names from the reader. + + XmlReader to get data from. + External workbooks to put defined names into. + + + + Extracts single external name from the reader. + + XmlReader to get external name data from. + External workbook to put extracted name into. + + + + Extracts cached external data. + + XmlReader to get data from. + External workbook to put cache into. + + + + Extracts single external worksheet cached data from XmlReader. + + XmlReader to get cached data from. + External workbook to place extracted data into. + + + + Creates external workbook. + + Relations collection that helps to locate external workbook. + Relation id of the target workbook. + Name of the workbook's worksheets. + + + + + Extract names of external worksheets from the reader. + + XmlReader to get data from. + List with extracted names. + + + + Extracts horizontal pagebreaks from reader. + + XmlReader to extract data from. + Worksheet to insert pagebreaks in. + + + + Extracts vertical pagebreaks from reader. + + XmlReader to extract data from. + Worksheet to insert pagebreaks in. + + + + Parses workbook part of the external links description. + + Reader to get data from. + + + + Parses single external link from the workbook. + + Reader to get link information from. + + + + Parse external connection + + + + + + Parse external connection + + + + + + Parse parameters + + + + + + Parse parameter + + + + + + Parse Custom Workbook views + + Reader to get data from. + List of Custom workbook view as Dictionary + + + + Parse dynamic filter. + + Reader to get data from. + Auto filter collection to put data into. + + + + Parse DataBase Property + + + + + + + Parse Web Properties + + + + + + + Dispose + + + + + Creates cell record. + + Cell type. + Record value. + Current cells collection. + Represents column index. + Represents row index. + Represents extended format index. + + + + Sets formula value. + + Worksheet to set formula value into. + Cell type. + Value to set. + Represents row index. + Represents column index. + + + + Sets array formula record into worksheet. + + Worksheet to put data into. + Formula string to insert. + Cell range of the formula. + Extended format index. + + + + Sets shared formula record into worksheet. + + Worksheet to put data into. + Formula string to insert. + Cell range of the formula. + Shared formula group index. + Current row index. + Current column index. + Extended format index. + + + + Converts Excel 2007 data validation type to Excel 97-03. + + Excel 2007 data validation type. + Excel 97-03 data validation type. + + + + Returns DV error style. + + DV error style name. + DV error style. + + + + Returns DV compare operator. + + DV compare operator name. + + + + + Returns DV ranges. + + All ranges for DV. + DV ranges array. + + + + Returns DV or AF range. + + DV or AF range string. + DV range. + + + + Returns excel filter condition. + + Filter condition string name. + Excel filter condition. + + + + Returns excel CF type value. + + CF type sting name. + Defines whether current type is currently supported.| + Excel CF type value. + + + + Returns excel comparison operator. + + Operator string name. + Defines whether current operator is currently supported. + Excel operator value. + + + + Returns the time period type + + + + + + + + Returns xml element value. + + XmlReader to get value from. + Xml element value. + + + + Converts color by applying shade value. + + Color to process. + Shade to apply. + Modified color. + + + + Converts color by applying shade value. + + Color to process. + Shade to apply. + Modified color. + + + + Converts Control unicode Character to ASCII . + + String Value. + Modified ASCII String. + + + + Parse extention list for data bar type + + Xml reader + Conditional format + + + + Parsing extention CFrules for data bar type + + Xml reader + Conditional formats of the sheet + + + + Check extention id with the conditional format + + Id commonly used in extention and conditional format + sheet where the conditional formating applied + Conditional Format for the extention + Conditional format object if the id is available else return null + + + + Parse extention for the Data bar + + Xml reader + Data bar object + workbook where the conditional format is applied + + + + Parses the custom icons. + + Xml reader object. + Icon set object. + + + + Copies fill settings from fill object into extended format. + + Fill to copy from. + Extended format to copy into. + + + + Parse the theme overrided colors from the chart + + Input chart object + the parsed theme colors + + + + Intialize and parse XmlMaps. + + XML reader + + + + Gets FformulaUtil that corresponds to invariant culture. + + + + + Gets the worksheet. + + The worksheet. + + + + Properties store the current theme colors for parsing + + + + + This class is responsible for xml spreadsheets parsing. + + + + + Represents current xml version. + + + + + Represents current xml version. + + + + + Represents current application version. + + + + + Represents current application version enclosed in single quotes. + + + + + Represents current application node name. + + + + + Represents o namespace. + + + + + Represents x namespace. + + + + + Represents ss namespace. + + + + + Represents html namespace. + + + + + Represents xml subscript value. + + + + + Represents xml superscript value. + + + + + Represents rtf bold. + + + + + Represents rtf Italic. + + + + + Represents rtf Underline. + + + + + Represents rtf strikethrough. + + + + + Represents rtf span. + + + + + Represents rtf sub. + + + + + Represents rtf sup. + + + + + Represents rtf font. + + + + + Represents default font size. + + + + + Represents none constant. + + + + + Default font name. Used when font name is not specified. + + + + + Represents current version of xml file + + + + + represent default Xml Version + + + + + Represents style dictionary. + Key - Recovered from xml stream unique id, value - XF index in workbook collection. + + + + + Represents parent workbook. + + + + + Represents array list, that contain formula string to reparse. + + + + + Represents array with formulas to reparse. + + + + + Formula utils. + + + + + Represents dictionary with alignment horizontal types. + + + + + Represents hashtable with alignment vertical types. + + + + + Represents dictionary with number format types. + + + + + Initialize all static collections. + + + + + Initialize new instance of current class. + + Current application. + Parent object for class. + + + + Gets worksheet from xml. + + Xml reader. + Workbook to fill. + Returns new instance of WorkSheet. + + + + Read table from xml. + + Xml reader. + Worksheet to fill. + + + + Reads row from xml stream. + + Xml reader. + Sheet that contain current row. + Represents row index. + Returns updated row index. + + + + Read column info. + + Xml reader. + Represents current worksheet. + Column index. + Returns updated column index. + + + + Read cell from xml stream. + + Xml reader. + Current sheet. + Represents row index. + Represents column index. + + + + Parses hyperlink data. + + XmlReader to get necessary data from. + Worksheet that is being parsed. + Zero-based row index of the cell. + Zero-based column index of the cell. + + + + Reads record from xml stream. + + Xml reader. + Represents cell records collection. + Represents XF index. + Type of the extracted data. + Object to store extracted rtf string inside. + Returns created record. + + + + If can adds merge record to collection. + + XmlReader to get data from. + Current sheet. + Row index.( Zero based ) + Column index.( Zero based ) + Represents XF index. + Number of cells merged across. + + + + Reads styles from xml stream. + + Xml reader. + Current workbook. + + + + Reads custom style from xml stream. + + Xml reader. + Current workbook. + + + + Reads alignment properties from xml stream. + + Xml reader. + XF format to fill. + + + + Reads font properties from xml stream. + + Xml reader. + Represents XF format, which fill from xml stream. + + + + Reads interior from xml stream. + + Xml reader. + Parent XF format. + + + + Reads number format from xml stream. + + Xml reader. + Parent XF format. + + + + Reads protection properties from xml stream. + + Xml reader. + Parent XF format. + + + + Reads borders from xml stream. + + Xml reader. + Current xf format. + + + + Reads border from xml stream. + + Xml reader. + Current extended format. + + + + Reads worksheet options from xml. + + Xml reader. + Worksheet to fill. + + + + Reads DataValidation from xml. + + Xml reader. + Worksheet to fill. + + + + Reads DataValidation from XML + + Xml reader. + Worksheet to fill. + + + + Converts Excel 2007 data validation type to Excel 97-03. + + Excel 2007 data validation type. + Excel 97-03 data validation type. + + + + Returns DV error style. + + DV error style name. + DV error style. + + + + Returns DV ranges. + + All ranges for DV. + DV ranges array. + + + + Gets the Ranges for the data validations or conditional formats + + Ranges in R1C1 format + Worksheet to fill. + + + + Convert Biff record TAddr to Selection record TAddr + + + + + + + Reads the conditional formats + + Xml reader. + Worksheet to fill. + + + + Pareses the conditions + + Xml reader. + ConditonalFormats + Worksheet to fill. + + + + Parses each elements in the condtion + + Xml reader. + ConditonalFormats + Ranges to fill + + + + Parses each elements in the condtion + + + + + + + + Parses Each conditional format settings from JSON string. + + FormattingValues represented in JSON type + CondtionalFormatImpl + + + + Reverses the Array + + Bordersettings + + + + Get the ExcelLineStyle for border + + array of styles + + + + Gets ExcelComparisonOperator + + Operator + ExcelComparisonOperator + + + + Parses worksheet visibility option. + + XmlReader to get option from. + Worksheet to set option to. + + + + Reads page setup from xml. + + Xml reader. + Worksheet to fill. + + + + Reads header/footer from xml. + + Xml reader. + Worksheet to fill. + + + + Reads page setup layout from xml. + + Xml reader. + Worksheet to fill.> + + + + Reads page margins from xml. + + Xml reader. + Worksheet to fill. + + + + Reads panes from xml. + + Xml reader. + Worksheet to fill. + + + + Reads selection pane from xml. + + Xml reader. + Worksheet to fill. + + + + Reads print options from xml. + + Xml reader. + Worksheet to fill. + + + + Reads named ranges from xml stream. + + Xml reader. + Collection of named ranges. + Represents sheet index ( One based ).Zero if global name. + + + + Reads single named range from xml stream. + + Xml reader. + Represents collection, of named ranges. + Represents sheet index ( One based ).Zero if global name. + + + + Reads comment from xml stream. + + Xml reader. + Current comment to fill from xml stream. + Represents default XF index. + + + + Reads comment rtf text. + + Xml reader. + XF index. + Initialize text with format, by read from xml stream rtf properties. + + + + Reads workbook from xml + + Xml reader. + Book to fill. + Returns error code. + + + + Read workbook node. + + Xml reader. + Book to fill. + + + + Gets extended format from xml value. + + Unique id. + Represents parent XF collection. + Name of style. + Parent name. + + + + + Adds format to collection. + + Format to add. + Parent workbook. + Parent XF collections. + Unique xml id of XF format. + Unique xml name of XF format. + + + + Gets color from xml value. + + Represents xml color. + Returns color. + + + + Sets font alignment. + + Represents font alignment. + Current font. + Returns initialized font. + + + + Creates cell record. + + Cell type. + Record value. + Current cells collection. + Represents column index. + Represents row index. + Represents xf index. + Represents Rich Text Format to set. + + + + Gets XF index for current cell. + + Parent sheet. + Value, that represents current xf id. + Returns valid index in Inner ExtFormats collection. + + + + Gets line style by style and weight. + + Represents one of xml line style type. + Represents weight of line. + Returns excel line style. + + + + Reparses names read from xml stream. + + Parent workbook. + + + + Reads rtf from xml stream. + + Xml reader. + Index to XF record. + Represents rtf holder. + Returns read from stream string value. + + + + Updates font reading from xml stream. + + Represents xml reader. + Current font to update. + Local rtf node name. + if true - update endelement. + Returns updated font. + + + + Read rtf font. + + Xml reader. + Font to update. + Returns updated font. + + + + Parse formula from xml stream. + + Current sheet. + One based row index. + One based column index. + Represents string formula in R1C1 style. + Represents XFindex. + String representation of the formula value. + Type of the value in the formula. + + + + Sets formula to the specified cell. + + Parent worksheet. + One-based row index. + One-based column index. + String represetation of the formula. + String representation of the formula value. + Type of the formula value. + + + + Sets formula value. + + Parent worksheet. + One-based row index. + One-based column index. + String representation of the formula value. + Type of the formula value. + + + + Reparse formula. + + Parent workbook. + + + + This class is responsible for vml comment shape parsing. + + + + + Extracts shape type settings from the reader and creates shape with default settings. + + XmlReader to get general shape settings from. + Parent worksheet for the shape. + Shape with default settings without adding it to any collection + + + + Tries to parse unknown client data tag. + + Reader to get data from. + Shape to put data into. + + + + Parses style properties. + + Textbox to put properties into. + String representation of the style properties + (key - property name, value - property value). + + + + Parses visibility options. + + Comment to set visibility for. + Dictionary with comment properties. + + + + Parses autosize options. + + Comment to set visibility for. + Dictionary with comment properties. + + + + Registers shape in all necessary collections. + + Shape to register. + + + + Creates shape with default settings + + Worksheet Shape Collection + Shape with default settings + + + + This class is used to parse text box shape. + + + + + Extracts text box settings from XmlReader. + + TextBox to fill with settings. + XmlReader to get data from. + Parser used to help in parsing process. + + + + Extracts text box settings from XmlReader. + + TextBox to fill with settings. + XmlReader to get data from. + Parser used to help in parsing process. + + + + Parses non visual shape properties. + + Shape to be parsed. + XML reader to extract data from. + Parser used to help in parsing process. + + + + Parses shape properties. + + TextBox to be parsed. + XML reader to extract data from. + Parser used to help in parsing process. + + + + Parses rich text. + + XmlReader to read rich text from. + Parser object that helps to extract data. + TextBox to be parsed. + + + + Parses text area body properties. + + XmlReader to read body properties from. + Text area to put body properties into. + Textbox to be parsed. + + + + Parses text rotation value. + + Rotation value to parse. + TextBox to put extracted value into. + + + + Parses anchor (vertical alignment). + + Anchor value to parse. + TextBox to put extracted value into. + + + + Extracts list styles for a text area. + + XmlReader to extract list styles from. + Text area that will get extracted settings. + + + + Parses level properties in List styles. + + XmlReader + RichText + + + + Parses the Default run properties. + + + + + + + Parses paragraph. + + XmlReader to get paragraph tag from. + Text box that needs its paragraph text to be parsed. + Parser object that helps to extract data. + + + + Parse text field. + + XmlReader to get paragraph tag from. + Text box that needs its paragraph text to be parsed. + Text area to put extracted properties into. + Parser object that helps to extract data. + + + + Extracts paragraph properties + + XmlReader to get data from. + TextBox to put data into. + + + + Parses bullet font. + + Xml reader + Text + + + + Parses paragraph run. + + XmlReader to get paragraph run from. + Text area to put extracted properties into. + Parser object that helps to extract data. + + + + Parses paragraph run. + + XmlReader to extract paragraph tag from. + Text area that will get paragraph run information (formatting and text). + Parser object that helps to extract data. + Font attributes of the paragraph run. + + + + Serialize line properties. + + XmlReader to serialize into. + Chart line properties to serialize. + Indicates whether border is rounded or not + Excel2007Parser to help in extraction process. + + + + Serialize line properties. + + XmlReader to serialize into. + Chart line properties to serialize. + Excel2007Parser to help in extraction process. + + + + This is parser of unknown vml shapes. + + + + + Extracts shape type settings from the reader and creates shape with default settings. + + XmlReader to get general shape settings from. + Parent worksheet for the shape. + Shape with default settings without adding it to any collection + + + + Parses shape and adds it to all necessary shapes collections. + + XmlReader to get shape from. + Default shape that must be cloned to get resulting shape. + Corresponding relations collection. + Path to the parent item (item which holds all these xml tags). + + + + Creates new Unknown shapes serializator. + + Shape instance used to choose correct shape serializator. + XmlReader to get shape from. + Represents current worksheet. + + + + Creates shape with default settings + + Worksheet Shape Collection + Shape with default settings + + + + Adds slash ('/') before the file name if necessary. + + + + + Initializes a new instance of the AddSlashPreprocessor class. + + + + + Somehow converts full path into name that will be stored in the zip archive. + + Name to process. + Converted name. + + + + Class used for representing chart axis scale. + + + + + Represents logarithmic scale. + + + + + Indicates whether datapoint plot from last to first. + + + + + Represents maximum value. + + + + + Represents minimum value. + + + + + Represents the log base. + + + + + Method used to copy the axis scale. + + Represents Chart value axis. + + + + This class is responsible for chart axis serialization. + + + + + Defines text rotation multiplier constant. + + + + + Represents dictionary for TickLabel to Attribute value. + + + + + Represents dictionary for TickMark to Attribute value. + + + + + Initializes static members of the ChartAxisSerializator class. + + + + + Serializes chart axis. + + XmlWriter to serialize into. + Axis to serialize. + + + + Serializes date axis. + + XmlWriter to serialize into. + Axis to serialize. + + + + Convert date unit to string. + + ExcelChartBaseUnit to serialize. + Date unit as string. + + + + Serializes category axis. + + XmlWriter to serialize into. + Axis to serialize. + + + + Serializes value axis. + + XmlWriter to serialize into. + Axis to serialize. + + + + Serializes series axis. + + XmlWriter to serialize into. + Axis to serialize. + + + + Serializes common part of the axis. + + XmlWriter to serialize into. + Axis to serialize. + + + + Returns pair for the specified axis, it is category axis for value axis and vice versa. + + Axis to get pair for. + Pair for the specified axis. + + + + Serializes cross axis. + + XmlWriter to serialize into. + Axis to serialize. + + + + Serializes tick mark. + + XmlWriter to serialize into. + Tag name to use. + Tick mark to serialize + + + + Serializes tick label position. + + XmlWriter to serialize into. + Axis to get tick label position from. + + + + Serializes number format used by the axis. + + XmlWriter to serialize into. + Axis to serialize number format for. + + + + Serializes axis gridlines. + + XmlWriter to serialize into. + Axis to serialize gridlines for. + + + + Serializes single gridline object. + + XmlWriter to serialize into. + Gridlines to serialize. + Name of the xml tag to use. + Parent workbook. + + + + Serializes axis position. + + XmlWriter to serialize into. + Axis to serialize. + + + + Serializes scaling tag and all necessary child tags. + + XmlWriter to serialize into. + Axis to serialize settings for. + + + + Serializes display unit. + + XmlWriter to serialize into. + Value to serialize. + Custom unit value (used only if displayUnit is set to custom). + + + + Serializes text settings. + + XmlWriter to serialize into. + Axis to serialize settings for. + + + + Serializes text settings. + + XmlWriter to serialize into. + + + + Object that gives access to border, interior and fill of the ChartSerieDataFormatImpl. + + + + + Provides access to filling options (border, interior and fill) of some chart object. + + + + + Gets border object. Read-only. + + + + + Gets interior object. Read-only. + + + + + Gets fill object. Read-only. + + + + + Gets Shadow object.Read-only + + + + + Gets the three_ D.Read-only + + + + + Parent data format to get fill objects from. + + + + + Initializes a new instance of the ChartFillObjectGetter class. + + Parent data format. + + + + Gets chart border object. Read-only. + + + + + Gets chart interior object. Read-only. + + + + + Gets chart fill object. Read-only. + + + + + Gets Shadow object.Read-only + + + + + + Gets the three_ D.Read-only + + + + + + Object that gives access to border, interior and fill. + + + + + Border object. + + + + + Interior object. + + + + + Fill object. + + + + + Shadow object + + + + + Three_D object + + + + + Initializes a new instance of the ChartFillObjectGetterAny class. + + Border object to use. + Interior object to use. + Fill object to use. + + + + Gets border object. Read-only. + + + + + Gets chart interior object. Read-only. + + + + + Gets fill object. Read-only. + + + + + Gets Shadow object.Read-only + + + + + + Gets the three_ D.Read-only + + + + + + This class is responsible for charts parsing. + + + + + This element represents end paragraph tag with language attribute. + + + + + This List contains the owner index count. + + + + + Chart Parser + + + + + + Extracts chart from XmlReader. + + XmlReader to serialize into. + Chart to serialize. + Chart item relations. + + + + Parse the stream and set the style id for the chart + + input alternate content stream + the input chart + + + + Parses the Chart default text properties. + + The Xml reader to parse from. + The chart to put the extracted data. + + + + Parses chart body properties + + + + + + + Parses Chart Paragraph Properties + + + + + + + Checks Default Text Settings for the axis. + + + + + Parses the extension list. + + The reader. + The chart. + + + + Parses the extension. + + The reader. + The chart. + + + + Parses the pivot options. + + The reader. + The chart. + + + + Parses the pivot options. + + The reader. + The chart. + + + + Extracts chart print settings from the reader. + + XmlReader to get data from. + Chart to put extracted data into. + Chart relations. + + + + Extracts pivot source. + + XmlReader to get pivot source from. + Chart to put extracted pivot source into. + + + + Parses user shapes. + + XmlReader to serialize into. + Chart to serialize. + Chart item relations. + + + + Parses main chart xml tag. + + XmlReader to extract data from. + Chart to put extracted data into. + Chart's relations. + + + + Parse the Extension list of chart + + input XML reader + Chart to put extracted extension lis info. + + Exception is thrown when reader or chart is null + + + + Parse the Extension element list of chart. + + input XML reader + Chart to put extracted extension element list. + Exception is thrown when reader or chart is null + + + + Parse the Data Display Options of extension. + + input XML reader + Chart to put extracted data display value. + Exception is thrown when reader or chart is null + + + + Parse the chart title / legend attributes for chart Ex + + input XML reader + output isoverlay boolean value + output position value + + + + Extracts pivot formats. + + XmlReader to get pivot formats from. + Chart to put extracted pivot formats into. + + + + Copies 3D settings from Chart3DRecord into chart. + + Chart to copy data into. + Record to copy data from. + + + + Extracts chart legend from XmlReader. + + XmlReader to extract data from. + Chart legend to put extracted data into. + Chart object that stores specified legend. + Chart relations collection. + + + + Convert the chartExLegend position and returns the chart legend position + + position short value + the chart legend position value + + + + Extracts legend entry from specified reader. + + XmlReader to extract legend entry from. + Legend to put extracted legend entry into. + Excel2007Parser object to use if necessary. + + + + Extracts 3-D view options from XmlReader. + + XmlReader to get data from. + Chart to put extracted options into. + Record with 3D view settings. + + + + Serializes error bars. + + XmlReader to extract data from. + Series to put extracted error bars into. + Chart item relations. + + + + Extracts error bar range. + + XmlReader to extract data from. + Represents Workbook. + Extracted range. + + + + Extracts trendlines collection. + + XmlReader to extract data from. + Series to put extracted data into. + Chart item relations. + + + + Extracts trend line. + + XmlReader to extract data from. + Series to put extracted data into. + Chart item relations. + + + + Extracts trend line label settings. + + XmlReader to extract data from. + Data label to serialize. + + + + Serializes surface (wall or floor). + + XmlWriter to serialize into. + Surface to serialize. + Parent data holder. + Drawing's relations. + + + + Extracts plotarea tag from XmlReader. + + XmlReader to get data from. + Chart to put extracted data into. + Chart item relations. + + + + parse the bar chart + + + + + Parses bar chart. + + XmlReader to extract chart from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Parse the Filtered Series + + + + + + + + + + + + Stores extracted axis id inside structures for future use. + + XmlReader to get data from. + Series list. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Parses bar 3D chart. + + XmlReader to extract chart from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts shape of the bar chart. + + XmlReader to extract data from. + First series in the list of series with the + same formatting. + + + + Extracts shape of the bar chart. + + XmlReader to extract data from. + Chart serie data format. + + + + Extracts part of the bar chart that is common for all bar charts. + + XmlReader to extract data from. + Chart to put extracted data into. + Chart item relations. + Indicates whether we are parsing 3D chart. + List that will get extracted series. + First extracted series. + + + + Parse Secondary Axis Filter + + + + + + + + + + + + + When we parsing the categoryfiltered chart, we need to find the filtered category + + + + + + + + + + Calculate the Filtercategroies values + + start row of the range + end row of the range + array of the range filter categorires + chart categories values + categories Lenth position value + catergores position value + + + + Supporting method for Find Filter + + + + + + + + Find the series or category Range + + + + + + + + + Find series in Row or Column. + + + + + + + Converts direction and grouping values into type of bar series. + + Represents direction of bar series. + Represents series grouping value. + Indicates whether we are parsing 3D chart. + Extracted chat type. + + + + Converts direction and grouping values into type of bar series. + + Represents direction of bar series. + Represents series grouping value. + Indicates whether we are parsing 3D chart. + Extracted chat type. + + + + Converts grouping value into type of area series. + + Area series grouping value. + Indicates whether we are parsing 3D chart. + Area chart type that corresponds to grouping and is3D values. + + + + Converts grouping value into type of line series. + + Line series grouping value. + Indicates whether we are parsing 3D chart. + Line chart type that corresponds to grouping and is3D values. + + + + Extracts area3D chart. + + XmlReader to extract data from. + Chart to serialize. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts area chart from XmlReader. + + XmlReader to get data from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts properties common to the area chart. + + XmlReader to extract data from. + Chart to put extracted data into. + Indicates whether we are parsing 3D chart. + Chart item relations. + List that will get extracted series. + + + + This method extracts common properties of the line charts. + + XmlReader to extract data from. + Chart to put extracted data into. + Indicates whether we are parsing 3D chart. + Chart item relations. + List that will get extracted series. + One of the extracted series. + + + + Extracts line3DChart from XmlReader. + + XmlReader to extract line 3d chart from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts line chart. + + XmlReader to extract data from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts bubble chart. + + XmlReader to extract data from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts 2-D surface chart from XmlReader. + + XmlReader to extract data from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts common part of the surface charts. + + XmlReader to extract data from. + Chart to put extracted data into. + Indicates whether we are parsing 3D chart. + Chart item relations. + List that will get extracted series. + + + + Extracts band formats from the stream. + + + + + + + Returns type of the series to create. + + Indicates whether surface is wireframe or not. + Indicates whether we are parsing 3D chart. + Surface chart type. + + + + Extracts radar chart. + + XmlReader to extract data from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts scatter chart. + + XmlReader to extract chart from. + Chart to serialize. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts pie chart. + + XmlReader to extract data from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts 3-D pie chart. + + XmlReader to extract data from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts pie of pie or pie of bar chart. + + XmlReader to extract data from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts stock chart. + + XmlReader to extract from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts hi-low lines or drop lines object from xml reader. + + XmlReader to extract data from. + Series object to extract. + + + + Extracts doughnut chart. + + XmlReader to extract data from. + Chart to put extracted data into. + Chart item relations. + Dictionary with axis id, key - series index, value - axis index (category or value). + + + + Extracts common properties of a pie charts. + + XmlReader to extract data from. + Chart to put extracted data into. + Type of the series to create. + Chart item relations. + List that will get extracted series. + One of the parsed series. + + + + Extracts data lables. + + XmlReader to extract data from. + Parent series. + Chart item relations. + Indiactes whether the series or chartEx series or not + + + + Serializes data label for single data point. + + XmlReader to extract data from. + Chart series to put extracted data into. + Chart item relations. + Boolean value indicates whether the series is chartEx series or not + + + + + Parse the DataLeabels extension lists + + XmlReader to extract data from. + Data labels to put extracted data into. + File Data Holder + Chart item relations. + + + + Parse the DataLables Extension and leaderlines. + + XmlReader to extract data from. + Data labels to put extracted data into. + File Data Holder + Chart item relations. + + + + Parse the DataLables leader lines. + + XmlReader to extract data from. + Data labels to put extracted data into. + File Data Holder + Chart item relations. + + + + Parse the data label visibilty settings for chart series + + input XML reader + Data labels visibilty to be set + + + + Parses single chart series of a bar chart. + + XmlReader to extract series from. + Parent chart object. + Type of the series to create. + Extracted chart series. + Chart item relations. + + + + Parse Series or category name filter + + + + + + + Parse Extension. + + XmlReader + Chart serie + + + + Parse data labels range. + + Xml reader + Chart series. + + + + parse datalabel range cache. + + Xml reader. + Chart series. + + + + Parses single chart series of a surface chart. + + XmlReader to extract series from. + Parent chart object. + Type of the series to create. + Extracted chart series. + Chart item relations. + + + + Extracts single chart series for pie chart. + + XmlReader to extract data from. + Chart to put extracted data into. + Type of the series to extract. + Chart item relations. + Extracted series. + + + + Extracts line series. + + XmlReader to extract data from. + Chart to put extracted series into. + Type of the extracted series. + Chart item relations. + Extracted series. + + + + Extracts scatter series. + + XmlReader to extract series data from. + Chart to put extracted series into. + Type of the series to extract. + Chart item relations. + Extracted series. + + + + Extracts radar series. + + XmlReader to extract data from. + Chart to put extracted data into. + Type of the series to create. + Chart item relations. + Extracted series. + + + + Extracts single chart series for bubble chart. + + XmlReader to extract data from. + Chart to put extracted series into. + Extracted series. + Chart item relations. + + + + Extracts single chart series for area chart. + + XmlReader to extract data from. + Chart to put extracted series into. + Type of the series to extract. + Chart item relations. + Extracted series. + + + + Parses common part of the series. + WARNING: this method doesn't call last Read(), so this call + must be made by parent item after series parsing complete. + + XmlReader to extract data from. + Series to put extracted data into. + Chart item relations. + + + + Parses name of the series. + + XmlReader to extract data from. + Series to put extracted name into. + + + + Indicates whether the text is null or whitespace. + + The text. + returns true if the text is null or whitespace otherwise false. + + + + Parses single data point. + + XmlReader to extract from. + Series to put data point into. + Parent relations. + + + + Extracts series values. + + XmlReader to extract data from. + Series to parse values for. + Array of series values. + Indicates whether axis is ValueAxis or CategoryAxis. + Range referencing series values. + + + + Get the range by given formula + + The parent workbook of the formula + Given formula + + + + + Get the range by given formula + + The parent workbook of the formula + worksheet of parent workbook + formula array to be converted + the range represetnted by the formula tokens + + + + Extracts null reference tag. + + XmlReader to extract data from. + String which is enclosed inside the formula tag. + + + + Filtered Number Reference + + input XML reader + output values parsed + output filtered value reference + output format code + the address + + + + Extracts string reference tag. + + XmlReader to extract data from. + String which is enclosed inside the formula tag. + + + + Filtered series range + + + + + + + + Extracts multi level string reference tag. + + XmlReader to extract data from. + String which is enclosed inside the formula tag. + + + + Parse the multi level string cache of the chart. + + XmlReader to extract the data from. + Chart Series to set the multi level cache data to. + Tag name to start parsing. + + + + + Extracts series marker from XmlReader. + + XmlReader to extract data from. + Series to serialize marker for. + + + + Parser marker fill. + + Reader to get fill information from. + Data format to put extracted marker information into. + Parser to help with color parsing. + + + + Extracts up/down bars. + + XmlReader to extract data from. + chart to put up/down bars into + Series to put up/down bars into. + Chart item relations. + + + + Extracts single drop bar (up or down bar). + + XmlReader to extract data from. + Drop bar to put extracted data into. + Parent file data holder. + Chart item relations. + + + + This method extracts chart data table. + + XmlReader to extract data table from. + Chart to put extracted data into. + + + + Extracts series formatting options. + + XmlReader to extract formatting from. + Series to extract formatting from. + Chart item relations. + + + + Extracts default text formatting. + + XmlReader to extract data from. + Object with text formatting. + Excel2007Parser to use if necessary. + + + + Extracts number or string value from the reader. + + XmlReader to get value from. + Extracted object. + + + + Assign the key as chart group for common data points collection + + chart to be changed + + + + Extracts data lables from chart. + + XmlReader to extract data from. + Parent Chart + Chart item relations. + chart group identified by this values,added to dictionary + + + + Serializes data label for single data point. + + XmlReader to extract data from. + Parent Chart + Chart item relations. + chart group identified by this values,added to dictionary + + + + Parse the invert solid fill format. + + Preserved stream. + Chart serie. + returns the color object. + + + + Class used to parse the chartEx (Excel 2016 charts) + + + + + Extracts chart from XmlReader. + + XmlReader to serialize into. + Chart to serialize. + Chart item relations. + + + + Parse the chart data from the reader + + input XML reader + input chart + input chart relations + the chart data parsed + + + + Parse the external Data attributes and store it in chart + + input XML reader + input chart + + + + Parse the every Data node of collection and returns the list + + input XML reader + input chart + relation + the chart data parsed + + + + Parse the (string/numeric) dimension data + + input XML reader + input cache + + + + Parse the (string/numeric) data values + + input XML reader + input cache + boolean value indicates whether the dimension is string or numeric + + + + Parse the chart element data from the reader + + input XML reader + input chart + input chart relations + Chart serie Index and dataId pair + + + + Parse the chart plot area from the reader + + input XML reader + input chart + input chart relations + excel 2007 parser + Chart serie Index and dataId pair + + + + Parse the chart plot area region from the reader + + input XML reader + input chart + input chart relations + excel 2007 parser + secondary axis Id + The collection of data Id and series index pair + + + + + Parse the pareto line format + + input XML reader + input Pareto Line format + input File Data holder + input chart relations + Returns the axis id integer value + + + + Parse the ChartEx series and set the chart type and format Index + + input XML reader + input chart + output pareto line series + the output series + + + + Parse the chartEx series properties and set the series settings + + input XML reader + input chartEx series + input relation collections + + + + Parse the binning properties for histogram and pareto charts + + input XML reader + input chart serie data format + + + + Parse the chartEx series visibility for series + Box and whisker , waterfall chart + + input XML reader + input Serie Data Format + + + + Parse the chart plot area surface from the reader + + input XML reader + input chart + input chart relations + excel 2007 parser + + + + Parse the chart axes from the reader + + input XML Reader + input secondaryAxis ID + hashCodeList to identify the + Parser used to parse the Axis + input chart + Input File Data Holder + Excel 2007 parser + input chart relations + the hashcode for an axis, which will not be further modified + + + + Parse the Axis element and retruns the required axis + + input axis reader + input Axis Parser + input chart + current parsed axis id + secondary axis id + + + + + Parse the data label visibilty settings for chart series + + input XML reader + Data labels visibilty to be set + + + + Class used for parsing charts. + + + + + Contains chart line pattern values. + + + + + Initializes static members of the ChartParserCommon class. + + + + + Parses text area. + + XmlReader to extract data from. + Text area to put extracted data into. + Parent data holder object. + Chart's relations. + + + + Parses text area. + + XmlReader to extract data from. + Text area to put extracted data into. + Parent data holder object. + Chart's relations. + Default font size. + + + + Parses text area tag. + + XmlReader to extract data from. + Text area to put extracted data into. + Parent data holder object. + Chart's relations. + Default font size. + + + + Extracts default text formatting. + + XmlReader to extract data from. + Object with text formatting. + Excel2007Parser to use if necessary. + + + + Extracts value from XmlReader.. + + XmlReader to extract data from. + Extracted value. + + + + Assigns default value for val attribute. + + LocalName of the current tag. + Assigned value. + + + + Extracts boolean value from xml tag. + + XmlReader to extract data from. + Extracted value. + + + + Extracts int value from xml tag. + + XmlReader to extract data from. + Extracted value. + + + + Extracts double value from xml tag. + + XmlReader to extract data from. + Extracted value. + + + + Extracts Line properties of chart. + + XmlReader to extract data from. + Chart line properties to parse. + Excel2007Parser to help in extraction process. + + + + Extracts pattern fill. + + XmlReader to extract data from. + Fill to put extracted data into. + Excel2007Parser to help in extraction process. + + + + Extracts solid fill. + + Fill object to put extracted transparancy value into. + XmlReader to extract data from. + Object that is used to help in color parsing. + Color object to put extracted color into. + + + + Extracts solid fill. + + XmlReader to extract data from. + Interior to put extracted data into. + Excel2007Parser to help in extraction process. + + + + Extracts solid fill. + + XmlReader to extract data from. + Interior to put extracted data into. + Excel2007Parser to help in extraction process. + + + + Extracts solid fill. + + XmlReader to extract data from. + Object that is used to help in color parsing. + Color object to put extracted color into. + + + + Extracts marker fill transparency. + + XmlReader to extract data from. + Object that is used to help in color parsing. + Color object to put extracted color into. + Set alpha value to the marker fill transparncy property. + + + + Extracts solid fill. + + XmlReader to extract data from. + Object that is used to help in color parsing. + Color object to put extracted color into. + To preserve the shape properties for scheme color + + + + Extracts solid fill. + + XmlReader to extract data from. + Object that is used to help in color parsing. + Color object to put extracted color into. + + + + Parse color object. + + XmlReader to extract data from. + Object that is used to help in color parsing. + Color object to put extracted color into. + Alpha value to be returned. + + + + Extracts solid fill. + + XmlReader to extract data from. + Object that is used to help in color parsing. + To preserve the shape properties for scheme color + Color object to put extracted color into. + + + + Extracts solid fill. + + XmlReader to extract data from. + Object that is used to help in color parsing. + To preserve the shape properties for scheme color + + + + Extracts rgb color. + + XmlReader to extract data from. + Extracted color. + + + + Extracts rgb color. + + XmlReder to extract data from. + Alpha component of the extracted color (0-100000). + Tint part of the extracted color (0-100000) or -1 if no tint part was present. + Shade part of the extracted color (0-100000) or -1 if no shade part was present. + Extracted color. + + + + + Extracts scheme color and converts it into rgb. + + XmlReader to extract data from. + Excel2007Parser to help in extraction process. + Extracted color. + + + + Extracts scheme color and converts it into rgb. + + XmlReader to extract data from. + Output alpha value. + Excel2007Parser to help in extraction process. + Extracted color. + + + + + Get the standard theme colors defined in XlsIO + + input color name + Equivalent color returned from the input color name + + + + Extracts preset color and converts it into rgb. + + XmlReader to extract data from. + Output alpha value. + Excel2007Parser to help in extraction process. + Extracted color. + + + + + Extracts system color and converts it into rgb. + + XmlReader to extract data from. + Output alpha value. + Excel2007Parser to help in extraction process. + Extracted color. + + + + + Update the parsed color. + + XmlReader to extract data from. + Excel2007Parser to help in extraction process. + Output alpha value. + Updated color. + + + + + Round off the Luminance. + + Luminance to be updated. + Updated Luminance. + + + + Round off the saturation. + + Saturation to be updated. + Updated saturation. + + + + Serialize line properties. + + XmlReader to serialize into. + Chart line properties to serialize. + Indicates whether border is rounded or not + Excel2007Parser to help in extraction process. + + + + Parses arrow properties and update in ChartBorderImpl properties. + + The XML reader containing arrow settings attributes. + The ChartBorderImpl object to be updated with arrow settings. + A boolean indicating whether the arrow is a head arrow (true) or tail arrow (false). + + + + Returns the arrow type by checking the value. + + The string representation of the arrow type. + The ExcelShapeArrowStyle representing the arrow type. + + + + Returns teh corresponding ExcelShapeArrowWidthLength for arrow size with the given length and width. + + The string representation of the arrow length. + The string representation of the arrow width. + The ExcelShapeArrowWidthLength representing the arrow size. + + + + Extracts picture fill. + + XmlReader to extract data from. + Fill to put extracted data into. + Chart item relations. + Parent file data holder. + + + + Extracts picture fill. + + XmlReader to extract data from. + Fill to put extracted data into. + Chart item relations. + Parent file data holder. + Relation collection + + + + Extracts text from XmlReader and places it into text area. + + XmlReader to extract data from. + Text area to put extracted data into. + Parser object that helps to extract data. + + + + Parse and returns the formula / value from the reader + + input XML reader + output formula + output value + + + + Extracts layout from XmlReader and places it into text area. + + XmlReader to extract data from. + Layout to put extracted data into. + Parser object that helps to extract data. + + + + Parses manual layout. + + XmlReader to read rich text from. + manualLayout that will get extracted the manual position settings. + Parser object that helps to extract data. + + + + Parse the string cache and used to stores it in array + + XML reader object used to parse + the parsed string array + + + + Parses rich text. + + XmlReader to read rich text from. + Text area that will get extracted rich text. + Parser object that helps to extract data. + + + + Parses text area body properties. + + XmlReader to read body properties from. + Text area to put body properties into. + + + + Extracts list styles for a text area. + + XmlReader to extract list styles from. + Text area that will get extracted settings. + + + + Parses paragraph. + + XmlReader to get paragraph tag from. + Text area that will get paragraph information (formatting and text). + Parser object that helps to extract data. + Default text area that will get default paragraph information. + + + + Parses fld element. + + XmlReader to get paragraph run from. + Text area to put extracted properties into. + Parser object that helps to extract data. + Default text settings. + Default font size + + + + Parses paragraph properties. + + XmlReader to get data from. + + + + Extracts default paragraph properties from the reader. + + Reader to get properties from. + Instance of Excel2007Parser that helps in parsing process. + Default paragraph properties. + + + + Extracts default paragraph properties from the reader. + + Reader to get properties from. + Instance of Excel2007Parser that helps in parsing process. + Default font size. + Default paragraph properties. + + + + Extracts color of the default paragraph. + + + + + + + Parses paragraph run. + + XmlReader to get paragraph run from. + Text area to put extracted properties into. + Parser object that helps to extract data. + Default text settings. + + + + Parses paragraph run. + + XmlReader to extract paragraph tag from. + Text area that will get paragraph run information (formatting and text). + Parser object that helps to extract data. + Default text settings. + + + + + Copying common ChartTitle format after Chart tag + + Represents the ChartTitle area and TextFormats + Represents parsed TextFormats of ChartTitle after chart tag + + + + Extracts gradient stops collection from the specified reader. + + XmlReader to extract data from. + Excel2007Parser to help in extraction process. + Extracted gradient stops. + + + + Extracts gradient stops collection from the specified reader. + + XmlReader to extract data from. + Excel2007Parser to help in extraction process. + Extracted gradient stops. + + + + Get the value of the charts property + + XmlReader to extract from + The reader value of the decimal number + + + + + Extracts gradient path. + + XmlReader to extract from. + Resulting gradient stop collection + + + + Extracts GradientStops collection. + + XmlReader to extract data from. + Parser object that helps to extract data. + Extracted collection. + + + + Extracts single gradient stop settings. + + XmlReader to extract data from. + Excel parser to help in extraction process. + Extracted gradient stop. + + + + Parse the Scheme color. + + + + + + + + Extracts color settings. + + XmlReader to extract data from. + Transparency part of the extracted color (0-100000) or -1 if no transparecy part was present. + Tint part of the extracted color (0-100000) or -1 if no tint part was present. + Shade part of the extracted color (0-100000) or -1 if no shade part was present. + Excel parser to help in extraction process. + Color extracted. + + + + + Converts Excel 2007 gradient stops collection into set of properties used by Excel 97-2003. + + Gradient stops collection to convert. + Fill object to put extracted properties into. + + + + To check the default settings of text area + + Text area to check the default values + + + + Copies color data from gradient stop. + + Color object to copy data into. + Gradient stop to copy color data from. + + + + Extracts shape properties. + + XmlReader to extract data from. + Object that provides access to filling objects. + FileDataHolder of the document that is parsed. + Chart item relations. + + + + Parses the lighting. + + The reader. + The shadow. + The relations. + The holder. + + + + Checks the specified lighttype. + + The lighttype. + + + + + This method tries to get the Bevel properties read from the XML + + Linewidth mentions the Width of the line and represents the 'W' tag + LineHeight mentions the Heigth and represents the 'H' tag + Presetshape mentions the shape of the 3D feature + XmlReader to extract data from. + it returns the Excel2007Chartbevel properties or Noangle will be returned(which means 0) + + + + This method tries to get the material properties + + Material is denotes the type of the Material properties read from the XML + XmlReader to extract data from. + Excel 2007 chartmaterial properties or Noeffect value will be returned(which means 0) + + + + Parses the Shadow Properties + + XmlReader to extract data from. + Shadow object to access the properties + Object that provides access to filling objects. + FileDataHolder of the document that is parsed. + Chart item relations. + Excel 2007 Parser + + + + + + It gets the Blur Radius Tag value + It gets the Sizex Tag value + It gets the Sizey Tag value + It gets the Distance Tag Tag value + It gets the Direction Tag value + It gets the Alignment Tag value + It gets the Rotationwithshape Tag value + Excel 2007 Parser + Shadow object to access the properties + Xml reader to extract data from. + The Excel2007chartpresetsouter value or Noshadow value will be returned(Which means 0) + + + + Checks the specified Custom Outer Shadow . + + The blurval. + The sizex. + The disttag. + The dirtag. + The align. + The rot. + The shadow. + The reader. + The parser. + + + + + Parses the shadow alpha. + + The reader. + The shadow. + + + + Extracts value from XmlReader.. + + XmlReader to extract data from. + Extracted value. + + + + This Method tries to get the value of perspective shadow + + It gets the Blur Radius Tag value + It gets the Sizex Tag value + It gets the Sizey Tag value + It gets the Kx Tag value + It gets the Distance Tag Tag value + It gets the Direction Tag value + It gets the Alignment Tag value + It gets the Rotationwithshape Tag value + the Excel2007Chartpresetsperspective value or NoShadow value will be returned(which means 0) + + + + This method tries to get the Inner shadow values based on the parsed Info + + It gets the Blur Radius Tag value + It gets the Distance Tag Tag value + It gets the Direction Tag value + This returns the Excel2007chartPresetsInner value or No shadow (which means 0) + + + + Checks the Custom Inner Shadow. + + The blurval. + The disttag. + The dirtag. + The shadow. + The reader. + if set to true [Current format has Custom shadow style]. + + + + + This method tries to detect gradient color settings (One or Two color gradient). + + Gradient stops to detect gradient color + Detected gradient color or -1 if it is neither one nor two color gradient. + + + + Detects gradient variant type. + + Gradient stops to detect variant type for. + Already detected gradient style. + Already detected gradient color. + Indicates whether gradient stops for preset + gradient are in inverted order. This argument is used in the case of ExcelGradientColor.Preset. + Detected gradient variant type. + + + + Detects diagonal gradient variant. + + Checks whether gradient stops in the collection are in inverted order or not. + Represents double order variant. + Detected gradient variant. + + + + Detects gradient variant. + + Checks whether gradient stops in the collection are in inverted order or not. + Represents double ordered variant. + Detected gradient variant. + + + + Detects gradient variant for FromCorner gradient style. + + FillToRect used by gradient stops collection. + Detected gradient variant. + + + + Checks whether gradient stops in the collection are in inverted order or not. + + Gradient stops to check. + Gradient color type. + Indicates whether gradient stops for preset + gradient are in inverted order. This argument is used in the case of ExcelGradientColor.Preset. + True if gradient stops are inverted. + + + + Detect Gradient style. + + Gradient stops to check. + Detected Gradient style. + + + + Gets gradient style for rectangular gradient. + + Gradient stops collection to get gradient style for. + Converted gradient style. + + + + Gets gradient style for linear gradient. + + Gradient stops collection to get gradient style for. + Converted gradient style. + + + + Tries to find preset gradient corresponding to the specified collection. + + Gradient stops collection to analyze. + Indicates whether gradient stops are in inverted order. + Preset value or ( ExcelGradientPreset )( -1 ) if there is no corresponding preset value found. + + + + Sets GradientDegree property if necessary. + + Gradient stops to detect degree from. + Detected gradient color. + Fill to set gradient degree for. + + + + Parse the chart title stream + + input chart title stream + input chart text area element + parent data holder for chart + relation collections of chart + + + + This class is responsible for chart object serialization into XmlWriter in Excel 2007 SpreadsheetML format. + + + + + Default Extent X + + + + + Default Extent Y + + + + + Category Filter + + + + + Find Filter + + + + + ChartType + + + + + One argument constructor + + boolean value indicates whether the chart is dummy for chartEx + + + + Default constructor + + + + + Serializes chart inside XmlWriter. + + XmlWriter to serialize into. + Chart to serialize. + Name of the xml file containing chart item. + + + + Serializes the Chart default text properties. + + XmlWriter to serializes into. + chart to get the data to serialize. + + + + Serializes the pivot options. + + The writer. + The chart. + + + + Serializes the pivot options. + + The writer. + The chart. + + + + Serializes pivot source tag if necessary. + + XmlWriter to serilaize into. + Chart to serialize pivot formats tag for. + + + + Serializes pivot source tag if necessary. + + XmlWriter to serilaize into. + Chart to serialize pivot source tag for. + + + + Gets the pivot source. + + The pivot sheet. + The pivot table. + + + + + Serializes shapes. + + XmlWriter to serialize into. + Chart to serialize shapes for. + Name of the xml file containing chart item. + + + + Serializes chart printer settings. + + XmlWriter to serialize into. + Object that stores settings to serialize. + + + + Serializes chart legend. + + XmlWriter to serialize into. + Chart legend to serialize. + Parent chart object. + + + + Serializes single legend entry. + + XmlWriter to serialize legend entry into. + Legend entry to serialize. + Legend entry index. + Parent workbook object. + + + + Serializes view 3D. + + XmlWriter to serialize legend entry into. + Chart to serialize shapes for. + + + + Serializes error bars. + + XmlWriter to serialize into. + Error bars to serialize. + Error bars direction (x or y). + Parent workbook. + + + + Serializes trendlines collection. + + XmlWriter to serialize into. + Trendlines to serialize. + Parent workbook. + + + + Serializes trend line. + + XmlWriter to serialize into. + Trend line to serialize. + Parent workbook. + + + + Serializes trend line label settings. + + XmlWriter to serialize into. + Data label to serialize. + + + + Serializes surface (wall or floor). + + XmlWriter to serialize into. + Surface to serialize. + Name of the top xml tag to use. + Parent chart object. + + + + Serializes plotarea tag and everything inside it. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serialize the data labels only for empty chart + + the input XML writer + + + + Serializes plot area tag for pivot chart. + + + + + + + + Serializes the bar chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes bar chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized bar series. + + + + Serializes axis id's for bar chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + + + + Serializes the bar3 D chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes the shape of the bar chart from its type + + XmlWriter to serialize into. + Input Excel chart type + + + + Serialize bar3D chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized 3Dbar series. + + + + Serializes gap depth. + + XmlWriter to serialize into. + Chart to serialize gap depth for. + + + + Serializes the bar shape. + + XmlWriter to serialize into. + The base format. + The top format. + + + + Serializes shape of the bar chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + + + + Serializes part of the bar chart that is common for all bar charts. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized bar series. + + + + Serializes chart series with the same formatting. + + XmlWriter to serialize into. + Chart to get series from. + First series in the list of the series to serialize. + It is used to determine which series should be serialized. + Delegate used to serialize chart series. + Number of serialized series. + + + + serialiae filtered serie + + + + + + + Serilaize filtered series + + + + + + + Serialize Fitered Text + + + + + + + Serialize filtered text values + + + + + + + + serialize filtered category + + + + + + + + serialize filtered values + + + + + + + + Returns the series filter type + + + + + + + Serializes grouping tag. + + XmlWriter to serialize into. + Chart to serialize grouping for. + + + + Serializes the chart grouping. + + XmlWriter to serialize into. + Chart to get series from. + + + + Serializes the area3 D chart. + + XmlWriter to serialize into. + Chart to get series from. + + + + Serializes area3D chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized area3D series. + + + + Serializes the area chart. + + XmlWriter to serialize into. + Chart to get series from. + + + + Serializes area chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized area series. + + + + Serializes properties common to the area chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + This method serializes common properties of the line charts. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized line series. + + + + Serializes the line3 D chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serialize line3DChart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized line3D series. + + + + Serializes the line chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes line chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized line series. + + + + Serialize bubble chart. + + XmlWriter to serialize chart into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized bubble series. + + + + Serializes the surface chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes 2-D surface chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes the surface3 D chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes 3-D surface chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes common part of the surface charts. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes preserved band formats if necessary. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes main chart tag. + + XmlWriter to serialize into. + Chart to serialize. + Index of the series group to serialize. + Number of the serialized series. + + + + Serializes main chart tag. + + XmlWriter to serialize into. + Chart to serialize. + Index of the series group to serialize. + Number of the serialized series. + + + + Serializes the radar chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes radar chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes scatter chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes the pie chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes pie chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes the pie3 D chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes 3-D pie chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes the of pie chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes pie of pie or pie of bar chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes stock chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes the doughnut chart. + + XmlWriter to serialize into. + Chart to serialize. + + + + Serializes doughnut chart. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes common properties of pie charts. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with the + same formatting to serialize. + Number of the serialized series. + + + + Serializes data lables. + + XmlWriter to serialize into. + DataLabels to serialize. + Parent series. + + + + Serializes number format. + + XmlWriter to serialize into. + dataLabels of data points which have number format to serialize + + + + Serializes data label for single data point. + + XmlWriter to serialize into. + Data labels to serialize. + Data point index. + Parent chart object. + + + + Serializes data labels settings. + + XmlWriter to serialize into. + Data labels to serialize. + Parent chart. + + + + Serializes default text formatting. + + XmlWriter to serialize into. + Text formatting to serialize. + Parent workbook. + + + + Serializes IsVaryColors option. + + XmlWriter to serialize into. + First series in the list of series with the + same formatting to serialize vary colors option for. + + + + Serializes single chart series for bar chart. + + XmlWriter to serialize into. + Series to serialize. + + + + Serialize the InvertIfNegativeColor. + + Xml writer + Series to serialize. + + + + Find the category filter + + + + + + + To update the filtered value range + + + + + + Check whether any categories in chart is filtered + + Parent chart + + + + + Update the category filterlabel range + + + + + + serialize the filtered category or series name + + + + + + + + Serialize values from cells range. + + Xml writer + Chart series + + + + Serialize datalabel range cache. + + Xml writer + value form cells values. + + + + serilaize the category name + + + + + + + Serializes single chart series for pie chart. + + XmlWriter to serialize into. + Series to serialize. + + + + Serializes error bars. + + XmlWriter to serialize into. + Series to serialize. + + + + Serialize line series. + + XmlWriter to serialize into. + Chart line series to serialize. + + + + Serializes scatter series. + + XmlWriter to serialize into. + Chart scatter series to serialize. + + + + Serializes chart radar series. + + XmlWriter to serialize into. + Chart series to serialize. + + + + Serializes single chart series for bubble chart. + + XmlWriter to serialize into. + Series to serialize. + + + + Serializes single chart series for area chart. + + XmlWriter to serialize into. + Series to serialize. + + + + Serializes common part of the series. + WARNING: this method doesn't call last WriteEndElement(), so this call + must be made by parent item after series serialization complete. + + XmlWriter to serialize into. + Series to serialize. + + + + Serializes single data point. + + XmlWriter to serialize into. + Data point to serialize. + + + + Serializes series category. + + XmlWriter to serialize into. + Series to serialize category labels for. + + + + Serializes series category. + + XmlWriter to serialize into. + Series to serialize category labels for. + + + + Serializes series values. + + XmlWriter to serialize into. + Series to serialize values for. + + + + Serializes series values. + + XmlWriter to serialize into. + Series to serialize values for. + + + + Serializes series values. + + XmlWriter to serialize into. + Range to serialize values for. + Name of the xml tag to use. + + + + Serializes the normal reference. + + The writer. + The range. + The values. + Name of the tag. + + + + Serializes number or string reference. + + + + + + + Gets the string reference. + + The range. + + + + + Serializes number references. + + XmlWriter to serialize into. + Range to serialize values for. + Range values to serialize cache values for. + + + + This function is used for serializing the number cache values. + + This is used for serializing the chart date in XML format. + This is Holding the chart serie type of values. + + + + Serializes string references. + + XmlWriter to serialize into. + Range to serialize values for. + + + + Serializes String references. + + XmlWriter to serialize into. + Range to serialize values for. + + + + This function is used for serializes the string cache values for the current chart serie. + + Used to write the string cache values in XML format. + This is holding the Chart Serie contents. + + + + This is used for serializes the Category type of string Cache values. + + This is used to write the chart serie category values in XMl format. + This is holding the Chart serie contents. + + + + Serializes Multi level string references. + + XmlWriter to serialize into. + Range to serialize values for. + Range values to serialize cache values for. + + + + Serializes multi level string cache. + + XmlWriter to serialize into. + Chart series to get the cache data from. + + + + Serializes the formula if the range is null + + XMLWriter to serialize into + Tag to serialize values for + Formula to serialize for the tag + + + + Serializes chart axes. + + XmlWriter to serialize into. + Chart to serializes axes of. + + + + Serializes the pivot axes. + + XmlWriter to serialize into. + Chart to serialize. + The relations. + + + + Serializes series marker if necessary. + + XmlWriter to serialize into. + Series to serialize marker for. + + + + Serializes series marker if necessary. + + XmlWriter to serialize into. + Series to serialize marker for. + + + + Serializes line with the specified color. + + XmlWriter to serialize into. + Line color. + Parent workbook. + + + + Serializes line with the specified color. + + XmlWriter to serialize into. + Line color. + Parent workbook. + + + + Serializes line with the specified color. + + XmlWriter to serialize into. + Line color. + Parent workbook. + + + + Serializes up/down bars. + + XmlWriter to serialize into. + Chart to serialize. + First series in the list of series with same + formatting to serialize up/down bars for. + + + + Serializes single drop bar (up or down bar). + + XmlWriter to serialize into. + Drop bar to serialize. + Name of the main tag. + Chart to serialize dropbar for. + + + + Serializes chartsheet into specified writer. + + XmlWriter to serialize into. + Chart to serialize. + Id of the drawing relation with chart object.. + + + + Serializes chartsheet drawing part. + + XmlWriter to serialize into. + Chart to serialize drawing for. + Relation id of the drawing part. + + + + Serializes the chart object as absolute anchor + + input XML writer + input chart + input drawing relation id + boolean value indicates whether the chart is sheet or not + + + + Serialize the fall back content for chartEx sheet + + nput XML writer + input relation Id + + + + This method serializes chart data table. + + XmlWriter to serialize into. + Chart to serialize data table for. + + + + Serializes series value that were entered directly. + + XmlWriter to serialize into. + Values to serialize. + + + + Serializes series value that were entered directly. + + XmlWriter to serialize into. + Values to serialize. + Tag name to idendify whether this is category or value. + + + + Converts object into xml string. + + Value to convert. + Converted value. + + + + Serializes data lables. + + XmlWriter to serialize into. + parent chart + data points to be serialized + + + + This delegate is used for series serialization. + + XmlWriter to serialize series into. + Series to serialize. + + + + This class is responsible for chartEx object (all) serialization into XmlWriter in Excel SpreadsheetML format. + + + + + Represents dictionary for TickMark to Attribute value. + + + + + Initialize the members of this class + + + + + Serialize the chart + + input XML writer + input chart + + + + Serialize the chart tag input element + + input XML writer + input chart + input relations + + + + Serializes plotarea tag and everything inside it. + + XmlWriter to serialize into. + Chart to serialize. + input relation collection + + + + Serialize the required axes + + XmlWriter to serialize into. + Chart to serialize. + chart type of the chart + input relation collection + + + + Serialzie the single axis + + input XML writer + input axis to be serialized + input Chart to serialize. + input relation collection + axis Id of the axis + + + + Serialzie the single axis common properties + + input XML writer + input axis to be serialized + input Chart to serialize. + input relation collection + axis Id of the axis + + + + Serialize the axis shape and text properties + + input XML writer + input axis to be serialized + input Chart to serialize. + input relation collection + + + + Serialzie the axis display unit + + input XML writer + input axis to be serialized + input Chart to serialize. + input relation collection + axis Id of the axis + + + + Serialize the chart's every pareto line as series + + input XML writer + input chart + input chartType + + + + Serialize the input serie and everything inside it. + + input XML writer + input chart serie + input chart serie Index for data referring + chart type + input chart + relation collection of the chart + + + + Serialize the input chart serie layout properties + + input XML writer + input chart serie + input chart + relation collection of the chart + + + + Serialize the subtotal data points of the series + + input XML writer + input serie to subtotal serialized + + + + Serialize the bin properties of the chart + + input XML writer + input chart serie data format for binning properties + input chart + + + + Serialize the single chart serie data labels + + input XML writer + input serie to data labels serialized + input chart + input chart relations + + + + Serializes the input data label settings + + input XML writer + input data labels + paret chart of the data labels + chart relation collection + + + + check whether the frame format is formatted or not + + input chart frame format impl + the boolean value + + + + Serializes number format. + + XmlWriter to serialize into. + dataLabels of data points which have number format to serialize + + + + Serialize the data point properties of the chart serie + + input XML writer + input chart serie + + + + Serialize the chart serie name + + input XML writer + input chart serie + + + + Serialize the single chart serie attributes + + input XML writer + input chart serie + chart type of the chart + chart serie index + boolean value indicates whether the pareto line option is serialized or not + + + + Serialize the chart legend + + input XML writer + input chart legend + input chart + + + + Serialize the chart text area properties for text elements + + input XML writer + input chart text area + input chart + input relation collection + default font size for text area + input XML elemet parent + boolean value indicates whether the title is auto + boolean value indicates whether element is chart title + + + + Serialize the chart text element properties for chart title and legend + + input XML writer + input position of element + boolean value indicates the layout of element + + + + Serialize the chart text area Tx and rich + + input XML writer + input chart text area + input chart + default font size for text area + boolean value indicates whether the title serialized as rich text or not + + + + Serialize the chartEx data element + + input XML writer + input chart + + + + Individial series data serialized with this. + + input XML chart + input chart serie + serie index + chart type + + + + Serialize the dimension data for series + + input XML writer + input range + input direct values array + boolean value indicates whether range is in row + number format code + Indeicates whether the range is category or series values + + + + Serializes chart printer settings. + + XmlWriter to serialize into. + Object that stores settings to serialize. + + + + This class contains common code used for charts serialization. + + + + + Key - ExcelChartLinePattern, + Value - pair, where key is Excel 2007 pattern value, value - preset pattern of the pattern fill. + + + + + Jagged Array represents the Outer Shadow Attributes + + + + + Jagged Array represents the Inner Shadow Attributes + + + + + Jagged Array represents the Perspective Shadow Attributes + + + + + Jagged Array represents the 3D Bevel Attributes + + + + + Jagged Array represents the 3D Material Attributes + + + + + Jagged Array represents the 3D Lighting Attributes + + + + + Initializes static members of ChartSerializatorCommon class. + + + + + Serializes frame format. + + XmlWriter to serialize into. + Fill format to serialize. + Parent chart object. + Indicates whether area corners should be rounded. + + + + Serializes frame format. + + XmlWriter to serialize into. + Fill format to serialize. + Parent chart object. + Indicates whether area corners should be rounded. + + + + Serializes frame format. + + XmlWriter to serialize into. + Fill format to serialize. + Parent file data holder. + Chart's relations collection + Indicates whether area corners should be rounded. + + + + This method serailizes the Shadow propeties + + XmlWriter to serialize into. + Shadow format to serialize into + Whether the current format contains the Custom Shadow Style + + + + Serialize the other effectlst data preserved on parsing + + input XML writer + the parent shadow object + + + + Serializes the inner shadow. + + XmlWriter to serialize into. + The jagged array index of the InnerAttributeArry. + if set to true [custom shadow style]. + The ShadowImpl object. + + + + This method Serailizes the Outer Shadow + + XmlWriter to serialize into. + the jagged array index of OuterAttributeArry + if set to true [custom shadow style]. + The ShadowImpl object + + + + This method Serailizes the Outer Shadow + + XmlWriter to serialize into. + the jagged array index of OuterAttributeArry + if set to true [custom shadow style]. + The ShadowImpl object + + + + This method serializes the Perspective shadow properties + + XmlWriter to serialize into. + the jagged array index of PerspectiveAttributeArry + if set to true [custom shadow style]. + The ShadowImpl object + + + + This method Serailizes the 3DProperties + + XmlWriter to serialize into. + ThreeD format + + + + This method serailize the Lighting properties + + XmlWriter to serialize into. + the jagged array index of LightingPropertiesArray + + + + This method serialize the Material properties + + XmlWriter to serialize into. + the jagged array index of MaterialPropertiesArray + + + + This method serialize the Bevel top + + XmlWriter to serialize into. + the jagged array index of bevelpropertiesArray + + + + This method serialize the Bevel top + + XmlWriter to serialize into. + the jagged array index of bevelpropertiesArray + Bevel top Height Value + Bevel top width Value + + + + This method serializes the Bevel Bottom + + XmlWriter to serialize into. + the jagged array index of Bevelproperties Array + + + + This method serializes the Bevel Bottom + + XmlWriter to serialize into. + the jagged array index of Bevelproperties Array + Bevel bottom Height Value + Bevel bottom width Value + + + + Serializes fill object. + + XmlWriter to serialize into. + Fill to serialize. + Parent file data holder. + Chart's relations collection + + + + Serializes text area. + + XmlWriter to serialize into. + Text area to serialize. + Parent workbook. + Chart's relations. + + + + Serialize xml tag that contains value attribute with tag value. + + XmlWriter to serialize into. + Tag name to serialize. + Value to serialize. + + + + Serialize the double value attributes. + + + + + + + + Serialize xml tag that contains value attribute with tag value. + + XmlWriter to serialize into. + Tag name to serialize. + Namespace of the xml tag. + Value to serialize. + + + + Seralize the double value + + + + + + + + + Serialize xml tag that contains value attribute with tag value. + + XmlWriter to serialize into. + Tag name to serialize. + Value to serialize. + + + + Serializes chart line properties. + + XmlWriter to serialize into. + Border to serialize. + Parent workbook. + + + + Serializes pattern fill. + + XmlWriter to serialize into. + Color to serialize. + Indicates whether color is automatic and should be ignored or not. + Preset dash value. + Preset pattern value. + Parent workbook. + + + + Serializes pattern fill. + + XmlWriter to serialize into. + Foreground color. + Indicates whether foreground color is auto and foreColor argument should be ignored. + Background color. + Indicates whether background color is auto and backColor argument should be ignored. + Preset pattern value. + Parent workbook. + + + + Serializes pattern fill. + + XmlWriter to serialize into. + Foreground color. + Indicates whether foreground color is auto and foreColor argument should be ignored. + Background color. + Indicates whether background color is auto and backColor argument should be ignored. + Pattern to serialize. + Parent workbook. + + + + Serializes solid fill. + + XmlWriter to serialize into. + Color that is used for filling. + Indicates whether color is automatic or was manually changed. + Parent workbook. + + + + Serializes solid fill. + + XmlWriter to serialize into. + Color that is used for filling. + Indicates whether color is automatic or was manually changed. + Parent workbook. + returns alpha value + returns shape value + + + + Serializes various shape properties of a picture + + xmlTextWriter object + shape to which shape properties belong to + Shape property node + + + + Serializes rgb color. + + XmlWriter to serialize into. + Color to serialize. + + + + Serializes rgb color. + + XmlWriter to serialize into. + Color index to serialize. + Parent workbook. + + + + Serializes rgb color. + + XmlWriter to serialize into. + Color to serialize. + Alpha component of the color to serialize, 0 - 100000. + + + + Serializes rgb color. + + XmlWriter to serialize into. + Color to serialize. + Alpha component of the color to serialize, 0-100000. + Tint value of the color to serialize, 0-100000. + Shape value of the color to serialize, 0-100000. + + + + Serialize line properties. + + XmlWriter to serialize into. + Chart line properties to serialize. + Indicates whether border is rounded or not + Parent workbook. + + + + Serailize Line Join Type + + XmlWriter to serialize into. + Line Join Type + + + + Serializes picture fill. + + XmlWriter to serialize into. + Picture to serialize. + Parent file data holder object. + Relations collection to add relation to. + Indicates whether image should be tiled. + + + + Serialize the picture with fillrect and source rect. + + + + + Serializes texture fill. + + XmlWriter to serialize into. + Fill object that contains settings to serialize. + Parent file data holder object. + Relations collection to add relation to. + + + + Get the texture picuture. + + Texture name + + + + + Serializes gradient fill. + + XmlWriter to serialize into. + Fill to serialize. + Parent workbook. + + + + Serializes text properties. + + XmlWriter to serialize into. + Text area to serialize text properties for. + + + + Serializes default text formatting. + + XmlWriter to serialize into. + Text formatting to serialize. + Parent workbook. + Font size of the text are element + boolean value indicates whether the text is automatically rotated + text rotation angle + enum text rotation + Input name space required at chart + Run paragraph serialized for chartEx + + + + Serializes text from text area. + + XmlWriter to serialize into. + Text area to serialize values for. + Parent workbook. + + + + Serializes rich text. + + XmlWriter to serialize into. + Text area that contains rich text to serialize. + Parent workbook. + Name of the main xml tag. + + + + Serialize text area body properties. + + XmlWriter to serialize into. + Text area to serialize body properties for. + + + + Serializes list styles for a text area. + + XmlWriter to serialize into. + Text area to serialize list styles for. + + + + Serializes paragraph. + + XmlWriter to serialize paragraph tag into. + Text area that contains paragraph information (formatting and text). + Parent workbook. + + + + Serializing the rich-text formatting + + XmlWriter to serialize paragraph tag into. + Text area that contains paragraph information (formatting and text) of text area. + Parent workbook. + Default font size + + + + Serializing the rich-text formatting + + XmlWriter to serialize paragraph tag into. + Text area that contains paragraph information (formatting and text) of text area. + Parent workbook. + Default font size + Default text area that contains paragraph information (formatting and text) of text area. + Run properties start index. + + + + Serializing the rich-text formatting + + XmlWriter to serialize paragraph tag into. + Text area that contains paragraph information (formatting and text) of data labels. + Parent workbook. + Default font size + + + + Check the serialize fld element. + + Chart data label + Data label text. + fld element type + if serialize the fld return true otherwise false. + + + + Serializes paragraph run. + + XmlWriter to serialize paragraph tag into. + Text area that contains paragraph run information (formatting and text). + Name of the main xml tag. + Parent workbook. + + + + Serializes paragraph run. + + XmlWriter to serialize paragraph tag into. + Text area that contains paragraph run information (formatting and text). + Name of the main xml tag. + Parent workbook. + + + + Serializes string reference settings. + + XmlWriter to serialize into. + Text area to get settings from. + String array used as cache values + + + + Serializes text area layout settings. + + XmlWriter to serialize into. + Text area to serialize layout settings for. + + + + Boolean value indicates whether the element is manual layoutted + + input manual layout object + the boolean value + + + + Serializes text area manual layout settings. + + XmlWriter to serialize into. + Manual layout to serialize manual layout settings for. + + + + This method serialize the Bevel bottom + + XmlWriter to serialize into. + Bevel bottom Height Value + Bevel bottom width Value + + + + This method serialize the Bevel top + + XmlWriter to serialize into. + Bevel top Height Value + Bevel top width Value + + + + Serialize the rich text stream of binary file + + Text Area class to be serialized + parent workbook + Default font size of the workbook + the serialized new rich text stream + + + + This class is responsible for chart axis parsing. + + + + + Default font name. + + + + + Default axis font size. + + + + + Represents dictionary for Ticklabel to Attribute value. + + + + + Represents dictionary for TickMark to Attribute value. + + + + + Represents axis id of the bar series. + + + + + Indicate whether series is bar chart or not + + + + + Initializes static members of the ChartAxisParser class. + + + + + Represents Chart Axis Parser + + + + + + Extracts date axis from XmlReader. + + XmlReader to serialize into. + Axis to serialize. + Chart item relations. + Prognosed type of the chart (or chart part) that is being parsed. + + + + Serializes category axis. + + XmlReader to extract data from. + Axis to serialize. + Chart item relations. + Prognosed type of the chart (or chart part) that is being parsed. + + + + Extracts value axis. + + XmlReader to extract axis from. + Axis to put extracted data into. + Chart item relations. + Prognosed type of the chart (or chart part) that is being parsed. + + + + Extracts series axis data. + + XmlReader to extract data from. + Axis to put extracted data into. + Chart item relations. + Prognosed type of the chart (or chart part) that is being parsed. + + + + Extracts common part of the axis. + + XmlReader to extract data from. + Axis to serialize. + Relations collection for chart item that is being parsed. + Prognosed type of the chart (or chart part) that is being parsed. + + + + Extracts chart axis text properties from the reader. + + XmlReader to get data from. + Axis to put extracted data into. + + + + Extracts text body properties + + XmlReader to get data from. + Axis to put extracted data into. + + + + Extracts vert attribute. + + XmlReader to serialize into. + Extracted vert attribute. + + + + Parses crosses xml tag. + + XmlReader to extract data from. + Axis to put extracted data into. + + + + Parses cross axis tag. + + XmlReader to extract data from. + Axis to put extracted data into. + + + + Extracts tick mark. + + XmlReader to extract data from. + Extracted value. + + + + Extracts tick label position. + + XmlReader to extract data from. + Axis to set tick label position. + + + + Extracts number format used by the axis. + + XmlReader to extract data from. + Axis to put extracted number format into. + + + + Extracts single gridline object. + + XmlReader to extract data from. + Gridlines to put extracted data into. + Parent file data holder. + Chart item relations. + + + + Extracts axis position. + + XmlReader to extract data from. + Axis to serialize. + Extracted Axis position. + + + + Extracts scaling tag and all necessary child tags. + + XmlReader to serialize into. + Extracted Axis scale. + + + + Extracts display unit from XmlReader. + + XmlReader to extract data from. + Axis to put extracted data into. + + + + Extracts built-in display unit. + + XmlReader to get value from. + Value axis to put extracted value into. + + + + Parses additional tags of category axis. + + XmlReader to get data from. + Axis to put data into. + Chart relations. + + + + Parses additional tags of date axis. + + XmlReader to get data from. + Axis to put data into. + Chart relations. + + + + Parses additional tags of value axis. + + XmlReader to get data from. + Axis to put data into. + Chart relations. + + + + Parses additional tags of series axis. + + XmlReader to get data from. + Axis to put data into. + Chart relations. + + + + This class is responsible for chartEx axis parsing + + + + + Select and Parse the chartEx axis from the reader + + input XML reader + input secondaryAxisId + input chart + input chart relation collections + excel 2007 parser + input file data holder + + + + Extracts display unit from XmlReader. + + XmlReader to extract data from. + Axis to put extracted data into. + + + + Parse the Axis attributes return the axis values + + input XML reader + output axis hidden value + output axis id value + + + + Parse the chart axis (category or value scaling element) attributes + + input XML reader + input chart Axis + boolean value indicates whether the axis is value or category + + + + Extracts tick mark. + + XmlReader to extract data from. + Extracted value. + + + + This class contains constants used for autofilter parsing and serialization in Excel 2007 format. + + + + + Name of the xml tag name that represents auto filter settings. + + + + + Name of the xml attribute that represents reference to the cell range to which the AutoFilter is applied. + + + + + Name of the xml tag that identifies a particular column in the AutoFilter range and specifies + filter information that has been applied to this column + + + + + Name of the xml attribute that indicates the AutoFilter column to which this filter information applies. + + + + + Name of the xml tag that indicates the Icon Filter. + + + + + Name of the xml tag that indicates the Color Filter + + + + + Name of the xml attribute tag that specifies the filtering is done based on font color + + + + + Name of the xml tag that specifies the top N (percent or number of items) to filter by. + + + + + Name of the xml attribute that represents top or bottom value to use as the filter criteria. + + + + + Name of the xml attribute that represents flag indicating whether or not to filter by top order. + + + + + Name of the xml attribute that represents the actual cell value in the range + which is used to perform the comparison for this filter. + + + + + Name of the xml attribute that represents flag indicating whether or not to filter by percent value of the column. + + + + + Name of the xml tag that groups filter criteria together. + + + + + Flag indicating whether to filter by blank. + + + + + Name of the xml tag that expresses a filter criteria value. + + + + + Name of the xml attribute that represents filter value used in the criteria. + + + + + Name of the xml tag that represents custom filters criteria. + + + + + Name of the xml attribute that represents flag indicating whether the two criteria have an "and" relationship. + '1' indicates "and", '0' indicates "or". + + + + + Name of the xml tag that represents custom filter criteria. + + + + + Name of the xml attribute name that represents operator used by the filter comparison. + + + + + Name of the attribute that represents if filter shape should be visible. + + + + + Name of the attribute that represents if filter shape should be hidden. + + + + + Name of the xml tag that represents filter with date time. + + + + + Name of the attribute that represents grouping type. + + + + + Name of the attribute that represents year value. + + + + + Name of the attribute that represents month value. + + + + + Name of the attribute that represents day value. + + + + + Name of the attribute that represents hour value. + + + + + Name of the attribute that represents minute value. + + + + + Name of the attribute that represents second value. + + + + + Name of the tag that represent dynamic filter. + + + + + Name of the attribute that represent dynamic filter type. + + + + + Show results which are equal to criteria. + + + + + Show results which are greater than criteria. + + + + + Show results which are greater than or equal to criteria. + + + + + Show results which are less than criteria. + + + + + Show results which are less than or equal to criteria. + + + + + Show results which are not equal to criteria. + + + + + Convert string value to date filter type. + + string value need to convert. + Equalent date filter type. + + + + Convert date filter type to string value. + + date filter type need to convert. + Equalent string value. + + + + Class used for holding border settings. + + + + + Returns or sets the primary color of the object. + Read/write ExcelKnownColors. + + + + + Represents border line style. + + + + + This field is used only by Diagonal borders. For any other + border index property will have no influence. + + + + + Specifies a boolean value that indicate whether the border setting has a empty border + + + + + Initializes a new instance of the BorderSettingsHolder class. + + + + + Creates a shallow copy of the current System.Object. + + A shallow copy of the current System.Object. + + + + Gets or sets the primary color of the object. + Read/write ExcelKnownColors. + + + + + Gets color of the border. + + + + + Gets or sets color of the border. + + + + + Gets or sets the line style for the border. Read/write ExcelLineStyle. + + + + + Gets or sets a value indicating whether to show Diagonal lines. This property is used only by Diagonal borders. For any other border + index property will have no influence. + + + + + Specifies a boolean value that indicate whether the border setting has a empty border + + + + + Application object for this object. + + + + + Parent object for this object. + + + + + This class contains constants used for conditional formatting parsing/serialization + in Excel 2007 SpreadsheetML format. + + + + + Name of the xml tag that defines conditional formattings + + + + + Name of the xml tag that represents conditional formatting. + + + + + Name of the xml tag that represents conditional formatting rule. + + + + + Name of the xml tag that represent Ends With Spefific Text conitional formatting. + + + + + Name of the xml tag that represent Begins With Spefific Text conitional formatting. + + + + + Name of the xml tag that represent Contains Text Spefific Text conitional formatting. + + + + + Name of the xml tag that represent NotContains Text Spefific Text conitional formatting. + + + + + Name of the xml tag that represent contains error conitional formatting. + + + + + Name of the xml tag that represent not Contains Error conitional formatting. + + + + + Name of the xml tag that represent text attribute of Spefific Text conitional formatting. + + + + + Name of the xml attribute that represents type of conditional formatting rule. + + + + + Name of the xml attribute that represents time period type conditional formatting rule. + + + + + Name of the xml attribute that represents time period type attribute name. + + + + + Name of the xml attribute that represents an index to a dxf element in the Styles Part indicating which cell formatting to + apply when the conditional formatting rule criteria is met. + + + + + Name of the xml attribute that represents the operator in a "cell value is" conditional formatting rule. + + + + + Name of the xml tag that defines the border color. + + + + + Name of the xml tag that defines the negative fill color. + + + + + Name of the xml tag that defines the negative border color. + + + + + Name of the xml tag that defines the axis color. + + + + + Name of the xml attribute that represents the border of data bar + + + + + Name of the xml attribute that represents the gradient fill of data bar + + + + + Name of the xml attribute that represents the direction of data bar + + + + + Name of the xml attribute that represents the negative bar color of data bar + + + + + Name of the xml attribute that represents the negative bar border color of data bar + + + + + Name of the xml attribute that represents the axis position of data bar + + + + + Name of the extention list element + + + + + Name of the extention element + + + + + Represents top10 conditional formatting rule. + + + + + Represents aboveAverage conditional formatting rule. + + + + + Represents top10 conditional formatting rule. + + + + + Represents top10 conditional formatting rule. + + + + + Represents aboveAverage conditional formatting rule. + + + + + Today's time period type + + + + + Yesterday's time period type + + + + + Tomorrow's time period type + + + + + Last seven days time period type + + + + + Last week time period type + + + + + This week time period type + + + + + Next week time period type + + + + + Last month period type + + + + + This month period type + + + + + Next month time period type + + + + + Name of the xml tag that represents begin with condition. + + + + + Name of the xml tag that represents between condition. + + + + + Name of the xml tag that represents contains text condition. + + + + + Name of the xml tag that represents ends with condition. + + + + + Name of the xml tag that represents equal condition. + + + + + Name of the xml tag that represents greater than condition. + + + + + Name of the xml tag that represents greater than or equal to condition. + + + + + Name of the xml tag that represents less than condition. + + + + + Name of the xml tag that represents less than or equal to condition. + + + + + Name of the xml tag that represents not between condition. + + + + + Name of the xml tag that represents not contains condition. + + + + + Name of the xml tag that represents not equal condition. + + + + + Name of the xml tag To stop evaluating conditional formatting rules for a cell. + + + + + Name of the xml attribute that represents the priority of this conditional formatting rule. + + + + + Name of the xml tag name that represents a formula whose calculated value specifies the criteria for the conditional + formatting rule. + + + + + Represents conditional formatting rule that compares a cell value to a formula calculated result, using an operator. + + + + + Represents conditional formatting rule that contains a formula to evaluate. + + + + + Represents conditional formatting rule that contains databar. + + + + + Represents conditional formatting rule that contains pivot table. + + + + + Represents conditional formatting rule that contains iconset. + + + + + Represents conditional formatting rule that contains color scale. + + + + + Represents conditional formatting rule highlights cells that are completely blank + + + + + Represents conditional formatting rule highlights cells that are not blank + + + + + Describes a data bar conditional formatting rule. + + + + + Describes the values of the interpolation points in a gradient scale. + + + + + Describes the formula values of ValueObjects. + + + + + Describes the formula values of ValueObjects. + + + + + Describes the custom cf icon. + + + + + Default value for minimum length of the data bar. + + + + + Default value for maximum length of the data bar. + + + + + The maximum length of the data bar, as a percentage of the cell width. + + + + + The minimum length of the data bar, as a percentage of the cell width. + + + + + Indicates whether to show the values of the cells on which this data bar is applied. + + + + + Describes an icon set conditional formatting rule. + + + + + The icon set to display. + + + + + The icon id of custom icon. + + + + + Represents custom conditional formatting. + + + + + Describes a color scale conditional formatting rule. + + + + + Indicates whether the conditional format Range value is unique. + + + + + Indicates whether the conditional format Range value is dublicate. + + + + + Indicates whether the thresholds indicate percentile values, instead of number values. + + + + + If '1', reverses the default order of the icons in this icon set. + + + + + Greater attribute + + + + + Specifies the length of RIGHT or LEFT formula array. + + + + + Represents top10 conditional formatting rule. + + + + + Represents aboveAverage conditional formatting rule. + + + + + Possible value types for ConditionValue. + + + + + Names used in xml as IconSet type (order is important). + + + + + Prevents a default instance of the CF class from being created. + + + + + This class contains constants required for charts parsing and serialization in Excel 2007 format. + + + + + Main charts namespace. + + + + + Namespace of the slicer + + + + + Main charts namespace for Excel 2010 + + + + + Main charts namespace for Excel 2016 + + + + + + Chart style relation namespace for Excel 2013 + + + + + Chart style and color style namespace for charts above version 2013 + + + + + Uri for the pivot chart. + + + + + Uri for the pivot chart for Excel 2016. + + + + + prefix for the Excel 2010 chart tag. + + + + + prefix for the Excel 2016 chart tag. + + + + + This element specifies a category axis. + + + + + This element specifies a value axis. + + + + + This element specifies a series axis. + + + + + This element specifies a date axis. + + + + + Value attribute. + + + + + Some value axis id. + + + + + Some category axis id. + + + + + Some series axis id. + + + + + Some secondary category axis id. + + + + + Some secondary value axis id. + + + + + This element contains additional axis settings. + + + + + This element specifies the logarithmic base for a logarithmic axis. + + + + + This element specifies the maximum value of the axis. + + + + + This element specifies the minimum value of the axis. + + + + + This element specifies the stretching and stacking of the picture on the + data point, series, wall, or floor. + + + + + When specified as a child element of valAx, dateAx, catAx, or serAx, + this element specifies the identifier for the axis. When specified as + a child element of a chart, this element specifies the identifier of + an axis that defines the coordinate space of the chart. + + + + + Specifies that the values on the axis shall be reversed so they go from maximum to minimum. + + + + + Specifies that the axis values shall be in the usual order, minimum to maximum. + + + + + This element specifies the position of the axis on the chart. + + + + + Specifies that the axis shall be displayed at the left of the plot area. + + + + + Specifies that the axis shall be displayed at the right of the plot area. + + + + + Specifies that the axis shall be displayed at the top of the plot area. + + + + + Specifies that the axis shall be displayed at the bottom of the plot area. + + + + + This element specifies major gridlines. + + + + + This element specifies minor gridlines. + + + + + This element specifies number formatting for the parent element. + + + + + This element specifies a string representing the format code to apply. + + + + + Indicates whether number format is applied to the axis. + + + + + This element specifies the position of the tick labels on the axis. + + + + + Specifies the axis labels shall be at the high end of the perpendicular axis. + + + + + Specifies the axis labels shall be at the low end of the perpendicular axis. + + + + + Specifies the axis labels shall be next to the axis. + + + + + Specifies the axis labels are not drawn. + + + + + This element specifies the major tick marks. + + + + + This element specifies the minor tick marks. + + + + + Specifies there shall be no tick marks. + + + + + Specifies the tick marks shall be inside the plot area. + + + + + Specifies the tick marks shall be outside the plot area. + + + + + Specifies the tick marks shall cross the axis. + + + + + This element specifies the ID of axis that this axis crosses. + + + + + This element specifies whether the value axis crosses the category axis between categories. + + + + + Specifies the value axis shall cross the category axis between data markers. + + + + + Specifies the value axis shall cross the category axis at the midpoint of a category. + + + + + This element specifies the distance between major ticks. + + + + + This element specifies the distance between minor tick marks. + + + + + This element specifies the distance of labels from the axis. + + + + + This element specifies how many tick labels to skip between label that is drawn. + + + + + This element specifies how many tick marks shall be skipped before the next one shall be drawn. + + + + + This element specifies whether multi level labels exists or not + + + + + This element specifies the smallest time unit that is represented on the date axis. + + + + + This element specifies the time unit for major tick marks. + + + + + This element specifies the time unit for the minor tick marks. + + + + + This element specifies the chart. + + + + + This element specifies the plot area of the chart. + + + + + This element specifies whether the series form a bar (horizontal) chart or a column (vertical) chart. + + + + + Specifies that the chart is a bar chart - the data markers are horizontal rectangles. + + + + + Specifies that the chart is a column chart - the data markers are vertical rectangles. + + + + + This element specifies the type of grouping for a bar chart. + + + + + Specifies that the chart series are drawn next to each other along the category axis. + + + + + Specifies that the chart series are drawn next to each other along the + value axis and scaled to total 100%. + + + + + Specifies that the chart series are drawn next to each other on the value axis. + + + + + Specifies that the chart series are drawn next to each other on the depth axis. + + + + + This element specifies that each data marker in the series shall have a different color. + + + + + This element specifies a series on a chart. + + + + + This element specifies the index of the containing element. This index + shall determine which of the parent's children collection this element applies to. + + + + + This element specifies the order of the series in the collection. It is 0 based. + + + + + This element specifies the data values which shall be used to define + the location of data markers on a chart. + + + + + This element specifies the data used for the category axis. + + + + + This element specifies a reference to numeric data with a cache of the last values used. + + + + + This element specifies a reference to string data with a cache of the last values used. + + + + + This element specifies a reference to data for the category axis (or for the x-values in a bubble or scatter chart)), + along with a cache of the last values used. + + + + + This element specifies the last numeric data used for a chart. + + + + + This element specifies the last string data used for a chart. + + + + + This element specifies a cache of the labels on the category axis, or the x-values in a bubble or scatter chart. + + + + + This element specifies a reference to source of the data contained in this chart. + + + + + This element specifies overall settings for a single chart, and is the root node for the chart part. + + + + + This element specifies the 3-D area series on this chart. + + + + + This element specifies the 2-D area series on this chart. + + + + + This element contains the 2-D bar or column series on this chart. + + + + + This element contains the 3-D bar or column series on this chart. + + + + + This element contains the 3-D line chart series. + + + + + This element contains the 2-D line chart series. + + + + + This element specifies the space between bar or column clusters, + as a percentage of the bar or column width. + + + + + This element specifies the space between bar or column clusters, + as a percentage of the bar or column width. + + + + + This element specifies how much bars and columns shall overlap on 2-D charts. + + + + + Specifies the chart shall be drawn as a cone, with the base of the cone + on the floor and the point of the cone at the top of the data marker. + + + + + Specifies the chart shall be drawn with truncated cones such that the + point of the cone would be the maximum data value. + + + + + Specifies the chart shall be drawn as a rectangular pyramid, with the + base of the pyramid on the floor and the point of the pyramid at the + top of the data marker. + + + + + Specifies the chart shall be drawn with truncated cones such that the + point of the cone would be the maximum data value. + + + + + Specifies the chart shall be drawn as a cylinder. + + + + + Specifies the chart shall be drawn with a box shape. + + + + + This element specifies the shape of a series or a 3-D bar chart. + + + + + This element contains the bubble series on this chart. + + + + + This element specifies that the bubbles have a 3-D effect applied to them. + + + + + Default bubble scale value. + + + + + This element specifies the scale factor for the bubble chart. This element can be + an integer value from 0 to 300, corresponding to a percentage of the default size. + + + + + This element specifies negative sized bubbles shall be shown on a bubble chart. + + + + + Specifies the area of the bubbles shall be proportional to the bubble size value. + + + + + Specifies the radius of the bubbles shall be proportional to the bubble size value. + + + + + This element specifies how the bubble size values are represented on the chart. + + + + + This element contains the set of 2-D contour charts. + + + + + This element contains the set of 3-D surface series. + + + + + This element specifies the surface chart is drawn as a wireframe. + + + + + This element specifes the band formats + + + + + This element contains the radar chart series on this chart. + + + + + This element specifies what type of radar chart shall be drawn. + + + + + This element contains the scatter chart series for this chart. + + + + + This element specifies the type of lines for the scatter chart. + + + + + This element contains the 2-D pie series for this chart. + + + + + This element contains the 3-D pie series for this chart. + + + + + This element specifies the angle of the first pie or doughnut chart slice, + in degrees (clockwise from up). + + + + + This element contains the doughnut chart series. + + + + + This element specifies the size of the hole in a doughnut chart group. + + + + + This element contains the pie of pie or bar of pie series on this chart. + + + + + Specifies that the chart is pie of pie chart, not a bar of pie chart. + + + + + Specifies that the chart is a bar of pie chart, not a pie of pie chart. + + + + + This element specifies whether this chart is pie of pie or bar of pie. + + + + + This element specifies a value that shall be used to determine which data + points are in the second pie or bar on a pie of pie or bar of pie chart. + + + + + This element specifies the size of the second pie or bar of a pie of pie + chart or a bar of pie chart, as a percentage of the size of the first pie. + + + + + This element specifies how to determine which data points are in the + second pie or bar on a pie of pie or bar of pie chart. + + + + + This element contains the collection of stock chart series. + + + + + This element serves as a root element that specifies the settings for the + data labels for an entire series or the entire chart. It contains child + elements that specify the specific formatting and positioning settings. + + + + + This element specifies the position of the data label. + + + + + This element specifies that the value shall be shown in a data label. + + + + + This element specifies that the category name shall be shown in the data label. + + + + + This element specifies that the percentage shall be shown in a data label. + + + + + This element specifies the bubble size shall be shown in a data label. + + + + + This element specifies that the series name shall be shown in a data label. + + + + + This element specifies legend keys shall be shown in data labels. + + + + + This element specifies Leader Lines shall be shown in data labels. + + + + + This element specifies Leader Lines shall be shown in data labels. + + + + + This element specifies a datalabel range. + + + + + This element specifies a datalabel cache. + + + + + This element specifies a cellRange tag. + + + + + This element specifies a intervallocelle tag. + + + + + This element specfies a seriesName tag. + + + + + This element specifies a value tage. + + + + + This element specifies a value wert tag. + + + + + This element specifies a category name tag. + + + + + This element specifies a percentage tag. + + + + + This element specifies a category x axis tag. + + + + + This element specifies a value y axis tag. + + + + + This element specifies text that shall be used to separate the parts of a data label. + The default is a comma, except for pie charts showing only category name and percentage, + when a line break shall be used instead. + + + + + This element specifies a data marker. + + + + + This element specifies the marker that shall be used for the data points. + + + + + This element specifies the size of the marker in points. + + + + + This element specifies the floor of a 3D chart. + + + + + This element specifies the back wall of the chart. + + + + + This element specifies the side wall. + + + + + This element specifies a title. + + + + + This element specifies a trend line. + + + + + This element specifies the name of the trend line. + + + + + This element specifies the type of the trend line. + + + + + This element specifies the order of the polynomial trend line. + It is ignored for other trend line types. + + + + + This element specifies the period of the trend line for a moving average + trend line. It is ignored for other trend line types. + + + + + This element specifies the number of categories (or units on a scatter + chart) that the trend line extends after the data for the series that is + being trended. On non-scatter charts, the value must be a multiple of 0.5. + + + + + This element specifies the number of categories (or units on a scatter chart) + that the trend line extends before the data for the series that is being trended. + On non-scatter charts, the value shall be 0 or 0.5. + + + + + This element specifies the value where the trend line shall cross the y + axis. This property shall be supported only when the trend line type is + exp, linear, or poly. + + + + + This element specifies that the R-squared value of the trend line is + displayed on the chart (in the same label as the equation). + + + + + This element specifies that the equation for the trend line is displayed + on the chart (in the same label as the R-squared value). + + + + + This element specifies error bars. + + + + + This element specifies the type of the error bars - positive, negative, or both. + + + + + This element specifies the type of values used to determine the length of the error bars. + + + + + This element specifies an end cap is not drawn on the error bars. + + + + + This element specifies a value which is used with the Error Bar Type + to determine the length of the error bars. + + + + + This element specifies the error bar value in the positive direction. + It shall be used only when the errValType is cust. + + + + + This element specifies the error bar value in the negative direction. + It shall be used only when the errValType is cust. + + + + + Specifies that error bars shall be shown in the x direction. + + + + + Specifies that error bars shall be shown in the y direction. + + + + + This element specifies the direction of the error bars. + + + + + This element specifies the 3-D view of the chart. + + + + + This element specifies the amount a 3-D chart shall be rotated in the X direction. + + + + + This element specifies the height of a 3-D chart as a percentage of the + chart width (between 5 and 500). + + + + + This element specifies the amount a 3-D chart shall be rotated in the Y direction. + + + + + This element specifies that the chart axes are at right angles, + rather than drawn in perspective. Applies only to 3-D charts. + + + + + This element specifies the field of view angle for the 3-D chart. + This element is ignored if Right Angle Axes is true. + + + + + This element specifies the depth of a 3-D chart as a percentage of the + chart width (between 20 and 2000 percent). + + + + + This element specifies the legend. + + + + + This element specifies the position of the legend. + + + + + This element specifies that other chart elements shall be allowed to overlap this chart element. + + + + + This element specifies a legend entry. + + + + + This element specifies that the chart element specified by its containing + element shall be deleted from the chart. + + + + + This element specifies how blank cells shall be plotted on a chart. + + + + + This element specifies that only visible cells should be plotted on the chart. + + + + + This element specifies the page margins for a chart. + + + + + Specifies the contents of this attribute will contain the left page margin in inches. + + + + + Specifies the contents of this attribute will contain the right page margin in inches. + + + + + Specifies the contents of this attribute will contain the top page margin in inches. + + + + + Specifies the contents of this attribute will contain the bottom page margin in inches. + + + + + Specifies the contents of this attribute will contain the header margin in inches. + + + + + Specifies the contents of this attribute will contain the footer margin in inches. + + + + + This element specifies the up and down bars. + + + + + This element specifies the up bars on the chart. + + + + + This element specifies the down bars on the chart. + + + + + This element specifies text to use on a chart, including rich text formatting. + + + + + This element contains a string with rich text formatting. + + + + + This is the root element of Sheet Parts that are of type 'chartsheet'. + + + + + Prefix for chart namespace. + + + + + Underline the text with a single line of normal thickness. + + + + + Underline the text with two lines of normal thickness. + + + + + A single strikethrough is applied to the text. + + + + + A double strikethrough is applied to the text. + + + + + Text is not strike through. + + + + + This element specifies how this axis crosses the perpendicular axis. + + + + + This element specifies where on the axis the perpendicular axis crosses. + The units are dependent on the type of axis. + + + + + The category axis crosses at the zero point of the value axis (if possible), + or the minimum value (if the minimum is greater than zero) or the maximum + (if the maximum is less than zero). + + + + + The axis crosses at the maximum value + + + + + This element specifies the x values which shall be used to define the + location of data markers on a chart. + + + + + This element specifies the y values which shall be used to define the + location of data markers on a chart. + + + + + This element specifies the data for the sizes of the bubbles on the bubble chart. + + + + + This element specifies the amount the data point shall be moved from the center of the pie. + + + + + This element specifies series lines for the chart. + + + + + This element specifies the line connecting the points on the chart shall + be smoothed using Catmull-Rom splines. + + + + + This element specifies the label for the trend line. + + + + + This element specifies text for a series name, without rich text formatting. + + + + + This element specifies a text value for a category axis label or a series name. + + + + + This element specifies the high-low lines for the series. + + + + + This element specifies how the chart element is placed on the chart. + + + + + This element specifies how the chart element is placed on the chart manually + + + + + This element specifies the chart layout target + + + + + Represents left element for manual layout + + + + + Represents top element for manual layout + + + + + Represents the x location (left) of the chart element as a + fraction of width of the chart + + + + + Represents the y location (top) of the chart element as a + fraction of width of the chart + + + + + Represents the width or horizontal offset + + + + + Represents the height or a vertical offset + + + + + Represents the layout mode for the width of the element + + + + + Represents the layout mode for the height of the element + + + + + Represents the width of the element + + + + + Represents the height of the element + + + + + This element specifies a single data point. + + + + + This element specifies a data label. + + + + + This element specifies the logarithmic base for a logarithmic axis. + + + + + Default value of the logBase tag. + + + + + This element specifies the scaling value of the display units for the value axis. + + + + + This element specifies the display unit is one of the built in values. + + + + + This element specifies a custom value for the display unit. + + + + + This element specifies a data table. + + + + + This element specifies the horizontal borders shall be shown in a data table. + + + + + This element specifies the vertical border shall be shown in a data table. + + + + + This element specifies the outline shall be shown on a data table. + + + + + This element specifies the legend keys shall be shown in a data table. + + + + + This element specifies drop lines. + + + + + This element contains text properties. + + + + + This element specifies that this axis is a date or text axis based on + the data that is used for the axis labels, not a specific choice. + + + + + This element specifies the rounded corner tag. + + + + + This element specifies the style tag. + + + + + This element specifies the shapes drawn on top of the chart. + + + + + This element specifies that the shape described here to reside within a + chart should be sized based on relative anchor points. + + + + + This element specifies the relative x coordinate that is used to define + the percentage-based horizontal position for a shape within a chart drawing object. + + + + + This element specifies the relative y coordinate that is used to define + the percentage-based vertical position for a shape within a chart drawing object. + + + + + Multiplier for coordinates transform. + + + + + This element specifies a set of numbers used for the parent element. + + + + + This element specifies a set of strings used for the parent element. + + + + + This element contains the number of values in the cache. + + + + + This element specifies data for a particular data point. + + + + + This element specifies the series + to invert its colors if the value is negative. + + + + + Value attribute. + + + + + Pivot source tag + + + + + Pivot formats + + + + + Display units label + + + + + Zoom to fit + + + + + Label alignment + + + + + Print settings + + + + + Transparency value + + + + + Size value + + + + + Blur value + + + + + Angle value + + + + + Distance value + + + + + Bevel value + + + + + Pivot options tag + + + + + Pivot options tag 16 + + + + + Show zone filter tag + + + + + Show zone category tag + + + + + Show expand collapse tag 16 + + + + + Show zone data tag + + + + + Show zone series tag + + + + + Show zone visible tag + + + + + Pivot source name tag + + + + + Chart format id + + + + + Alternate content tag + + + + + Auto title deleted tag + + + + + Represents the standard Number format attribute. + + + + + Formual reference + + + + + Square reference + + + + + Full reference + + + + + C15 tag + + + + + C14 tag + + + + + xml15web + + + + + xml14web + + + + + Filter series uri + + + + + Invert solid fill format uri + + + + + Filtered area series + + + + + Filter bar series + + + + + Filtered line series + + + + + Filtered pie series + + + + + Filtered radar series + + + + + Filtered scatter series + + + + + Filtered surface series + + + + + Filtered bubble series + + + + + Filtered series title + + + + + Filtered category title + + + + + Invert solid fill format + + + + + This element represents color mapping information. + + + + + Name of the extention list element + + + + + Name of the extention element + + + + + Name of the leader lines element + + + + + Value indicates the show data lables over max element. + + + + + Value indicates the show data display options. + + + + + Value indicates the show the diaply #N/A as blank. + + + + + Prevents a default instance of the ChartConstants class from being created. + + + + + This class contains constants required for chartExs parsing and serialization in Excel 2016 format. + + + + + Main chartExs namespace. + + + + + Prefix for chartEx namespace. + + + + + Prefix for chartEx1 namespace for required. + + + + + Namespace used in choice content + + + + + The element specifies the chart data used for chartEx + + + + + The element specifies the data used for chartEx + + + + + The element specifies the text data used for chartEx text + + + + + The element specifies the value used for chartEx value + + + + + The element specifies the chart element position + + + + + The element specifies the chart element alignment + + + + + The element specifies the chart plot area region + + + + + The element specifies the chart axis + + + + + The element specifies the chart series + + + + + The element specifies the plot surface + + + + + The element specifies the chart data point + + + + + The element specifies the chart data labels + + + + + The element specifies the chart data label of single data point + + + + + The element specifies the chart data Id used in series + + + + + The element specifies the chart layout properties used in series + + + + + The element specifies the chart axis Id used in series + + + + + The element specifies the chart data Label position + + + + + The element specifies the data label hidden in setting + + + + + The element specifies the data label visibility setting + The element also specifies the visibility options on box and whisker, waterfall + + + + + The attribute specifies the data label visibility option of series Name + + + + + The attribute specifies the data label visibility option of category Name + + + + + The attribute specifies the data label visibility option of value + + + + + The attribute specifies the layout Id on series + + + + + The attribute specifies the series is hidden or not + + + + + The attribute specifies the owner index on series for refering other series + Pareto line series only + + + + + The attribute specifies the series unique Identifier + + + + + The attribute specifies the format index for series + + + + + The element specifies the parent label layout + + + + + The element specifies the by category option in histogram and pareto chart + + + + + The element specifies the binning option in histogram and pareto chart + + + + + The element specifies the statistics for the box and whisker series + + + + + The element specifies the subtotal for the water fall series + + + + + This attribute specifies the connector line used in Water fall chart + + + + + This attribute specifies the mean line used in Box and Whisker chart + + + + + This attribute specifies the mean marker used in Box and Whisker chart + + + + + This attribute specifies the mean non outliers used in Box and Whisker chart + + + + + This attribute specifies the outliers used in Box and Whisker chart + + + + + This attribute specifies the interval closing in Histogram, Pareto chart + + + + + This attribute specifies the underflow bin value in Histogram, Pareto chart + + + + + This attribute specifies the overflow bin value in Histogram, Pareto chart + + + + + This element specifies the bin width value in Histogram, Pareto chart + + + + + This element specifies the bin count in Histogram, Pareto chart + + + + + This attribute specifies the quartile method used in box and whisker chart + + + + + This value specifies the exclusive quartile method used in box and whisker chart + + + + + This value specifies the inclusive quartile method used in box and whisker chart + + + + + This element speifies the category axis scaling + + + + + This element speifies the value axis scaling + + + + + This attribute specifies the index of element + + + + + This string denotes the automatic value on current property + + + + + This element specifies the display unit axis + + + + + This element specifies the major tick marks. + + + + + This element specifies the minor tick marks. + + + + + Describes the tick marks in the axis + + + + + Describes the type attribute tag + + + + + Describes the Display unit label tag + + + + + Describes the Display unit attribute tag + + + + + This element describes the external data referenced in chartEx + + + + + This attibute specifies whether the work book need to be updated or not + + + + + This element describes the numeric dimension of data + + + + + This element describes the string dimension of data + + + + + This element describes the level of data + + + + + This attibute specifies direction for data dimension + + + + + Value indicates the diemension is column wise + + + + + Value indicates the diemension is row wise + + + + + This class contains the required chart style elements + + + + + It specifies visual and text properties for all elements present on a chart + + + + + It specifies colors used to resolve StyleColor in a ChartStyle. + + + + + Element specifies reference to a line style within the style matrix. + + + + + Element that specifies a multiplier to apply to the line width. + + + + + Element that specifies a reference to a fill style within the style matrix. + + + + + Element that specifies a reference to an effect style within the style + + + + + Element that specifies a reference to a themed font. + + + + + Element that specifies visual shape properties of the part of the chart associated with this CT_StyleEntry. + + + + + Element that specifies the default text character properties for a text body on a chart which is associated with this CT_StyleEntry + + + + + Element that specifies the body properties for a text body on a chart that is associated with this CT_StyleEntry. + + + + + Attribute that specifies the style matrix index of the style referred to. + + + + + Attribute that specifies a list of modifiers for this reference. + + + + + (Accent Color 1) Extra scheme color 1 + + + + + (Accent Color 2) Extra scheme color 2 + + + + + (Accent Color 3) Extra scheme color 3 + + + + + (Accent Color 4) Extra scheme color 4 + + + + + (Accent Color 5) Extra scheme color 5 + + + + + (Accent Color 6) Extra scheme color 6 + + + + + (Background Color 1) Semantic background color + + + + + (Background Color 2) Semantic additional background color + + + + + (Dark Color 1) Main dark color 1 + + + + + (Dark Color 2) Main dark color 2 + + + + + (Followed Hyperlink Color) Followed Hyperlink Color + + + + + (Hyperlink Color) Regular Hyperlink Color + + + + + (Light Color 1) Main Light Color 1 + + + + + (Light Color 2) Main Light Color 2 + + + + + (Style Color) A color used in theme definitions which means to use the color of the style. + + + + + (Text Color 1) Semantic text color + + + + + (Text Color 2) Semantic additional text color + + + + + It specifies a list of transforms that are appended to all colors in a ColorStyle to produce a variation of the color style + + + + + This class stores constants with different content types. + + + + + Bitmap image content type. + + + + + Jpeg image content type. + + + + + Png image content type. + + + + + Emf image content type. + + + + + Gif image content type. + + + + + Wmf image content type. + + + + + Svg image content type. + + + + + Content type for xml files. + + + + + Content type for rels files. + + + + + Content type for workbook item (used in [Content_Types].xml). + + + + + Content type for workbook item that contains macros (used in [Content_Types].xml). + + + + + Content type for macro template item that contains macros (used in [Content_Types].xml). + + + + + Content type for template item that contains macros (used in [Content_Types].xml). + + + + + Content type for calculation chain item. + + + + + Content type of the worksheet. + + + + + Content type of the chartsheet. + + + + + Content type of the dialogsheet. + + + + + Content type of the macrosheet + + + + + Content type of the intlmacrosheet + + + + + Content type of Person + + + + + Content type of meta data + + + + + Content type of the shared strings table. + + + + + Content type of the styles. + + + + + Content type of the vml drawings item. + + + + + Content type of the comments item. + + + + + Content type of the threaded comments item + + + + + Content type for drawings item. + + + + + Content type for chart drawings item. + + + + + Content type for core properties. + + + + + Content type for extended properties. + + + + + Content type for custom properties. + + + + + Content type for extern link item. + + + + + Content type for chart object. + + + + + Content type for chartEx object. + + + + + Content type for worksheet custom property. + + + + + Content type for pivot table. + + + + + Content type for pivot cache definition. + + + + + Content type for pivot cache records. + + + + + Content type for table object. + + + + + Content type for slicer object. + + + + + Content type for slicer cache object. + + + + + Content type for CustomXml Objects + + + + + Connections + + + + + Query table + + + + + Tiff image content type. + + + + + Content type for chart Style object. + + + + + Content type for chart color Style object. + + + + + Vba project content type + + + + + Binary worksheet content type. + + + + + Binary workbook styles content type. + + + + + Binary workbook SST content type. + + + + + Binary workbook content type. + + + + + This class gives access to xml tag/attribute names used for chart object + pagesetup serialization/parsing. + + + + + This class gives access to xml tag/attribute names used for + pagesetup serialization/parsing. + + + + + Gets name of the xml tag that stores margin settings. Read-only. + + + + + Gets name of the xml attribute used to store left margin. Read-only. + + + + + Gets name of the xml attribute used to store right margin. Read-only. + + + + + Gets name of the xml attribute used to store top margin. Read-only. + + + + + Gets name of the xml attribute used to store bottom margin. Read-only. + + + + + Gets name of the xml attribute used to store header margin. Read-only. + + + + + Gets name of the xml attribute used to store footer margin. Read-only. + + + + + Gets tag's namespace. Read-only. + + + + + Boolean value indicates whether the chart is ChartEx or not + + + + + Single pareameter constructor + + Boolean value used for chartEx type set + + + + Default constructor + + + + + Gets name of the xml tag that stores margin settings. Read-only. + + + + + Gets name of the xml attribute used to store left margin. Read-only. + + + + + Gets name of the xml attribute used to store right margin. Read-only. + + + + + Gets name of the xml attribute used to store top margin. Read-only. + + + + + Gets name of the xml attribute used to store bottom margin. Read-only. + + + + + Gets name of the xml attribute used to store header margin. Read-only. + + + + + Gets name of the xml attribute used to store footer margin. Read-only. + + + + + Gets tag's namespace. Read-only. + + + + + This class contains constants required for document properties parsing and serialization in Excel 2007 format. + + + + + Core properties enable users to get and set well-known and common sets of property metadata within packages. + + + + + Represents a categorization of the content of this package. + + + + + Represents the date of creation of the resource. + + + + + Represents an entity primarily responsible for making the content of the resource. + + + + + Represents an explanation of the content of the resource. + + + + + Represents a delimited set of keywords to support searching and indexing. + + + + + Represents the user who performed the last modification. + + + + + Represents the date and time of the last printing. + + + + + Represents the date on which the resource was changed. + + + + + Represents the topic of the content of the resource. + + + + + Represents the name given to the resource. + + + + + Represents Xsi attribute. + + + + + Represents Xsi attribute value. + + + + + Represents date time format structure. + + + + + This element specifies the application properties of a document. + + + + + This element specifies the name of the application that created this document. + + + + + This element specifies the total number of characters in a document. + + + + + This element specifies the name of a company associated with the document. + + + + + MS Excel uses this Tag to represents the xml parts. In our XlsIO, + this tag is used to find the document is generated by MS Excel. + + + + + Tag to represents the file is generated by XlsIO. + + + + + This element specifies the total number of lines in a document when last saved by a conforming producer if applicable. + + + + + This element specifies the name of a supervisor associated with the document. + + + + + This element specifies the total number of sound or video clips that are present in the document. + + + + + This element specifies the number of slides in a presentation containing notes. + + + + + This element specifies the total number of pages of a document if applicable. + + + + + This element specifies the total number of paragraphs found in a document if applicable. + + + + + This element specifies the intended format for a presentation document. + + + + + This element specifies the total number of slides in a presentation document. + + + + + This element specifies the name of an external document template containing format and style information + used to create the current document. + + + + + Total time that a document has been edited. The default time unit is minutes. + + + + + This element specifies the total number of words contained in a document when last saved. + + + + + This element specifies the base string used for evaluating relative hyperlinks in this document. + + + + + Represents default Excel97-03 hyperlink base name. + + + + + Represents Excel97-03 hyperlinks property + + + + + Parent element for the custom file properties part. + + + + + This element specifies a single custom file property. + + + + + Uniquely relates a custom property with an OLE property. + + + + + Uniquely relates a custom property with an OLE property. + + + + + Specifies the name of this custom file property. + + + + + This element specifies a Boolean variant type. + + + + + This element specifies a wide string variant type. + + + + + This element specifies a string variant type. + + + + + This element specifies a date variant type of type date-time as defined in RFC 3339. + + + + + This element specifies a 4-byte signed integer variant type. + + + + + This element specifies a 8-byte real number variant type. + + + + + This element specifies an integer variant type. + + + + + This element specifies a file-time variant type of type date-time. + + + + + Represents App version + + + + + This class contains constants related with external links storing in Excel 2007 format. + + + + + Main namespace for external links file. + + + + + This element is a container for specific types of external links. + + + + + This element represents an external workbook which is supplying data to the current workbook. + + + + + This element is the container for all of the worksheet names in a supporting workbook. + + + + + Name of a worksheet in the supporting workbook. + + + + + This element defines the collection of external references for this workbook. + + + + + This element defines an external reference that stores data for workbook elements. + + + + + Name of the xml attribute that stores sheet name value. + + + + + This element serves as the collection for 1 or more sheetData elements. + + + + + This element is a collection of the defined names associated with the supporting workbook. + + + + + This element contains information about a named range in an external workbook. + + + + + The defined name attribute. + + + + + The dde service attribute. + + + + + The dde topic attribute. + + + + + Name range definition string. + + + + + The index of the worksheet that the named range applies to for named ranges + that are scoped to a particular worksheet rather than the full workbook. + + + + + Cell Tag + + + + + Ole Link + + + + + Dde Link + + + + + Ole Items + + + + + Ole Item + + + + + Dde Items + + + + + Dde Item + + + + + Icon Attribute + + + + + Advise Attribute + + + + + Ole Attribute + + + + + Prefer Picture Attribute + + + + + This class stores all constants connected with page setup settings. + + + + + Print options for the sheet. + + + + + Used in conjunction with gridLinesSet. If both gridLines and gridlinesSet are true, then + grid lines shall print. Otherwise, they shall not (i.e., one or both have false values). + + + + + Used in conjunction with gridLines. If both gridLines and gridLinesSet are true, then + grid lines shall print. Otherwise, they shall not (i.e., one or both have false values). + + + + + Print row and column headings. + + + + + Center on page horizontally when printing. + + + + + Center on page vertically when printing. + + + + + Page margins for a sheet or a custom sheet view. + + + + + Bottom Page Margin in inches. + + + + + Footer Page Margin in inches. + + + + + Header Page Margin in inches. + + + + + Left Page Margin in inches. + + + + + Right Page Margin in inches. + + + + + Top Page Margin in inches. + + + + + Page setup settings for the worksheet. + + + + + Print black and white. + + + + + This attribute specifies how to print cell comments. + + + + + Number of copies to print. + + + + + Print without graphics. + + + + + Specifies how to print cell values for cells with errors. + + + + + Page number for first printed page. If no value is specified, then 'automatic' is assumed. + + + + + Number of vertical pages to fit on. + + + + + Number of horizontal pages to fit on. + + + + + Horizontal print resolution of the device. + + + + + Relationship Id of the devMode printer settings part. + + + + + Orientation of the page. + + + + + Order of printed pages. + + + + + Paper size + + + + + Print scaling. Valid values range from 10 to 400. + + + + + Use firstPageNumber value for first page number, and do not auto number the pages. + + + + + Use the printer�s defaults settings for page setup values and don't use the default values + specified in the schema. For example, if dpi is not present or specified in the XML, the + application shall not assume 600dpi as specified in the schema as a default and instead + shall let the printer specify the default dpi. + + + + + Vertical print resolution of the device. + + + + + Print cell comments as displayed. + + + + + Do not print cell comments. + + + + + Print cell comments at end of document. + + + + + Display cell errors as blank. + + + + + Display cell errors as dashes. + + + + + Display cell errors as displayed on screen. + + + + + Display cell errors as #N/A. + + + + + Header and footer settings. + + + + + Odd header string. + + + + + Odd footer string. + + + + + Header Footer Scales with Document string + + + + + Header Footer Margins align with Document string + + + + + Header Footer Odd/Even pages is different with the document string + + + + + Header Footer first page is different with document string + + + + + Even Header String + + + + + Even Footer String + + + + + First Header String + + + + + First Footer String + + + + + Prevents a default instance of the PageSetup class from being created. + + + + + This class contains constants used for pane parsing/serialization. + + + + + Represents worksheet view pane. + + + + + Horizontal position of the split, in 1/20th of a point; 0 (zero) if none. + If the pane is frozen, this value indicates the number of columns visible + in the top pane. + + + + + Vertical position of the split, in 1/20th of a point; 0 (zero) if none. + If the pane is frozen, this value indicates the number of rows visible + in the left pane. + + + + + Location of the top left visible cell in the bottom right pane (when in Left-To-Right mode). + + + + + The pane that is active. + + + + + Indicates whether the pane has horizontal / vertical splits, + and whether those splits are frozen. + + + + + Panes are frozen, but were not split being frozen. In this state, when the + panes are unfrozen again, a single pane results, with no split. + + + + + Panes are frozen and were split before being frozen. In this state, when + the panes are unfrozen again, the split remains, but is adjustable. + + + + + Panes are split, but not frozen. In this state, the split bars are adjustable by the user. + + + + + Selected or active cell information + + + + + Active cell in the worksheet + + + + + Sequence of References + + + + + Possible values for active pane. + + + + + Bottom left pane, when both vertical and horizontal splits are applied. + This value is also used when only a horizontal split has been applied, + dividing the pane into upper and lower regions. In that case, this value + specifies the bottom pane. + + + + + Bottom right pane, when both vertical and horizontal splits are applied. + + + + + Top left pane, when both vertical and horizontal splits are applied. + This value is also used when only a horizontal split has been applied, + dividing the pane into upper and lower regions. In that case, this value + specifies the top pane. This value is also used when only a vertical split + has been applied, dividing the pane into right and left regions. In that + case, this value specifies the left pane. + + + + + Top right pane, when both vertical and horizontal splits are applied. + This value is also used when only a vertical split has been applied, + dividing the pane into right and left regions. In that case, this value + specifies the right pane. + + + + + Defines constants required for protection parsing/serialization in Excel 2007 format. + + + + + This collection expresses the sheet protection options to enforce when the sheet is protected. + + + + + Specifies the hash of the password required for editing this worksheet. + This protection is optional and may be ignored by applications that choose not + to support this functionality. The hash is generated from an 8-bit wide character. + + + + + Objects are locked when the sheet is protected. + + + + + Scenarios are locked when the sheet is protected. + + + + + Formatting cells is locked when the sheet is protected. + + + + + Formatting columns is locked when the sheet is protected. + + + + + Formatting rows is locked when the sheet is protected. + + + + + Inserting columns is locked when the sheet is protected. + + + + + Inserting rows is locked when the sheet is protected. + + + + + Inserting hyperlinks is locked when the sheet is protected. + + + + + Deleting columns is locked when the sheet is protected. + + + + + Deleting rows is locked when the sheet is protected. + + + + + Selection of locked cells is locked when the sheet is protected. + + + + + Sorting is locked when the sheet is protected. + + + + + Autofilters are locked when the sheet is protected. + + + + + Selection of unlocked cells is locked when the sheet is protected. + + + + + Pivot tables are locked when the sheet is protected. + + + + + Sheet is locked when the sheet is protected. + + + + + Specifies the specific cryptographic hashing algorithm which shall be used along with the + salt attribute and input password in order to compute the hash value. + + + + + Specifies the hash value for the password required to edit this worksheet. + + + + + Specifies the number of times the hashing function shall be iteratively run. + + + + + Specifies the salt which was prepended to the user-supplied password before it was + hashed using the hashing algorithm. + + + + + Specifies the specific cryptographic hashing algorithm which shall be used along with the + salt attribute and input password in order to compute the hash value. + + + + + Specifies the hash value for the password required to edit this workbook. + + + + + Specifies the number of times the hashing function shall be iteratively run. + + + + + Specifies the salt which was prepended to the user-supplied password before it was + hashed using the hashing algorithm. + + + + + Specifies the username to whom which the password is reserved. + + + + + This element specifies options for protecting data in the workbook. Applications + may use workbook protection to prevent anyone from accidentally changing, moving, + or deleting important data. + + + + + Specifies a boolean value that indicates whether structure of workbook is locked. + + + + + Specifies a boolean value that indicates whether the windows that comprise the workbook are locked. + + + + + Specifies the hash of the password required for unlocking this workbook. + + + + + List of protection attribute names in the resulting file. + + + + + List of default values for protection options (order corresponds to ProtectionFlags and ProtectionAttributes). + + + + + List of protection attribute names in the resulting file. + + + + + Protection flags that correspond to ProtectionAttributes (order must be the same). + + + + + List of default values for protection options (order corresponds to ProtectionFlags and ProtectionAttributes). + + + + + Prevents a default instance of the Protection class from being created. + + + + + This class gives access to xml tag/attribute names used for tab sheet. + pagesetup serialization/parsing. + + + + + Gets name of the xml tag that stores margin settings. Read-only. + + + + + Gets name of the xml attribute used to store left margin. Read-only. + + + + + Gets name of the xml attribute used to store right margin. Read-only. + + + + + Gets name of the xml attribute used to store top margin. Read-only. + + + + + Gets name of the xml attribute used to store bottom margin. Read-only. + + + + + Gets name of the xml attribute used to store header margin. Read-only. + + + + + Gets name of the xml attribute used to store footer margin. Read-only. + + + + + Gets tag's namespace. Read-only. + + + + + Xml serializator. Serializes XlsIO workbook into dls xml file format. + + + + + This interface must be implemented by all xml serializators. + + + + + Saves workbook into writer. + + Writer to save workbook into. + Workbook to save. + + + + Root tag for dls format. + + + + + Protection attribute name. + + + + + Default protection value. + + + + + Styles tag in dls format. + + + + + Style tag in dls format. + + + + + Id attribute for style tag. + + + + + Name attribute for style tag. + + + + + Type attribute for style tag. + + + + + Sections tag in dls format. + + + + + Section tag in dls format. + + + + + Break code attribute in section tag. + + + + + Paragraphs tag in dls format. + + + + + Paragraph tag in dls format. + + + + + Items tag in dls format. + + + + + Item tag in dls format. + + + + + Rows tag in dls format. + + + + + Row tag in dls format. + + + + + Cells tag in dls format. + + + + + Cell tag in dls format. + + + + + Width attribute. + + + + + Text tag in dls format. + + + + + Text tag in dls format. + + + + + Columns count attribute in dls format. + + + + + Format tag in dls format. + + + + + Font name attribute in dls format. + + + + + Font size attribute in dls format. + + + + + Bold attribute in dls format. + + + + + Italic attribute in dls format. + + + + + Underline attribute in dls format. + + + + + Text color attribute in dls format. + + + + + Color prefix. + + + + + No underline in dls. + + + + + Single underline in dls. + + + + + Double underline in dls. + + + + + Subscript string in dls. + + + + + Super script in dls. + + + + + No sub/super script in dls. + + + + + SubSuperScript attribute in dls. + + + + + Strikeout attribute in dls. + + + + + Table format tag in dls. + + + + + Start of the character formatting tag. + + + + + Borders tag in dls. + + + + + Border tag in dls. + + + + + Color attribute string. + + + + + Line width attribute string. + + + + + Border type attribute string. + + + + + Border width for None border style. + + + + + Single border type. + + + + + Double border type. + + + + + Dot border type. + + + + + Dash with small gaps border type. + + + + + Dash dot border type. + + + + + Dash-dot-dot border type. + + + + + Thick border type. + + + + + None border type. + + + + + Tag name for page settings block. + + + + + Page height attribute. + + + + + Page width attribute. + + + + + Footer distance attribute. + + + + + Header distance attribute. + + + + + Top margin attribute. + + + + + Bottom margin attribute. + + + + + Left margin attribute. + + + + + Right margin attribute. + + + + + Page break after attribute. + + + + + Orientation attribute. + + + + + Paragraph format tag in dls format. + + + + + Headers-footers section start tag. + + + + + Value of item type for table item. + + + + + Start of even footer. + + + + + Start of even footer. + + + + + Start of even header. + + + + + Start of odd header. + + + + + Row height attribute. + + + + + Shadow color attribute. + + + + + Constant that is added to the column width to preserve place for borders. + + + + + Horizontal alignment attribute. + + + + + Vertical alignment attribute. + + + + + Alignment attribute value for center alignment. + + + + + Alignment attribute value for top alignment. + + + + + Alignment attribute value for bottom alignment. + + + + + Alignment attribute value for middle (center) alignment. + + + + + Alignment attribute value for left alignment. + + + + + Alignment attribute value for right alignment. + + + + + Alignment attribute value for justify alignment. + + + + + Start of first header + + + + + Start of first footer + + + + + True string in dls. + + + + + Excel borders that are supported by DLS. + + + + + Corresponding dls border names. + + + + + Represents dls culture. + + + + + Border width for Hair border style. + + + + + Border width for Thin border style. + + + + + Border width for Medium border style. + + + + + Border width for Thick border style. + + + + + Initializes a new instance of the DLSXmlSerializator class. + + + + + Saves workbook into writer. + + Writer to save workbook into. + Workbook to save. + + + + Serializes all required styles. + + Writer to save workbook into. + Workbook to save. + + + + Serializes all required document properties. + + Writer to save workbook into. + Workbook to save. + + + + Serializes all required sections. + + Writer to save workbook into. + Workbook to save. + + + + Serializes worksheet into xml writer. + + Writer to serialize into. + Worksheet to serialize. + + + + Serializes page settings. + + Writer to save workbook into. + Page setup. + + + + Serializes paragraphs. + + Writer to save worksheet into. + Worksheet to save. + Page width. + + + + Measure page area. + + Print area. + Output available page area size. + Headings size. + + + + Serializes specified range. + + Writer to serialize into. + Range to serialize. + Page size available for export. + Headings size. + Page order. + + + + Writes table format block with empty borders. + + Writer to write into. + + + + Writes borders for heading cells. + + Writer to write borders info into. + + + + Fills size of the next page to serialize. + + Range to serialize. + First row of the previous page; -1 for the first page. + First column of the previous page. + Last row of the previous page. + Last column of the previous page. + Available page size. + Page order. + True if there is next page to serialize; false otherwise. + + + + Returns maximum possible column that can fit into page. + + Parent worksheet. + One-based index of the first column. + Page width. + Last column that fits into page. + + + + Returns maximum possible row23 that can fit into page. + + Parent worksheet. + One-based index of the first row. + Page height. + Last row that fits into page. + + + + Serializes single row into writer. + + Writer to serialize into. + Worksheet that contains required row. + Row index to serialize. + First column to serialize. + Last column to serialize. + Represents Row id. + Headings size. + Row id after serialization. + + + + Serializes headings row into writer. + + Writer to serialize into. + Worksheet that contains required row. + Headings size + First column to serialize. + Last column to serialize. + Represents Row id. + Row id after serialization. + + + + Serializes single cell into xml. + + Writer to serialize into. + Worksheet that contains required cell. + Row index of the cell to serialize. + Column index of the cell to serialize. + Represents Cell id. + + + + Serializes single cell into xml. + + Writer to serialize into. + Represents Cell width. + Cell value to serialize. + Represents Cell id. + + + + Serializes table format. + + Writer to serialize into. + Format to serialize. + + + + Serializes borders collection. + + Writer to serialize into. + Extended format that contains borders to serialize. + + + + Returns string representing vertical alignment in dls format. + + Vertical alignment. + String representing vertical alignment in dls format. + + + + Returns string representing horizontal alignment in dls format. + + Horizontal alignment. + String representing horizontal alignment in dls format. + + + + Returns line width for dls format. + + Border to get width from. + Line width for dls format. + + + + Returns border type for dls format. + + Border to get type from. + Border type for dls format. + + + + Serializes rtf string. + + Writer to serialize into. + RTF string to serialize. + Cell extended format. + + + + Writes text block into XmlWriter. + + Writer to save into. + Text to write. + Font of the text to write. + Represents Item id. + + + + Writes font into xml writer. + + Writer to save font into. + Font to save. + + + + Serializes boolean attribute. + + Writer to serialize into. + Attribute name. + Attribute value. + + + + Converts color into string that is understandable by dls. + + Color to convert. + Color string representation in dls format. + + + + Converts excel underline into string in dls format. + + Underline type to convert. + String corresponding to the underline. + + + + Converts font into SubSuperScript string. + + Font to get settings from. + SubSuperScript string in dls format. + + + + Writes attribute string, converts value into points. + + Writer to write attribute into. + Attribute name. + Value to write. + Units in which value is specified. + + + + Writes attribute string. + + Writer to write attribute into. + Attribute name. + Value to write. + + + + Writes attribute string. + + Writer to write attribute into. + Attribute name. + Value to write. + + + + Serializes header and footer into XmlWriter. + + XmlWriter to serialize into. + Sheet with footer/header to serialize. + Available page width. + + + + Serializes header footer. + + Writer to serialize into. + Header/footer values. + Page width. + + + + Evaluates column width. + + Parent worksheet. + Column index. + Column width in points. + + + + This class contains constants used for data validation parsing / serialization + in Excel 2007 SpreadsheetML format. + + + + + Name of xml tag that represents data validations. + + + + + Name of xml attribute name that represents data validation item count + + + + + Name of xml attribute name that indicates whether all input prompts for the worksheet are disabled. + + + + + Name of xml attribute name that represents the x-coordinate (relative to window) of top-left + corner of the data validation input prompt (textbox). + + + + + Name of xml attribute name that represents the y-coordinate (relative to window) of top-left + corner of the data validation input prompt (textbox). + + + + + Name of xml tag that represents data validation. + + + + + Name of xml tag that represents list of choices + + + + + Name of xml attribute name that represents data validation error message. + + + + + Name of xml attribute name that represents data validation sequence of references. + + + + + Name of xml attribute name that represents data validation type. + + + + + Represents which uses a custom formula to check the cell value. + + + + + Represents which checks for date values satisfying the given condition. + + + + + Represents which checks for decimal values satisfying the given condition. + + + + + Represents which checks for a value matching one of list of values. + + + + + Represents no data validation. + + + + + Represents which checks for text values, whose length satisfies the given condition. + + + + + Represents which checks for time values satisfying the given condition. + + + + + Represrnts which checks for whole number values satisfying the given condition. + + + + + Name of xml attribute name that represents data validation allow blank status. + + + + + Name of xml attribute name that represents data validation message text. + + + + + Name of xml attribute name that represents data validation error style. + + + + + This data validation error style uses an information icon in the error alert. + + + + + This data validation error style uses a stop icon in the error alert. + + + + + This data validation error style uses a warning icon in the error alert. + + + + + Name of xml attribute name that represents data validation title bar text of error alert. + + + + + Name of xml attribute name that represents data validation relational operator used with this data validation. + + + + + Represents value which checks if a value is between two other values. + + + + + Represents value which checks if a value is equal to a specified value. + + + + + Represents value which checks if a value is greater than a specified value. + + + + + Represents value which checks if a value is greater than or equal to a specified value. + + + + + Represents value which checks if a value is less than a specified value. + + + + + Represents value which checks if a value is less than or equal to a specified value. + + + + + Represents value which checks if a value is not between two other values. + + + + + Represents value which checks if a value is not equal to a specified value. + + + + + Name of xml attribute name that represents data validation message text of input prompt. + + + + + Name of xml attribute name that represents data validation title bar text of input prompt. + + + + + Name of xml attribute name that indicates whether to display the dropdown combo box for a list type data validation. + + + + + Name of xml attribute name that indicates whether to display the error alert message. + + + + + Name of xml attribute name that indicates whether to display the input prompt message. + + + + + Name of xml tag name that represents the first formula in the data validation dropdown. + + + + + Name of xml tag name that represents the second formula in the data validation dropdown. + + + + + Represents Range pref. + + + + + Represents Type pref. + + + + + Represents Selected pref. + + + + + Represents Selected pref. + + + + + Represents Selected pref. + + + + + Represents Selected pref. + + + + + Represents Selected pref. + + + + + Represents Selected pref. + + + + + Represents Selected pref. + + + + + Represents Selected pref. + + + + + Represents Value pref. + + + + + Represents Qualifier pref. + + + + + Prevents a default instance of the DV class from being created. + + + + + Class used for find the missing namespace + + + + + store missing namespace prefix. + + + + + store missing namespace index. + + + + + stroe the missing name space and related values. + + + + + Default missing Name space prefix. + + + + + Constructor of the MyNameSpaceManger class. + + Table of atomized string objects + + + + Constructor of the MyNameSpaceManger class. + + Table of atomized string objects + Missing namespace + + + + Adding missing namespace to collection. + + + + + + Gets a value indicating whether the supplied prefix has a namespace defined for the current pushed scope. + + The prefix of the namespace you want to find. + True if there is a namespace defined; otherwise, false + + + + Gets the namespace URI for the specified prefix. + + The prefix of the namespace you want to find. + Return the perfix namespace + + + + Gets and sets the missing namespace Prefix + + + + + Gets and sets the Missing Namees Space index + + + + + The dictionary consists of a collection of namespace names keyed by prefix. + + + + + Class used for holding file data. + + + + + Name of the zip item with content types description. + + + + + Name of the directory with relations. + + + + + Extension for relations file. + + + + + Path to the top relations. + + + + + Xml files extension. + + + + + Relations default extension. + + + + + Binary item extension. + + + + + Default name of the workbook part. + + + + + Default name of the CustomXml Parts + + + + + Default name of the Person part + + + + + Default name of the meta data part + + + + + Default name of the shared strings part. + + + + + Default name of the styles part name. + + + + + Default name of the themes part name. + + + + + Path format for the worksheet part. + + + + + Path format for the chartsheet part. + + + + + Path format for the dialogsheet part. + + + + + Path format for the macrosheet part + + + + + Path format for intlmacrosheet part + + + + + Path format for pictures. + + + + + Default name of the extended properties part. + + + + + Default name of the core properties part. + + + + + Default name of the custom properties part. + + + + + Format for relation id generation. + + + + + Default name format for the external link items. + + + + + Start of the External links item name. + + + + + Start of the worksheet custom property item. + + + + + Default name format for cache definition. + + + + + Default name format for cache records. + + + + + Default name format for pivot table. + + + + + Format to get full path to zip archive item that stores tables. + + + + + Format to get full path to zip archive item that stores slicer. + + + + + Format to get full path to zip archive item that stores slicer cache. + + + + + External connection + + + + + Default path of the XmlMaps. + + + + + Default name of the XmlMaps part name. + + + + + Vba project path + + + + + List which contains items to be removed from ZipArchive. + + + + + worksheet list to be saved + + + + + Dictionary which contains the stream of the emf image file and wmf image file + + + + + Represents Zip Archive. + + + + + Parent workbook. + + + + + Parser to parse data if necessary. + + + + + Dictionary which is used to identify content type and stores default types. + Key - file extension (string), Value - content type (string). + + + + + Dictionary which is used to identify content type and stores type overrides. + Key - part name, Value - content type (string). + + + + + Top-level relations. + + + + + Name of the workbook part. + + + + + Name of the person part. + + + + + Name of meta data part + + + + + Name of the shared strings table part. + + + + + Name of the styles part. + + + + + Connection part. + + + + + Name of the themes part. + + + + + Object used for workbook serialization. + + + + + Represents list of workbook styles. + + + + + Workbook-level relationsm_strSlicerCacheRelationId + + + + + Specifies style relation id. + + + + + Specifies Person relation Id + + + + + Specifies metadata relation Id + + + + + Specifies slicer cache relation id. + + + + + Specifies shares string relation id. + + + + + Specifies theme relation id. + + + + + Specifies workbook content type. + + + + + Memory stream that will get workbook part after /sheets tag or after /definedNames tag. + + + + + Memory stream that will get workbook part before sheets tag. + + + + + Stream that can contains Dxfs formatting tags. + + + + + Index used to generate comments zip item names. + + + + + Index used to generate threaded comments zip item names. + + + + + Index used to generate vml zip item names. + + + + + Index used to generate drawing zip item names. + + + + + Index used to generate image zip item names. + + + + + Represents image id. + + + + + Index used to generate chart zip item names. + + + + + Index used to generate chartEx zip item names. + + + + + Index used to generate the pivotCache item name + + + + + Represents the slicer relations + + + + + Index used to generate the pivotCacheRecords item name + + + + + Index used to generate extern link zip item name. + + + + + Array that contains names of the image items. + + + + + Parsed dfx style list. + + + + + Workbook views collection. + + + + + Items that must be removed after parsing complete. + + + + + Stream containing functionGroups tag. + + + + + Build version, last edited version, etc.. + + + + + Calculation id. + + + + + Slicer cache id + + + + + Custom workbook views collection. + + + + + Drawings item path + + + + + Prevents a default instance of the FileDataHolder class from being created. + + + + + Initializes a new instance of the FileDataHolder class. + + Parent workbook for the new instance. + + + + Initializes a new instance of the FileDataHolder class. + + Parent workbook for the new instance. + File name to get initial data from. + Password to use during for decryption. + + + + Initializes a new instance of the FileDataHolder class. + + Parent workbook for the new instance. + Stream to get initial data from. + Password to use during for decryption. + + + + Requests password if necessary. + + Current password provided to the parsing method. + Application object used for password request. + + + + Re-requests password (called when provided password is incorrect). + + Current password. + Application object used for password request. + + + + Adds overriden content type. + + File name to override content type for. + Content type to set. + + + + Parses Dxf styles collection. + + Dxf style collection. + + + + Extracts sheet data. + + Represents sheet path. + Extracted sheet data + + + + Extracts worksheet. + + Represents sheet name. + Sheet extracted. + + + + Parses document. + + Represents theme colors in document. + + + + Finds workbook part name according to content type. + + Content type. + True if item was found; false otherwise. + + + + Gets the Workbook Save Type. + + Workbook Content Type. + + + + Parses content type. + + + + + Parses slicer cache + + + + + Parses all document properties. + + + + + Parses archive item by content type. Removes relation for this item and the item itself. + + Content type. + + + + Returns XmlReader for corresponding content type. + + Content type. + Name of the item that has specified content type. + Item name. + + + + Saves document into specified file. + + Name of the file to save into. + Type of the saving format. + + + + Saves document into specified stream. + + Stream to save into. + Type of the saving format. + + + + Saves document inside internal zip archive. + + Type of the saving format. + + + + Registers correct content type into collections of default content types. + + Image format of the picture to register content type for. + Proposed picture file extension. + + + + Registers correct content type into collections of default content types. + + Proposed picture file extension. + + + + Converts image format into content type and file extension. + + Image format to convert. + Resulting file extension. + Content type for this image format. + + + + Saves image into appropriate location inside document. + + Image to save. + Proposed item name, null - autogenerate. + Generated item name. + + + + Saves image into appropriate location inside document. + + Image to save. + Destination image format. + Proposed item name, null - autogenerate. + Generated item name. + + + + Get Extension of the image and return Image format of the image + + Extension of the image + Image format of the image + + + + Gets image item name. + + Image index to get name for. + Name of Image item. + + + + Prepares a new archive item. + + Start of the item's name. + Represents file extension. + Content type for the new item. + Parent relations collection. + Relation type. + Variable used as counter of already created items of the same type. + Created archive item. + Represents relation ID + + + + Converts image format into picture file extension. + + Format to convert. + Extension for picture file. + + + + Parses workbook. + + Represents theme color in workbook. + + + + Parses the metaProperties + + + + + Parses the CustomXmlParts + + + + + Parses the CustomXml Items + + CustomXmlParts collections + Schemas + XmlPartName + XmlID + + + + Parses the CustomXmlParts ItemPropeties + + PropertyName + Schemas + + + + Parses relations item. + + Path to the item to parse. + Parsed relations collection; null if there are no such relation item. + + + + Tries to find path to the item by content type. + + Content type to locate. + First occurrence of the item with specified content type. + + + + Tries to find path to the item by content type inside default types. + + Content type to locate. + First occurrence of the item with specified content type. + + + + Tries to find path to the item by content type inside overridden types. + + Content type to locate. + First occurrence of the item with specified content type. + + + + Gets relations. + + Item name to get corresponding relation. + Extracted relation + + + + Splits item name (including path) into item name and path to this item. + + Item name to split. + Path without item name. + Item name without path. + + + + Gets image. + + Path of the image. + Extracted image + + + + Creates XmlReader for specified zip archive item. + + Item to create reader for. + Created reader. + + + + Creates XmlReader for specified zip archive item. + + Relation that points to the archive item. + Path to the parent item. + Created reader. + + + + Creates XmlReader and fixes potential br tags issue. + + Relation that points to the archive item. + Path to the parent item. + Path to the desired item. + Created reader. + + + + Creates XmlReader for specified zip archive item. + + Relation that points to the archive item. + Path to the parent item. + Path to the desired item. + Created reader. + + + + Returns single zip item based on the relation and parent path. + + Relation that points to the archive item. + Path to the parent item. + Path to the desired item. + Requested zip item. + + + + Creates XmlReader for specified zip archive item. + + Relation that points to the archive item. + Path to the parent item. + Indicates whether item must be removed after extracting data. + Created reader. + + + + Parses external link. + + Represents relation id. + + + + Tries to combine two paths into one. + + First part of the path. + Second part of the path. + Combined path. + + + + Creates or updates content types and saves them inside internal zip archive. + + + + + Saves all document properties. + + + + + Saves all ContentTypeProperties + + + + + Saves archive item, adds corresponding record into content type and relation collections. + + Part name value. + Content type value. + Relation type value. + + + + Saves archive item by part name into zip archive item. + + Item part name. + + + + Fills default content types. + + + + + Saves top level relation in zip. + + + + + Generates relation id for specified relation index. + + Relation index to generate relation id. + Generated relation id. + + + + Saves workbook. + + + + + Selects correct workbook content type depending on workbook's content and desired save type. + + Workbook content type. + + + + Saves all exisiting pivot caches. + + + + + Saves single pivot cache item. + + Cache object to save. + Name of the file item with cache definition. + + + + Saves pivot cache definition for the specified cache. + + Cache to save definition for. + Name of the file with pivot cache records for this pivot cache. + Name of the file item with cache definition. + + + + Saves pivot cache records. + + Cache to save records for. + Name of the save item. + + + + Generates unique name for pivot cache records. + + Cache to generate name for. + Generated file name. + + + + Generates cache file anme. + + Cache to generate file name for. + Generated file name. + + + + Saves all workbook images. + + Array containing zip name with images. + + + + Serializes image from MsofbtBSE record. + + Record to serialize. + Name of the zip item with image. + + + + Saves CustomXmlParts into internal zip archive. + + + + + Saves ItemProperties Relation in the zip Archive + + + + + Saves the Xml Data in Zip Archive + + + + + Saves CustomXmlParts Items Properties and Schema Collections + + customXmlPart + PropertyName to be serialized + xml PartName to be Serialized + + + + Saves styles into internal zip archive. + + Dictionary with new XF indexes. + + + + Saves Person into internal zip archive + + + + + Saves meta data into internal zip archive + + + + + Saves shared strings table into internal zip archive. + + + + + Saves slicer cache into internal zip archive. + + + + + Saves workbook part into internal zip archive. + + + + + Save Vba Project + + + + + Adds relations to the collection, tries to re-use specified relation id if not null. + + Collection to add new relation to. + Relation target. + Parent path for the relation target. + Relation type. + Relation id to re-use if not null. + Used relation id. + + + + Serializes relations collection. + + Name of the parent + Represents relations + + + + Saves all sheets (worksheets and chartsheets) into internal zip archive + and updates relations collection. + + Workbook relations collection. + Name of the workbook item. + Dictionary with new XF indexes, key - old index, value - new index. + Dictionary that will contain pivot cache files + (key - cache object, value - cache file name). + + + + Reserves ids for worksheets that were extracted from original file. + + Worksheets to iterate through. + Collection to put reservation into. + + + + Saves single sheet into internal zip archive. + + Sheet to save. + Name of the sheet's item in the zip archive. + Workbook relations collection. + Path to the workbook without file name. + Dictionary with new XF indexes, key - old index, value - new index. + Dictionary that will contain pivot cache files + (key - cache object, value - cache file name). + + + + Saves single dialog sheet into internal zip archive. + + Sheet to save. + Name of the sheet's item in the zip archive. + Workbook relations collection. + Path to the workbook without file name. + Dictionary with new XF indexes, key - old index, value - new index. + Dictionary that will contain pivot cache files + (key - cache object, value - cache file name). + + + + Saves Macrosheet and IntlMacrosheet into internal zip archive. + + Sheet to save + Name of the sheet's item in the zip archive + Workbook relations collection + Path to the workbook without file name. + Dictionary with new XF indexes, key - old index, value - new index + Dictionary that will contain pivot cache files + (key - cache object, value - cache file name) + + + + Serializes single worksheet object. + + Worksheet to serialize. + Name of a zip item to use. + Dictionary with new XF indexes, key - old index, value - new index. + Dictionary that will contain pivot cache files + (key - cache object, value - cache file name). + + + + Updates archive item + + Worksheet to add + Worksheet name to add + + + + Saves chartsheet into internal zip archive. + + Chartsheet to save. + Name of a zip item to use. + + + + Serializes existing worksheet/chartsheet data without any modifications. + + Sheet to serialize. + New corresponding zip archive item name. + + + + This method removes calculation chain item from the document. + + + + + Serializes single external link. + + Extern workbook item that contains link information to serialize. + Name of the external link item. + + + + Generates zip archive item name for external link. + + Generated item name. + + + + Generates unique item name. + + Items counter. Contains current item index to try and is updated during operation. + Starting part of the path. + Item's extension. + Generated name. + + + + Generates unique item name. + + Items counter. Contains current item index to try and is updated during operation. + Path format string. + Generated name. + + + + Genreates unique name for pivot table item. + + Generated name. + + + + Creates data holder for the specified worksheet. + + Tabsheet to create data holder for. + File name for the tabsheet item. + + + + Serializes table object. + + Table to serialize. + Name of the created file. + + + + Serializes slicer object. + + Slicers to serialize. + Name of the created file. + + + + Generates file name for the table item. + + Generated item name. + + + + Generates file name for the slicer item. + + Generated item name. + + + + Generates file name for the slicer item. + + Generated item name. + + + + Gets content type by item name. + + + + + + + Connection + + + + + Serialize Query Table + + + + + + + + Serialize Table Relations + + + + + + + Serialize XML mapping. + + + + + Saves workbook into specified file. + + Destination file name. + Workbook to save. + Save type. + + + + Saves workbook into stream. + + Stream to save into. + Workbook to save. + Save type (template or ordinary xls). + + + + Creates copy of the current object. + + Parent workbook for the new object. + A copy of the current object. + + + + Creates copy of the workbook's views. + + List with cloned items. + + + + Creates copy of the parsed Dxf items. + + List with copied items. + + + + Dispose + + + + + Gets parent workbook. Read-only. + + + + + Gets Excel 2007 parser. + + + + + Returns archive item corresponding to the relation. + + + + + Gets object used for serialization. + + + + + Gets cell styles. + + + + + Gets zip archive object that stores Excel 2007 document. + + + + + Gets or sets last used index of the comment item. + + + + + Gets or sets last used index of the threaded comment item. + + + + + Gets or sets last used index of the vml item. + + + + + Gets or sets last used index of the drawing item. + + + + + Gets or sets last used index of the image item. + + + + + Gets or sets last used image id. + + + + + Gets or sets last used index of the chart item. + + + + + Gets or sets last used index of the chartEx item. + + + + + gets or set the pivotCache index + + + + + gets or set the pivotCache index + + + + + Gets dictionary with default content types. Read-only. + + + + + Gets dictionary with overridden content types. Read-only. + + + + + Gets number of parsed dfx styles or int min value if nothing was parsed. + + + + + Gets Items that must be removed after parsing complete. Read-only. + + + + + Gest or sets Calculation ID + + + + + Slicer cache id + + + + + Gets the File Version + + + + + Gets the preserved caches + + + + + Gets or sets extension stream + + + + + Gets Items that must be removed. Read-only. + + + + + Drawings item path + + + + + Represents the slicer relations + + + + + Represents the slicer relations + + + + + This class is responsible for gradient serialization. + + + + + Serializes gradient stops collection into specified XmlWriter. + + XmlWriter to serialize into. + Collection to serialize. + Parent workbook object. + + + + Serializes collection of gradient stops. + + XmlWriter to serialize into. + Collection to serialize. + Parent workbook. + + + + Serializes single gradient stop. + + XmlWriter to serialize into. + GradientStop to serialize. + Parent workbook. + + + + This class stores relation data (except relation id). + + + + + Represents Target. + + + + + Target type. + + + + + Defines whether target is external or not. + + + + + Prevents a default instance of the Relation class from being created. + + + + + Initializes a new instance of the Relation class. + + Represents target. + Represents destination type. + + + + Initializes a new instance of the Relation class. + + Represents target. + Represents destination type. + Value indicating whether target is external. + + + + Create copy of the current object. + + A copy of the current object. + + + + Gets target. Read-only. + + + + + Gets destination type. Read-only. + + + + + Gets a value indicating whether target is external. + + + + + Class used for Relations Collection. + + + + + Relation id start. + + + + + Length of the relation id start. + + + + + Dictionary with relations. Key - relation id, value = relation object. + + + + + Path to the item (this member should be filled when extracting collection from file). + + + + + Initializes a new instance of the RelationsCollection class. + + + + + Removes relation by id. + + Relation id to remove. + + + + Removes relation by content type. + + Content type of relation to delete. + + + + Searches for relation with appropriate target path and removes it from collection. + + Item name to be removed. + + + + Searches for relation with appropriate content type. + + Content type to find. + Relation id. + Relation that contains desired content type or null if not found. + + + + Calculate the pivot table count in workbook. + + + + + + + Searches for relation with appropriate target path. + + Item name to find. + Relation id that contains points to specified content type or null if not found. + + + + Generates relation id that can be used as relation key. + + Free relation key. + + + + Generates relation id that can be used as relation key. + + Free relation key. + + + + Generates id and adds relations to there collection. + + Relation to add. + Relation id. + + + + Generates id and adds relations to there collection. + + Relation to add. + Index of relation id. + Relation id. + + + + Generates id and adds relations to there collection. + + Relation to add. + String ID + Relation id. + + + + Removes all items from the collection. + + + + + Creates copy of the current collection. + + A copy of the current collection. + + + + Creates copy of the current collection. + + A copy of the current collection. + + + + Dispose Relations + + + + + Returns an enumerator that can iterate through a collection. + + An IEnumerator that can be used to iterate through the collection. + + + + Gets / sets relation by id. + + + + + Gets number of items in the collection. Read-only. + + + + + Gets or sets path to the item (this member should be filled when extracting collection from file). + + + + + Dictionary with relations. Key - relation id, value = relation object. + + + + + This class simply hold all constants required by relations. + + + + + Content type for workbook item (used in relations). + + + + + Content type for styles item (used in relations). + + + + + Content type for Person item + + + + + Content type for metadata + + + + + Content type for SST dictionary item (used in relations). + + + + + Content type for calculation chain item (used in relations). + + + + + Content type for vml drawings (used in worksheet relations). + + + + + Content type of comment notes items (used in worksheet relations). + + + + + Content type of threaded comments (used in worksheet relations). + + + + + Content type for drawings (used in worksheet relations). + + + + + Content type for chart drawings (used in worksheet relations). + + + + + Represents package level relationships namespace. + + + + + Content type for theme item (used in relations). + + + + + Content type for image item (used in relations). + + + + + Content type for core properties item (used in relations). + + + + + Content type for extended properties item (used in relations). + + + + + Content type for custom properties item (used in relations). + + + + + Content type for path to extern link source (used in relations). + + + + + Content type for external link (used in relations). + + + + + Content type for chart. + + + + + Relation type for worksheet custom property. + + + + + Content type for path to extern link source that is missing. + + + + + Content type for pivot cache definition. + + + + + Content type for pivot cache records. + + + + + Content type for pivot table. + + + + + Content type for table object. + + + + + Content type for slicer object. + + + + + Content type for slicer cache object. + + + + + Content Type for Ole object. + + + + + Content Type for Dde object. + + + + + Content Type for External connection. + + + + + Content Type for Query Table. + + + + + Content Type for Theme Override. + + + + + Content type for XmlMaps. + + + + + Content Type for ChartEx. + + + + + Vba Project Relation type + + + + + Prevents a default instance of the RelationTypes class from being created. + + + + + This class is used for picture shapes serialization. + + + + + Dictionary to hold Svg streams. + + + + + This method serializes specified shape into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + Serializes picture. + + Writer to serialize into. + Picture to serialize. + Relation id of the picture file. + Object that stores data of the parent worksheet. + + + + + This method serializes shape properties. + + XmlWriter to serialize into. + Picture to get properties from. + + + + Serialize shadow properties for picture shape + + xmlTextWriter object + picture to which shape properties belong to + Shape property node + + + + Serializes non visual properties. + + XmlWriter to serialize into. + Picture to serialize. + Object that stores data of the parent worksheet. + + + + Serializes non visual picture canvas properties. + + XmlWriter to serialize into. + Picture to serialize. + + + + Serializes blip fill. + + XmlWriter to save blip fill into. + Picture to get blip fill options from. + Relation id of the picture zip archive item. + + + + Serializes DueTone color. + + XmlWriter to save blip fill into. + Picture to get blip fill options from. + + + + Serializes Color Change. + + XmlWriter to save blip fill into. + Picture to get blip fill options from. + + + + This method serializes general shape settings (shape type) into specified XmlWriter. + + XmlWriter to write shape type into. + Type of the shape that is going to be serialized. + + + + Serializes picture file and creates necessary relations. + + Object that holds file data. + Picture to save into file. + Relation id of the generated picture item. + + + + Returns the SVG picture path when the stream already exists + + SVG Stream + Worksheet Data holder + Returns the SVG picture path when the stream already exists + + + + Serializes extension list for the blip node. + + XmlWriter to write shape type into. + Picture to which the extension list belongs to. + + + + Serializes various shape properties of a picture + + xmlTextWriter object + picture to which shape properties belong to + Shape property node + + + + Serializes fill properties of a picture + + xmlTextWriter object + picture to which fill properties belong to + Shape property node + + + + Clears the Svg data. + + + + + Gets the dictionary to hold Svg streams. + + + + + This class is responsible for chart shape serialization. + + + + + Format for the default chart item. + + + + + Format for the default chart Ex item. + + + + + Format for the default chart color style + + + + + Format for the default chart style + + + + + This method serializes specified shape into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + Serialize chart object into separate file and returns relation id. + + Parent worksheet data holder. + Chart to serialize. + Gets name of the chart item. + Relation id of the serialize chart object. + + + + Generates item name for the new chart object. + + Parent worksheet data holder. + Chart to generate name for. + Item name that should be used to save chart. + + + + Generates item name for the new chartEx object. + + Parent worksheet data holder. + Chart to generate name for. + Item name that should be used to save chart. + + + + Serializes chart shape properties. + + XmlWriter to serialize into. + Chart to serialize. + Relation id that points to the chart object. + Parent worksheet data holder. + + + + Serializes all graphics xml tag and all subtags. + + XmlWriter to serialize into. + Chart to serialize. + Relation id of the chart object item. + Boolean value indicates whether the chart is chartEx type or not + + + + Serialize slicer elements of graphic frames + + XmlWriter to serialize into. + shape to serialize. + Relation id of the chart object item. + + + + Serializes non visual graphic frame properties. + + XmlWriter to serialize into. + Chart shape to serialize. + Parent worksheet data holder. + + + + Class used for serializing Checkbox. + + + + + Serialize the check box shape + + XmlWriter to serialize fill color from. + shae to set fill color to. + relation Collection of the item + path of the item + + + + Serializes additional tag into ClientData tag. + + XmlWriter to serialize into. + Shape to serialize for. + + + + Serialize internal part of the div object. + + XmlWriter to serialize into. + Shape to serialize. + + + + Serializes subnodes of the shapetype description. + + Writer to serialize into. + + + + Returns instance number of supported shape object. Read-only. + + + + + Returns string representation of the shape type. Read-only. + + + + + Class used for serializing comments. + + + + + Adds required style properties to the list in the format 'name':'value'. + + List to add properties to. + Shape to prepare styles for. + + + + Serializes additional tag into ClientData tag. + + XmlWriter to serialize into. + Shape to serialize for. + + + + Serializes subnodes of the shape tag. + + XmlWriter to serialize into. + Shape to serialize for. + + + + Serializes subnodes of the shapetype description. + + Writer to serialize into. + + + + Returns instance number of supported shape object. Read-only. + + + + + Returns string representation of the shape type. Read-only. + + + + + Class used for defining constants and namespace for drawings. + + + + + Name of the tag objectPr + + + + + Store move with cells value + + + + + Store size with cells value + + + + + Store the default size value + + + + + Main spreadsheet drawings namespace ('xdr' abbreviation is used in MS Excel documents). + + + + + Main drawings namespace ('a' abbreviation is used in MS Excel documents). + + + + + Main drawings namespace ('a16' abbreviation is used in MS Excel documents). + + + + + Svg drawing namespace. + + + + + Main chartsheet drawings namespace ('cdr' abbreviation is used in MS Excel documents). + + + + + Main drawings namespace ('a14' abbreviation is used in MS Excel documents). + + + + + Prefix used by MS Excel for XdrNamespace definition. + + + + + Prefix used by MS Excel for CdrNamespace definition. + + + + + Prefix used by MS Excel for ANamespace definition. + + + + + Prefix used by MS Excel for A14Namespace definition. + + + + + Prefix used by MS Excel for A16Namespace definition. + + + + + Prefix used by MS Excel for CreationId + + + + + Prefix used by MS Excel for Sle + + + + + Prefix used by MS Excel for Sle15 + + + + + This element specifies the camera tool option in pictures. + + + + + This element specifies the cell range in camera tool option. + + + + + URI string used by MS Excel for camera tool. + + + + + Prefix used by MS Excel for ASvgNamespace definition. + + + + + Attribute used to denote the requires + + + + + Element specifies the fallback content + + + + + This element specifies a two cell anchor placeholder for a group, a shape, + or a drawing element. It moves with cells and its extents are in EMU units. + + + + + This element specifies a one cell anchor placeholder for a group, a shape, + or a drawing element. It moves with the cell and its extents is in EMU units. + + + + + This element Specifies the form control element. + + + + + This element specifies the form control element. + + + + + Specifies how the DrawingML contents shall be moved and/or resized when + the rows and columns between its start and ending anchor (the from and + to child elements) are resized, or have additional rows/columns inserted + within them, or additional row/columns are added before them. + + + + + This element specifies the first anchor point for the drawing element. + This will be used to anchor the top and left sides of the shape within + the spreadsheet. That is when the cell that is specified in the from + element is adjusted, the shape will also be adjusted. + + + + + This element specifies the second anchor point for the drawing element. + This will be used to anchor the bottom and right sides of the shape within + the spreadsheet. That is when the cell that is specified in the to element + is adjusted, the shape will also be adjusted. + + + + + This element specifies the column that will be used within the from and to + elements to specify anchoring information for a shape within a spreadsheet. + + + + + This element is used to specify the column offset within a cell. + + + + + This element specifies the row that will be used within the from and to + elements to specify anchoring information for a shape within a spreadsheet. + + + + + This element is used to specify the row offset within a cell. + + + + + This element specifies the non visual properties for a picture. + This allows for additional information that does not affect + the appearance of the picture to be stored. + + + + + This element specifies non-visual canvas properties. + + + + + This element specifies non-visual group shape properties. + + + + + This element specifies group shape properties. + + + + + This element specifies the non-visual connector shape drawing properties + + + + + This element specifies the non-visual properties for the picture canvas. + + + + + This element specifies the on-click hyperlink information to be applied to a run of text. + When the hyperlink text is clicked the link is fetched. + + + + + This element specifies the type of picture fill that the picture object + will have. Because a picture has a picture fill already by default, + it is possible to have two fills specified for a picture object. + + + + + This element specifies the existence of an image (binary large image + or picture) and contains a reference to the image data. + + + + + It's define the Picture fill option + + + + + It's define the values of Transparency + + + + + Specifies the identification information for an embedded picture. This + attribute is used to specify an image that resides locally within the file. + + + + + Specifies the identification information for a linked picture. This + attribute is used to specify an image that is added as external link. + + + + + Specifies that the current start and end positions shall be maintained + with respect to the distances from the absolute start point of the worksheet. + + + + + Specifies that the current drawing shall move with its row and column + (i.e. the object is anchored to the actual from row and column), but + that the size shall remain absolute. + + + + + Specifies that the current drawing shall move and resize to maintain its + row and column anchors (i.e. the object is anchored to the actual from + and to row and column). + + + + + This element specifies that a BLIP should be stretched to fill the target rectangle. + + + + + This element specifies that a BLIP should be tiled to fill the available space. + + + + + This element specifies the portion of the blip used for the fill. + + + + + This element specifies a fill rectangle. When stretching of an image is specified, + a source rectangle, srcRect, is scaled to fit the specified fill rectangle. + + + + + This element specifies the existence of a picture object within the document. + + + + + Name of the xml attribute that stores id. + + + + + Name of the xml attribute that stores shape name. + + + + + Name of the xml attribute that stores alternative description. + + + + + This element specifies all locking properties for a graphic frame. + + + + + Specifies that the generating application should not allow aspect ratio + changes for the corresponding connection shape. If this attribute is not + specified, then a value of false is assumed. + + + + + This element specifies the visual shape properties that can be applied to a shape. + + + + + This element specifies the thickness of the walls or floor as a percentage of the largest dimension of the plot volume. + + + + + It's define picturefill in shapeproperty. + + + + + It's define pictureformat options + + + + + It's define pictureformat options + + + + + It's define the Pictureformatvalue + + + + + This element represents 2-D transforms for ordinary shapes. + + + + + This element specifies the location of the bounding box of an object. + + + + + This element specifies the size of the bounding box enclosing the referenced object. + + + + + This element specifies the location of the bounding box of a child object. + + + + + This element specifies the size of the bounding box enclosing the referenced child object. + + + + + Specifies a coordinate on the x-axis. + + + + + Specifies a coordinate on the x-axis. + + + + + Specifies the length of the extents rectangle in EMUs. + + + + + Specifies the width of the extents rectangle in EMUs. + + + + + Specifies the preset geometry that will be used for this shape. + + + + + Specifies the custom geometry that will be used for this shape. + + + + + Specifies the EffectTag. + + + + + Specifies the ShapePropertiesExtensionList. + + + + + This elemet specifies that the chart has inverted shape elements and that is to be filled with a solid color. + + + + + This element specifies when a preset geometric shape should be used + instead of a custom geometric shape. + + + + + This element indicates that the sheet contains drawing components built + on the drawingML platform. + + + + + This element specifies all drawing objects within the worksheet. + + + + + This element specifies the adjust values that will be applied to the specified shape. + + + + + This element is used to set certain properties related to a drawing element + on the client spreadsheet application. + + + + + This element describes a single graphical object frame for + a spreadsheet which contains a graphical object. + + + + + This element specifies the existence of a single shape. A shape can either + be a preset or a custom geometry, defined using the SpreadsheetDrawingML + framework. In addition to a geometry each shape can have both visual and + non-visual properties attached. Text and corresponding styling information + can also be attached to a shape. This shape is specified along with all + other shapes within either the shape tree or group shape elements. + + + + + This element specifies the properties for a connection shape drawing element. + A connection shape is a line, etc. that connects two other shapes in this drawing. + + + + + This element specifies a group shape that represents many shapes grouped together. + This shape is to be treated just as if it were a regular shape but instead of being + described by a single geometry it is made up of all the shape geometries encompassed + within it. Within a group shape each of the shapes that make up the group are + specified just as they normally would. The idea behind grouping elements however + is that a single transform can apply to many shapes at the same time. + + + + + This element specifies the custom function associated with the object. + + + + + This element specifies the existence of a single graphic object. + + + + + This element specifies the reference to a graphic object within the document. + + + + + Specifies the URI, or uniform resource identifier that represents the data + stored under this tag. The URI is used to identify the correct 'server' that + can process the contents of this tag. + + + + + This element specifies all non-visual properties for a graphic frame. + + + + + This element defines the body properties for the text body within a shape. + + + + + This element specifies the list of styles associated with this body of text. + + + + + This element specifies the presence of a paragraph of text within the containing text body. + + + + + This element contains all paragraph level text properties for the containing paragraph. + These paragraph properties should override any and all conflicting properties that are + associated with the paragraph in question. + + + + + This element contains all default run level text properties for the text + runs within a containing paragraph. These properties are to be used when + overriding properties have not been defined within the rPr element. + + + + + This element specifies the presence of a run of text within the containing text body. + + + + + This element specifies the actual text for this text run. This is the + text that will be formatted using all specified body, paragraph and run + properties. This element must be present within a run of text. + + + + + This element contains all run level text properties for the text runs within a containing paragraph. + + + + + Specifies whether a run of text will be formatted as bold text. If this + attribute is omitted, than a value of 0, or false is assumed. + + + + + Specifies whether a run of text will be formatted as italic text. If this + attribute is omitted, than a value of 0, or false is assumed. + + + + + Specifies whether a run of text will be formatted as strikethrough text. + If this attribute is omitted, than no strikethrough is assumed. + + + + + Specifies the size of text within a text run. Whole points are specified + in increments of 100 starting with 100 being a point size of 1. For instance + a font point size of 12 would be 1200 and a font point size of 12.5 would be + 1250. If this attribute is omitted, than the value in defRPr should be used. + + + + + Specifies whether a run of text will be formatted as underlined text. + If this attribute is omitted, than no underline is assumed. + + + + + This element is used as an anchor placeholder for a shape or group of shapes. + It will anchor the object in the same position relative to sheet position + and its extents are in EMU unit. + + + + + This element describes the position of a drawing element within a spreadsheet. + + + + + Specifies that the generating application should not allow shape grouping + for the corresponding connection shape. + + + + + This element specifies all locking properties for a graphic frame. + + + + + This element specifies the non-visual drawing properties for a graphic frame. + + + + + This element specifies an outline style that can be applied to a number + of different objects such as shapes and text. + + + + + Specifies the width to be used for the underline stroke. If this + attribute is omitted, then a value of 0 is assumed. + + + + + Specifies the width cap of the dashStyle + + + + + Specifies the compound line type to be used for the underline stroke. + If this attribute is omitted, then a value of sng is assumed. + + + + + This element specifies that no fill will be applied to the parent element. + + + + + This element specifies that blip fill. + + + + + This element specifies a solid color fill. The shape is filled entirely with the specified color. + + + + + border miter join Tag + + + + + border bevel join tag + + + + + This element specifies a color using the red, green, blue RGB color model. + Red, green, and blue is expressed as sequence of hex digits, RRGGBB. + A perceptual gamma of 2.2 is used. + + + + + This element specifies a color bound to a user's theme. As with all elements + which define a color, it is possible to apply a list of color transforms to + the base color defined. + + + + + This color is based upon the value that this color currently has + within the system on which the document is being viewed. + + + + + Applications shall use the lastClr attribute to determine + the absolute value of the last color used if system colors + are not supported. + + + + + This element specifies that a preset line dashing scheme should be used. + + + + + This element specifies the background color of a Pattern fill. + + + + + This element specifies the foreground color of a pattern fill. + + + + + This element specifies a pattern fill. A repeated pattern is used to fill the object. + + + + + Specifies one of a set of preset patterns to fill the object. + + + + + This element specifies that lines joined together will have a round join. + + + + + This element defines a gradient fill. + + + + + This element specifies decorations which can be added to the head of a line. + + + + + This element specifies GroupFillTag. + + + + + This element specifies decorations which can be added to the tail of a line. + + + + + The list of gradient stops that specifies the gradient colors and their + relative positions in the color band. + + + + + This element specifies a linear gradient. + + + + + It's define the Tailtag property + + + + + Specifies the direction of color change for the gradient. To define this + angle, let its value be x measured clockwise. Then ( -sin x, cos x ) is + a vector parallel to the line of constant color in the gradient fill. + + + + + Whether the gradient angle scales with the fill region. + + + + + This element defines that a gradient fill will follow a path vs. a linear line. + + + + + Specifies the shape of the path to follow. + + + + + This element defines a gradient stop. A gradient stop consists of a position + where the stop appears in the color band. + + + + + Specifies where this gradient stop should appear in the color band. + + + + + This element specifies its input color with the specific opacity, + but with its color unchanged. + + + + + This element defines the "focus" rectangle for the center shade, specified + relative to the fill tile rectangle. The center shade fills the entire tile + except the margins specified by each attribute. + + + + + This element specifies a Color Change Effect. Instances of clrFrom are replaced with instances of clrTo + + + + + This element indicates whether the input color use the specific opacity + + + + + This element specifies a Color From. + + + + + This element specifies a Color To. + + + + + Specifies the left edge of the rectangle. + + + + + Specifies the top edge of the rectangle. + + + + + Specifies the right edge of the rectangle. + + + + + Specifies the bottom edge of the rectangle. + + + + + Specifies the left edge of the rectangle. + + + + + Specifies the top edge of the rectangle. + + + + + Specifies the right edge of the rectangle. + + + + + Specifies the bottom edge of the rectangle. + + + + + This element specifies a lighter version of its input color. A 10% tint is 10% + of the input color combined with 90% white. + + + + + This element specifies a darker version of its input color. A 10% shade is 10% + of the input color combined with 90% black. + + + + + This element specifies that the output color rendered by the generating + application should be the sRGB gamma shift of the input color. + + + + + This element specifies that the output color rendered by the generating + application should be the inverse sRGB gamma shift of the input color. + + + + + This element specifies the input color with its luminance modulated by the given percentage. + + + + + /// This element specifies the input color with its hue modulated by the given percentage. + + + + + This element specifies the input color with its luminance. + + + + + + This element specifies the input color with its saturation modulated by the given percentage. + + + + + This element specifies the input color with its saturation. + + + + + This element specifies the input color with its saturation offset. + + + + + This element specifies shade. + + + + + This element specified the rotation of text. + + + + + Specifies that all text in the parent object shall be aligned to the baseline of + each character when displayed. + + + + + This element specifies that a Latin font be used for a specific run of text. + + + + + Represents font type face. + + + + + Represents embedded controls in worksheet. + + + + + Represents a single embedded control. + + + + + This element specifies the non-visual drawing properties for a shape. These properties + are to be used by the generating application to determine how the shape should be dealt with. + + + + + Specifies that the corresponding shape is a text box and thus should be treated + as such by the generating application. If this attribute is omitted then it is + assumed that the corresponding shape is not specifically a text box. + + + + + This element specifies all non-visual properties for a shape. This element + is a container for the non-visual identification properties, shape properties + and application properties that are to be associated with a shape. This + allows for additional information that does not affect the appearance + of the shape to be stored. + + + + + This element specifies the existence of text to be contained within the + corresponding shape. All visible text and visible text related properties + are contained within this element. There can be multiple paragraphs and + within paragraphs multiple runs of text. + + + + + Default value for subscript baseline value. + + + + + Default value for superscript baseline value. + + + + + Specifies the anchoring position of the txBody within the shape. If this + attribute is omitted, then a value of t, or top is implied. + + + + + Specifies if the anchoring position of the txBody is centered within the shape. + + + + + Determines if the text within the given text body should be displayed vertically. + If this attribute is omitted, then a value of horz, or no vertical text is implied. + + + + + This attribute indicates whether to allow text editing within this drawing + object when the parent worksheet is protected. + + + + + Specifies the alignment that is to be applied to the paragraph. Possible + values for this include left, right, centered, justified and distributed. + If this attribute is omitted, then a value of left is implied. + + + + + specifies the capitialization for rich text + + + + + specifies the normaliztion of heights for text + + + + + Specifies the shape autofit element tag + + + + + Apply all caps on the text. + + + + + Apply small caps to the text. + + + + + Caps is not applied to the text + + + + + Determines whether the text can flow out of the bounding box vertically + + + + + Determines whether the text can flow out of the bounding box horizontally + + + + + Specifies the left inset of the bounding rectangle attribute + + + + + Specifies the bottom inset of the bounding rectangle attribute + + + + + Specifies the top inset of the bounding rectangle attribute + + + + + Specifies the right inset of the bounding rectangle attribute + + + + + Specifies the minimum font size at which character kerning occurs for this text run. + + + + + Specifies the spacing between characters within a text run. + + + + + Specifies the shape hyperlink element tag + + + + + Specifies the glow effect, in which a color blurred outline is added outside the edges of the object. + + + + + Specifies the soft edge effect. The edges of the shape are blurred, while the fill is not affected. + + + + + Specifies the radius of blur to apply to the edges. + + + + + Value of the Guid attribute that specifies SVG image. + + + + + Value of the URI attribute for UseLocalDpi. + + + + + Value of the URI attribute for Image properties. + + + + + Specifies the alpha bilevel tag. + + + + + Specifies the alpha ceiling tag. + + + + + Specifies the alpha floor tag. + + + + + Specifies the gray scale tag. + + + + + Specifies the fill overlay tag. + + + + + Specifies the alpha mod tag. + + + + + Specifies the alpha inv tag. + + + + + Specifies the alpha repl tag. + + + + + Specifies the bi level tag. + + + + + Specifies the thresh tag. + + + + + Specifies the blur value. + + + + + Speifies the Hsl. + + + + + Specifies the duo tone. + + + + + Specifies the image properties. + + + + + Specifies the local Dpi settings. + + + + + Specifies the svg blip. + + + + + Specifies fill reference + + + + + Specifies the constant value used for converting angle + + + + + Vertical flip attribute tag + + + + + Horizontal flip attribute tag + + + + + Field attribute tag + + + + + bullet font + + + + + bullet Char + + + + + preset text warp + + + + + chart style drawing namespace ('cs' abbreviation is used in MS Excel documents). + + + + + This class contains constants required for vml shapes parsing and serialization. + + + + + Name of a namespace used by VML (marked by 'v' in MS Excel 2007 documents). + + + + + Name of a namespace used by VML (marked by 'o' in MS Excel 2007 documents). + + + + + Name of a namespace used by VML (marked by 'x' in MS Excel 2007 documents). + + + + + Namespace prefix used in vml shapes. + + + + + Namespace prefix used in vml shapes. + + + + + Namespace prefix used in vml shapes. + + + + + Root tag for vml shapes. + + + + + Name of the xml tag that represents shape type definition in VML. + + + + + String format used to create shape type id. {0} must be replaced with instance + field of the shape object. + + + + + String format used to create shape id. {0} must be replaced with correct shape id number. + + + + + Name of the xml attribute that stores shape type id. + + + + + spid + + + + + Name of the xml attribute that stores shape (or shape type) coordinate size. + + + + + Default value of the coord size for comment shape. + + + + + Name of the xml attribute that stores spt option (it looks like it equals to instance field of the shape). + + + + + Name of the xml attribute that stores shape path value. + + + + + Default value of the path value for comment shape. + + + + + Default value of the path value for bitmap shape. + + + + + Name of the xml tag that stores vml shape client data. + + + + + Name of the xml attribute that stores vml shape type. + + + + + Name of the xml tag that indicates whether shape should be moved with cells or not. + + + + + Name of the xml tag that indicates whether shape should be sized with cells or not. + + + + + Name of the xml tag that stores anchor settings. + + + + + Name of the xml tag that stores all shape settings. + + + + + Name of the xml tag that stores all shape layout settings. + + + + + Name of the xml tag that stores shape type attribute. + + + + + Name of the xml tag that stores information about vml drawings inside worksheet part. + + + + + Name of the xml tag that stores information about vml header/footer drawings inside + worksheet part. + + + + + Name of the xml tag that stores row index of the note shape. + + + + + Name of the xml tag that stores column index of the note shape. + + + + + Style attribute for vml shapes. + + + + + Name of the xml attribute that stores vml shape fill color value. + + + + + Name of the xml tag that stores vml shape shadows settings. + + + + + Name of the xml attribute that specifies whether to show a shadow. + + + + + Name of the xml attribute that specifies whether a shadow is transparent. + Default is false. If true, the shadow is transparent if there is no fill on the shape. + + + + + Name of the xml attribute that specifies the color of the primary shadow. + Default is gray (RGB 128,128,128). + + + + + Specifies text alignment. + + + + + Name of xml attribute that specifies whether the application calculates the + internal text margin instead of using the inset attribute. Default is custom. + This attribute is only meaningful for text boxes. + + + + + Name of the xml tag that stores some of text box settings. + + + + + Name of the xml tag that stores div settings. + + + + + Part of the style attribute value that defines whether shape is visible or hidden. + + + + + This defines whether comment shape is shown or hidden. + + + + + One of possible visibility values. Indicates that shape is hidden. + + + + + One of possible visibility values. Indicates that shape is Visible. + + + + + + Name of the xml tag that specifies the horizontal text alignment for the object. + + + + + Name of the xml tag that specifies the vertical text alignment for the object. + + + + + This element is used to draw an image that has been loaded from an external source. + + + + + Specifies the relationship ID of the relationship to the image. + + + + + Determines the flow of the text layout in a textbox. + + + + + CheckStateChanged of layout-flow attribute which indicates that text is displayed vertically. + + + + + Specifies the alternate layout flow for text in textboxes. + + + + + Specifies the top to bottom layout flow for text in textboxes. + + + + + /// Specifies the bottom to top layout flow for text in textboxes. + + + + + Specifies whether the shape will stretch to fit the text in the textbox + + + + + Represents true expression + + + + + Represents false expression + + + + + This element defines a set of formulas whose calculated values are referenced by other attributes. + + + + + This element defines a single value as the result of the evaluation of an expression. + + + + + Specifies a single formula, which consists of a named operation followed + by up to three parameters. + + + + + This element defines the path that makes up the shape. + + + + + Specifies whether an extrusion is allowed to be displayed. + + + + + Specifies whether a gradient path will be made up of repeated concentric paths. + + + + + Specifies the type of connection points used for attaching shapes to other shapes. + + + + + Specifies whether the original size of an object is saved after reformatting. + + + + + Specifies whether the closed path will be filled. + + + + + Specifies whether the path defining the shape is stroked with a solid line. + + + + + This element describes how to draw the path if something beyond solid line + with a solid color is desired. + + + + + Specifies the join style for line ends. + + + + + This element specifies locks against actions that can be effected in the UI + of an authoring application or programmatically through an object model. + + + + + Specifies an optional value that indicates how applications that implement + VML should interpret extensions not defined as part of the original + specification of core VML. + + + + + Specifies whether the aspect ratio of a shape is locked from being edited. + + + + + Tag that stores checkbox checked state. + + + + + Specifies font and text inside div element. + + + + + Font face. + + + + + Font size. + + + + + Font color. + + + + + Fill style color. + + + + + Specifies space inside the font element. + + + + + Represents check box shape type. + + + + + + Represents combo box shape type. + + + + + This element specifies that the object is an AutoLine object. If this + element is specified without a value, it is assumed to be true. + + + + + This element specifies that the object is an AutoFill object. If this + element is specified without a value, it is assumed to be true. + + + + + This element specifies the cell the object is linked to, using standard cell reference syntax. + + + + + This element specifies whether the object is first button of the Grouped objects, + + + + + This element specifies the scroll bar position as the index of the list + item just above the item at the top of the view, given the current scroll + position. The list indexes are 1-based. + If omitted, the value is assumed to be 0. + + + + + This element specifies the minimum scroll bar position as the index of + the list item just above the item at the top of the view when the control + is scrolled all the way up, typically 0. The list indexes are 1-based. + If omitted, the value is assumed to be 0. + + + + + Specifies the position of the center rectangle of a radial gradient. The vector is a fraction + of the width and height of the shape. The first is a percentage of the fill to the left edge; + the second is a percentage of the fill to the top. Default is 0,0. To position a radial fill at + the center of a shape, use a value of 50%,50%. + + + + + Specifies the size of the center rectangle of a radial gradient. The vector is a fraction of + the width and height of the shape. The first is a percentage of the fill to the right edge; + the second is a percentage of the fill to the bottom. Default is 0,0. + + + + + lightness or darkness of "one color" option in Gradient + + + + + Colors attributes specifies the combination of colors + applied to the shape. this attribute usde for preset colors + + + + + Maximum Scroll + + + + + This element specifies the number of lines to move the scroll bar on an increment click. + If omitted, the increment is 0. + + + + + This element specifies the number of lines to move the scroll bar on a page click. + + + + + This element specifies the width of the scroll bar in screen pixels. + + + + + This element specifies that 3D effects are disabled. If this element + is specified without a value, it is assumed to be true. + + + + + This element specifies that 3D effects are disabled. If this element + is specified without a value, it is assumed to be true. + + + + + This element specifies the range of source data cells used to populate + the list box, using standard cell reference syntax. + + + + + This element specifies that the object represents a password edit field. + If this element is specified without a value, it is assumed to be true. + + + + + This element specifies the selection type for the list box. If omitted, the control is assumed to be Single. + + + + + This element specifies the list box callback type. The application should + use the callback to determine how to handle user actions on the list box. + The only allowed value is Normal. + + + + + Normal value of the callback type. + + + + + This element specifies the style of the dropdown. + + + + + This element specifies the maximum number of lines in the dropdown before + scrollbars are added. + + + + + Left Margin + + + + + Top Margin + + + + + Width + + + + + Height + + + + + Millimeters + + + + + Auto Picture + + + + + CF - Conditional Format + + + + + Ole Objects + + + + + Ole Object + + + + + Program ID + + + + + DevAspect + + + + + Shape ID + + + + + Formula Macro + + + + + this part contains tags used in VML + + + + + Gradient Fill Method + + + + + Gradient fill method value none. + + + + + This element specifies how the shape should be filled + + + + + for two color fill + + + + + link attribute + + + + + solid fill tag + + + + + Texture Attribute value + + + + + Picture Attribute Value + + + + + Pattern Attribute Value + + + + + Fill type Tag value represents gradient fill type + + + + + Fill type Tag value represents gradient radial (From corner or Center) fill type + + + + + Fill type Tag value represents gradient radial (From corner or Center) fill type + + + + + fill One Color Darkeness + + + + + fillOne Color Lightness + + + + + Fill type Tag value represents gradient unscaled + + + + + "Transparency From" of the filled color + + + + + "Transparency To" of the filed color + + + + + Filled color Shading (Horizontal , vertical...) + + + + + filled color rotates with the shape + + + + + shape's border Line wieght + + + + + focus attribute specifies to shading variants + Values range from 100% to -100%. Default is 0. + + + + + Relation id for the resource + + + + + Title of the texture or picture or pattern + + + + + FillType specifies the pattern fill of + Line in VMLtexbox shapes + + + + + Represent Dash Style (solid, shortDash) + + + + + Represent line style (ThinThick,..) + + + + + Represent the end cap tag. + + + + + Represents solid fill type of the shape + + + + + Alternate text for the Shape + + + + + represents the place holder image + + + + + Link Attribute value + + + + + Specifies that the fill uses an image + + + + + represents the path + + + + + represents the extrusion + + + + + represent strokeok + + + + + represent fillok + + + + + represent conect type + + + + + represent lock + + + + + represent extension + + + + + represent Shape type + + + + + represent shadoe ok + + + + + represent ole Update + + + + + Colors are prefixed with this char + + + + + indexed color enclosed with this char + + + + + Size value prefixed with this char + + + + + Size value store with this string + + + + + opacity value divided by this + + + + + Degree value divided by this + + + + + degree's dark limit + + + + + Name of the xml tag that specifies whether form control is printed or not. + + + + + This enum specifies possible selection types. + + + + + The listbox may only have one selected item. + + + + + The listbox may have multiple items selected by clicking on each item. + + + + + The listbox may have multiple items selected by holding a control key and clicking on each item. + + + + + Possible drop styles. + + + + + Standard combo box. + + + + + Editable combo box. + + + + + Standard combo box with only the dropdown button visible when the box is not expanded. + + + + + This class is used for TextBox serialization. + + + + + This method serializes specified shape into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + This method serializes specified slicer into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + Serializes shape properties. + + XmlWriter to serialize into. + TextBox to serialize properties for. + File data holder. + Drawing relations. + Xml namespace to use. + + + + Serialize effect properties. + + XmlWriter + Textbox to serialize shadow properties. + + + + Serialize 3D shape properties. + + XmlWriter + Textbox to serialize 3D shape properties. + + + + Serializes non visual textbox properties. + + XmlWriter to serialize into. + TextBox to serialize. + Worksheet's data holder. + Xml namespace to use. + + + + Serializes Extent for shape. + + Writer to save extent data into. + shape to get its size for serializing extent + + + + Serializes rich text. + + XmlWriter to serialize into. + Xml namespace to use. + Textbox to serialize rich text for. + + + + Serialize text area body properties. + + XmlWriter to serialize into. + Text area to serialize body properties for. + Text box to be serialized. + + + + Serializes anchor (vertical alignment). + + XmlWriter to serialize anchor into. + TextBox to serialize anchor for. + + + + Serializes text rotation. + + XmlWriter to serialize into. + TextBox to serialize. + + + + Serializes list styles for a text area. + + XmlWriter to serialize into. + Text area to serialize list styles for. + + + + Serializes paragraph. + + XmlWriter to serialize paragraph tag into. + Text area that contains paragraph information (formatting and text). + Text box to serialize paragraph for. + + + + Serializes bullet + + + + + + + update vertical anchor position. + + Text direction + Text vertical alignment + Text horizontal alignment + updated vertical alignment + + + + Update horizontal anchor position. + + Text direction + Text vertical alignment + Text horizontal alignmen + updated horizontal alignment + + + + Serialize paragraph properties. + + Xml writer + Text fram object + + + + Serializes the formatting property. + + Represents the Xml writer. + The font. + The book. + The text box. + + + + Serializes the formatting property. + + Represents the Xml writer. + The font. + The book. + The text box. + + + + Serializes single formatting run. + + XmlWriter to serialize into. + Font of the formatting run. + Represents tag name. + Parent workbook. + Text of the formatting run. + + + + Serializes paragraph run. + + XmlWriter to serialize paragraph tag into. + Text area that contains paragraph run information (formatting and text). + Name of the main xml tag. + Parent workbook. + + + + Serializes paragraph run. + + XmlWriter to serialize paragraph tag into. + Text area that contains paragraph run information (formatting and text). + Name of the main xml tag. + Parent workbook. + + + + Serializes paragraph. + + XmlWriter to serialize paragraph tag into. + Text area that contains paragraph information (formatting and text). + Text box to serialize paragraph for. + + + + This is serializator for unknown/unsupported vml shapes that were parsed. + + + + + Stream that contains xml data that describes shape type. + + + + + Initializes a new instance of the UnknownShapeSerializator class. + + Stream that contains shape type data. + + + + This method serializes specified shape into specified writer. + + XmlWriter to serialize shape settings into. + Shape to serialize. + Parent worksheet data holder. + + + + This method serializes general shape settings (shape type) into specified XmlWriter. + + XmlWriter to write shape type into. + Type of the shape that is going to be serialized. + + + + Xml serializator. Serializes XlsIO workbook into MsExcel xml file format. + + + + + Represents xml version. + + + + + Represents application string; + + + + + Represents o namespace. + + + + + Represents x namespace. + + + + + Represents ss namespace. + + + + + Represents html namespace. + + + + + Represents ss pref. + + + + + Represents html pref. + + + + + Represents o pref. + + + + + Represents x pref. + + + + + Represents default pref. + + + + + Represents xmlns pref. + + + + + Represents WorkBook pref. + + + + + Represents WorkSheet pref. + + + + + Represents Name pref. + + + + + Represents Table pref. + + + + + Represents Row pref. + + + + + Represents Cell pref. + + + + + Represents Data pref. + + + + + Represents Names pref. + + + + + Represents NamedRange pref. + + + + + Represents Styles pref. + + + + + Represents Style pref. + + + + + Represents Font pref. + + + + + Represents Protection pref. + + + + + Represents Alignment pref. + + + + + Represents NumberFormat pref. + + + + + Represents Interior pref. + + + + + Represents Borders pref. + + + + + Represents Border pref. + + + + + Represents AutoFilter pref. + + + + + Represents AutoFilterColumn pref. + + + + + Represents AutoFilterAnd pref. + + + + + Represents AutoFilterCondition pref. + + + + + Represents AutoFilterOr pref. + + + + + Represents Comment pref. + + + + + Represents B tag. + + + + + Represents B end tag. + + + + + Represents I tag. + + + + + Represents I end tag. + + + + + Represents U tag. + + + + + Represents U end tag. + + + + + Represents S tag. + + + + + Represents S end tag. + + + + + Represents Sub tag. + + + + + Represents Sub end tag. + + + + + Represents Sup tag. + + + + + Represents Sup end tag. + + + + + Represents Font end tag. + + + + + Represents Font tag. + + + + + Represents Span pref. + + + + + Represents Column pref. + + + + + Represents ConditionalFormatting pref. + + + + + Represents Condition pref. + + + + + Represents Qualifier pref. + + + + + Represents Value1 pref. + + + + + Represents Value2 pref. + + + + + Represents worksheet options pref. + + + + + Represents page setup pref. + + + + + Represents footer pref. + + + + + Represents header pref. + + + + + Represents layout pref. + + + + + Represents page margins pref. + + + + + Represents print pref. + + + + + Represents print comments layout pref. + + + + + Represents print errors pref. + + + + + Represents fit to page pref. + + + + + Represents LeftToRight pref. + + + + + Represents active pane pref. + + + + + Represents first visible row pref. + + + + + Represents split horizontal pane pref. + + + + + Represents split vertical pane pref. + + + + + Represents top row bottom pane pref. + + + + + Represents left col right pane pref. + + + + + Represents freeze panes pref. + + + + + Represents freeze no split panes pref. + + + + + Represents panes pref. + + + + + Represents pane pref. + + + + + Represents number pane pref. + + + + + Represents active column pane pref. + + + + + Represents active row pane pref. + + + + + Represents Selected cell information pref. + + + + + Represents tab color index pref. + + + + + Represents zoom pref. + + + + + Represents Do Not Display Gridlines pref. + + + + + Represents Visible pref. + + + + + Represents don't display headings pref. + + + + + Represents ExcelWorkbook pref. + + + + + Represents Active sheet pref. + + + + + Represents Selected pref. + + + + + Represents selected sheets pref. + + + + + Represents first visible sheet pref. + + + + + Represents DataValidation pref. + + + + + Represents selected sheets pref. + + + + + Represents RightToLeft pref. + + + + + Represents Index pref. + + + + + Represents Type pref. + + + + + Represents Ticked pref. + + + + + Represents Formula pref. + + + + + Represents RefersTo pref. + + + + + Represents ID pref. + + + + + Represents Parent pref. + + + + + Represents Bold pref. + + + + + Represents FontName pref. + + + + + Represents Color pref. + + + + + Represents Italic pref. + + + + + Represents Outline pref. + + + + + Represents Shadow pref. + + + + + Represents Size pref. + + + + + Represents StrikeThrough pref. + + + + + Represents Underline pref. + + + + + Represents Protected pref. + + + + + Represents HideFormula pref. + + + + + Represents Horizontal pref. + + + + + Represents Indent pref. + + + + + Represents ReadingOrder pref. + + + + + Represents Rotate pref. + + + + + Represents ShrinkToFit pref. + + + + + Represents Vertical pref. + + + + + Represents VerticalText pref. + + + + + Represents WrapText pref. + + + + + Represents Format pref. + + + + + Represents PatternColor pref. + + + + + Represents Pattern pref. + + + + + Represents Position pref. + + + + + Represents Range pref. + + + + + Represents Operator pref. + + + + + Represents Value pref. + + + + + Represents Author pref. + + + + + Represents ShowAlways pref. + + + + + Represents DefaultColumnWidth pref. + + + + + Represents DefaultRowHeight pref. + + + + + Represents Width pref. + + + + + Represents Hidden pref. + + + + + Represents StyleID pref. + + + + + Represents AutoFitWidth pref. + + + + + Represents AutoFitHeight pref. + + + + + Represents Height pref. + + + + + Represents Face pref. + + + + + Represents line style pref. + + + + + Represents weight pref. + + + + + Represents vertical align pref. + + + + + Represents merge column count pref. + + + + + Represents merge row count pref. + + + + + Represents hyper link tip pref. + + + + + Represents hyper link reference pref. + + + + + Represents margin pref. + + + + + Represents margin top pref. + + + + + Represents margin right pref. + + + + + Represents margin left pref. + + + + + Represents margin bottom pref. + + + + + Represents center horizontal pref. + + + + + Represents center vertical pref. + + + + + Represents orientation pref. + + + + + Represents start page number pref. + + + + + Represents number of copies to print. + + + + + Represents default numbers of copies to print. + + + + + Represents horizontal resolution pref. + + + + + Represents paper size index pref. + + + + + Represents Scale pref. + + + + + Represents fit width pref. + + + + + Represents fit height pref. + + + + + Represents gridlines pref. + + + + + Represents BlackAndWhite pref. + + + + + Represents DraftQuality pref. + + + + + Represents row and column headings pref. + + + + + Represents colon. + + + + + Represents semicolon. + + + + + Represents font color. + + + + + Represents font style. + + + + + Represents font weight style. + + + + + Represents bold font weight. + + + + + Represents regular font weight. + + + + + Represents italic font const. + + + + + Represents line through + + + + + Represents line through + + + + + Represents Single line through + + + + + Represents font underline. + + + + + Represents pattern back color. + + + + + Represents fill pattern. + + + + + Represents border constant. + + + + + Represents border top constant. + + + + + Represents border bottom constant. + + + + + Represents border left constant. + + + + + Represents border right constant. + + + + + Represents Arial font name. + + + + + Represents none style. + + + + + Represents default font size. + + + + + Represents left diagonal border index. + + + + + Represents right diagonal border index. + + + + + Represents zero constant. + + + + + Represents rotation constant. + + + + + Represents default style font size. + + + + + Represents default rotation text. + + + + + Represents default border increment. + + + + + Represents default style name. + + + + + Represents unique prephix. + + + + + Represents style align none. + + + + + Represents style align Subscript. + + + + + Represents style align Superscript. + + + + + Represents default margin. + + + + + Represents default page scale. + + + + + Represents default page fit. + + + + + Represents default zoom. + + + + + Represents xml true string. + + + + + Represents xml false string. + + + + + Represents All autofilter type. + + + + + Represents color string prefix. + + + + + Represents Bottom autofilter type. + + + + + Represents Top autofilter type. + + + + + Represents Percent autofilter type. + + + + + Represents blanks autofilter type. + + + + + Represents Custom autofilter type. + + + + + Represents non blanks autofilter type. + + + + + Represents default column width. + + + + + Represents default row Height. + + + + + Represents default column div. + + + + + Represents default row div. + + + + + Represents data time mask. + + + + + Represents default merged style first index. + + + + + Represents 13/10 chart. + + + + + Represents bad reference. + + + + + Represents bad reference in xml. + + + + + Represents bad formula reference. + + + + + Represents default maximum column index. + + + + + Represents default minimum column index. + + + + + Represents default cod for generate unique style index. + + + + + Represents pattern string. + + + + + Represents border line style. + + + + + Represent the XML Spreadsheet Comparision operators + + + + + Represents border position string. + + + + + Represents border line type string. + + + + + Represents border line types. + + + + + Represents print location string. + + + + + Represents print error string. + + + + + Represents visibility string. + + + + + Represents pattern string. + + + + + Represents Autofilter operation string. + + + + + Represents the ErrorStyle Options + + + + + Represents the ErrorStyle Options + + + + + Represents hash table, that contain merged styles. + + + + + Builder used to accumulate start of the xml string. + + + + + Builder used to accumulate end of the xml string. + + + + + Gets unique id for coding sheet index and cell index. + + Represents sheet index. + Represents cell index. + Returns unique id. + + + + Gets sheet index by unique id. + + Represents unique id. + Returns sheet index. + + + + Gets cell index by unique id. + + Represents unique id. + Returns cell index. + + + + Initializes a new instance of the WorkbookXmlSerializator class. + + + + + Serialize named range collection. + + Xml write stream. + Names collection. + If true - serializes only local names. + + + + Serialize named range. + + Xml write stream. + Named range. + + + + Serialize styles. + + Xml writer. + Extended format collection. + List that contain XFFormats to reparse. + + + + Serialize style element. + + Xml stream writer. + Extended format to serialize. + + + + Serialize style elements. + + Xml writer. + Extended format to serialize. + + + + Serialize fonts. + + Xml stream writer. + Font to serialize. + + + + Serialize protection object. + + Xml stream writer. + Extended format. + + + + Serialize alignment object. + + Xml stream writer. + Extended format. + + + + Serialize number format. + + Xml writer. + Represents number format. + + + + Serialize interior object. + + Xml stream writer. + Extendet format. + + + + Serialize Borders collection. + + Xml stream writer. + Borders collection. + + + + Serialize Border object. + + Xml stream writer. + Border object. + Represents border index. + + + + Serialize autofilters. + + Xml writer. + Auto filter collection. + + + + Serialize autofilter. + + Xml writer. + Auto filter object. + + + + Serialize autofilter condition. + + Xml writer. + Condition object. + + + + Serialize single cell. + + Xml writer. + Current sheet. + Row index of current cell. + + + + Serialize merge region if necessary. + + + + + + + + + + Serializes hyperlink part of the cell. + + + + + + + + Serializes cell style block if necessary. + + + + + + + + + + Enables formatting. + + XmlWriter to enable formatting. + + + + + Serialize Data object. + + Xml writer. + Cells collection. + Index of cell. + + + + Gets type of the formula value. + + + + + + + + Serializes Data tag for the single cell. + + XmlWriter to serialize into. + Type of the cell's data. + Cell's value. + Style of the cell. + Rtf string containing cell's value if cell is rtf. + Cells collection. + Current cell index. + + + + Serialize worksheets collection. + + Xml writer. + Worksheets collection. + + + + Serialize custom worksheet. + + Xml writer. + Worksheet object. + + + + Serialize custom worksheet. + + Xml writer. + Worksheet to serialize. + + + + Serialize column object. + + Xml writer. + Current sheet. + + + + Serialize rows collection. + + Xml writer. + Parent worksheet object. + + + + Serialize row and column common attributes. + + Xml writer. + Row or ColumnInfo record. + Last column or row index. + Parent workbook. + + + + Serializes merged range. + + Xml writer. + Represents merged cells. + + + + Serialize comment object. + + Xml writer. + comment to serialize. + Inner fonts collection. + Represents default font. + + + + Serialize rich text to xml. + + Xml writer. + Represents collection of formats. + Text to serialize. + Inner fonts. + Represents default font. + + + + Serialize rtf font. + + Writer to write value into. + Font for current string value. + String value. + + + + Serialize data validation objects. + + Xml writer. + DV table. + + + + Serialize data validation object. + + Xml writer. + Data validation object. + + + + Serialize Ranges for the DataValidation + + XML Writer + DataValidationImpl + + + + Serialize Formulas for the DataValiatin + + XML Writer + DataValidationImpl + + + + Serialize condition formats collection. + + Xml writer. + Condition collection. + + + + Serialize condition format. + + Xml writer. + Format to serialize. + + + + Serialize condition instance. + + Xml writer. + condition to serialize. + + + + Serialize worksheet option. + + Xml writer. + Current worksheet. + + + + Serialize page setup. + + Xml writer. + Current page setup to serialize. + + + + Serialize header. + + Xml writer. + Storage, that contain header properties. + If true - footer to serialize; otherwise - header. + + + + Serialize layout + + Xml writer. + Storage, that contain all layout properties. + + + + Serialize page margins. + + Xml writer. + Storage, that contain all page margins properties. + + + + Serializes pains. + + Xml writer. + Current worksheet + + + + Serialize panes block. + + Xml writer. + Array list, that contain all selection to serialize. + + + + Serializes print. + + Xml writer. + Storage, that contain all print properties. + + + + Serializes window two record properties. + + Xml writer. + Current sheet. + + + + Serialize excelworkbook xml properties. + + Xml writer. + Current workbook. + + + + Serializes document properties. + + Xml writer. + Current workbook. + + + + Serialize workbook. + + Xml writer. + Book to serialize. + + + + Serializes workbook to xml. + + Xml writer. + Workbook to serialize. + + + + Initializes builder used to accumulate start of some xml string. + + Builder used to accumulate start of some xml string. + + + + Initializes builder used to accumulate end of some xml string. + + Builder used to accumulate start of some xml string. + + + + Initializes builder used to accumulate some xml string. + + Builder to initialize. + Initialized String builder + + + + Gets color string by Color. + + Current color. + Returns string by color. + + + + Adds open and close tag. + + Open tag. + Closed tag. + String builder to accumulate start of the xml string. + String builder to accumulate end of the xml string. + + + + Adds attribute to string. + + Attribute name. + Attribute value. + String builder to accumulate start of the xml string. + String builder to accumulate end of the xml string. + + + + Generates xml string by conditional format. + + Conditional format object. + Returns generated string. + + + + Gets border format string for CF serialize. + + Represents border type. + Represents border color. + Represents border line style. + Returns border line style. + + + + Gets xml string from ExcelHAling type. + + ExcelHAling type. + Returns xml string. + + + + Gets xml string from ExcelVAling type. + + ExcelVAling type. + Returns xml string. + + + + Gets font alignment xml string; + + Font object. + Returns xml font alignment string. + + + + Gets condition string value. + + Condition object. + Returns condition value. + + + + Gets cell type and value. + + Cells collection + Index of cell. + Returns xml type of cell by index. + Returns xml cell value. + + + + Writes element to xml stream. + + Xml writer. + Element prefix. + Element name. + + + + Writes element to xml stream. + + Xml writer. + Element prefix. + Element name. + Element value + + + + Reserialize merged styles styles. + + Xml writer. + List with styles to reserialize. + + + + Gets array of merged styles. + + Worksheets collection + Returns list with merged styles. + + + + Updates formulas, that contain error. + + Formula to update. + Returns updated formula. + + + + Converts Excel 2007 data validation type to Excel 97-03. + + Excel 2007 data validation type. + Excel 97-03 data validation type. + + + + Returns DV error style. + + DV error style name. + DV error style. + + + + Represents cell types. + + + + + Represents number. + + + + + Represents dateTime. + + + + + Represents boolean. + + + + + Represents string. + + + + + Represents error. + + + + + This class stores worksheet data extracted from document and is responsible + for parsing and serialization of this data into special FileDataHolder. + + + + + Format to get full path to zip archive item that stores vml drawings for worksheet. + + + + + Format got get full path to zip archive item that stores comments description for worksheet. + + + + + Format to get full path to zip archive item that stores threaded comments for worksheet + + + + + Format to get full path to zip archive item that stores drawings for worksheet. + + + + + Relations default extension. + + + + + List which contains chart relation to be removed. + + + + + Archive item that stores worksheet data. + + + + + Objects that stores workbook data. + + + + + This stream stores xml text starting just after "worksheet" tag to + "col" or "sheetData" tag. + + + + + This stream stores xml text with conditional formatting. + + + + + This stream stores xml text with conditional formattings in extended list. + + + + + Relation id in the parent workbook. Null means that item hasn't been serialized + yet and we must generate new id. + + + + + Sheet id. + + + + + Worksheet relations. + + + + + Drawings relations. + + + + + Header/footer drawings relations. + + + + + Relation id for vml drawings. Null means no vml drawings present (or were present). + + + + + Relation id for vml header/footer drawings. Null means no vml drawings present (or were present). + + + + + Relation id for comment notes. Null means no comment note present (or were present). + + + + + Relation id for threaded comments. Null means no threaded comments are present (or were present). + + + + + Relation id for drawings. Null means no drawings present (or were present). + + + + + Relation id for slicer + + + + + Stream with controls data. + + + + + Stream with pivot slicer data. + + + + + Default Chart Style elements used in chartEx on serialization + + + + + Default color variation required on styles + + + + + Initializes a new instance of the WorksheetDataHolder class. + + Objects that stores workbook data. + Relation that points at (relative path) necessary worksheet. + Path to the relation parent object (to convert relative + path into absolute). + + + + Initializes new instance of the WorksheetDataHolder class. + + Objects that stores workbook data. + Archive item with sheet data. + + + + Parses conditional formats. + + Dxf styles collection. + Worksheet to parse CF into. + + + + Parses worksheet data. + + Worksheet to parse. + + + + Collect Pivot Relations + + + + + + Parse PivotTable in the worksheet + + + + + + Parses chart worksheet data. + + Represents chart object to be parsed. + + + + Parses Dialog worksheet data. + + Represents chart object to be parsed. + + + + Serializes worksheet into internal zip archive item. + + Worksheet to serialize. + Dictionary with updated xf indexes. + Dictionary that will contain pivot cache files + (key - cache object, value - cache file name). + + + + Serializes the OLE stream file. + + The sheet. + + + + Serializes the OLE. + + The sheet. + The OLE object. + + + + Gets the OleObject data stream for bin file. + + The OleObject. + + + + + Serializes worksheet into internal zip archive item. + + Worksheet to serialize. + + + + Serializes worksheet into internal zip archive item. + + Worksheet to serialize. + + + + Serializes Macrosheet and IntlMacrosheet to internal zip archive item + + Macrosheet and IntlMacrosheet to serialize + + + + + This method tries to parse vml shapes. + + Parent worksheet. + Relation id of the vml shapes relation. + Collection of the corresponding vml relations. + + + + Parses the OLE data. + + The sheet. + The relation id. + The OLE object. + + + + Gets the type of the OLE object. + + Type of the OLE. + + + + + This method tries to parse drawings part. + + Parent worksheet. + Relation id of the shapes relation. + Dictionary with archive items to remove after parsing. + + + + This method tries to parse drawings part. + + Parent worksheet. + Relation pointing at drawings xml item.. + Dictionary with archive items to remove after parsing. + + + + This method tries to parse drawings part. + + Parent worksheet. + Relation pointing at drawings xml item.. + Dictionary with archive items to remove after parsing. + + + + Serializes worksheet part into internal zip archive item. + + Worksheet to serialize. + Dictionary with updated xf indexes. + + + + Serializes chartsheet part into internal zip archive item. + + Chartsheet to serialize. + + + + Serializes chart object. + + Chart to serialize. + Drawing relations that should contain reference to this chart. + Chart drawing id in the relations collection. + relation id of the dummy chart for chartEx + + + + Create a dummy chart for serialization of fallback content and remove it + + workbook to be serialized + workbook file data holder + chart file name + chart relation id + + + + Serializes drawing part of the chartsheet. + + Chart to serialize. + Name of the drawing zip archive item. + Drawing relations. + relation id of the dummy chart for chartEx + Relation id to the chart object. + + + + Serializes pivot tables. + + Worksheet to serialize pivot tables for. + Contains pivot cache file names. + + + + Serializes single pivot table. + + Table to serialize. + Contains pivot cache file names. + + + + Serializes worksheet relations. + + + + + Serializes all worksheet drawings (including vml). + + Current worksheet. + + + + Serializes worksheet drawings, except vml drawings. + + Worksheet to serialize drawings for. + + + + Serializes worksheet drawings, except vml drawings. + + Worksheet to serialize drawings for. + Relations to put drawings relation into. + Drawing id. + Content type. + Relation type. + + + + Serializes chartEx drwing for fallback content. + + Worksheet to serialize drawings for. + Relations to put drawings relation into. + Drawing id. + name of the chart + Content type. + Relation type. + + + + Serialize the Fallback content required for ChartEx + + input XML writer + boolean value indicates whether the chart is sheet or not + + + + Serializes worksheet vml drawings. + + Worksheet to serialize drawings for. + + + + This method serializes header/footer images. + + Worksheet to serialize header/footer images for. + + + + Serializes relations. + + Represents parent item name. + + + + Serializes relations. + + Relation to be serialized. + Parent item name. + + + + Serializes relations. + + Relation to be serialized. + Parent item name. + holder for the input object + object chart + + + + Serializes style and color relations with its file. + + Relation to be serialized. + Parent item name. + holder for the input object + object chart + + + + Generate the file name which is not in the ziparchive item + + input item + + + + + + Serialize the default style element loaded for chartEx + + input XML writer + input application object + + + + Serialize the default style element loaded for chartEx + + input XML writer + input chart object + input application object + + + + Serializes worksheet comments. + + Worksheet to get comments from. + + + + Serialize worksheet threaded comments + + + + + Generates unique zip archive item name for drawings of the specified + worksheet or reuses existing one. + + Name that can be used for drawings item. + + + + Generates unique zip archive item name for vml drawings of the specified + worksheet or reuses existing one. + + Name that can be used for vml drawings item. + + + + Generates unique zip archive item name for comments of the specified + worksheet or reuses existing one. + + Name that can be used for comments item. + + + + Generates unique zip archive item name for threaded comments of the specified worksheet or reuses existing one. + + Name that can be used for threaded comments item + + + + Serializes all tables from the specified worksheet. + + XmlWriter to serialize worksheet's part of the tables serialization. + + + + Serializes single table item. + + Item to serialize. + Relation id of the serialized item. + + + + Serializes slicers. + + Represents the writer contains the slicer data. + Represents the slicer worksheet. + + + + Initailze the colloection, needed for chartEx + + + + + Initialize the chart style color elements + + + + + Create copy of the current object. + + A copy of the current object. + + + + Dispose + + + + + Gets parent FileDataHolder. Read-only. + + + + + Gets or sets archive item that has all worksheet data. + + + + + Gets or sets Worksheet's relation id in the workbook. + + + + + Gets or sets sheet id extracted from the file. + + + + + Gets relations collection. Read-only. + + + + + Gets drawings relation collection. Read-only. + + + + + Gets header/footer drawings relations collection. Read-only. + + + + + Gets or sets relation id for vml drawings. Null means no vml drawings present (or were present). + + + + + Gets or sets relation id for vml drawings. Null means no vml drawings present (or were present). + + + + + Gets or sets relation id for comment notes item. Null means no comments present (or were present). + + + + + Gets or sets relation id for threaded comments item. Null means no comments present (or were present). + + + + + Gets or sets relation id for drawings. Null means no drawings present (or were present). + + + + + Relation id for slicer + + + + + Gets or sets stream with controls data. + + + + + Stream with pivot slicer data. + + + + + Returns the chart style elements. Read only + + + + + Returns the color variations used by chart style elements. Read only + + + + + Returns the relations which need to get removed. Read only + + + + + + Class used for serializing Xml Attribute. + + + + + Xml serializator save type. + + + + + Prevents a default instance of the XmlSerializatorAttribute class from being created. + + + + + Initializes a new instance of the XmlSerializatorAttribute class. + + Save type. + + + + Gets xml serializator save type. Read-only. + + + + + + Summary description for XmlSerializatorFactory. + + + + + Dictionary with serializators. Key - int value of ExcelXmlSaveType, + value - instance of a serializator. + + + + + Initializes static members of the XmlSerializatorFactory class. Fills internal dictionary with serializators. + + + + + Prevents a default instance of the XmlSerializatorFactory class from being created. + + + + + Registers xml serializator. + + Xml file format generated by serializator. + Type that serializes into xml. + + + + Returns serializator corresponding to the specified save type. + + Save type to get serializator for. + Serializator corresponding to the specified save type. + + + + Class represent combination filter for a column + + + + + Collection of text and date filters. + + + + + Indicate whether the filter with blanks. + + + + + parent filter + + + + + Create an instance of combination filter. + + parent filter + + + + Returns collection of text filter values alone for currnet combination. + + Returns collection of unique text filter values alone. + + + + Collection of unique text filter values alone. Read-Only. + + + + + Returen true, if the blank values are filtered. Read-Only. + + + + + Specifies the type of filter. Read-Only. + + + + + Return combination filter value(either Text or DateTime Filter) at the specified Index. Read-Only. + + + + + Return total number combination filter values(both Text and DateTime Filter). Read-Only. + + + + + Class represents Color Filter for a column + + + + + Specifies the color filter type ( Cell Color or Font Color) + + + + + Holds the color that has to be filtered + + + + + Create an instance of Color filter. + + parent filter + + + + Creates a shallow copy of the current object that executes this function. + + A copy of the colorFilter object. + + + + Property to access the filter type (Returns color filter) + + + + + Property that returns the applied color filter type (Cell color or Font color) + + + + + Property that returns the color that is being filtered by the color filter + + + + + Class represents Icon Filter for a column + + + + + Specifies the type of IconSet to be filtered. + + + + + Holds the id of the icon in the given IconSet. + + + + + Returns a shallow copy of object obtained from MemberwiseClone method. + + + + + + Property to access the filter type (Icon Filter). + + + + + Property to access the IconSetType for which filter is applied. + + + + + Property to access the IconId filtered. + + + + + Class represent text filer in a combination filter. + + + + + Text filter value. + + + + + Text filter value. Read-Only. + + + + + Represent combination filter type. Read-Only. + + + + + + Class used as message sender on Property value change. Class provides old and + new values which allow user to create advanced logic. + + + + + Storage of Old value. + + + + + Storage of new value. + + + + + Name of property or unique identifier of the object + whose value changed. + + + + + Value changed event arguments. + + + + + Default constructor. + + + + + Main constructor. + + Old property value. + New property value. + Unique Identifier of object whose value changed. + + + + Main constructor. + + Old property value. + New property value. + Unique Identifier of object whose value changed. + Next property which must be changed. + + + + New property value. Event handler property has new value set. + Read-only. + + + + + Old property value. Event handler property has new value set. + Read-only. + + + + + Name of the property. Read-only. + + + + + If more than one property must be changed on one send message, + attach it to the ValueChangeEventArgs to create a one way directed list of property changes. + + + + + Returns the class instance with empty values. Read-only. + + + + + + Delegate which can be used for Property Changed events declarations. + + + + + Summary description for _constants. + + + + + + This value is used instead of possible minimum row or column index. + + + + + This value is used instead of possible maximum row or column index. + + + + + This value is used instead of maximum used row or column index. + + + + + This value is used instead of minimum used row or column index. + + + + + Size of the Int32 value. + + + + + Size of the Int16 value. + + + + + Size of the Int64 value. + + + + + Number of bits inside single short value. + + + + + Number of bits inside single byte value. + + + + + Size of the Double value in bytes. + + + + + Used to prevent user from creation of instances of this type. + + + + + This is a helper class which creates an object + hash value using Reflection. + + + + + Member used to detect level recursion. + + + + + To prevent creation of hash class, make its constructor private. + + + + + Method calculates hash for any object. Method serializes object properties + to string using Reflection and returns hash of created string. + + Object which hash must be calculated. + Properties to skip. + Calculated hash code. + + + + Method in recursion builds string representation of the object. + + Output string + Object which must be converted to string. + Properties to skip. + + + + Optimized version of SortedList collection. Instead of keeping two + arrays, one for keys and one for values, the values array on + Hashtable collection are changed. Performance of this collection is better than that of SortedList. + + + + + Default capacity of internal buffers. + + + + + Array which store keys in sorted order. + + + + + Collection stores values. + + + + + Size of collection. + + + + + Version of collection data. + + + + + Default comparer for keys. + + + + + List of keys. + + + + + List of values. + + + + + Default constructor. + + + + + Creates an empty list with the specified initial capacity. + + Initial capacity. + + When initialCapacity is less than zero. + + + + + Creates an empty SortedList with the default initial capacity + and specified comparer. + + + The IComparer is used to determine whether two keys are equal. + + + + + Creates an empty SortedList with the specified initial capacity + and specified comparer. + + Initial capacity. + + The IComparer is used to determine whether two keys are equal. + + + + + Copies the elements from the specified dictionary to a new list + with the same initial capacity as the number of elements copied. + + The IDictionary to copy. + + + + Copies the elements from the specified dictionary to a new list with the same + initial capacity as the number of elements copied and with the specified comparer. + + The IDictionary to copy. + + The IComparer to use to determine whether two keys are equal. + + + When argument d is null. + + + + + Returns a synchronized (thread-safe) wrapper for the SortedList. + + The SortedList to synchronize. + A synchronized (thread-safe) wrapper for the SortedList. + + When list is null. + + + + + Adds an element with the provided key and value to the list. + + The Object to use as the key of the element to add. + The Object to use as the value of the element to add. + + When key is null. + + + When list already contains specified key. + + + + + Removes all elements from the collection. + + + + + Creates a new object that is a copy of the current instance. + + Copy of the current instance. + + + + Clone current instance. + + Returns clone of current object. + + + + Determines whether the list contains an element with the specified key. + + Key of the element to search. + True if list contains specified key. + + + + Determines whether the list contains an element with the specified key. + + Key of the element to search. + True if list contains specified key. + + + + Determines whether the list contains the specified value. + + Value of the element to search. + True if list contains specified value. + + + + Copies all the elements of the SortedListEx to the specified one-dimensional Array + starting at the specified destination Array index. + + The one-dimensional Array that is the destination of the + elements copied from the current list. + The index in array at which copying begins. + + If specified array is null. + + + If rank of the array is not 1 or there are not enough elements. + + + If specified arrayIndex is less than zero. + + + + + Gets the value at the specified index of the SortedListEx. + + The zero-based index of the value to get. + The value at the specified index of the SortedListEx. + + When index is less than zero or greater than size of the list. + + + + + Gets the key at the specified index of the SortedListEx. + + The zero-based index of the key to get. + The key at the specified index of the SortedListEx. + + When index is less than zero or greater than size of the list. + + + + + Gets the keys in the SortedListEx. + + An IList containing the keys in the SortedListEx. + + + + Gets the values in the SortedListEx. + + An IList containing the values in the SortedListEx. + + + + Returns the zero-based index of the specified key. + + The key to locate. + The zero-based index of key, if key is found; otherwise, -1. + + If specified key is null. + + + + + Returns the zero-based index of the first occurrence of the specified value. + + The value to locate (can be NULL). + + The zero-based index of the first occurrence of value, if value is found; + otherwise, -1. + + + + + Removes the element at the specified index. + + The zero-based index of the element to remove. + + When index is less than zero or greater than size of the list. + + + + + Removes the element with the specified key from SortedListEx. + + The key of the element to remove. + + + + Replaces the value at the specific index. + + The zero-based index at which to save value. + The Object to save into. Can be NULL. + + When index is less than zero or greater than size of the list. + + + + + Sets the capacity to the actual number of elements. + + + + + Returns an IDictionaryEnumerator that can iterate through the SortedListEx. + + An IDictionaryEnumerator for the SortedListEx. + + + + Returns an IEnumerator that can iterate through the SortedListEx. + + An IEnumerator for the SortedListEx. + + + + Inserts element with specified key and value at specified index. + + The zero-based index to insert element at. + The key of the element to insert. + The value of the element to insert. + + + + Ensures that the capacity of this instance is at least the specified value. + + The minimum capacity to ensure. + + + + Capacity of internal buffers. + + + + + Size of the collection. Read-only. + + + + + List of keys. Read-only. + + + + + List of values. Read-only. + + + + + Returns True if list is readonly, False otherwise. Read-only. + + + + + Returns True if collection has fixed size, False otherwise. + + + + + Returns True if the collection is synchronized, False otherwise. + + + + + Returns the object that can be used to synchronize access to the collection. + Read-only. + + + + + Gets or sets the value associated with the specified key. + + + + + Wrapped SortedListEx. + + + + + Sync object. + + + + + Creates SyncSortedListEx for specified SortedListEx. + + SortedListEx that will be wrapped. + + + + Adds an element with the provided key and value to the list. + + The Object to use as the key of the element to add. + The Object to use as the value of the element to add. + + + + Removes all the elements from the collection. + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of the current instance. + + + + Determines whether the list contains an element with the specified key. + + Key of the element to search. + True if list contains specified key. + + + + Determines whether the list contains an element with the specified key. + + Key of the element to search. + True if list contains specified key. + + + + Determines whether the list contains the specified value. + + Value of the element to search. + True if list contains specified value. + + + + Copies all the elements of the list to the specified one-dimensional Array + starting at the specified destination Array index. + + The one-dimensional Array that is the destination of the + elements copied from the current list. + The index in array at which copying begins. + + + + Gets the value at the specified index of the list. + + The zero-based index of the value to get. + The value at the specified index of the SortedListEx. + + + + Returns an IDictionaryEnumerator that can iterate through the list. + + An IDictionaryEnumerator for the list. + + + + Gets the key at the specified index of the list. + + The zero-based index of the key to get. + The key at the specified index of the list. + + + + Gets the keys in the list. + + An IList containing the keys in the list. + + + + Gets the values in the list. + + An IList containing the values in the list. + + + + Returns the zero-based index of the specified key. + + The key to locate. + The zero-based index of key, if key is found; otherwise, -1. + + + + Returns the zero-based index of the first occurrence of the specified value. + + The value to locate (can be NULL). + + The zero-based index of the first occurrence of value, if value is found; + otherwise, -1. + + + + + Removes the element at the specified index. + + The zero-based index of the element to remove. + + + + Removes the element with the specified key from list. + + The key of the element to remove. + + + + Replaces the value at a specific index. + + The zero-based index at which to save value. + The Object to save into. Can be NULL. + + + + Sets the capacity to the actual number of elements. + + + + + Capacity of internal buffers. + + + + + Size of the collection. Read-only. + + + + + Returns the object that can be used to synchronize access to the collection. + Read-only. + + + + + Returns True if list is readonly, False otherwise. Read-only. + + + + + Returns True if collection has fixed size, False otherwise. + + + + + Returns True if the collection is synchronized, False otherwise. + + + + + Gets or sets the value associated with the specified key. + + + + + If it is assumed to getObjectRetType, Current will return key + of the current element. + + + + + If it is assumed to getObjectRetType, Current will return value + of the current element. + + + + + If it is assumed to getObjectRetType, Current will return both - + key and value (as DictionaryEntry). + + + + + List for which is this enumerator. + + + + + Key of the current element. + + + + + Values of the current element. + + + + + Index of current element. + + + + + Starting index for the enumerator. + + + + + Ending index for this enumerator. + + + + + Version of collection data. + + + + + True if current element is correct, False otherwise + (before beginning or after end). + + + + + Specifies what should return method Current (Key, Value or both). + + + + + Creates enumerator for specified list, starting from specified index + and with specified count. + + list for which to create enumerator. + Starting index. + Number of elements to enumerate. + Type of enumerating values (keys, value, DicEntry). + + + + Creates a new object that is a copy of the current instance. + + Copy of the current instance. + + + + Advances the enumerator to the next element of the collection. + + + True if the enumerator was successfully advanced to the next element; + False if the enumerator has passed the end of the collection. + + + When the current version is not equal to the SortedListEx version. + + + + + Sets the enumerator to its initial position, which is before + the first element in the collection. + + + When the current version is not equal to the SortedListEx version. + + + + + Returns key of the current element. Read-only. + + + When the current version is not equal to the SortedListEx version + or if current is false. + + + + + Return DictionaryEntry for the current element. + + + When the current version is not equal to the SortedListEx version + or if current is false. + + + + + The current element in the collection. Read-only. + + + If current is false. + + + + + Returns value for the current element. + + + When the current version is not equal to the SortedListEx version + or if current is false. + + + + + List for which this collection was created. + + + + + Creates KeyList for specified SortedListEx. + + SortedListEx for which KeyList must be created. + + + + Adds an element with the provided key to the list. + + The Object to use as the key of the element to add. + + + + Removes all elements from the collection. + + + + + Determines whether the list contains an element with the specified key. + + Key of the element to search. + True if list contains specified key. + + + + Copies all the elements of the list to the specified one-dimensional Array + starting at the specified destination Array index. + + The one-dimensional Array that is the destination of the + elements copied from the current list. + The index in array at which copying begins. + + If array is null or rank of the array is not 1. + + + + + Insert the value at the specific index. + + The zero-based index at which to save value. + The Object to save into. Can be NULL. + + + + Returns an IEnumerator that can iterate through the list. + + An IEnumerator for the list. + + + + Returns the zero-based index of the specified key. + + The key to locate. + The zero-based index of the key, if the key is found; otherwise, -1. + + + + Removes the element with the specified key from list. + + The key of the element to remove. + + + + Removes the element at the specified index from the list. + + The zero-based index of the element to remove. + + + + Size of the collection. Read-only. + + + + + Returns True if list is readonly, False otherwise. Read-only. + + + + + Returns True if collection has fixed size, False otherwise. + + + + + Returns True if the collection is synchronized, False otherwise. + + + + + Returns the object that can be used to synchronize access to the collection. + Read-only. + + + + + Gets or sets the key at the specified index. + + + + + List for which this collection was created. + + + + + Array list that contain values. + + + + + Creates ValueList for specified SortedListEx. + + SortedListEx for which ValueList must be created. + + + + Re-read values from the list. + + + + + Adds an element with the provided key to the list. + + The Object to use as the key of the element to add. + + + + Removes all elements from the collection. + + + + + Determines whether the list contains an element with the specified value. + + Value to search. + True if list contains specified value. + + + + Copies all the elements of the list to the specified one-dimensional Array + starting at the specified destination Array index. + + The one-dimensional Array that is the destination of the + elements copied from the current list. + The index in array at which copying begins. + + + + Insert the value at the specific index. + + The zero-based index at which to save value. + The Object to save into. Can be NULL. + + + + Returns an IEnumerator that can iterate through the list. + + An IEnumerator for the list. + + + + Returns the zero-based index of the specified value. + + The value to locate. + The zero-based index of the value, if the value is found, otherwise -1. + + + + Removes the specified value from list. + + The value to remove. + + + + Removes the element at the specified index from the list. + + The zero-based index of the element to remove. + + + + Size of the collection. Read-only. + + + + + Returns True if list is readonly, False otherwise. Read-only. + + + + + Returns True if collection has fixed size, False otherwise. + + + + + Returns True if the collection is synchronized, False otherwise. + + + + + Returns the object that can be used to synchronize access to the collection. + Read-only. + + + + + Gets or sets the value at the specified index. + + + + + Comparer for strings. + + + + + Compare two strings. + + String to compare. + String to compare. + Returns compared results. + + + + Dictionary is used for grouping strings used by Excel in order to prevent + doubling of data. Dictionary stores information as key string and value. + + + + + Default reserved space by internal collections. + + + + + Index of the empty string. + + + + + Default count of empty strings. + Returned by GetStringsCount method. + Arbitrary number but should be larger than 1. + + + + + Maximum allowed cell length. + + + + + Dictionary key-to-index in the array. + + + + + Strings data. + + + + + Array that contains indexes that are free (strings that were removed). + + + + + Parent workbook. + + + + + Original SSTRecord. + + + + + Indicates whether original SSTRecord was parsed. + + + + + Temporary string. + + + + + Number of references to each string. + + + + + Indicates whether we should use hashtable to increase search speed. + + + + + Default constructor. Reserves space for strings. + + + + + Returns SST content. + + Index of the target string. + SST content object. + + + + Clears the list. + + + + + Searches for all strings with specified text. + + String to search. + Dictionary, key - string index, value - null. + + + + Adds string into dictionary. If the string exists in dictionary, + add reference count. Method can influence on SST Indexes. + + Index to the string. + + + + Adds string into dictionary. If the string exists in dictionary, + add reference count. Method can influence on SST Indexes. + + String to add + Index of the added string. + + + + Adds string into dictionary. If the string exists in dictionary, + add reference count. Method can influence on SST Indexes. + + String to add + Reference count for new entries. + Index of the added string. + + + + Checks whether new string value is within allowed limits. + + + + + + Remove reference of string. When reference count reaches zero, string will be + removed from dictionary. Method can influence the SST indexes. + + String whose reference must be removed. + + When SST table does not contain the specified string. + + + + + Remove reference of string. When reference count reaches zero, string will be + removed from dictionary. Method can influence the SST indexes. + + String index to remove. + + + + Method decreases reference count of string without removing it. + + Index of the string to decrease reference. + + + + Method checks if the dictionary contains the specified string. + + String which must be checked. + True - string exists in dictionary, otherwise False. + + + + Serialize dictionary. + + Records where writes serialized data. + + + + Returns number of strings in the dictionary. + + Index of the target string. + + + + Returns RTF string by its index in the dictionary. + + Index of the target string. + RTF string. + + + + Adds copy of the string from another collection. + + Index of the string to add. + Source string table. + Dictionary with font indexes. + Index of the added string. + + + + Searches for all strings that starts with specified string. + + String prefix to search. + + List with all string indexes that starts with specified + string, in ascending order. + + + + + Creates copy of the current instance. + + Copy of the current instance. + + + + Updates internal array that stores reference count. + + + + + This methods looks through all row storages to find out used strings. + And removes all unnecessary strings after that. + + + + + Moves strings. + + Start index. + End index. + Decrease index. + List with new strings indexes. + + + + Removes all unused strings from inner collections. + + + + + Saves into record. + + Array where save is. + + + + Sets number of references to the string. + + String index. + References count to set. + + + + Gets number of references to the string. + + String index. + number of references to the string. + + + + + + + + + + + + + + + + + + Fills internal hash used for string searching. + + + + + Here we have to parse our SST record + + + + + Updates LabelSST indexes after SST record parsing. + + Dictionary with indexes to update, key - old index, value - new index. + + + + Returns LabelSST used. + + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + + + + + + Gets references count to specified string. + + + + + Gets text with format. + + + + + Gets list of strings. + + + + + Gets quantity of unique strings. + + + + + Returns parent workbook. Read-only. + + + + + Gets / sets original SSTRecord. + + + + + + + + + + Returns number of strings without removed items. Read-only. + + + + + Gets / Sets HashkeyToIndex value + + + + + Increase Index + + + + + + Represents the XlsIO Chart to image converter. + + + This interface is not supported in Xamarin(PCL) and NetStandard platforms and supported from .NET Framework 4.0 onwards. + + + + + Converts the XlsIO chart to Image as stream. + + Represents the XlsIO Chart object. + In where the image is streamed. + + To know more about chart to image conversion refer this link. + + + The following code illustrates how to convert an Excel chart to an image. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + // Initializing the chart to image converter object + application.ChartToImageConverter = new Syncfusion.ExcelChartToImageConverter.ChartToImageConverter(); + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Initalizing the new stream + MemoryStream imageStream = new MemoryStream(); + + //Convert the chart to image stream + chart.SaveAsImage(imageStream); + + //Saving the image stream to a file + System.Drawing.Image bitmap = System.Drawing.Image.FromStream(imageStream); + bitmap.Save("image.png"); + + //Dispose + workbook.Close(); + } + + + + + + It represents the chart image Scaling. + Default value is Normal. + + + To know more about chart to image conversion refer this link. + + + The following code illustrates how to set scaling mode for object. + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + //Create worksheet + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Excel2013; + IWorkbook workbook = application.Workbooks.Create(1); + IWorksheet sheet = workbook.Worksheets[0]; + + // Initializing the chart to image converter object + application.ChartToImageConverter = new Syncfusion.ExcelChartToImageConverter.ChartToImageConverter(); + + //Set the chart to image converter Scaling mode to best + application.ChartToImageConverter.ScalingMode = ScalingMode.Best; + + //Add data + sheet.Range["A1"].Text = "Jan"; + sheet.Range["B1"].Text = "Feb"; + sheet.Range["C1"].Text = "Mar"; + sheet.Range["A2"].Value = "10"; + sheet.Range["B2"].Value = "20"; + sheet.Range["C2"].Value = "30"; + sheet.Range["A3"].Value = "15"; + sheet.Range["B3"].Value = "25"; + sheet.Range["C3"].Value = "35"; + + //Create chart + IChart chart = sheet.Charts.Add(); + + //Set range + chart.DataRange = sheet.Range["A1:C3"]; + + //Set chart type + chart.ChartType = ExcelChartType.Column_Clustered; + + //Initalizing the new stream + MemoryStream imageStream = new MemoryStream(); + + //Convert the chart to image stream + chart.SaveAsImage(imageStream); + + //Saving the image stream to a file + System.Drawing.Image bitmap = System.Drawing.Image.FromStream(imageStream); + bitmap.Save("image.png"); + + //Dispose + workbook.Close(); + } + + + + + + Represents plot area of the chart. + + + + + Enumeration of the sheet types in Excel. + + + + + Charts. + + + + + Dialogs. + + + + + Excel 4.0 International Macros. + + + + + Excel 4.0 Macros. + + + + + Worksheets. + + + + + Specifies the line style for the border in Excel. + + + + + No line. + + + + + Thin line. + + + + + Medium line. + + + + + Dashed line. + + + + + Dotted line. + + + + + Thick line. + + + + + Double line. + + + + + Hair line. + + + + + Medium_dashed line. + + + + + Dash_dot line. + + + + + Medium dash_dot line. + + + + + Dash_dot_dot line. + + + + + Medium dash_dot_dot line. + + + + + Slanted_dash_dot line. + + + + + Enumeration of the border and diagonal line types in Excel. + + + + + Represents the diagonal line from top left to right bottom. + + + + + Represents the diagonal line from bottom left to right top. + + + + + Represents the border line on the bottom. + + + + + Represents the border line on the left. + + + + + Represents the border line on the right. + + + + + Represents the border line on the top. + + + + + Represents horizontal borders inside a selected range. + + + + + Represents vertical borders inside a selected range. + + + + + Enumeration of the label types for formula in Excel. + + + + + Represents Column label for formula. + + + + + Represents Mixed label for formula. + + + + + Represents no label for formula. + + + + + Represents row label for formula. + + + + + Enumeration of the border weight types for lines/pictures in Excel. + + + + + Represents weight of a Hairline border type. + + + + + Represents weight of a Medium border type. + + + + + Represents weight of a Thick border type. + + + + + Represents weight of a Thin border type. + + + + + Represents weight of a None border type. + + + + + Enumeration of the Color Index in Excel. + + + + + Represents the automatic color index. + + + + + Represents no color index. + + + + + Enum that defines different types of the formula calculations. + + + + + Represents the MANUAL calculation type. + + + + + Represents the AUTOMATIC calculation type. + + + + + Represents the AUTOMATIC EXCEPT TABLES calculation type. + + + + + Enumeration of the horizontal alignment options for cell formatting in Excel. + + + + + Represents the general horizontal alignment setting. + + + + + Represents left horizontal alignment setting. + + + + + Represents center horizontal alignment setting. + + + + + Represents center horizontal alignment setting. + + + + + Represents fill horizontal alignment setting. + + + + + Represents justify horizontal alignment setting. + + + + + Represents center across selection horizontal alignment setting. + + + + + Represents distributed horizontal alignment setting. + + + + + Enumeration of the vertical alignment options for cell formatting in Excel. + + + + + Represents top vertical alignment setting. + + + + + Represents center vertical alignment setting. + + + + + Represents bottom vertical alignment setting. + + + + + Represents justify vertical alignment setting. + + + + + Represents distributed vertical alignment setting. + + + + + Enumeration of page order for sheet in Excel. + + + + + Represents Down, then over setting. + + + + + Represents Over, then down setting. + + + + + Enumeration of page orientation types in Excel. + + + + + Represents landscape setting. + + + + + Represents portrait setting. + + + + + Enumeration of paper size types in Excel. + + + + + Represents paper size of 10 inches X 14 inches + + + + + Represents paper size of 11 inches X 17 inches + + + + + Represents A3 (297 mm x 420 mm) paper size. + + + + + Represents A4 (210 mm x 297 mm) paper size. + + + + + Represents A4 Small (210 mm x 297 mm) paper size. + + + + + Represents A5 (148 mm x 210 mm) paper size. + + + + + Represents B4 (250 mm x 353 mm) paper size. + + + + + Represents B5 (176 mm x 250 mm) paper size. + + + + + Represents C paper size. + + + + + Represents D paper size. + + + + + Represents Envelope# 10 paper size(4-1/8 X 9-1/2 inches). + + + + + Represents Envelope# 11 paper size( (4-1/2 X 10-3/8 inches). + + + + + Represents Envelope# 12 paper size(4-3/4 X 11 inches). + + + + + Represents Envelope# 14 paper size(5 X 11-1/2 inches). + + + + + Represents Envelope# 9 paper size(3-7/8 X 8-7/8 inches). + + + + + Represents B4 Envelope paper size (250 mm x 353 mm). + + + + + Represents B5 Envelope paper size (176 mm x 250 mm). + + + + + Represents B6 Envelope paper size (176 mm x 125 mm). + + + + + Represents C3 Envelope paper size (324 mm x 458 mm). + + + + + Represents C4 Envelope paper size (229 mm x 324 mm). + + + + + Represents C5 Envelope paper size (162 mm x 229 mm). + + + + + Represents C6 Envelope paper size (114 mm x 162 mm). + + + + + Represents C65 Envelope paper size (114 mm x 229 mm). + + + + + Represents DL Envelope paper size (110 mm x 220 mm). + + + + + Represents Italy Envelope paper size (110 mm x 230 mm). + + + + + Represents Monarch Envelope paper size (3-7/8 X 7-1/2 inches). + + + + + Represents Personal Envelope paper size (3-5/8 X 6-1/2 inches). + + + + + Represents E paper size. + + + + + Represents Executive paper size (7-1/2 X 10-1/2 inches). + + + + + Represents German Fanfold paper size (8-1/2 X 13 inches). + + + + + Represents German Standard Fanfold paper size (8-1/2 X 12 inches). + + + + + Represents U.S. Standard Fanfold paper size (14-7/8 X 11 inches). + + + + + Represents Folio paper size (8-1/2 X 13 inches). + + + + + Represents Ledger paper size (17 X 11 inches). + + + + + Represents Legal paper size (8-1/2 X 14 inches). + + + + + Represents Letter paper size (8-1/2 X 11 inches). + + + + + Represents Letter Small paper size. + + + + + Represents Note paper size. + + + + + Represents Quarto paper size(215 mm x 275 mm). + + + + + Represents Statement paper size(5-1/2 X 8-1/2 inches). + + + + + Represents Tabloid paper size(11 X 17 inches). + + + + + Represents User paper size. + + + + + Represents ISO B4 paper size(250 mm by 353 mm). + + + + + Represents Japanese double postcard(200 mm by 148 mm). + + + + + Represents Standard paper(9 in. by 11 in.). + + + + + Represents Standard paper(10 in. by 11 in.). + + + + + Represents Standard paper(15 in. by 11 in.). + + + + + Represents Invite envelope (220 mm by 220 mm). + + + + + Represents Letter extra paper (9.275 in. by 12 in.). + + + + + Represents Legal extra paper (9.275 in. by 15 in.). + + + + + Represents Tabloid extra paper (11.69 in. by 18 in.). + + + + + Represents A4 extra paper (236 mm by 322 mm). + + + + + Represents Letter transverse paper (8.275 in. by 11 in.). + + + + + Represents A4 transverse paper (210 mm by 297 mm). + + + + + Represents Letter extra transverse paper (9.275 in. by 12 in.). + + + + + Represents SuperA/SuperA/A4 paper (227 mm by 356 mm). + + + + + Represents SuperB/SuperB/A3 paper (305 mm by 487 mm). + + + + + Represents Letter plus paper (8.5 in. by 12.69 in.). + + + + + Represents A4 plus paper (210 mm by 330 mm). + + + + + Represents A5 transverse paper (148 mm by 210 mm). + + + + + Represents JIS B5 transverse paper (182 mm by 257 mm). + + + + + Represents A3 extra paper (322 mm by 445 mm). + + + + + Represents A5 extra paper (174 mm by 235 mm). + + + + + Represents ISO B5 extra paper (201 mm by 276 mm). + + + + + Represents A2 paper (420 mm by 594 mm). + + + + + Represents A3 transverse paper (297 mm by 420 mm). + + + + + Represents A3 extra transverse paper (322 mm by 445 mm). + + + + + Enumeration representing print comments in Excel. + + + + + Represents As displayed on sheet setting. + + + + + Represents (None) setting. + + + + + Represents at end of sheet setting. + + + + + Enumeration of Replace Error Values when printing in Excel. + + + + + Represents the blank option. + + + + + Represents the dash (--) option. + + + + + Represents the displayed option. + + + + + Represents the #N/A option. + + + + + Enumeration of page break extent types in Excel. + + + + + Represents full page break option. + + + + + Represents partial page break option. + + + + + Enumeration of page break types in Excel. + + + + + Represents the Automatic option. + + + + + Represents the Manual option. + + + + + Represents the None option. + + + + + Enumeration of Save as Access mode types in Excel. + + + + + Exclusive mode. + + + + + No change mode. + + + + + Shared mode. + + + + + Specifies the underline types for the fonts available in Excel. + + + + + No underline. + + + + + Single underline. + + + + + Double underline. + + + + + SingleAccounting underline which does not support in chart data labels. + + + + + DoubleAccounting underline which does not support in chart data labels. + + + + + Enumeration of merge operation types in Excel. + + + + + Represents the Leave option. + + + + + Represents the Delete option. + + + + + Enumeration of Worksheet functions in Excel. + + + + + Represents the NONE function. + + + + + Represents the Custom function. + + + + + Represents the ABS function. + + + + + Represents the ACOS function. + + + + + Represents the ACOSH function. + + + + + Represents the ADDRESS function. + + + + + Represents the AND operation. + + + + + Represents the Areas function. + + + + + Represents the ASIN function. + + + + + Represents the ASINH function. + + + + + Represents the ATAN function. + + + + + Represents the ATAN2 function. + + + + + Represents the ATANH function. + + + + + Represents the AVEDEV function. + + + + + Represents the AVERAGE function. + + + + + Represents the AVERAGEA function. + + + + + Represents the HEX2BIN function. + + + + + Represents the HEX2DEC function. + + + + + Represents the HEX2OCT function. + + + + + Represents the COUNTIF function. + + + + + Represents the BIN2DEC function. + + + + + Represents the BIN2HEX function. + + + + + Represents the BIN2OCT function. + + + + + Represents the DEC2BIN function. + + + + + Represents the DEC2HEX function. + + + + + Represents the DEC2OCT function. + + + + + Represents the OCT2BIN function. + + + + + Represents the OCT2DEC function. + + + + + Represents the OCT2HEX function. + + + + + Represents the ODDFPRICE function. + + + + + Represents the ODDFYEILD function. + + + + + Represents the ODDLPRICE function. + + + + + Represents the ODDLYEILD function. + + + + + Represents the ISODD function. + + + + + Represents the ISEVEN function. + + + + + Represents the LCM function. + + + + + Represents the GCD function. + + + + + Represents the SUMIFS function. + + + + + Represents the AVERAGEIF function. + + + + + Represents the AVERAGEIFS function. + + + + + Represents the CONVERT function. + + + + + Represents the COMPLEX function. + + + + + Represents the COUPDAYBS function. + + + + + Represents the COUPDAYS function. + + + + + Represents the COUPDAYSNC function. + + + + + Represents the COUPNCD function. + + + + + Represents the COUPNUM function. + + + + + Represents the COUPPCD function. + + + + + Represents the DELTA function. + + + + + Represents the DISC function. + + + + + Represents the DOLLARDE function. + + + + + Represents the DOLLARFR function. + + + + + Represents the DURATION function. + + + + + Represents the EDATE function. + + + + + Represents the EFFECT function. + + + + + Represents the EOMONTH function. + + + + + Represents the ERF function. + + + + + Represents the ERFC function. + + + + + Represents the FACTDOUBLE function. + + + + + Represents teh GESTEP function. + + + + + Represents the IFERROR function. + + + + + Represents the IMABS function + + + + + Represents the IMAGINARY function. + + + + + Represents the IMARGUMENT function. + + + + + Represents the IMCONJUGATE function. + + + + + Represents the IMCOS function. + + + + + Represents the IMEXP function. + + + + + Represents the IMLN function. + + + + + Represents the IMLOG10 function. + + + + + Represents the IMLOG2 function. + + + + + Represents the IMREAL function. + + + + + Represents the IMSIN function. + + + + + Represents the IMSQRT function. + + + + + Represents the IMSUB function. + + + + + Represents the IMSUM function. + + + + + Represents the IMDIV function. + + + + + Represents the IMPOWER function. + + + + + Represents the IMPRODUCT function. + + + + + Represents the ACCRINT function. + + + + + Represents the ACCRINTM function. + + + + + Represents the AGGREGATE function. + + + + + Represents the AMORDEGRC function. + + + + + Represents the AMORLINC function. + + + + + Represents the BAHTTEXT function. + + + + + Represents the BESSELI function. + + + + + Represents the BESSELJ function. + + + + + Represents the BESSELK function. + + + + + Represents the BESSELY function. + + + + + Represents the CUBEKPIMEMBER function. + + + + + Represents the CUBEMEMBER function. + + + + + Represents the CUBERANKEDMEMBER function. + + + + + Represents the CUBESET function. + + + + + Represents the CUBESETCOUNT function. + + + + + Represents the CUBEMEMBERPROPERTY function. + + + + + Represents the CUMIPMT function. + + + + + Represents the CUMPRINC function. + + + + + Represents the FVSCHEDULE function. + + + + + Represents the INTRATE function. + + + + + Represents the LINTEST function. + + + + + Represents the CUBEVALUE function. + + + + + Represents the MDURATION function. + + + + + Represents the MROUND function. + + + + + Represents the MULTINOMIAL function. + + + + + Represents the NETWORKDAYS function. + + + + + Represents the NOMINAL function. + + + + + Represents the PRICE function. + + + + + Represents the PRICEDISC function. + + + + + Represents the PRICEMAT function. + + + + + Represents the QUOTIENT function. + + + + + Represents the RANDBETWEEN function. + + + + + Represents the RECEIVED function. + + + + + Represents the SERIESSUM function. + + + + + Represents the SQRTPI function. + + + + + Represents the TBILLEQ function. + + + + + Represents the TBILLPRICE function. + + + + + Represents the TBILLYIELD function. + + + + + Represents the WEEKNUM function. + + + + + Represents the WORKDAY function. + + + + + Represents the XIRR function. + + + + + Represents the XNPV function. + + + + + Represents the YEAR function. + + + + + Represents the YIELD function. + + + + + Represents the YIELDDISC function. + + + + + Represents the YIELDMAT function. + + + + + Represents the WORKDAY.INTL function. + + + + + Represents the BETA.INV function. + + + + + Represents the BINOM.DIST function. + + + + + Represents the BINOM.INV function. + + + + + Represents the CEILING.PRECISE function. + + + + + Represents the CHISQ.DIST function. + + + + + Represents the CHISQ.DIST.RT function. + + + + + Represents the CHISQ.INV function. + + + + + Represents the CHISQ.INV.RT function. + + + + + Represents the CHISQ.TEST function. + + + + + Represents the CONFIDENCE.NORM function. + + + + + Represents the CONFIDENCE.T function. + + + + + Represents the COVARIANCE.P function. + + + + + Represents the COVARIANCE.S function. + + + + + Represents the ERF.PRECISE function. + + + + + Represents the ERFC.PRECISE function. + + + + + Represents the F.DIST function. + + + + + Represents the F.DIST.RT function. + + + + + Represents the F.INV function. + + + + + Represents the F.INV.RT function. + + + + + Represents the F.TEST function. + + + + + Represents the FLOOR.PRECISE function. + + + + + Represents the GAMMA.DIST function. + + + + + Represents the GAMMA.INV function. + + + + + Represents the GAMMALN.PRECISE function. + + + + + Represents the HYPGEOM.DIST function. + + + + + Represents the LOGNORM.DIST function. + + + + + Represents the LOGNORM.INV function. + + + + + Represents the MODE.MULT function. + + + + + Represents the MODE.SNGL function. + + + + + Represents the NEGBINOM.DIST function. + + + + + Represents the NETWORKDAYS.INTL function. + + + + + Represents the NORM.DIST function. + + + + + Represents the NORM.INV function. + + + + + Represents the NORM.S.DIST function. + + + + + Represents the PERCENTILE.EXC function. + + + + + Represents the PERCENTILE.INC function. + + + + + Represents the PERCENTRANK.EXC function. + + + + + Represents the PRECENTRANK.INC function. + + + + + Represents the POISSON.DIST function. + + + + + Represents the QUARTILE.EXC function. + + + + + Represents the QUARTILE.INC function. + + + + + Represents the RANK.AVG function. + + + + + Represents the RANK.EQ function. + + + + + Represents the STDEV.P function. + + + + + Represents the STDEV.S function. + + + + + Represents the T.DIST function. + + + + + Represents the T.DIST.2T function. + + + + + Represents the T.DIST.RT function. + + + + + Represents the T.INV function. + + + + + Represents the T.INV.2T function. + + + + + Represents the T.TEST function. + + + + + Represents the VAR.P function. + + + + + Represents the VAR.S function. + + + + + Represents the WEIBULL.DIST function. + + + + + Represents the WORKDAY.INTL function. + + + + + Represents the Z.TEST function. + + + + + Represents the BETA.DIST function. + + + + + Represents the EUROCONVERT function. + + + + + Represents the PHONETIC function. + + + + + Represents the REGISTER.ID function. + + + + + Represents the SQL.REQUEST function. + + + + + Represents the JIS function. + + + + + Represents the EXPON.DIST function. + + + + + Represents the DAYS function. + + + + + Represents the ISOWEEKNUM function. + + + + + Represents the BITAND function. + + + + + Represents the BITLSHIFT function. + + + + + Represents the BITOR function. + + + + + Represents the BITXOR function. + + + + + Represents the BITXOR function. + + + + + Represents the IMCOSH function. + + + + + Represents the IMCOT function. + + + + + Represents the IMCSC function. + + + + + Represents the IMCSCH function. + + + + + Represents the IMSEC function. + + + + + Represents the IMSECH function. + + + + + Represents the IMSINH function. + + + + + Represents the IMTAN function. + + + + + Represents the PDURATION function. + + + + + Represents the RRI function. + + + + + Represents the ISFORMULA function. + + + + + Represents the SHEET function. + + + + + Represents the SHEETS function. + + + + + Represents the IFNA function. + + + + + Represents the XOR function. + + + + + Represents the FORMULATEXT function. + + + + + Represents the ACOT function. + + + + + Represents the ACOTH function. + + + + + Represents the ARABIC function. + + + + + Represents the BASE function. + + + + + Represents the CEILING.MATH function. + + + + + Represents the COMBINA function. + + + + + Represents the COT function. + + + + + Represents the COTH function. + + + + + Represents the CSC function. + + + + + Represents the CSCH function. + + + + + Represents the DECIMAL function. + + + + + Represents the FLOOR.MATH function. + + + + + Represents the ISO.CEILING function. + + + + + Represents the MUNIT function. + + + + + Represents the SEC function. + + + + + Represents the SECH function. + + + + + Represents the BINOM.DIST.RANGE function. + + + + + Represents the GAMMA function. + + + + + Represents the GAUSS function. + + + + + Represents the PERMUTATIONA function. + + + + + Represents the PHI function. + + + + + Represents the SKEW.P function. + + + + + Represents the NUMBERVALUE function. + + + + + Represents the UNICHAR function. + + + + + Represents the UNICODE function. + + + + + Represents the ENCODEURL function. + + + + + Represents the FILTERXML function. + + + + + Represents the WEBSERVICE function. + + + + + Represents the TEXTJOIN function. + + + + + Represents the CONCAT function. + + + + + Represents the IFS function. + + + + + Represents the SWITCH function. + + + + + Represents the MINIFS function. + + + + + Represents the MAXIFS function. + + + + + Represents the FORECAST.ETS function. + + + + + Represents the FORECAST.ETS.SEASONALITY function. + + + + + Represents the FORECAST.LINEAR function. + + + + + Represents the FORECAST.ETS.CONFINT function. + + + + + Represents the FORECAST.ETS.STAT function. + + + + + + Represents the XLOOKUP function. + + + + + Represents the LET function. + + + + + Represents the XMATCH function. + + + + + Represents the ARRAYTOTEXT function. + + + + + Represents the VALUETOTEXT function. + + + + + Represents the FILTER function. + + + + + Represents the ANCHORARRAY function. + + + + + Represents the TEXTAFTER function. + + + + + Represents the CHOOSEROWS function. + + + + + Represents the CHOOSECOLS function. + + + + + Represents the TEXTBEFORE function. + + + + + Represents the TEXTSPLIT function. + + + + + Represents the TOROW function. + + + + + Represents the TOCOL function. + + + + + Represents the SORT function. + + + + + Represents the LAMBDA function. + + + + + Represents the BYROW function. + + + + + Represents the BYCOL function. + + + + + Represents the SORTBY function. + + + + + Represents the BETADIST function. + + + + + Represents the BETAINV function. + + + + + Represents the BINOMDIST function. + + + + + Represents the CEILING function. + + + + + Represents the CELL function. + + + + + Represents the CHAR function. + + + + + Represents the CHIDIST function. + + + + + Represents the CHIINV function. + + + + + Represents the CHITEST function. + + + + + Represents the CHOOSE function. + + + + + Represents the CLEAN function. + + + + + Represents the CODE function. + + + + + Represents the COLUMN function. + + + + + Represents the COLUMNS function. + + + + + Represents the COMBIN function. + + + + + Represents the CONCATENATE function. + + + + + Represents the CONFIDENCE function. + + + + + Represents the CORREL function. + + + + + Represents the COS function. + + + + + Represents the COSH function. + + + + + Represents the COUNT function. + + + + + Represents the COUNTA function. + + + + + Represents the COUNTBLANK function. + + + + + Represents the COUNTIF function. + + + + + Represents the COVAR function. + + + + + Represents the CRITBINOM function. + + + + + Represents the DATE function. + + + + + Represents the DATEVALUE function. + + + + + Represents the DAVERAGE function. + + + + + Represents the DAY function. + + + + + Represents the DAYS360 function. + + + + + Represents the DB function. + + + + + Represents the DCOUNT function. + + + + + Represents the DCOUNTA function. + + + + + Represents the DDB function. + + + + + Represents the DEGREES function. + + + + + Represents the DEVSQ function. + + + + + Represents the DMAX function. + + + + + Represents the DMIN function. + + + + + Represents the DOLLAR function. + + + + + Represents the DPRODUCT function. + + + + + Represents the DSTDEV function. + + + + + Represents the DSTDEVP function. + + + + + Represents the DSUM function. + + + + + Represents the DVAR function. + + + + + Represents the DVARP function. + + + + + Represents the ERROR function. + + + + + Represents the ERRORTYPE function. + + + + + Represents the EVEN function. + + + + + Represents the EXACT function. + + + + + Represents the EXP function. + + + + + Represents the EXPONDIST function. + + + + + Represents the FACT function. + + + + + Represents the FALSE function. + + + + + Represents the FDIST function. + + + + + Represents the FIND function. + + + + + Represents the FINDB function. + + + + + Represents the FINV function. + + + + + Represents the FISHER function. + + + + + Represents the FISHERINV function. + + + + + Represents the FIXED function. + + + + + Represents the FLOOR function. + + + + + Represents the FORECAST function. + + + + + Represents the FREQUENCY function. + + + + + Represents the FTEST function. + + + + + Represents the FV function. + + + + + Represents the GAMMADIST function. + + + + + Represents the GAMMAINV function. + + + + + Represents the GAMMALN function. + + + + + Represents the GEOMEAN function. + + + + + Represents the GETPIVOTDATA function. + + + + + Represents the GROWTH function. + + + + + Represents the HARMEAN function. + + + + + Represents the HLOOKUP function. + + + + + Represents the HOUR function. + + + + + Represents the HYPERLINK function. + + + + + Represents the HYPGEOMDIST function. + + + + + Represents the IF function. + + + + + Represents the INDEX function. + + + + + Represents the INDIRECT function. + + + + + Represents the INFO function. + + + + + Represents the INT function. + + + + + Represents the INTERCEPT function. + + + + + Represents the IPMT function. + + + + + Represents the IRR function. + + + + + Represents the ISBLANK function. + + + + + Represents the ISERR function. + + + + + Represents the ISERROR function. + + + + + Represents the ISLOGICAL function. + + + + + Represents the ISNA function. + + + + + Represents the ISNONTEXT function. + + + + + Represents the ISNUMBER function. + + + + + Represents the ISPMT function. + + + + + Represents the ISREF function. + + + + + Represents the ISTEXT function. + + + + + Represents the KURT function. + + + + + Represents the LARGE function. + + + + + Represents the LEFT function. + + + + + Represents the LEFTB function. + + + + + Represents the LEN function. + + + + + LENB function. + + + + + Represents the LINEST function. + + + + + Represents the LN function. + + + + + Represents the LOG function. + + + + + Represents the LOG10 function. + + + + + Represents the LOGEST function. + + + + + Represents the LOGINV function. + + + + + Represents the LOGNORMDIST function. + + + + + Represents the LOOKUP function. + + + + + Represents the LOWER function. + + + + + Represents the MATCH function. + + + + + Represents the MAX function. + + + + + Represents the MAXA function. + + + + + Represents the MDETERM function. + + + + + Represents the MEDIAN function. + + + + + Represents the MID function. + + + + + Represents the MIDB function. + + + + + Represents the MIN function. + + + + + Represents the MINA function. + + + + + Represents the MINUTE function. + + + + + Represents the MINVERSE function. + + + + + Represents the MIRR function. + + + + + Represents the MMULT function. + + + + + Represents the MOD function. + + + + + Represents the MODE function. + + + + + Represents the MONTH function. + + + + + Represents the N function. + + + + + Represents the NA function. + + + + + Represents the NEGBINOMDIST function. + + + + + Represents the NORMDIST function. + + + + + Represents the NORMINV function. + + + + + Represents the NORMSDIST function. + + + + + Represents the NORMSINV function. + + + + + Represents the NOT function. + + + + + Represents the NOW function. + + + + + Represents the NPER function. + + + + + Represents the NPV function. + + + + + Represents the ODD function. + + + + + Represents the OFFSET function. + + + + + Represents the OR function. + + + + + Represents the PEARSON function. + + + + + Represents the PERCENTILE function. + + + + + Represents the PERCENTRANK function. + + + + + Represents the PERMUT function. + + + + + Represents the PI function. + + + + + Represents the PMT function. + + + + + Represents the POISSON function. + + + + + Represents the POWER function. + + + + + Represents the PPMT function. + + + + + Represents the PROB function. + + + + + Represents the PRODUCT function. + + + + + Represents the PROPER function. + + + + + Represents the PV function. + + + + + Represents the QUARTILE function. + + + + + Represents the RADIANS function. + + + + + Represents the RAND function. + + + + + Represents the RANK function. + + + + + Represents the RATE function. + + + + + Represents the REPLACE function. + + + + + Represents the REPLACEB function. + + + + + Represents the RIGHT function. + + + + + Represents the RIGHTB function. + + + + + Represents the ROMAN function. + + + + + Represents the ROUND function. + + + + + Represents the ROUNDDOWN function. + + + + + Represents the ROUNDUP function. + + + + + Represents the ROW function. + + + + + Represents the ROWS function. + + + + + Represents the RSQ function. + + + + + Represents the SEARCH function. + + + + + Represents the SEARCHB function. + + + + + Represents the SECOND function. + + + + + Represents the SIGN function. + + + + + Represents the SIN function. + + + + + Represents the SINH function. + + + + + Represents the SKEW function. + + + + + Represents the SLN function. + + + + + Represents the SLOPE function. + + + + + Represents the SMALL function. + + + + + Represents the SQRT function. + + + + + Represents the STANDARDIZE function. + + + + + Represents the STDEV function. + + + + + Represents the STDEVA function. + + + + + Represents the STDEVP function. + + + + + Represents the STDEVPA function. + + + + + Represents the STEYX function. + + + + + Represents the SUBSTITUTE function. + + + + + Represents the SUBTOTAL function. + + + + + Represents the SUM function. + + + + + Represents the SUMIF function. + + + + + Represents the SUMPRODUCT function. + + + + + Represents the SUMSQ function. + + + + + Represents the SUMX2MY2 function. + + + + + Represents the SUMX2PY2 function. + + + + + Represents the SUMXMY2 function. + + + + + Represents the SYD function. + + + + + Represents the T function. + + + + + Represents the TAN function. + + + + + Represents the TANH function. + + + + + Represents the TDIST function. + + + + + Represents the TEXT function. + + + + + Represents the TIME function. + + + + + Represents the TIMEVALUE function. + + + + + Represents the TINV function. + + + + + Represents the TODAY function. + + + + + Represents the TRANSPOSE function. + + + + + Represents the TREND function. + + + + + Represents the TRIM function. + + + + + Represents the TRIMMEAN function. + + + + + Represents the TRUE function. + + + + + Represents the TRUNC function. + + + + + Represents the TTEST function. + + + + + Represents the TYPE function. + + + + + Represents the UPPER function. + + + + + Represents the VALUE function. + + + + + Represents the VAR function. + + + + + Represents the VARA function. + + + + + Represents the VARP function. + + + + + Represents the VARPA function. + + + + + Represents the VDB function. + + + + + Represents the VLOOKUP function. + + + + + Represents the WEEKDAY function. + + + + + Represents the WEIBULL function. + + + + + Represents the YEAR function. + + + + + Represents the ZTEST function. + + + + + Represents the ABSREF function. + + + + + Represents the ACTIVECELL function. + + + + + Represents the ADDBAR function. + + + + + Represents the ADDCOMMAND function. + + + + + Represents the ADDMENU function. + + + + + Represents the ADDTOOLBAR function. + + + + + Represents the APPTITLE function. + + + + + Represents the ARGUMENT function. + + + + + Represents the ASC function. + + + + + Represents the CALL function. + + + + + Represents the CALLER function. + + + + + Represents the CANCELKEY function. + + + + + Represents the CHECKCOMMAND function. + + + + + Represents the CREATEOBJECT function. + + + + + Represents the CUSTOMREPEAT function. + + + + + Represents the CUSTOMUNDO function. + + + + + Represents the DATEDIF function. + + + + + Represents the DATESTRING function. + + + + + Represents the DBCS function. + + + + + Represents the DELETEBAR function. + + + + + Represents the DELETECOMMAND function. + + + + + Represents the DELETEMENU function. + + + + + Represents the DELETETOOLBAR function. + + + + + Represents the DEREF function. + + + + + Represents the DGET function. + + + + + Represents the DIALOGBOX function. + + + + + Represents the DIRECTORY function. + + + + + Represents the DOCUMENTS function. + + + + + Represents the ECHO function. + + + + + Represents the ENABLECOMMAND function. + + + + + Represents the ENABLETOOL function. + + + + + Represents the EVALUATE function. + + + + + Represents the EXEC function. + + + + + Represents the EXECUTE function. + + + + + Represents the FILES function. + + + + + Represents the FOPEN function. + + + + + Represents the FORMULACONVERT function. + + + + + Represents the FPOS function. + + + + + Represents the FREAD function. + + + + + Represents the FREADLN function. + + + + + Represents the FSIZE function. + + + + + Represents the FWRITE function. + + + + + Represents the FWRITELN function. + + + + + Represents the FCLOSE function. + + + + + Represents the GETBAR function. + + + + + Represents the GETCELL function. + + + + + Represents the GETCHARTITEM function. + + + + + Represents the GETDEF function. + + + + + Represents the GETDOCUMENT function. + + + + + Represents the GETFORMULA function. + + + + + Represents the GETLINKINFO function. + + + + + Represents the GETMOVIE function. + + + + + Represents the GETNAME function. + + + + + Represents the GETNOTE function. + + + + + Represents the GETOBJECT function. + + + + + Represents the GETPIVOTFIELD function. + + + + + Represents the GETPIVOTITEM function. + + + + + Represents the GETPIVOTTABLE function. + + + + + Represents the GETTOOL function. + + + + + Represents the GETTOOLBAR function. + + + + + Represents the GETWINDOW function. + + + + + Represents the GETWORKBOOK function. + + + + + Represents the GETWORKSPACE function. + + + + + Represents the GOTO function. + + + + + Represents the GROUP function. + + + + + Represents the HALT function. + + + + + Represents the HELP function. + + + + + Represents the INITIATE function. + + + + + Represents the INPUT function. + + + + + Represents the LASTERROR function. + + + + + Represents the LINKS function. + + + + + Represents the MOVIECOMMAND function. + + + + + Represents the NAMES function. + + + + + Represents the NOTE function. + + + + + Represents the NUMBERSTRING function. + + + + + Represents the OPENDIALOG function. + + + + + Represents the OPTIONSLISTSGET function. + + + + + Represents the PAUSE function. + + + + + Represents the PIVOTADDDATA function. + + + + + Represents the POKE function. + + + + + Represents the PRESSTOOL function. + + + + + Represents the REFTEXT function. + + + + + Represents the REGISTER function. + + + + + Represents the REGISTERID function. + + + + + Represents the RELREF function. + + + + + Represents the RENAMECOMMAND function. + + + + + Represents the REPT function. + + + + + Represents the REQUEST function. + + + + + Represents the RESETTOOLBAR function. + + + + + Represents the RESTART function. + + + + + Represents the RESULT function. + + + + + Represents the RESUME function. + + + + + Represents the SAVEDIALOG function. + + + + + Represents the SAVETOOLBAR function. + + + + + Represents the SCENARIOGET function. + + + + + Represents the SELECTION function. + + + + + Represents the SERIES function. + + + + + Represents the SETNAME function. + + + + + Represents the SETVALUE function. + + + + + Represents the SHOWBAR function. + + + + + Represents the SPELLINGCHECK function. + + + + + Represents the STEP function. + + + + + Represents the TERMINATE function. + + + + + Represents the TEXTBOX function. + + + + + Represents the TEXTREF function. + + + + + Represents the UNREGISTER function. + + + + + Represents the USDOLLAR function. + + + + + Represents the VOLATIL function. + + + + + Represents the WINDOWS function. + + + + + Represents the WINDOWTITLE function. + + + + + Defines the view setting of the sheet. + + + + + Normal view + + + + + Page break preview + + + + + Page Layout View + + + + + Specifies the possible colors in Excel. + + + + + Black color. + + + + + White color. + + + + + Red color. + + + + + LightGreen color. + + + + + Blue color. + + + + + Yellow color. + + + + + Magenta color. + + + + + Cyan color. + + + + + Aqua color. + + + + + BlackCustom color. + + + + + BlueCustom color. + + + + + Blue_grey color. + + + + + Bright_green color. + + + + + Brown color. + + + + + Dark_blue color. + + + + + Dark_green color. + + + + + Dark_red color. + + + + + Dark_teal color. + + + + + Dark_yellow color. + + + + + Gold color. + + + + + Green color. + + + + + Grey_25_percent color. + + + + + Grey_40_percent color. + + + + + Grey_50_percent color. + + + + + Grey_80_percent color. + + + + + Indigo color. + + + + + Lavender color. + + + + + Light_blue color. + + + + + Light_green color. + + + + + Light_orange color. + + + + + Light_turquoise color. + + + + + Light_yellow color. + + + + + Lime color. + + + + + Olive_green color. + + + + + Orange color. + + + + + Pale_blue color. + + + + + Pink color. + + + + + Plum color. + + + + + Red2 color. + + + + + Rose color. + + + + + Sea_green color. + + + + + Sky_blue color. + + + + + Tan color. + + + + + Teal color. + + + + + Turquoise color. + + + + + Violet color. + + + + + WhiteCustom color. + + + + + YellowCustom color. + + + + + Custom0. + + + + + Custom1. + + + + + Custom2. + + + + + Custom3. + + + + + Custom4. + + + + + Custom5. + + + + + Custom6. + + + + + Custom7. + + + + + Custom8. + + + + + Custom9. + + + + + Custom10. + + + + + Custom11. + + + + + Custom12. + + + + + Custom13. + + + + + Custom14. + + + + + Custom15. + + + + + Custom16. + + + + + Custom17. + + + + + Custom18. + + + + + Custom19. + + + + + Custom20. + + + + + Custom21. + + + + + Custom22. + + + + + Custom23. + + + + + Custom24. + + + + + Custom25. + + + + + Custom26. + + + + + Custom27. + + + + + Custom28. + + + + + Custom29. + + + + + Custom30. + + + + + Custom31. + + + + + Custom32. + + + + + Custom33. + + + + + Custom34. + + + + + Custom35. + + + + + Custom36. + + + + + Custom37. + + + + + Custom38. + + + + + Custom39. + + + + + Custom40. + + + + + Custom41. + + + + + Custom42. + + + + + Custom43. + + + + + Custom44. + + + + + Custom45. + + + + + Custom46. + + + + + Custom47. + + + + + Custom48. + + + + + Custom49. + + + + + Custom50. + + + + + Custom51. + + + + + Custom52. + + + + + Custom53. + + + + + Custom54. + + + + + Custom55. + + + + + Custom56. + + + + + No color. + + + + + Specifies the Group types in Excel. + + + + + Grouping by Rows. + + + + + Grouping by columns. + + + + + Enumeration of Patterns available in Excel. + + + + + No pattern. + + + + + Represents the Solid pattern. + + + + + Represents the Percent50 pattern. + + + + + Represents the Percent70 pattern. + + + + + Represents the Percent25 pattern. + + + + + Represents the DarkHorizontal pattern. + + + + + Represents the DarkVertical pattern. + + + + + Represents the DarkDownwardDiagonal pattern. + + + + + Represents the DarkUpwardDiagonal pattern. + + + + + Represents the ForwardDiagonal pattern. + + + + + Represents the Percent75 pattern. + + + + + Represents the Horizontal pattern. + + + + + Represents the Vertical pattern. + + + + + Represents the LightDownwardDiagonal pattern. + + + + + Represents the LightUpwardDiagonal pattern. + + + + + Represents the Angle pattern. + + + + + Represents the Percent60 pattern. + + + + + Represents the Percent10 pattern. + + + + + Represents the Percent05 pattern. + + + + + Represents the Percent50Gray pattern. + + + + + Represents the Percent75Gray pattern. + + + + + Represents the Percent25Gray pattern. + + + + + Represents the HorizontalStripe pattern. + + + + + Represents the VerticalStripe pattern. + + + + + Represents the ReverseDiagonalStripe pattern. + + + + + Represents the DiagonalStripe pattern. + + + + + Represents the DiagonalCrosshatch pattern. + + + + + Represents the ThickDiagonalCrosshatch pattern. + + + + + Represents the ThinHorizontalStripe pattern. + + + + + Represents the ThinVerticalStripe pattern. + + + + + Represents the ThinReverseDeagonalStripe pattern. + + + + + Represents the ThinDiagonalStripe pattern. + + + + + Represents the ThinHorizontalCrosshatch pattern. + + + + + Represents the ThinDiagonalCrosshatch pattern. + + + + + Represents the Percent125Gray pattern. + + + + + Represents the Percent625Gray pattern. + + + + + Represent Gradient pattern. + + + + + This enumeration used for controlling output stream infill on + save operation provided by Workbook. + + + + + Do not skip any information from source file. + + + + + Skip macros extension records in output stream. + + + + + Skip drawings extension records in output stream. + + + + + Skip summary information substreams creation. + + + + + Skip coping of substreams from source to destination files. + + + + + Skip all extended records. + + + + + Enumeration which controls visibility of worksheet in Excel. + + + + + Worksheet is visible to the user. + + + + + Worksheet is hidden for the user. + + + + + The strong hidden flag can only be set and cleared with a Visual Basic + macro. It is not possible to make such a sheet visible via the user interface. + + + + + Enumeration of the Save types in Excel. + + + + + Save the workbook into .xls or .xlsx format based on the workbook version. + When the workbook version is Excel2007 and above, it uses .xlsx format. otherwise .xls format. + + + + + Save the workbook into .xlt or .xltx format based on the workbook version. + When the workbook version is Excel2007 and above, it uses .xltx format. otherwise .xlt format. + + + + + Save the workbook into open document spreadsheet(.ods) format.Difference between ODS and XLSX format. + + + + + Save the workbook into a macro-enabled file (.xls or .xlsm). + + + + + Save the workbook into a macro-enabled template file (.xltm). + + + + + Save the workbook into .xlsb format. + + + + + Specifies the chart types. + + + + + Represents the clustered column chart. + + + + + Represents the stacked column chart. + + + + + Represents the 100% stacked column chart. + + + + + Represents the 3D clustered column chart. + + + + + Represents the 3D stacked column chart. + + + + + Represents the 3D 100% stacked column chart. + + + + + Represents the 3D column chart. + + + + + Represents the clustered bar chart. + + + + + Represents the stacked bar chart. + + + + + Represents the 100% stacked bar chart. + + + + + Represents the 3D clustered bar chart. + + + + + Represents the 3D stacked bar chart. + + + + + Represents the 3D 100% stacked bar chart. + + + + + Represents the line chart. + + + + + Represents the stacked line chart. + + + + + Represents the 100% stacked line chart. + + + + + Represents the line chart with markers. + + + + + Represents the stacked line chart with markers. + + + + + Represents the 100% stacked line chart with markers. + + + + + Represents the 3D line chart. + + + + + Represents the pie chart. + + + + + Represents the 3D pie chart. + + + + + Represents the pie of pie chart. + + + + + Represents the exploded pie chart. + + + + + Represents the exploded 3D pie chart. + + + + + Represents the bar of pie chart. + + + + + Represents the scatter chart with markers. + + + + + Represents the smooth lined scatter chart with markers. + + + + + Represents the smooth lined scatter chart. + + + + + Represents the scatter chart with lines and markers. + + + + + Represents the scatter chart with lines. + + + + + Represents the area chart. + + + + + Represents the stacked area chart. + + + + + Represents the 100% stacked area chart. + + + + + Represents the 3D area chart. + + + + + Represents the 3D stacked area chart. + + + + + Represents the 3D 100% stacked area chart. + + + + + Represents the doughnut chart. + + + + + Represents the exploded doughnut chart. + + + + + Represents the radar chart. + + + + + Represents the radar chart with markers. + + + + + Represents the filled radar chart. + + + + + Represents the 3D surface chart. + + + + + Represents the 3D surface chart with no color. + + + + + Represents the surface chart with contour. + + + + + Represents the surface chart with contour and no color. + + + + + Represents the bubble chart. + + + + + Represents the 3D bubble chart. + + + + + Represents the stock chart with high, low and close values. + + + + + Represents the stock chart with open, high, low and close values. + + + + + Represents the stock chart with volume, high, low and close values. + + + + + Represents the stock chart with volume, open, high, low and close values. + + + + + Represents the clustered cylinder chart. + + + + + Represents the stacked cylinder chart. + + + + + Represents the 100% stacked cylinder chart. + + + + + Represents the clustered cylinder bar chart. + + + + + Represents the stacked cylinder bar chart. + + + + + Represents the 100% stacked cylinder bar chart. + + + + + Represents the 3D clustered cylinder chart. + + + + + Represents the clustered cone chart. + + + + + Represents the stacked cone chart. + + + + + Represents the 100% stacked cone chart. + + + + + Represents the clustered cone bar chart. + + + + + Represents the stacked cone bar chart. + + + + + Represents the 100% stacked cone bar chart. + + + + + Represents the 3D clustered cone chart. + + + + + Represents the clustered pyramid chart. + + + + + Represents the stacked pyramid chart. + + + + + Represents the 100% stacked pyramid chart. + + + + + Represents the clustered pyramid bar chart. + + + + + Represents the stacked pyramid bar chart. + + + + + Represents the 100% stacked pyramid bar chart. + + + + + Represents the 3D clustered pyramid chart. + + + + + Represents the chart that contain different series types. + + + + + Represents the Excel 2016 Funnel Chart + + + + + Represents the Excel 2016 Water Fall Chart + + + + + Represents the Excel 2016 Box and Whisker Chart + + + + + Represents the Excel 2016 Histogram Chart + + + + + Represents the Excel 2016 Pareto Chart + + + + + Represents the Excel 2016 Tree Map Chart + + + + + Represents the Excel 2016 Sun Burst Chart + + + + + Specifies the position of the legend on a chart. + + + + + Represents the bottom of the chart. + + + + + Represents the upper right-hand corner of the chart border. + + + + + Represents the top of the chart. + + + + + Represents the right of the chart. + + + + + Represents the left of the chart. + + + + + Represents the NotDocked option. + + + + + Enumeration of the print size of charts in Excel. + + + + + Represents the Custom option. + + + + + Represents the ScaleToFit page option. + + + + + Represents the Use Full Page option. + + + + + Specifies how blank cells are plotted on a chart. + + + + + Blank cells are not plotted. + + + + + Blanks are plotted as zero. + + + + + Values are interpolated into the chart. + + + + + Enumeration of the axes used for Charts in Excel. + + + + + Represents the Primary axis option. + + + + + Represents the Primary and Secondary axis option. + + + + + Enumeration of the background mode for Charts in Excel. + + + + + Represents the Transparent option. + + + + + Represents the Opaque option. + + + + + Enumeration of the horizontal alignment options for Charts in Excel. + + + + + Represents the Left alignment option for the horizontal alignment setting for Chart. + + + + + Represents the Center alignment option for the horizontal alignment setting for Chart. + + + + + Represents the Right alignment option for the horizontal alignment setting for Chart. + + + + + Represents the Justify alignment option for the horizontal alignment setting for Chart. + + + + + Enumeration of the vertical alignment options for Charts in Excel. + + + + + Represents the Top alignment option for the Vertical alignment setting for Chart. + + + + + Represents the Center alignment option for the Vertical alignment setting for Chart. + + + + + Represents the Bottom alignment option for the Vertical alignment setting for Chart. + + + + + Represents the Justify alignment option for the Vertical alignment setting for Chart. + + + + + Enumeration of the Border Pattern setting for Chart formatting in Excel. + + + + + Represents the Automatic option for the Border Pattern setting. + + + + + Represents the None option for the Border Pattern setting. + + + + + Represents the Custom option for the Border Pattern setting. + + + + + Specifies the line pattern for the border. + + + + + Solid line. + + + + + Dashed line. + + + + + Dotted line. + + + + + Alternating dashes and dots. + + + + + Dash followed by two dots. + + + + + No line. + + + + + Dark gray line. + + + + + Medium Gray line. + + + + + Light gray line. + + + + + Round dotted line. + + + + + Long dashed line. + + + + + Long alternating dashes and dots. + + + + + Long dash followed by two dots. + + + + + Represents allowed line weight values for charts in Excel. + + + + + Represents hairline (thinnest border). + + + + + Represents narrow border. + + + + + Represents medium border. + + + + + Represents wide border. + + + + + Specifies the marker style for a point or series in a line chart, scatter chart, or radar chart. + + + + + No markers. + + + + + Square markers. + + + + + Diamond-shaped markers. + + + + + Triangular markers. + + + + + Square markers with an X. + + + + + Square markers with an asterisk. + + + + + Represents the Dow Jones style in the custom marker option for Chart lines. + + + + + Represents the Standard Deviation style in the custom marker option for Chart lines. + + + + + Circular markers. + + + + + Square markers with a plus sign. + + + + + Specifies the axis types for charts in Excel. + + + + + Axis displays categories. + + + + + Axis displays values. + + + + + Axis displays data series. + + + + + Represents a possible insert options in Excel. + + + + + Indicates that after insert operation inserted rows/columns + must be formatted as row above or column left. + + + + + Indicates that after insert operation inserted rows/columns + must be formatted as row below or column right. + + + + + Indicates that after insert operation inserted rows/columns + must have default format. + + + + + Specifies whether the conditional format is based on a cell value or an expression. + + + + + Represents the Cell Value option for conditional formatting. + + + + + Represents the Formula option for conditional formatting. + + + + + Represents the ColorScale option for conditional formatting. + + + + + Represents the DataBar option for conditional formatting. + + + + + Represents the IconSet option for conditional formatting. + + + + + Represents conditional formatting rule highlights cells that are completely blank. + + + + + Represents conditional formatting rule highlights cells that are not blank. + + + + + Represents the Specific Text conditional formatting rule based on the text. + + + + + Represents conditional formatting rule highlights cells that contains errors. + + + + + Represents conditional formatting rule highlights cells that does not contains errors. + + + + + Represents Time Period conditional formatting rule highlights cells that has date time. + + + + + Represents conditional formatting rule to highlight the cells with duplicate values. + + + + + Represents conditional formatting rule to highlight the cells with unique values. + + + + + Represents conditional formatting rule to highlight the top 10 or bottom 10 cells with the values. + + + + + Represents conditional formatting rule to highlight the cells that contain values above or below the range average. + + + + + Specifies the comparison operator for conditional formatting in Excel. + + + + + No comparison. + + + + + Between. + + + + + Not between. + + + + + Equal. + + + + + Not equal. + + + + + Greater than. + + + + + Less than. + + + + + Greater than. + + + + + Less than or equal. + + + + + Begins-with comparison option for Specific Text. + + + + + Contains text comparison option for Specific Text. + + + + + Ends-with comparison option for Specific Text. + + + + + Not contains text option for Specific Text. + + + + + Specifies the time periods for date time conditional formatting in Excel. + + + + + Today. + + + + + Yesterday. + + + + + Tomorrow. + + + + + Last seven days. + + + + + This month. + + + + + Last month. + + + + + Next month. + + + + + This week. + + + + + Last week. + + + + + Next week. + + + + + Specifies the comparison operators for data validation. + + + + + Between. + + + Should provide both and value. + + + + + Not between. + + + Should provide both and value. + + + + + Equal. + + + + + NotEqual. + + + + + Greater than. + + + + + Less than. + + + + + Greater than or equal to. + + + + + Less than or equal to. + + + + + Specifies the type of validation test to be performed in conjunction with values. + + + + + Represents Any data type. + + + + + Represents Integer data type. + + + + + Represents Decimal data type. + + + + + Represents User data type. + + + + + Represents Date data type. + + + + + Represents Time data type. + + + + + Represents TextLength data type. + + + + + Represents Formula data type. + + + + + Represents Excel Parameter Data Type + + + + + Represents Unicode character string. + + + + + Represents Bit. + + + + + Represents Tiny integer. + + + + + Represents Big integer. + + + + + Represents Long binary. + + + + + Represents Variable-length binary. + + + + + Represents Binary. + + + + + Represents Long string. + + + + + Represents Type unknown. + + + + + Represents String. + + + + + Represents Numeric. + + + + + Represents Decimal. + + + + + Represents Integer. + + + + + Represents Small integer. + + + + + Represents Float. + + + + + Represents Real. + + + + + Represents Double. + + + + + Represents Date. + + + + + Represents Time. + + + + + Represents Time stamp. + + + + + Represents Variable-length string. + + + + + Represents Excel Parameter Type + + + + + Displays a dialog box that prompts the user for the value. + + + + + Uses the value specified by the Value argument. + + + + + Uses the value of the cell in the upper-left corner of the range. + + + + + Possible error style values: + + + + + Stop icon is displayed. + + + + + Warning icon is displayed. + + + + + Information icon is displayed. + + + + + Specifies the possible directions to shift cells after clearing a range. + + + + + MoveLeft direction. + + + + + MoveUp direction. + + + + + No direction. + + + + + Enumeration of shapes available in Excel. + + + + + Represents the AutoShape shape type. + + + + + Represents the Callout shape type. + + + + + Represents the Canvas shape type. + + + + + Represents the Chart shape type. + + + + + Represents the Comment shape type. + + + + + Represents the Diagram shape type. + + + + + Represents the EmbeddedOLEObject shape type. + + + + + Represents the FormControl shape type. + + + + + Represents the Freeform shape type. + + + + + Represents the Group shape type. + + + + + Represents the Line shape type. + + + + + Represents the LinkedOLEObject shape type. + + + + + Represents the LinkedPicture shape type. + + + + + Cannot be used with this property. This constant is used with shapes + in other Microsoft Office applications. + + + + + Represents the OLEControlObject shape type. + + + + + Represents the Picture shape type. + + + + + Cannot be used with this property. This constant is used with shapes + in other Microsoft Office applications. + + + + + Represents the ScriptAnchor shape type. + + + + + Represents the ShapeTypeMixed shape type. + + + + + Represents the Table shape type. + + + + + Represents the TextBox shape type. + + + + + Represents the TextEffect shape type. + + + + + Represents the Unknown shape type. + + + + + Represents the Check box type. + + + + + Enumeration to specify the possible Text Rotation options. + + + + + Represents the LeftToRight text rotation. + + + + + Represents the TopToBottom text rotation. + + + + + Represents the CounterClockwise text rotation. + + + + + Represents the Clockwise text rotation. + + + + + Enumeration to align the excel comment Horizontally. + + + + + Represents the Left comment align. + + + + + Represents the Center comment align. + + + + + Represents the Right comment align. + + + + + Represents the Justified comment align. + + + + + Represents the Justified comment align. + + + + + Represents the Distributed comment align. + + + + + Enumeration to align the excel comment vertically + + + + + Represents the Top comment align. + + + + + Represents the Center comment align. + + + + + Represents the Bottom comment align. + + + + + Represents the Justified comment align. + + + + + Represents the Distributed comment align. + + + + + Enumeration to specify if the spreadsheet should be opened inside browser or saved + as an attachment to disk. + + + + + File should be opened in browser. + + + + + Prompt dialog should be displayed. + + + + + HttpContent type. + + + + + Excel97 HttpContent type. + + + + + Excel2000 HttpContent type. + + + + + Excel2007 HttpContent type. + + + + + Excel2010 HttpContent type. + + + + + Excel2013 HttpContent type. + + + + + Excel2016 HttpContent type. + + + + + Excel2019 and above versions HttpContent type. + + + + + CSV HttpContent type. + + + + + ODS HttpContent type. + + + + + Enumeration to specify the style merge options. + + + + + Represents the Leave style merge option. + + + + + Represents the Replace style merge option. + + + + + Represents the CreateDiffName style merge option. + + + + + Enumeration to specify Names Merge options. + + + + + Represents the Leave names merge option. + + + + + Represents the Replace names merge option. + + + + + Represents the Rename names merge option. + + + + + Represents the MakeLocal names merge option. + + + + + Enumeration to specify options when copying worksheets. + + + + + No flags. + + + + + Represents the ClearBefore copy flags. + + + + + Represents the CopyNames copy flags. + + + + + Represents the CopyCells copy flags. + + + + + Represents the CopyRowHeight copy flags. + + + + + Represents the CopyColumnHeight copy flags. + + + + + Represents the CopyOptions copy flags. + + + + + Represents the CopyMerges copy flags. + + + + + Represents the CopyShapes copy flags. + + + + + Represents the CopyConditionlFormats copy flags. + + + + + Represents the CopyAutoFilters copy flags. + + + + + Represents the CopyDataValidations copy flags. + + + + + Copy page setup (page breaks, paper orientation, header, footer and other properties). + + + + + Copy table objects. + + + + + Copy pivot table objects. + + + + + Copies palette. + + + + + Represents the CopyAll copy flags, except palette. + + + + + Represents the CopyWithoutNames copy flags. + + + + + Enumeration to specify the options to update formulas and merged ranges during copy range + operation. + + + + + No flags. + + + + + Indicates whether update formula during copy. WARNING: you should always + specify this flag if your operations could change position of Array formula. + + + + + Indicates whether update merges during copy. + + + + + Indicates that we have to copy styles during range copy. + + + + + Indicates that we have to copy shapes during range copy. + + + + + Indicates that we have to copy error indicators during range copy. + + + + + Indicates that we have to copy conditional formats during range copy. + + + + + Indicates that we have to copy data validations during range copy. + + + + + All flags. + + + + + Indicates that we have to copy value with formats during range copy. + + + + + Enumeration to specify the options of excel formula + + + + + No flags. + + + + + Represents the RootLevel formula parse option. + + + + + Represents the InArray formula parse option. + + + + + Represents the InName formula parse option. + + + + + Operand in function. + + + + + Operand is complex. + + + + + Indicates that R1C1 notation must be used. + + + + + Enumeration to specify an excel cell type. + + + + + Cells of any format. + + + + + Cells having validation criteria. + + + + + Empty cells. + + + + + Cells containing notes. + + + + + Cells containing constants. + + + + + Cells containing formulas. + + + + + The last cell in the used range. + + + + + Cells having the same format. + + + + + Cells having the same validation criteria. + + + + + All visible cells. + + + + + Data type for autofilters. + + + + + Represents the filter data type. + + + + + Represents the FloatingPoint filter data type. + + + + + Represents the String filter data type. + + + + + Represents the Boolean filter data type. + + + + + Represents the ErrorCode filter data type. + + + + + Represents the MatchAllBlanks filter data type. + + + + + Represents the MatchAllNonBlanks filter data type. + + + + + Possible conditions in autofilter. + + + + + Represents the Less filter condition type. + + + + + Represents the Equal filter condition type. + + + + + Represents the LessOrEqual filter condition type. + + + + + Represents the Greater filter condition type. + + + + + Represents the NotEqual filter condition type. + + + + + Represents the GreaterOrEqual filter condition type. + + + + + Represents the Contains filter condition type. + + + + + Represents the DoesNotContain filter condition type. + + + + + Represents the BeginsWith filter condition type. + + + + + Represents the DoesNotBeginWith filter condition type. + + + + + Represents the EndsWith filter condition type. + + + + + Represents the DoesNotEndWith filter condition type. + + + + + Parsing options. + + + + + Represents the Default parse option. + + + + + Represents the SkipStyles parse option + + + + + Represents the DoNotParseCharts parse option + + + + + This is special mode. In this mode user can't modify strings or add new strings + (numbers and other types are ok), but it gives more speed and less memory usage. + + + + + Preserves the Pivot table. + + + + + Parses the sheet when accessed. + + + + + Specifies the possible ExportDataTable options. + + + + + No datatable. + + + + + Indicates that the first row of the range will be considered as a column name of the datatable. + + + + + Indicates that the formula values are computed and exported to the datatable. + + + + + Indicates that XlsIO should try to detect column types. + + + + + When DetectColumnTypes is set and this flag is set too, it means that + default column style must be used to detect style, if this flag is not set, + but DetectColumnTypes is set, then first cell in the column will be used + to detect column type. + + + + + Indicates whether to preserve Ole date (double numbers) instead of date-time values. + + + + + Indicates that the hidden columns can be exported to the datatable. + + + + + Indicates that the hidden rows can be exported to the datatable. + + + + + Indicates that XlsIO should try to detect different types in single column + + + + + Indicates that the leading and trailing spaces from column names should be removed + + + + + Excel rectangle style. Used in chart frames. + + + + + Represents the Regular rectangle style. + + + + + Represents the Shadowed rectangle style. + + + + + The order in which page fields are added to the PivotTable report's layout. + + + + + Represents the DownThenOver pages order. + + + + + Represents the OverThenDown pages order. + + + + + Possible types of hyperlinks. + + + + + No hyperlink. + + + + + Represents the Url hyperlink type. + + + + + Represents the File hyperlink type. + + + + + Represents the Unc hyperlink type. + + + + + Represents the Workbook hyperlink type. + + + + + Data source type. + + + + + Represents the Worksheet data source type. + + + + + Represents the ExternalData data source type. + + + + + Represents the Consolidation data source type. + + + + + Represents the ScenarioPivotTable data source type. + + + + + Specifies the type of data to search. + + + + + Searches text. + + + + + Searches formulas. + + + + + Searches formula string values. + + + + + Searches errors. + + + + + Searches numeric values. + + + + + Searches numenric formula values. + + + + + Searches calculated values, number and text. + + + + + Searches text in comments. + + + + + Specifies the possible type of finding options. + + + + + None of the option is selected. + + + + + Match the case while finding the value. + + + + + Match the entire cell content to search word while finding the value. + + + + + Possible types of direction order. + + + + + Represents the Context reading order type. + + + + + Represents the LeftToRight reading order type. + + + + + Represents the RightToLeft reading order type. + + + + + Possible image formats. + + + + + Try to keep original picture format. + + + + + Use PNG picture format. + + + + + Use JPG picture format. + + + + + Represents the MeasureUnits types. + + + + + Specifies 1/75 inch as the unit of measure. + + + + + Specifies the document unit (1/300 inch) as the unit of measure. + + + + + Specifies the inch as the unit of measure. + + + + + Specifies the millimeter as the unit of measure. + + + + + Specifies the centimeter as the unit of measure. + + + + + Specifies a device pixel as the unit of measure. + + + + + Specifies a printer's point (1/72 inch) as the unit of measure. + + + + + 12700 emu's = 1 point. + + + + + Specifies what the bubble size represents on a bubble chart. + + + + + Represents the area of the bubble. + + + + + Represents the width of the bubble. + + + + + Enumeration limits values which can be set by user. + + + + + Represents the Normal pie type. + + + + + Represents the Pie pie type. + + + + + Represents the Bar pie type. + + + + + Specifies the values displayed in the second chart in a pie chart or a bar of pie chart. + + + + + The second chart displays the smallest values in the data series. + The number of values to display is specified by the property. + + + + + The second chart displays values less than the value specified by the property. + + + + + The second chart displays values less than a percentage of the total value. + The percentage is specified by the property. + + + + + The second chart displays arbitrary slides. + + + + + Represents the drop line style type. + + + + + Represents the Drop line style. + + + + + Represents the HiLow drop line style. + + + + + Represents the Series drop line style. + + + + + Represents the ExcelLegendSpacing options. + + + + + Represents the Close ExcelLegendSpacing option. + + + + + Represents the Medium ExcelLegendSpacing option. + + + + + Represents the Open ExcelLegendSpacing option. + + + + + Base format options. + + + + + Represents Rectangle base format. + + + + + Represents Circle base format. + + + + + Top format options. + + + + + Represents Straight top format. + + + + + Represents Sharp top format. + + + + + Represents Trunc top format. + + + + + Object text is linked to. + + + + + Represents the Chart object text type. + + + + + Represents the YAxis object text type. + + + + + Represents the XAxis object text type. + + + + + Represents the DataLabel object text type. + + + + + Represents the ZAxis object text type. + + + + + Represents the DisplayUnit object text type. + + + + + Enumeration which represents axis line identifier. + + + + + The axis line itself. + + + + + Major grid line along the axis. + + + + + Minor grid line along the axis. + + + + + Walls or floor -- walls if parent axis is type 0 or 2; + floor if parent axis is type 1. + + + + + Possible format types. + + + + + Represents unknown format type. + + + + + Represents general number format. + + + + + Represents text number format. + + + + + Represents number number format. + + + + + Represents datetime number format. + + + + + Represents percentage number format. + + + + + Represents currency number format. + + + + + Represents decimal percentage number format. + + + + + Represents Exponential number format. + + + + + Indicates what property will be used for export. + + + + + Represents Boolean property. + + + + + Represents Number property. + + + + + Represents Text property. + + + + + Represents DateTime property. + + + + + Represents TimeSpan property. + + + + + Represents Error property. + + + + + Represents Formula. + + + + + Supported Xml save types. + + + + + Xml format used by MS Excel. + + + + + Xml format used by Syncfusion.DLS. This format is used to export + into Syncfusion.Pdf and Syncfusion.DocIO. + + + + + Property IDs for the SummaryInformation Property Set. + + + + + Title document property Id. + + + + + Subject document property Id. + + + + + Author document property Id. + + + + + Keywords document property Id. + + + + + Comments document property Id. + + + + + Template document property Id. + + + + + LastAuthor document property Id. + + + + + Revnumber document property Id. + + + + + EditTime document property Id. + + + + + LastPrinted document property Id. + + + + + CreationDate document property Id. + + + + + LastSaveDate document property Id. + + + + + PageCount document property Id. + + + + + WordCount document property Id. + + + + + CharCount document property Id. + + + + + Thumbnail document property Id. + + + + + ApplicationName document property Id. + + + + + Security document property Id. + + + + + Category Id. + + + + + Target format for presentation (35mm, printer, video, and so on) id. + + + + + ByteCount Id. + + + + + LineCount Id. + + + + + ParCount Id. + + + + + SlideCount Id. + + + + + NoteCount Id. + + + + + HiddenCount Id. + + + + + MmclipCount Id. + + + + + ScaleCrop property Id. + + + + + HeadingPair Id. + + + + + DocParts Id. + + + + + Manager Id. + + + + + Company Id. + + + + + LinksDirty Id. + + + + + Specifies the possible directions to clear the cell formats, content, comments,conditional format,data validation or clear all of them. + + + + + Clears the formats of the cell. + + + + + Clears the contents of the cell. + + + + + Clears the comments of the cell. + + + + + Clears the comments, content, conditional formats, data validations and formats of the cell. + + + + + Clears all the Conditional Format. + + + + + Clears all data validations. + + + + + Supported Xml open types. + + + + + Xml format used by MS Excel. + + + + + Represents line style. + + + + + Represents single line style. + + + + + Represents thin thin line style. + + + + + Represents thin thick line style. + + + + + Represents thick thin line style. + + + + + Represents thick between thin line style. + + + + + Represents shape dash line style. + + + + + Represents solid style. + + + + + Represents Dotted style. + + + + + Represents Dotted_Strange style. + + + + + Represents Dashed style. + + + + + Represents Medium_dashed style. + + + + + Represents Dash_dot style. + + + + + Represents Medium_dash_dot style. + + + + + Represents Dash_dot_dot style. + + + + + Represents shape arrow style type. + + + + + Represents no arrow. + + + + + Represents standard arrow. + + + + + Represents Stealth arrow. + + + + + Represents Diamond arrow. + + + + + Represents Oval arrow. + + + + + Represents Open arrow. + + + + + Represents arrow head length. + + + + + Represents short arrow head length. + + + + + Represents short arrow head length. + + + + + Represents short arrow head length. + + + + + Represents arrow head width. + + + + + Represents short arrow head width. + + + + + Represents short arrow head width. + + + + + Represents short arrow head width. + + + + + Represents shape arrow width length. + + + + + Represents ArrowNarrowShort type. + + + + + Represents ArrowNarrowMedium type. + + + + + Represents ArrowNarrowLong type. + + + + + Represents ArrowMediumShort type. + + + + + Represents ArrowMediumMedium type. + + + + + Represents ArrowMediumLong type. + + + + + Represents ArrowWideShort type. + + + + + Represents ArrowWideMedium type. + + + + + Represents ArrowWideLong type. + + + + + Represents shape fill type. + + + + + Solid color. + + + + + Represents pattern type. + + + + + Represents texture type. + + + + + Represents picture type. + + + + + Represents unsupport gradient that can be created using Excel 2007, + but not supported correctly by Excel 2003 structures. + + + + + Represents gradient type. + + + + + Represents excel shape shading style. + + + + + Represents horizontal style. + + + + + Represents vertical style. + + + + + Represents diagonal up style. + + + + + Represents diagonal down style. + + + + + Represents from corner style. + + + + + Represents from center style. + + + + + Represents shape shading variants. + + + + + Represents first shading variants. + + + + + Represents second shading variants. + + + + + Represents third shading variants. + + + + + Represents fourth shading variants. + + + + + Represents gradient color type. + + + + + Represents one color gradient style. + + + + + Represents two color gradient style. + + + + + Represents preset gradient style. + + + + + Represents multicolor gradient style. + + + + + Represents gradient texture. + + + + + Represents Newsprint texture type. + + + + + Represents Recycled Paper texture type. + + + + + Represents Parchment texture type. + + + + + Represents Stationery texture type. + + + + + Represents Green Marble texture type. + + + + + Represents White Marble texture type. + + + + + Represents Brown Marble texture type. + + + + + Represents Granite texture type. + + + + + Represents Blue Tissue Paper texture type. + + + + + Represents Pink Tissue Paper texture type. + + + + + Represents Purple Mesh texture type. + + + + + Represents Bouquet texture type. + + + + + Represents Papyrus texture type. + + + + + Represents Canvas texture type. + + + + + Represents Denim texture type. + + + + + Represents Woven Mat texture type. + + + + + Represents Water Droplets texture type. + + + + + Represents Paper Bag texture type. + + + + + Represents Fish Fossil texture type. + + + + + Represents Sand texture type. + + + + + Represents Cork texture type. + + + + + Represents Walnut texture type. + + + + + Represents Oak texture type. + + + + + Represents Medium Wood texture type. + + + + + Represents user defined texture type. + + + + + Represents excel gradient pattern. + + + + + Represents 5% gradient pattern + + + + + Represents 10% gradient pattern + + + + + Represents 20% gradient pattern + + + + + Represents 25% gradient pattern + + + + + Represents 30% gradient pattern + + + + + Represents 40% gradient pattern + + + + + Represents 50% gradient pattern + + + + + Represents 60% gradient pattern + + + + + Represents 70% gradient pattern + + + + + Represents 75% gradient pattern + + + + + Represents 80% gradient pattern + + + + + Represents 90% gradient pattern + + + + + Represents Dark Downward Diagonal gradient pattern + + + + + Represents Dark Horizontal gradient pattern + + + + + Represents Dark Upward Diagonal gradient pattern + + + + + Represents Dark Vertical gradient pattern + + + + + Represents Dashed Downward Diagonal gradient pattern + + + + + Represents Dashed Horizontal gradient pattern + + + + + Represents Dashed Upward Diagonal gradient pattern + + + + + Represents Dashed Vertical gradient pattern + + + + + Represents Diagonal Brick gradient pattern + + + + + Represents Divot gradient pattern + + + + + Represents Dotted Diamond gradient pattern + + + + + Represents Dotted Grid gradient pattern + + + + + Represents Horizontal Brick gradient pattern + + + + + Represents Large Checker Board gradient pattern + + + + + Represents Large Confetti gradient pattern + + + + + Represents Large Grid gradient pattern + + + + + Represents Light Downward Diagonal gradient pattern + + + + + Represents Light Horizontal gradient pattern + + + + + Represents Light Upward Diagonal gradient pattern + + + + + Represents Light Vertical gradient pattern + + + + + Represents Mixed gradient pattern + + + + + Represents Narrow Horizontal gradient pattern + + + + + Represents Narrow Vertical gradient pattern + + + + + Represents Outlined Diamond gradient pattern + + + + + Represents Plaid gradient pattern + + + + + Represents Shingle gradient pattern + + + + + Represents Small Checker Board gradient pattern + + + + + Represents Small Confetti gradient pattern + + + + + Represents Small Grid gradient pattern + + + + + Represents Solid Diamond gradient pattern + + + + + Represents Sphere gradient pattern + + + + + Represents Trellis gradient pattern + + + + + Represents Wave gradient pattern + + + + + Represents Weave gradient pattern + + + + + Represents Wide Downward Diagonal gradient pattern + + + + + Represents Wide Upward Diagonal gradient pattern + + + + + Represents Zig Zag gradient pattern + + + + + Represents preset gradient type. + + + + + Represents early sunset preset gradient type. + + + + + Represents late sunset preset gradient type. + + + + + Represents nightfall preset gradient type. + + + + + Represents daybreak preset gradient type. + + + + + Represents horizon preset gradient type. + + + + + Represents desert preset gradient type. + + + + + Represents ocean preset gradient type. + + + + + Represents calm water preset gradient type. + + + + + Represents fire preset gradient type. + + + + + Represents fog preset gradient type. + + + + + Represents moss preset gradient type. + + + + + Represents peacock preset gradient type. + + + + + Represents wheat preset gradient type. + + + + + Represents parchment preset gradient type. + + + + + Represents mahogany preset gradient type. + + + + + Represents rainbow preset gradient type. + + + + + Represents rainbowII preset gradient type. + + + + + Represents gold preset gradient type. + + + + + Represents goldII preset gradient type. + + + + + Represents brass preset gradient type. + + + + + Represents chrome preset gradient type. + + + + + Represents chromeII preset gradient type. + + + + + Represents silver preset gradient type. + + + + + Represents sapphire preset gradient type. + + + + + Specifies the position of major and minor tick marks for an axis. + + + + + No mark. + + + + + Inside the axis. + + + + + Outside the axis. + + + + + Crosses the axis. + + + + + Specifies the position of tick-mark labels on the axis. + + + + + No tick marks. + + + + + Bottom or left side of the chart. + + + + + Top or right side of the chart. + + + + + Next to axis (where axis is not at either side of the chart). + + + + + Represents auto format values. + + + + + Represents Simple auto format. + + + + + Represents Classic_1 auto format. + + + + + Represents Classic_2 auto format. + + + + + Represents Classic_3 auto format. + + + + + Represents Accounting_1 auto format. + + + + + Represents Accounting_2 auto format. + + + + + Represents Accounting_3 auto format. + + + + + Represents Accounting_4 auto format. + + + + + Represents Colorful_1 auto format. + + + + + Represents Colorful_2 auto format. + + + + + Represents Colorful_3 auto format. + + + + + Represents List_1 auto format. + + + + + Represents List_2 auto format. + + + + + Represents List_3 auto format. + + + + + Represents Effect3D_1 auto format. + + + + + Represents Effect3D_2 auto format. + + + + + Represents None auto format. + + + + + Represents auto format options. + + + + + Represents number auto format option. + + + + + Represents border auto format option. + + + + + Represents font auto format option. + + + + + Represents patterns auto format option. + + + + + Represents alignment auto format option. + + + + + Represents width\height auto format option. + + + + + Represents none auto format option. + + + + + Represents all auto format option. + + + + + Specifies the range marked by error bars. + + + + + Represents the percentage of range to be covered by the error bars. + + + + + Represents fixed-length error bars. + + + + + Represents range for specified number of standard deviations. + + + + + Represents custom error bars. + + + + + Represents standard error range. + + + + + Specifies error-bar parts to be included. + + + + + Represents both positive and negative error range. + + + + + Represents only positive error range. + + + + + Represents only negative error range. + + + + + Represents trend line values. + + + + + Represents Exponential trend line type. + + + + + Represents Linear trend line type. + + + + + Represents Logarithmic trend line type. + + + + + Represents Moving average trend line type. + + + + + Represents Polynomial trend line type. + + + + + Represents Power trend line type. + + + + + Specifies the type of the category axis. + + + + + Axis groups data by an arbitrary set of categories. + + + + + Axis groups data on a time scale. + + + + + Excel controls the axis type. + + + + + Represents the axis title direction. + + + + + Represents context text direction. + + + + + Represents Left-To-Right text direction. + + + + + Represents Right-To-Left text direction. + + + + + Represents sheet protection flags enums. + + + + + Represents none flags. + + + + + True to protect shapes. + + + + + True to protect scenarios. + + + + + True allows the user to format any cell on a protected worksheet. + + + + + True allows the user to format any column on a protected worksheet. + + + + + True allows the user to format any row on a protected. + + + + + True allows the user to insert columns on the protected worksheet. + + + + + True allows the user to insert rows on the protected worksheet. + + + + + True allows the user to insert hyperlinks on the worksheet. + + + + + True allows the user to delete columns on the protected worksheet, + where every cell in the column to be deleted is unlocked. + + + + + True allows the user to delete rows on the protected worksheet, + where every cell in the row to be deleted is unlocked. + + + + + True to protect locked cells. + + + + + True allows the user to sort on the protected worksheet. + + + + + True allows the user to set filters on the protected worksheet. + Users can change filter criteria but can not enable or disable an auto filter. + + + + + True allows the user to use pivot table reports on the protected worksheet. + + + + + True to protect the user interface, but not macros. + + + + + True to protect content. + + + + + Represents all flags + + + + + Represents excel chart uint to display. + + + + + Represents None display Unit + + + + + Represents Hundreds display Unit + + + + + Represents Thousands display Unit + + + + + Represents TenThousands display Unit + + + + + Represents HundredThousands display Unit + + + + + Represents Millions display Unit + + + + + Represents TenMillions display Unit + + + + + Represents HundredMillions display Unit + + + + + Represents ThousandMillions display Unit + + + + + Represents MillionMillions display Unit + + + + + Represents Custom display Unit + + + + + Represents chart base unit. + + + + + Represents Day unit. + + + + + Represents Month unit. + + + + + Represents Year unit. + + + + + Represents excel open type. + + + + + Represents CSV open type. If data in the file exceeds worksheet limits, excepion will be thrown. + + + + + Represents TSV open type. If data in the file exceeds worksheet limits, exception will be thrown. + + + + + Represents SpreadsheetML open type. + + + + + Represents BIFF open type. + + + + + Represents SpreadsheetML that is used in Excel 2007 (Office Open XML format). + + + + + Represents SpreadsheetML that is used in Excel 2010 (Office Open XML format). + + + + + Automatically indicates open type. + + + + + Represents the data label positioning. + + + + + Default position. Applies to Pie charts. + + + + + Data label is positioned outside the data point. Applies to Bar or Column charts. + + + + + Data label is positioned inside the data point. Applies to Bar, Column, or Pie charts. + + + + + Data label is centered on the data point or is inside a bar or pie chart. + + + + + Data label is positioned outside the data point at the bottom edge. + Applies to Bar or Column charts. + + + + + Data label is positioned above the data point. + Applies to Line, Bubble, or Scatter charts. + + + + + Data label is positioned below the data point. + Applies to Line, Bubble, or Scatter charts. + + + + + Data label is positioned to the left of the data point. + Applies to Line, Bubble, or Scatter charts. + + + + + Data label is positioned to the right of the data point. + Applies to Line, Bubble, or Scatter charts. + + + + + Excel 2007 sets the position of the data label. Applies to Pie charts. + + + + + Moved by user. + + + + + Specifies the flags of excel ignore error indicator. + + + + + None. + + + + + Evaluating to an error. + + + + + References to empty cells. + + + + + Numbers written as text. + + + + + Omits adjacent cells. + + + + + Inconsistent formula. + + + + + TextDate with a two-digit year. + + + + + UnlockedFormulaCells. + + + + + All. + + + + + Represents encryption algorithm that will be used for encryption. + + + + + No encryption. + + + + + Standard encryption. + + + + + Strong encryption. + + + + + Represents possible excel versions. + + + + + Represents Excel version 97-2003. + + + + + Represents Excel version 2007. + + + + + Represents Excel version 2010. + + + + + Represents Excel version 2013. + + + + + Represents Excel version 2016. + + + + + Represents Excel version 2019 and above versions. + + + + + Defines the possible settings for vertical alignment of a run of text. + This is used to get superscript or subscript text without altering the + font size properties of the rest of the text run. + + + + + Returns the text in this run to the baseline, default, + alignment, and returns it to the original font size. + + + + + Specifies that this text should be superscript. Raises the text in this + run above the baseline and changes it to a smaller size, if a smaller + size is available. + + + + + Specifies that this text should be subscript. Lowers the text in this + run below the baseline and changes it to a smaller size, if a smaller + size is available. + + + + + Specifies check state of the check box. + + + + + Indicates that checkbox is unchecked. + + + + + Indicates that checkbox is checked. + + + + + Mixed state. + + + + + Possible image types for image conversion. + + + + + Bitmap image. + + + + + Metafile image. + + + + + Flags for expand/collapse settings. + + + + + Default options. + + + + + Indicates whether subgroups must be included into operation. + + + + + Indicates whether we have to expand parent group when expanding child (to make it visible). + + + + + Specifies the existing built-in styles. + + + + + Indicates Normal style. + + + + + Indicates Comma style. + + + + + Indicates Currency style. + + + + + Indicates Percent style. + + + + + Indicates Comma[0] style. + + + + + Indicates Currency[0] style. + + + + + Indicates Note style. + + + + + Indicates Warning Text style. + + + + + Indicates Title style. + + + + + Indicates Heading 1 style. + + + + + Indicates Heading 2 style. + + + + + Indicates Heading 3 style. + + + + + Indicates Heading 4 style. + + + + + Indicates Input style. + + + + + Indicates Output style. + + + + + Indicates Calculation style. + + + + + Indicates Check Cell style. + + + + + Indicates Linked Cell style. + + + + + Indicates Total style. + + + + + Indicates Good style. + + + + + Indicates Bad style. + + + + + Indicates Neutral style. + + + + + Indicates Accent1 style. + + + + + Indicates 20% - Accent1 style. + + + + + Indicates 40% - Accent1 style. + + + + + Indicates 60% - Accent1 style. + + + + + Indicates Accent2 style. + + + + + Indicates 20% - Accent2 style. + + + + + Indicates 40% - Accent2 style. + + + + + Indicates 60% - Accent2 style. + + + + + Indicates Accent3 style. + + + + + Indicates 20% - Accent3 style. + + + + + Indicates 40% - Accent3 style. + + + + + Indicates 60% - Accent3 style. + + + + + Indicates Accent4 style. + + + + + Indicates 20% - Accent4 style. + + + + + Indicates 40% - Accent4 style. + + + + + Indicates 60% - Accent4 style. + + + + + Indicates Accent5 style. + + + + + Indicates 20% - Accent5 style. + + + + + Indicates 40% - Accent5 style. + + + + + Indicates 60% - Accent5 style. + + + + + Indicates Accent6 style. + + + + + Indicates 20% - Accent6 style. + + + + + Indicates 40% - Accent6 style. + + + + + Indicates 60% - Accent6 style. + + + + + Indicates Explanatory Text style. + + + + + Represents possible combo box type values.. + + + + + Regular sheet dropdown control. + + + + + PivotTable page field dropdown. + + + + + AutoFilter dropdown. + + + + + AutoComplete dropdown. + + + + + Data validation list dropdown. + + + + + PivotTable row or column field dropdown. + + + + + Dropdown for the Total Row of a table. + + + + + Represents a possible action to be taken while encountering unknown variable during template markers processing. + + + + + Throws exception if no variable is defined. + + + + + Skips processing variable and leaves it in the document. + + + + + Replace variable with empty string. + + + + + shape border join type + (Supported in Excel 2007 and higher) + + + + + Rounded edge + + + + + Beveled edge + + + + + Metter join + + + + + Represents cap type of the line. + + + + + Represents none type + + + + + Represents flat type + + + + + Represents Square type + + + + + Represents Round type + + + + + MS Chart Font preservation Type + (Internal use) + + + + + Without the Font Tag + + + + + font with the default Property tag + + + + + font in ritch text tag + + + + + Defines action for the unknown value type and numberformat in the + template marker variable. + + + + + Detects the DataType of the marker variable. + + + + + Detects both the NumberFormat and DataType of the marker variable. + + + + + Represents the None Action. + + + + + Represents the sort orientation. + + + + + Sorts the range from top to Bottom. + + + + + Sorts the range from Left to Right. + + + + + Represents the sort by in the range. + + + + + Sort based on values in the cell. + + + + + Sort based on the cell back color. + + + + + Sort based on the font color. + + + + + Represents the algorithm to sort. + + + + + Represents the QuickSort Algorithm. + + + + + Represents the HeapSort Algorithm. + + + + + Represents the Merge Algorithm. + + + + + Represents the InsertionSort Algorithm. + + + + + Represents the sort order. + + + + + Represent the ascending sort. + + + + + Represent the descending sort. + + + + + Represents the position value in the sort list + Note:Applicable only to CellColor and FontColor + + + + + Represents the position of value in the sort list. + Note: Applicable only to CellColor and FontColor type. + + + + + Gets or Sets the way picture are displayed on the walls and Faces of 3D-chart. + + + + + Represent the picture format is Stack. + + + + + Represent the picture format is stackScale. + + + + + Represent the picture format is stretch. + + + + + Represents the extension property data. + + + + + Cell interior foreground color. + + + + + Cell interior background color. + + + + + Cell interior gradient fill. + + + + + Top cell border color. + + + + + Bottom cell border color. + + + + + Left cell border color. + + + + + Right cell border color. + + + + + Diagonal cell border color. + + + + + Cell text color. + + + + + Font Scheme + + + + + The text indentation level. + + + + + Font Scheme. + + + + + No font scheme. + + + + + Major scheme. + + + + + Minor scheme. + + + + + Niched state. + + + + + Conditional format template. + + + + + Cell value. + + + + + Formula. + + + + + Color scale formatting. + + + + + Data bar formatting. + + + + + Icon set formatting. + + + + + Filter. + + + + + Unique values. + + + + + Contains text. + + + + + Contains blanks. + + + + + Contains no blanks. + + + + + Contains errors. + + + + + Contains no errors. + + + + + Today. + + + + + Tomorrow. + + + + + Yesterday. + + + + + Last 7 days. + + + + + Last month. + + + + + Next month. + + + + + This week. + + + + + Next week. + + + + + Last week. + + + + + This month. + + + + + Above average. + + + + + Below Average. + + + + + Duplicate values. + + + + + Above or equal to average. + + + + + Below or equal to average. + + + + + Conditional format type of Text rule. + + + + + Contains a specified text. + + + + + Does not contain the specified text. + + + + + Begins with a specified text. + + + + + Ends with the specified text. + + + + + Specifies the series labels for the series label levels. + + + + + Set series names to all series name levels w/in range on the chart. + + + + + Set no category labels in the chart. Defaults to automatic indexed labels. + + + + + Specifies the category labels for the category label levels. + + + + + Set category labels to all category label levels w/in range on the chart. + + + + + Set no category labels in the chart. Defaults to automatic indexed labels. + + + + + Represents a possible consolidation functions in Excel. + + + + + Sum. + + + + + Count. + + + + + Average. + + + + + Maximum. + + + + + Minimum. + + + + + Multiply. + + + + + Count numerical values only. + + + + + Standard deviation, based on a sample. + + + + + Standard deviation, based on the whole population. + + + + + Variation, based on a sample. + + + + + Variation, based on the whole population. + + + + + It's Define the connection type + + + + + connection type is ODBC + + + + + connection type is OLEDB + + + + + connection type is Text file + + + + + connection type web file + + + + + Represent different command types of external connections. + + + + + Default(Sql) connection type. + + + + + Sql connection type. + + + + + Table connection type. + + + + + List connection type. + + + + + Represents different list object source type for external connection + + + + + Query type + + + + + It's represent the table type + + + + + Represents a table based on an external data query. + + + + + Represents a table based on a worksheet data range. + + + + + Represents a table based on an XML mapping. + + + + + It's represent the cretential for connect the server + + + + + Represents integrated authentication. + + + + + Represents no use credentials at all. + + + + + Represents use stored credentials. + + + + + Represent different auto shapes types. + + + + + Represents a unknown shape. + + + + + Represents a line shape. + + + + + Represents a elbowConnector shape. + + + + + Represents a curvedConnector shape. + + + + + Represents a bentConnector type 2 shape. + + + + + Represents a straightConnector shape. + + + + + Represents a BentConnector type 4 shape. + + + + + Represents a bent connector type 5 shape. + + + + + Represents a curved connector 2 shape. + + + + + Represents a curved connector 4 shape. + + + + + Represents a curved connector 5 shape. + + + + + Represents a rectangle shape. + + + + + Represents a rounded rectangle shape. + + + + + Represents a rectangle with one snipped corner. + + + + + Represents a rectangle with two snipped corners that share a side. + + + + + Represents a rectangle with two snipped corners, diagonally-opposed. + + + + + Represents a rectangle with one snipped corner and one rounded corner. + + + + + Represents a rectangle with one rounded corner. + + + + + Represents a rectangle with two-rounded corners that share a side. shape. + + + + + Represents a rectangle with rounded diagonal corner shape. + + + + + Represents a oval shape. + + + + + Represents a isosceles triangle shape. + + + + + Represents a right-angled triangle shape. + + + + + Represents a parallelogram shape. + + + + + Represents a trapezoid shape. + + + + + Represents a diamond shape. + + + + + Represents a regular pentagon shape. + + + + + Represents a hexagon shape. + + + + + Represents a heptagon shape. + + + + + Represents a octagon shape. + + + + + Represents a decagon shape. + + + + + Represents a dodecagon shape. + + + + + Represents a pie shape. + + + + + Represents a chord shape. + + + + + Represents a teardrop shape. + + + + + Represents a frame shape. + + + + + Represents a half frame shape. + + + + + Represents a l shape. + + + + + Represents a diagonalStripe shape. + + + + + Represents a cross shape. + + + + + Represents a plaque shape. + + + + + Represents a can shape. + + + + + Represents a cube shape. + + + + + Represents a bevel shape. + + + + + Represents a donut shape. + + + + + Represents a NoSymbol shape. + + + + + Represents a block arc shape. + + + + + Represents a folded corner shape. + + + + + Represents a smiley face shape. + + + + + Represents a heart shape. + + + + + Represents a lightning bolt shape. + + + + + Represents a sun shape. + + + + + Represents a moon shape. + + + + + Represents a cloud shape. + + + + + Represents a arc shape. + + + + + Represents a double bracket shape. + + + + + Represents a double brace shape. + + + + + Represents a left bracket shape. + + + + + Represents a right bracket shape. + + + + + Represents a left brace shape. + + + + + Represents a right brace shape. + + + + + Represents a block arrow that points right. + + + + + Represents a block arrow that points left. + + + + + Represents a block arrow that points up. + + + + + Represents a block arrow that points down. + + + + + Represents a block arrow that points left and right. + + + + + Represents a block arrow that points up and down. + + + + + Represents a block arrows that point up, down, left, and right. + + + + + Represents a block arrow with arrowheads that point left, right, and up. + + + + + Represents a block arrow that follows a curved 90-degree angle. + + + + + Represents a block arrow forming a U shape. + + + + + Represents a block arrow with arrowheads that point left and up. + + + + + Represents a block arrow that follows a sharp 90-degree angle. Points up by default. + + + + + Represents a block arrow that curves right. + + + + + Represents a block arrow that curves left. + + + + + Represents a block arrow that curves up. + + + + + Represents a block arrow that curves down. + + + + + Represents a block arrow that points right with stripes at the tail. + + + + + Represents a notched block arrow that points right. + + + + + Represents a pentagon shape. + + + + + Represents a chevron shape. + + + + + Represents a callout with arrow that points right. + + + + + Represents a callout with arrow that points down. + + + + + Represents a callout with arrow that points left. + + + + + Represents a callout with arrow that points up. + + + + + Represents a callout with arrowheads that point both left and right. + + + + + Represents a callout with arrows that point up and down. shape. + + + + + Represents a Callout with arrows that point up, down, left, and right. + + + + + Represents a block arrow that follows a curved 180-degree angle. + + + + + Represents a addition symbol. + + + + + Represents a subtraction symbol. + + + + + Represents a multiplication symbol. + + + + + Represents a division symbol. + + + + + Represents a equivalence symbol. + + + + + Represents a non-equivalence symbol. + + + + + Represents a process flowchart symbol. + + + + + Represents a alternate process flowchart symbol. + + + + + Represents a decision flowchart symbol. + + + + + Represents a data flowchart symbol. + + + + + Represents a predefined process flowchart symbol. + + + + + Represents a internal storage flowchart symbol. + + + + + Represents a document flowchart symbol. + + + + + Represents a multi-document flowchart symbol. + + + + + Represents a terminator flowchart symbol. + + + + + Represents a preparation flowchart symbol. + + + + + Represents a manual input flowchart symbol. + + + + + Represents a manual operation flowchart symbol. + + + + + Represents a connector flowchart symbol. + + + + + Represents a off-page connector flowchart symbol. + + + + + Represents a card flowchart symbol. + + + + + Represents a punched tape flowchart symbol. + + + + + Represents a summing junction flowchart symbol. + + + + + Represents a "Or" flowchart symbol. + + + + + Represents a collate flowchart symbol. + + + + + Represents a sort flowchart symbol. + + + + + Represents a extract flowchart symbol. + + + + + Represents a merge flowchart symbol. + + + + + Represents a stored data flowchart symbol. + + + + + Represents a delay flowchart symbol. + + + + + Represents a sequential access storage flowchart symbol. + + + + + Represents a magnetic disk flowchart symbol. + + + + + Represents a direct access storage flowchart symbol. + + + + + Represents a display flowchart symbol. + + + + + Represents a explosion type 1 shape. + + + + + Represents a explosion type 2 shape. + + + + + Represents a 4-point star. + + + + + Represents a 5-point star. + + + + + Represents a 6-point star. + + + + + Represents a 7-point star. + + + + + Represents a 8-point star. + + + + + Represents a 10-point star. + + + + + Represents a 12-point star. + + + + + Represents a 16-point star. + + + + + Represents a 24-point star. + + + + + Represents a 32-point star. + + + + + Represents a ribbon banner with center area above ribbon ends. + + + + + Represents a ribbon banner with center area below ribbon ends. + + + + + Represents a ribbon banner that curves up. + + + + + Represents a ribbon banner that curves down. + + + + + Represents a vertical scroll. + + + + + Represents a horizontal scroll + + + + + Represents a wave shape. + + + + + Represents a double wave. + + + + + Represents a rectangular callout. + + + + + Represents a rounded rectangle-shaped callout. + + + + + Represents a oval-shaped callout. + + + + + Represents a cloud callout. + + + + + Represents a callout with border and horizontal callout line. + + + + + Represents a callout with angled line. + + + + + Represents a callout with callout line segments forming a U-shape. + + + + + Represents a callout with diagonal callout line and accent bar. + + + + + Represents a callout with angled callout line and accent bar. + + + + + Represents a callout with accent bar and callout line segments forming a U-shape. + + + + + Represents a callout with horizontal accent bar. + + + + + Represents a callout with no border and angled callout line. + + + + + Represents a callout with no border and callout line segments forming a U-shape. + + + + + Represents a callout with border, diagonal straight line, and accent bar. + + + + + Represents a callout with border, angled callout line, and accent bar. + + + + + Represents a callout with border, accent bar, and callout line segments forming a U-shape. + + + + + Specify the hyperlink attached object name. + + + + + Represent IRange object. + + + + + Represent IShape object. + + + + + Specifies whether data is to be copied or left in place during a filter operation. + + + + + Leave filtered data in place. + + + + + Copy filtered data to new range. + + + + + Specifies whether the range should be accessed from worksheet or within the range object scope. + + + + + To access the range from worksheet. + + + + + To access the range within the object scope. + + + + + Specifies how to fill the group field values while importing nested collection CLR objects. + + + + + No operation will be performed for empty fields. + + + + + Merge the empty fields. + + + + + Repeat the field value until the next group set value. + + + + + Specifies whether the grouping is added with Collapse or Expand while importing nested collection CLR objects. + + + + + Expand the group. + + + + + Collapse the group. + + + + + Specifies whether the TopBottom conditional formatting rule looks for ranking from the top or bottom. + + + + + Top. + + + + + Bottom. + + + + + Specifies whether the AboveBelowAverage conditional formatting rule looks for cell values above or below the average. + + + + + Above average. + + + + + Below average. + + + + + Equal or above average + + + + + Equal or below average + + + + + Above standard deviation + + + + + Below standard deviation + + + + + It represents the chart image Scaling. + + + + + Save the image with normal image quality. + + + + + Save the image with best image quality which results large image size. + + + + + It represents the capitalization tags (used only in chart) + + + + + Applies no caps on the text + + + + + Applies all caps on the text + + + + + Applies small caps on the text + + + + + It represents the GrowShrinkType tags (used only in QueryTable) + + + + + + + + It specifies an enumeration of side positions + + + + + The title or legend is on the left side + + + + + The title or legend is on the top + + + + + The title or legend is on the left side + + + + + The title or legend is on the bottom + + + + + It represent side position alignment of a chart element + + + + + The chart element is positioned at the top of the side + + + + + The chart element is positioned at the bottom of the side + + + + + The chart element is positioned at the center of the side + + + + + It represents Quartile calculation used for Box and Whisker Chart series + + + + + It includes the Median when splitting the dataset into Quartiles. + + + + + It excludes the Median when splitting the dataset into Quartiles. + + + + + It represents the Label position in Tree Map chart + + + + + No Parent labels are shown + + + + + The Parent label layout is a Banner above the category + + + + + The Parent label is laid out within the category + + + + + + Indicates the Funnel Chart type + + + + + Indicates the Box and Whisker chart type + + + + + Used in Histogram and Pareto charts + + + + + Used in Histogram and Pareto charts + + + + + Indicates the Sun burst chart type + + + + + Indicates the Tree Map chart type + + + + + Indicates the Water fall chart type + + + + + Contains the list of style elements + + + + + Indicates the Axis Title Element + + + + + Indicates the Category Axis element + + + + + Indicates the chart Area Element + + + + + Indicates the Data Label Element + + + + + Indicates the Data Label callout Element + + + + + Indicates the Data Point Element + + + + + Indicates the Data Point 3D Element + + + + + Indicates the Data Point Line Element + + + + + Indicates the Data Point Marker Element + + + + + Indicates the Data Point Marker Layout Element + + + + + Indicates the Data Point Wireframe Element + + + + + Indicates the Data Table Element + + + + + Indicates the Down Bar Element + + + + + Indicates the Drop Line Element + + + + + Indicates the Error Bar Element + + + + + Indicates the Floor Element + + + + + Indicates the Major grid line Element + + + + + Indicates the Minor grid line Element + + + + + Indicates the High-Low Line Element + + + + + Indicates the Leader Line Element + + + + + Indicates the Legend Element + + + + + Indicates the Plot Area Element + + + + + Indicates the Plot Area 3D Element + + + + + Indicates the Series Axis Element + + + + + Indicates the SeriesLine Element + + + + + Indicates the Title Element + + + + + Indicates the Trendline Element + + + + + Indicates the TrendLine Label Element + + + + + Indicates the Up Bar Element + + + + + Indicates the Value Axis Element + + + + + Indicates the Wall Element + + + + + Indicates the Extension List Element + + + + + Contains the list of color models + + + + + No color models have been used + + + + + expressing Red, Green, Blue color in Percentages. + + + + + specifies the color two hex digits per color, in the order RGB. + + + + + represents a color using the Hue, Saturation, and Luminescence. + + + + + represents a system color, and introduces a level of indirection. + + + + + schemeClr represents a color from a theme. + + + + + prstClr represents a preset color by its name. + + + + + element that specifies a color calculated from a CT_ColorStyle. + + + + + Contains the style entry modifier enumerations + + + + + No modifier enum is applied + + + + + fill properties specified on this StyleEntry can be replaced with no fill instead. + + + + + line properties specified on this StyleEntry can be replaced with no line instead. + + + + + Enumeration represents one of the fonts associated with the style. + + + + + (None) No font reference. + + + + + (Minor Font) The minor font of the style's font scheme. + + + + + (Major Font) The major font of the style's font scheme. + + + + + This simple type enumeration specifies how to cap the ends of lines. + + + + + Line ends at end point. + + + + + Rounded ends. Semi-circle protrudes by half line width. + + + + + Square protrudes by half line width. + + + + + Specifies the Rtf table type. + + + + + Font table collection + + + + + List table collection + + + + + Color table collection + + + + + List override collection + + + + + Style sheet collection + + + + + No table collection + + + + + Specifies the Rtf token type. + + + + + Group start. + + + + + Group end. + + + + + Control word. + + + + + Text. + + + + + Table entry. + + + + + Unknown. + + + + + Specifies the warning type for the specific warning. + + + + + Font substitution. + + + + + Unsupported conditional format type. + + + + + Unsupported fill pattern. + + + + + Specifies unsupported shapes. + + + + + Specifies unsupported page settings. + + + + + Specifies unsupported pivot table settings. + + + + + Specifies formatting options for the JsonWriter. + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the Indentation and IndentChar settings. + + + + + Specifies the export data table event actions. + + + + + Default action for exporting data table + + + + + Stops the data table export. + + + + + Skips the specified row while exporting to data table. + + + + + Represents the HTML import option. + + + + + Represents default import option for HTML. + + + + + Represents the option to detect formulas while importing HTML table. + + + + + Enumeration represents patterns (pattern names) that are used in Excel 2007. + This enumeration is used to convert pattern from Excel 2003 into 2007 + + + + + The fill style is none (no fill). When foreground and/or background colors + are specified, a pattern of 'none' overrides and means the cell has no fill. + + + + + The fill style is solid. When solid is specified, the foreground color + (fgColor) is the only color rendered, even when a background color + (bgColor) is also specified. + + + + + The fill style is medium gray. + + + + + The fill style is 'dark gray'. + + + + + The fill style is light gray. + + + + + The fill style is dark horizontal. + + + + + The fill style is 'dark vertical'. + + + + + The fill style is 'dark down'. + + + + + The fill style is 'dark up'. + + + + + The fill style is 'dark grid'. + + + + + The fill style is 'dark trellis'. + + + + + The fill style is light horizontal. + + + + + The fill style is light vertical. + + + + + The fill style is 'light down'. + + + + + The fill style is light up. + + + + + The fill style is 'light grid'. + + + + + The fill style is 'light trellis'. + + + + + The fill style is grayscale of 0.125 (1/8) value. + + + + + The fill style is grayscale of 0.0625 (1/16) value. + + + + + Represents the Axis labels alignment + + + + + Left alignment + + + + + Center alignment + + + + + Right alignment + + + + + The line style of a border in a cell as it is named Excel2007. + + + + + The line style of a border is dash-dot. + + + + + The line style of a border is dash-dot-dot. + + + + + The line style of a border is dashed. + + + + + The line style of a border is dotted. + + + + + The line style of a border is double line. + + + + + The line style of a border is hairline. + + + + + The line style of a border is medium. + + + + + The line style of a border is medium dash-dot. + + + + + The line style of a border is medium dash-dot-dot. + + + + + The line style of a border is medium dashed. + + + + + The line style of a border is none (no border visible). + + + + + The line style of a border is slant-dash-dot. + + + + + The line style of a border is 'thick'. + + + + + The line style of a border is thin. + + + + + Represents border index. + + + + + Represents left border. + + + + + Represents right border. + + + + + Represents top border. + + + + + Represents bottom border. + + + + + Represents diagonal border. + + + + + Represents no border. + + + + + Represents vertical inner border. + + + + + Represents horizontal innver border. + + + + + This Enumeration values Indicates the Outer Shadow values + + + + + Represents No shadow + + + + + Represents Outer shadow at Right + + + + + Represents Outer shadow at DiagonalBottomRight + + + + + Represents Outer shadow at Bottom + + + + + Represents Outer shadow at DiagonalTopLeft + + + + + Represents Outer shadow at Center + + + + + Represents Outer shadow at Top + + + + + Represents Outer shadow at Left + + + + + Represents Outer shadow at DiagonalTopRight + + + + + Represents Outer shadow at DiagonalBottomLeft + + + + + This enumeration value indicates the Inner Shadow Values + + + + + Represents No shadow(Default) + + + + + Represents Inner Shadow at Diagonal Bottom Left + + + + + Represents Inner Shadow at Top + + + + + Represents Inner Shadow at Right + + + + + Represents Inner Shadow at Left + + + + + Represents Inner Shadow at TopRight + + + + + Represents Inner Shadow at Diagonal Bottom Right + + + + + Represents Inner Shadow at Center + + + + + Represents Inner Shadow at Bottom + + + + + Represents Inner Shadow at Diagonal Top left + + + + + This Enumeration values gives the Perspective shadow Values + + + + + Represents the No Shadow + + + + + Represents Perspective Shadow at Diagonal Upper Right + + + + + Represents Perspective Shadow at Diagonal Lower Right + + + + + Represents Perspective Shadow at Diagonal Upper Left + + + + + Represents Perspective Shadow at Diagonal Lower Left + + + + + Represents Perspective Shadow at Below + + + + + This enumeration value indicates the bevel properties for both Top nad Bottom Bevel + + + + + Represents No angle + + + + + Represents Angle + + + + + Represents Art Deco + + + + + Represents Circle + + + + + Represents Convex + + + + + Represents Cool Slant + + + + + Represents Cross + + + + + Represents Divot + + + + + Represents Hard Edge + + + + + Represents Relaxed Inset + + + + + Represents Riblet + + + + + Represents Slope + + + + + Represents Soft round + + + + + This Enumeration value indicates the Material property values fro the chart + + + + + Represents No Material Effect + + + + + Represents Matte Material + + + + + Represents WarmMatte Material + + + + + Represents Plastic Material + + + + + Represents Metal Material + + + + + Represents Dark Edge Material + + + + + Represents Soft Edge Material + + + + + Represents Flat Material + + + + + Represents Wire Frame Material + + + + + Represents Powder Material + + + + + Represents Translucent Powder Material + + + + + Represents Clear Material + + + + + This enumeration value indicates the Lighting properties for the + Chart + + + + + Represents ThreePoint Lighting(Default) + + + + + Represents Balance Lighting + + + + + Represents Bright Room Lighting + + + + + Represents Chilly Lighting + + + + + Represents Contrasting Lighting + + + + + Represents Flat Lighting + + + + + Represents Flood Lighting + + + + + Represents Freezing Lighting + + + + + Represents Glow Lighting + + + + + Represents Harsh Lighting + + + + + Represents Morning Lighting + + + + + Represents Soft Lighting + + + + + Represents Sunrise Lighting + + + + + Represents Sun Set Lighting + + + + + Represents TwoPoint Lighting + + + + + The enumeration value indicating the portion of Cell Alignment in + a cell format (XF) that is horizontal alignment. + + + + + The horizontal alignment is centered, meaning the text is centered across the cell. + + + + + The horizontal alignment is centered across multiple cells. + + + + + Indicates that each 'word' in each line of text inside the cell is evenly + distributed across the width of the cell, with flush right and left margins. + When there is also an indent value to apply, both the left and right side + of the cell are padded by the indent value. + + + + + Indicates that the value of the cell should be filled across the entire + width of the cell. + + + + + The horizontal alignment is general-aligned. Text data is left-aligned. + Numbers, dates, and times are rightaligned. Boolean types are centered. + Changing the alignment does not change the type of data. + + + + + The horizontal alignment is justified (flush left and right). For each + line of text, aligns each line of the wrapped text in a cell to the right + and left (except the last line). If no single line of text wraps in the + cell, then the text is not justified. + + + + + The horizontal alignment is left-aligned, even in Right-to-Left mode. + Aligns contents at the left edge of the cell. If an indent amount is + specified, the contents of the cell is indented from the left by the + specified number of character spaces. The character spaces are based + on the default font and font size for the workbook. + + + + + The horizontal alignment is right-aligned, meaning that cell contents + are aligned at the right edge of the cell, even in Right-to-Left mode. + + + + + This enumeration value indicates the type of vertical alignment for a cell. + + + + + The vertical alignment is aligned-to-bottom. + + + + + The vertical alignment is centered across the height of the cell. + + + + + When text direction is horizontal: the vertical alignment of lines of text + is distributed vertically, where each line of text inside the cell is evenly + distributed across the height of the cell, with flush top and bottom margins. + When text direction is vertical: behaves exactly as distributed horizontal + alignment. The first words in a line of text (appearing at the top of the cell) + are flush with the top edge of the cell, and the last words of a line of text + are flush with the bottom edge of the cell, and the line of text is distributed + evenly from top to bottom. + + + + + When text direction is horizontal: the vertical alignment of lines of text + is distributed vertically, where each line of text inside the cell is evenly + distributed across the height of the cell, with flush top and bottom margins. + When text direction is vertical: similar behavior as horizontal justification. + The alignment is justified (flush top and bottom in this case). For each line + of text, each line of the wrapped text in a cell is aligned to the top and + bottom (except the last line). If no single line of text wraps in the cell, + then the text is not justified. + + + + + The vertical alignment is aligned-to-top. + + + + + Enumeration which controls visibility of worksheet in Excel. + + + + + Worksheet is visible to the user. + + + + + Worksheet is hidden for the user. + + + + + The strong hidden flag can only be set and cleared with a Visual Basic + macro. It is not possible to make such a sheet visible via the user interface. + + + + + This simple type specifies the possible styles of radar chart. + + + + + Specifies that the radar chart shall have lines but no markers and no fill. + + + + + Specifies that the radar chart shall have lines and markers but no fill. + + + + + Specifies that the radar chart shall be filled and have lines but no markers. + + + + + This simple type specifies the possible styles of scatter chart. + + + + + Specifies the points on the scatter chart shall not be connected with + lines and markers shall be drawn. + + + + + Specifies the the points on the scatter chart shall be connected with + smoothed lines and markers shall be drawn. + + + + + Specifies the the points on the scatter chart shall be connected with + smoothed lines and markers shall not be drawn. + + + + + Specifies the points on the scatter chart shall be connected with + straight lines and markers shall be drawn. + + + + + Specifies the points on the scatter chart shall be connected with + straight lines but markers shall not be drawn. + + + + + Enumeration limits values which can be set by user. + + + + + Represents the Position split type. + + + + + Represents the Value split type. + + + + + Represents the Percent split type. + + + + + Represents the Custom split type. + + + + + Represents the data label positioning. + + + + + Specifies that data labels shall be displayed below the data marker. + + + + + Specifies that data labels shall be displayed in the best position. + + + + + Specifies that data labels shall be displayed centered on the data marker. + + + + + Specifies that data labels shall be displayed inside the base of the data marker. + + + + + Specifies that data labels shall be displayed inside the end of the data marker. + + + + + Specifies that data labels shall be displayed to the left of the data marker. + + + + + Specifies that data labels shall be displayed outside the end of the data marker. + + + + + Specifies that data labels shall be displayed to the right of the data marker. + + + + + Specifies that data labels shall be displayed above the data marker.} + + + + + Enumeration of the marker types for Chart lines in Excel. + + + + + Represents the None option for the marker type. + + + + + Represents the square style in the custom marker option for Chart lines. + + + + + Represents the diamond style in the custom marker option for Chart lines. + + + + + Represents the Triangle style in the custom marker option for Chart lines. + + + + + Represents the X style in the custom marker option for Chart lines. + + + + + Represents the Star style in the custom marker option for Chart lines. + + + + + Represents the Dow Jones style in the custom marker option for Chart lines. + + + + + Represents the Standard Deviation style in the custom marker option for Chart lines. + + + + + Represents the Circle style in the custom marker option for Chart lines. + + + + + Represents the Plus style in the custom marker option for Chart lines. + + + + + Represents the auto marker style in the custom marker option for Chart lines + + + + + Represents trend line values. + + + + + Represents Exponential trend line type. + + + + + Represents Linear trend line type. + + + + + Represents Logarithmic trend line type. + + + + + Represents Moving average trend line type. + + + + + Represents Polynomial trend line type. + + + + + Represents Power trend line type. + + + + + Error-bar type. + + + + + Represents the Percentage error-bar source type. + + + + + Represents the FixedValue error-bar source type. + + + + + Represents the StandardDeviation error-bar source type. + + + + + Represents the Custom error-bar source type. + + + + + Represents the StandardError error-bar source type. + + + + + Enumeration of the legend placement for Charts in Excel. + + + + + Represents the bottom option. + + + + + Represents the Corner option. + + + + + Represents the Top option. + + + + + Represents the Right option. + + + + + Represents the Left option. + + + + + This enumeration specifies the possible ways to display blanks. + + + + + Specifies that blank values shall be left as a gap. + + + + + Specifies that blank values shall be treated as zero. + + + + + Specifies that blank values shall be spanned with a line. + + + + + Represents 5% gradient pattern + + + + + Represents 10% gradient pattern + + + + + Represents 20% gradient pattern + + + + + Represents 25% gradient pattern + + + + + Represents 30% gradient pattern + + + + + Represents 40% gradient pattern + + + + + Represents 50% gradient pattern + + + + + Represents 60% gradient pattern + + + + + Represents 70% gradient pattern + + + + + Represents 75% gradient pattern + + + + + Represents 80% gradient pattern + + + + + Represents 90% gradient pattern + + + + + Represents Dark Downward Diagonal gradient pattern + + + + + Represents Dark Horizontal gradient pattern + + + + + Represents Dark Upward Diagonal gradient pattern + + + + + Represents Dark Vertical gradient pattern + + + + + Represents Dashed Downward Diagonal gradient pattern + + + + + Represents Dashed Horizontal gradient pattern + + + + + Represents Dashed Upward Diagonal gradient pattern + + + + + Represents Dashed Vertical gradient pattern + + + + + Represents Diagonal Brick gradient pattern + + + + + Represents Divot gradient pattern + + + + + Represents Dotted Diamond gradient pattern + + + + + Represents Dotted Grid gradient pattern + + + + + Represents Horizontal Brick gradient pattern + + + + + Represents Large Checker Board gradient pattern + + + + + Represents Large Confetti gradient pattern + + + + + Represents Large Grid gradient pattern + + + + + Represents Light Downward Diagonal gradient pattern + + + + + Represents Light Horizontal gradient pattern + + + + + Represents Light Upward Diagonal gradient pattern + + + + + Represents Light Vertical gradient pattern + + + + + Represents Narrow Horizontal gradient pattern + + + + + Represents Narrow Vertical gradient pattern + + + + + Represents Outlined Diamond gradient pattern + + + + + Represents Plaid gradient pattern + + + + + Represents Shingle gradient pattern + + + + + Represents Small Checker Board gradient pattern + + + + + Represents Small Confetti gradient pattern + + + + + Represents Small Grid gradient pattern + + + + + Represents Solid Diamond gradient pattern + + + + + Represents Sphere gradient pattern + + + + + Represents Trellis gradient pattern + + + + + Represents Wave gradient pattern + + + + + Represents Weave gradient pattern + + + + + Represents Wide Downward Diagonal gradient pattern + + + + + Represents Wide Upward Diagonal gradient pattern + + + + + Represents Zig Zag gradient pattern + + + + + Represents Horizontal gradient pattern + + + + + Repersent Vertical gradient pattern + + + + + Repersent Diagonal Cross gradient pattern + + + + + Repersent Cross gradient pattern + + + + + Repersent Up Diagonal gradient pattern + + + + + Repersent Down Diagonal gradient pattern + + + + + Represents excel 2007 chart uint to display. + + + + + Represents Hundreds display Unit + + + + + Represents Thousands display Unit + + + + + Represents TenThousands display Unit + + + + + Represents HundredThousands display Unit + + + + + Represents Millions display Unit + + + + + Represents TenMillions display Unit + + + + + Represents HundredMillions display Unit + + + + + Represents ThousandMillions display Unit + + + + + Represents MillionMillions display Unit + + + + + Represents the displayUnit which is only avail at paret chart axis + + + + + Possible types for row data storage. + + + + + Uses Win32 API and Marshal class calls to allocate and work with memory blocks. + + + + + Uses Win32 API and unsafe blocks to allocate and work with memory blocks. + + + + + Uses managed byte array and other managed functions to work with memory blocks. + This method is slowest, but it is the only one suitable for medium trust mode. + + + + + Specifies the type of icon set. + + + + + 3 Arrows. + + + + + 3 Arrows Gray. + + + + + 3 Flags. + + + + + 3 Traffic Lights 1. + + + + + 3 Traffic Lights 2. + + + + + 3 Signs. + + + + + 3 Symbols. + + + + + 3 Symbols 2. + + + + + 4 Arrows. + + + + + 4 Arrows Gray. + + + + + 4 Red To Black. + + + + + 4 Ratings. + + + + + 4 Traffic Lights. + + + + + 5 Arrows. + + + + + 5 Arrows Gray. + + + + + 5 Rating. + + + + + 5 Quarters. + + + + + 3 Stars + + + + + 3 Triangles + + + + + 5 Boxes + + + + + If there is vertical text, determines what type of vertical text is going to be used. + + + + + Horizontal text. This should be default. + + + + + Determines if all of the text is vertical ("one letter on top of another"). + + + + + Determines if all of the text is vertical orientation (each line is 90 + degrees rotated clockwise, so it goes from top to bottom; each next + line is to the left from the previous one). + + + + + Determines if all of the text is vertical orientation (each line is 270 + degrees rotated clockwise, so it goes from bottom to top; each next line + is to the right from the previous one). + + + + + A special version of vertical text, where some fonts are displayed as if rotated + by 90 degrees while some fonts (mostly East Asian) are displayed vertical. + + + + + A special version of vertical text, where some fonts are displayed as if + rotated by 90 degrees while some fonts (mostly East Asian) are displayed + vertical. The difference between this and the eastAsianVertical is the + text flows top down then LEFT RIGHT, instead of RIGHT LEFT. + + + + + Specifies that vertical WordArt should be shown from right to left rather than left to right. + + + + + Enumeration to align the excel comment Horizontally. + + + + + Represents the Left comment align. + + + + + Represents the Center comment align. + + + + + Represents the Right comment align. + + + + + Represents the Justified comment align. + + + + + Represents the Distributed comment align. + + + + + This type specifies a list of available anchoring types for text. + + + + + Anchor the text at the top of the bounding rectangle. + + + + + Anchor the text at the middle of the bounding rectangle. + + + + + Anchor the text at the bottom of the bounding rectangle. + + + + + Anchor the text so that it is justified vertically. + + + + + Anchor the text so that it is distributed vertically. + + + + + Represents Excel 2007 Text alignment. + + + + + Align text to the left margin. + + + + + Align text in the center. + + + + + Align text to the right margin. + + + + + Align text so that it is justified across the whole line. + + + + + Aligns the text with an adjusted kashida length for Arabic text. + + + + + Distributes Thai text specially, because each character is treated as a word. + + + + + Distributes the text words across an entire text line. + + + + + Represents line style. + + + + + Represents single line style. + + + + + Represents thin thin line style. + + + + + Represents thin thick line style. + + + + + Represents thick thin line style. + + + + + Represents thick between thin line style. + + + + + Specifies the type of calculation in the Totals row of a list column. + + + + + No calculation. + + + + + Sum of all values in the list column. + + + + + Average. + + + + + Count of non-empty cells. + + + + + Count of cells with numeric values. + + + + + Minimum value in the list. + + + + + Standard deviation value. + + + + + Variable. + + + + + Maximum value in the list. + + + + + Custom formula + + + + + Represents functions added in Excel 2007. + + + + + Returns a key performance indicator (KPI) name, property, and measure, and displays the name and property in the cell. A KPI is a quantifiable measurement, such as monthly gross profit or quarterly employee turnover, used to monitor an organization's performance. + + + + + Returns a member or tuple in a cube hierarchy. Use to validate that the member or tuple exists in the cube. + + + + + Returns the value of a member property in the cube. Use to validate that a member name exists within the cube and to return the specified property for this member. + + + + + Returns the nth, or ranked, member in a set. Use to return one or more elements in a set, such as the top sales performer or top 10 students. + + + + + Defines a calculated set of members or tuples by sending a set expression to the cube on the server, which creates the set, and then returns that set to Microsoft Office Excel. + + + + + Returns the number of items in a set. + + + + + Returns an aggregated value from a cube. + + + + + Returns the modified Bessel function In(x). + + + + + Returns the Bessel function Jn(x). + + + + + Returns the modified Bessel function Kn(x). + + + + + Returns the Bessel function Yn(x). + + + + + Converts a binary number to decimal. + + + + + Converts a binary number to hexadecimal. + + + + + Converts a binary number to octal. + + + + + Converts real and imaginary coefficients into a complex number. + + + + + Converts a number from one measurement system to another. + + + + + Converts a decimal number to binary. + + + + + Converts a decimal number to hexadecimal. + + + + + Converts a decimal number to octal. + + + + + Tests whether two values are equal. + + + + + Returns the error function. + + + + + Returns the complementary error function. + + + + + Tests whether a number is greater than a threshold value. + + + + + Converts a hexadecimal number to binary. + + + + + Converts a hexadecimal number to decimal. + + + + + Converts a hexadecimal number to octal. + + + + + Returns the absolute value (modulus) of a complex number. + + + + + Returns the imaginary coefficient of a complex number. + + + + + Returns the argument theta, an angle expressed in radians. + + + + + Returns the complex conjugate of a complex number. + + + + + Returns the cosine of a complex number + + + + + Returns the quotient of two complex numbers. + + + + + Returns the exponential of a complex number. + + + + + Returns the natural logarithm of a complex number. + + + + + Returns the base-10 logarithm of a complex number. + + + + + Returns the base-2 logarithm of a complex number. + + + + + Returns a complex number raised to an integer power. + + + + + Returns the product of from 2 to 29 complex numbers + + + + + Returns the real coefficient of a complex number + + + + + Returns the sine of a complex number + + + + + Returns the square root of a complex number + + + + + Returns the difference between two complex numbers + + + + + Returns the sum of complex numbers. + + + + + Converts an octal number to binary. + + + + + Converts an octal number to decimal. + + + + + Converts an octal number to hexadecimal. + + + + + Adds the cells in a range that meet multiple criteria + + + + + Returns the average (arithmetic mean) of all the cells in a range that meet a given criteria + + + + + Returns the average (arithmetic mean) of all cells that meet multiple criteria. + + + + + Represents the OleObject Display Behaviour. + + + + + Returns the OleObject Display as Content. + + + + + Returns the OleObject Display as Icon. + + + + + Defines types of the ole object field. + + + + + Ole object field type is EMBED. + + + + + Ole object field type is LINK. + + + + + defines the types of OLE object + + + + + Type is not defined + + + + + Adobe Acrobat Document. File has ".pdf" extension. + + + + + Bitmap Image. File has ".png" extension. + + + + + Media Clip + + + + + Equation + + + + + Graph Chart + + + + + Excel 97-2003 Worksheet. File has ".xls" extension + + + + + Excel Binary Worksheet. File has ".xlsb" extension + + + + + Excel chart. File has ".xls" extension + + + + + Excel Macro-Enabled Worksheet. File has ".xlsm" extension. + + + + + Excel Worksheet. File has ".xlsx" extension. + + + + + PowerPoint 97-2003 Presentation. File has ".ppt" extension. + + + + + PowerPoint 97-2003 Slide. File has ".sld" extension. + + + + + PowerPoint Macro-Enabled Presentation. File has ".pptm" extension. + + + + + PowerPoint Macro-Enabled Slide. File has ".sldm" extension. + + + + + PowerPoint Presentation. File has ".pptx" extension. + + + + + PowerPoint Slide. File has ".sldx" extension. + + + + + Word 97-2003 Document. File has ".doc" extension. + + + + + Word Document. File has ".docx" extension. + + + + + Word Macro-Enabled Document. File has ".docm" extension. + + + + + Visio Deawing + + + + + MIDI Sequence + + + + + OpenDocument Presentation + + + + + OpenDocument Spreadsheet + + + + + OpenDocument Text + + + + + OpenOffice.org 1.1 Spreadsheet + + + + + OpenOffice.org 1.1 Text + + + + + Package + + + + + Video Clip + + + + + Wave Sound + + + + + WordPad Document + + + + + OpenOffice spreadsheet + + + + + OpenOffice Text + + + + + Defined types of Sparkline chart types. + + + + + Sparkline type is WinLoss. + + + + + Sparkline type is Column. + + + + + Sparkline type is Line. + + + + + Defines the Display of the Empty Cells within the Sparkline Range. + + + + + Display as Gaps. + + + + + Diaplay as Zero. + + + + + Display as Continued line. + + + + + Defines the Sparkline vertical axis type. + + + + + Automatic value for the vertical axis. + + + + + Same value for the vertical axis. + + + + + Custom value for the vertical axis. + + + + + Represents different modes of layout + + + + + Specifies automatic height and width. + + + + + Specifies that the width/height shall be interpreted as the + width/height of the chart element. + + + + + Specifies that the width/height shall be interpreted as the + right/bottom of the chart element. + + + + + Represents different targets of layout. + + + + + Specifies automatic plot area size for layout. + + + + + Specifies the plot area size including the tick marks and axis labels. + + + + + Specifies the plot area size excluding the tick marks and axis labels. + + + + + Defines the directions of data bar in conditional formatting. + + + + + Represents Context direction. The default direction is Context. + + + + + Represents Left to Right (LTR) direction. + + + + + Represents Right to Left (RTL) direction. + + + + + Specifies the axis position for a range of cells with conditional formatting as data bars. + + + + + Default value if the conditional formatting rule is created programmatically. + + + + + Default value if the conditional formatting rule is created using the user interface. + + + + + Defines the axis position at the mid point. + + + + + Specifies the type of filter applied. + + + + + Represents applying filter with conditions. + + + + + Represents applying filter with combination(Text and DateTime). + + + + + Represents applying filter with specified relative date constant. + + + + + Represents applying filter with color (Fill and Font color). + + + + + Represents applying Icon Filter for the icons from Conditional Formatting. + + + + + Specifies the type of color filter + + + + + Represents applying filter with cell color + + + + + Represents applying filter with font color. + + + + + Represents different type of combinational filter. + + + + + Represents Text value filter. + + + + + Represents date filter. + + + + + Represents grouping type applied for DateTime filter. + + + + + Group by year. + + + + + Group by month. + + + + + Group by day. + + + + + Group by hour. + + + + + Group by minute. + + + + + Group by second. + + + + + Represent relative date filter type. + + + + + None of the type applied. + + + + + Represent Tomorrow. + + + + + Represent Today. + + + + + Represent Yesterday. + + + + + Represent next week of the current week. + + + + + Represent current week. + + + + + Represent last week of the current week. + + + + + Represent next month of the current month. + + + + + Represent current month. + + + + + Represent last month of the current month. + + + + + Represent next quarter of the current quarter year. + + + + + Represent current quarter year. + + + + + Represent last quarter of the current quarter year. + + + + + Represent next year. + + + + + Represent current year. + + + + + Represent last year. + + + + + Represent first quarter of the years. + + + + + Represent second quarter of the years. + + + + + Represent third quarter of the years. + + + + + Represent fourth quarter of the years. + + + + + Represent January month. + + + + + Represent February month. + + + + + Represent March month. + + + + + Represent April month. + + + + + Represent May month. + + + + + Represent June month. + + + + + Represent July month. + + + + + Represent August month. + + + + + Represent September month. + + + + + Represent October month. + + + + + Represent November month. + + + + + Represent December month. + + + + + Represent dates from starting of the current year till today. + + + + + Chart Ex Dimension Data type enum + + + + + All chart Ex numeric dimension data type [except sunburst,tree map] + + + + + x coordinate value + + + + + y coordinate value + + + + + Size coordinate value Used in treemap and sunburst charts + + + + + String dimension type + + + + + Event arguments for notifying read progress. + + + + + + Current read position. + + + + + Full stream size. + + + + + Creates new instance of the event arguments. + + Current read position. + Full stream size. + + + + Current read position. + + + + + Full stream size. + + + + + The ExpotEvent args for the TypeMismatchOnExport event which is raised whenever + there is a data type mismatch on exporting to CLR objects. + + + + + Represents the cell range of mismatched data type. + + + + + Represents the error message. + + + + + Represents the property name that has mismatched data type. + + + + + Represents a valid value for the property. + + + + + Represents the current value of the range. + + + + + Represents the Type code. + + + + + Represents the current cell value type. + + + + + Represents the mismatched CLRObject index. + + + + + Initializes a new instance of class for mismatch date type. + + The current range. + The error message. + The error property. + The current range value. + The mismatched CLRObject index + The current cell value type + The typecode of the property + + + + Gets the cell range of mismatched data type. + + Range object of mismatched data type. + + + + Gets the error message. + + The string that specifies the error message. + + + + Gets the property name that has mismatched data type. + + Name of the property that has mismatched data type. + + + + Gets or sets a valid value for the property. + + The Object that specifies a valid value for the property. + + + + Gets the current value of the range. + + The object that specifies current value of the range. + + + + Gets the typecode of the property. + + The TypeCodethat specifies typecode of the property. + + + + Gets the current cell value type. + + The stringthat specifies current cell value type. + + + + Gets the mismatched CLRObject index. + + + + + Progress event handler delegate + + + + + + Represents the delegate that handles TypeMismatchOnExport event that is raised whenever there is a data type mismatch while exporting data to CLR objects. + + The source of the event. + object that contains the event data. + + + + Represents a Merged Cell. + + + + + Merges all cells in cellRange. + + Row index from which merging should be done. + Row index to which merging should be done. + Column index from which merging should be done. + Column index to which merging should be done. + Different merge operations. + + + + If specified cell is contained in merged cell, delete that merge. + + Index to be removed from Merged area. + + + + Contains types to create and manipulate Excel documents. + + + + + Represents a class for exporting data options. + + + + + Indicates the row for detecting the column type For export data table + + + + + Gets or sets row index that is used for detecting the column Types. By default the second row from the export range is used for detecting the column types. And the default value will be exported in the data table if the cell value does not match with the column type. + + + + + Import Data options class + + + + + Specifies first row from where the data should be imported. + + + + + Specifies first column from where the data should be imported. + + + + + Specifies whether class properties names must be imported or not. + + + + + Specifies whether parent class properties names must be imported or not. + + + + + Specifies how to fill the group field values while importing nested collection objects. + + + + + Specifies whether the grouping is added with Collapse or Expand while importing nested collection objects. + + + + + Specifies the group collpase level. The group will be expanded before this level and collapse will be applied from this level. + + + + + /// Indicates whether XlsIO should preserve column types from DataTable. By default, preserve type is FALSE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + + + + Initializes a new instance of the class. + + + + + Specifies first row from where the data should be imported. + + + + + Specifies first column from where the data should be imported. + + + + + Specifies whether class properties names must be imported or not. + + + + + Specifies whether parent class properties names must be imported or not. + + + + + Specifies how to fill the group field values while importing nested collection objects. + + + + + Specifies whether the grouping is added with Collapse or Expand while importing nested collection objects. + + + + + Specifies the group collapse level. The group will be expanded before this level and collapse will be applied from this level. + + + + + Indicates whether XlsIO should preserve column types from Data. By default, preserve type is TRUE. + i.e., Setting it to True will import data based on column type, otherwise will import based on value type. + + + + + Interface that represents single gradient stop of the gradient fill. + + + + + Gets / sets color. + + + + + Gets / sets position of the gradient stop. + + + + + Gets / sets transparency value. + + + + + Event arguments for ReadOnlyFile event. + + + + + + Indicates if file should be rewritten, default - False. + + + + + Default constructor. + + + + + Indicates whether Read-only file should be rewritten. + + + + + Event arguments for PasswordRequired event. + + + + + Indicates whether we should stop parsing protected workbook. + + + + + New password to try. + + + + + Default constructor. + + + + + Indicates whether we should stop parsing protected workbook. + + + + + New password to try. + + + + + Represents the connection password of the data source. + + + + + + Gets or sets the password to connect data source. + + + + + Represents the method that will handle the ReadOnlyFile event. + + + + + + Represents the method that will handle the PasswordRequired event. + + + + + + Represents the method that will handle the PasswordRequired event. + + + + + + SR provides localized access to string resources specific + from the assembly manifest Syncfusion.XlsIO.Localization.SR.resources + + + + + Specifies the category in which the property or event will be displayed in a visual designer. + + + This is a localized version of CategoryAttribute. The localized string will be loaded from the + assembly manifest Syncfusion.XlsIO.Localization.SR.resources + + + + + Specifies a description for a property or event. + + + This is a localized version of DescriptionAttribute. The localized string will be loaded from the + assembly manifest Syncfusion.XlsIO.Localization.SR.resources + + + + + ExcelUtils is a helper class that is used for easy usage of direct XlsIO API in performing + repetitive tasks.[The usage of this class is not recommended, Please refer to the documentation + for updated sample code.] + + + + + ExcelEngine Object + + + + + Represents the application object + + + + + Static Constructor + + + + + + Dispose excelEngine member. + + + + + Creates a new workbook. The new workbook becomes the active Workbook. + + Number of Worksheets in the workbook. + Added Workbook object. + + + + Creates a new workbook and the worksheets are named using the names supplied. + The new workbook becomes the active workbook. + + Names of the Worksheets in the Workbook. + Added Workbook object. + + + + Closes the Workbook object. + + + + + Creates a workbook using the template file. + + + Workbook created from template. + + + + Creates a workbook using the template file stream. + + Base stream to create. + Workbook created from template. + + + + Opens the workbook in the specified location. + + + Opened workbook object. + + + + Opens a workbook in the form of a stream. + + + Opened workbook object. + + + + Not required. Obsolete. + + + + + Copies workbook from the clipboard. + + Pasted workbook object. + + + + Determines if an exception is thrown when there are unsaved workbook objects. Default is + True. + + + + + Each cell range address (called an ADDR structure) contains 4 16-bit values. + Cell range address, BIFF8: + + + + + Index to first row. + + + + + Index to last row. + + + + + Index to first column. + + + + + Index to last column. + + + + + Initializes new instance. + + First row. + First column. + Last row. + Last column. + + + + Initializes new instance. + + Index of the top left cell. + Index of the bottom right cell. + + + + Initializes new instance. + + Rectangle containing initialization data. + + + + Converts object to the string. + + + + + Converts structure to rectangle. + + Created rectangle. + + + + Index to first column. + + + + + Index to first row. + + + + + Index to last column. + + + + + Index to last row. + + + + + Summary description for ArrayRecord. + + + + + Interface for shared formula and array formula. + + + + + Index to first row of the array formula range. + + + + + Index to last row of the array formula range. + + + + + Index to first column of the array formula range. + + + + + Index to last column of the array formula range. + + + + + Parsed formula. + + + + + Summary description for IFormulaRecord. + + + + + Gets/sets parsed formula tokens. + + + + + Minimum size of the record. + + + + + Offset to the formula data. + + + + + First row. + + + + + Last row. + + + + + First row. + + + + + Last row. + + + + + Option flags. + + + + + Indicates whether formula value should always be recalculated. + + + + + Indicates whether formula value should be recalculated when the file is opened. + + + + + Unused must be 0. + + + + + Length of the parsed expression. + + + + + Formula expression. + + + + + + + + + + Default Constructor. + + + + + Read / initialize Constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for the record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Size of the required storage space. Read-only. + + + + + Serializes area that is covered by array formula. + + Object that contains dimensions data. + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Updated offset. + + + + Serializes area that is covered by array formula. + + Object that receives dimensions data. + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Updated offset. + + + + Determines whether the specified Object is equal to the current Object. + + The Object to compare with the current Object. + true if the specified Object is equal to the current Object; otherwise, false. + + + + Serves as a hash function for a particular type. + + A hash code for the current Object. + + + + + + + + + + Index to first row of the array formula range. Zero-based. + + + + + Index to last row of the array formula range. Zero-based. + + + + + Index to first column of the array formula range. Zero-based. + + + + + Index to last column of the array formula range. Zero-based. + + + + + Read-only. Size of the formula data. + + + + + Token array of the shared formula. + + + + + + + + + + Read-only. Reserved. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Indicates whether formula value should be always recalculated. + + + + + Indicates whether formula value should be recalculated when the file is opened. + + + + + Option flags. + + + + + Summary description for AutoFilterInfoRecord. + + + + + Number of AutoFilter drop-down arrows on the sheet. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize Constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + + + + + + Read-only. Maximum possible size of the record. + + + + + Read-only. Minimum possible size of the record. + + + + + Number of AutoFilter drop-down arrows on the sheet. + + + + + Summary description for AutoFilterInfoRecord. + + + + + Size of the record. + + + + + Bit mask of the number of items to show. + + + + + + + + + + + + + + + + + + + + Offset to the start of additional data in the internal data array. + + + + + Number of AutoFilter drop-down arrows on the sheet. + + + + + Option flags. + + + + + True if the custom filter conditions are ANDed; + False if the custom filter conditions are ORed. + + + + + True if the first condition is a simple equality. + + + + + True if the second condition is a simple equality. + + + + + True if the condition is a Top 10 AutoFilter. + + + + + True if the Top 10 AutoFilter shows the top items; + False if it shows the bottom items. + + + + + True if the Top 10 AutoFilter shows percentage; + False if it shows items. + + + + + Structure for the first filter condition. + + + + + Structure for the second filter condition. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize Constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + + + + + + Read-only. Minimum possible size of the record. + + + + + Number of AutoFilter drop-down arrows on the sheet. + + + + + Option flags. Read-only. + + + + + True if the first condition is a simple equality. + + + + + True if the second condition is a simple equality. + + + + + True if the condition is a Top 10 AutoFilter. + + + + + True if the Top 10 AutoFilter shows the top items; + False if it shows the bottom items. + + + + + True if the Top 10 AutoFilter shows percentage; + False if it shows items. + + + + + True if the custom filter conditions are ANDed; + False if the custom filter conditions are ORed. + + + + + Number of elements to show in Top10 mode. + + + + + First condition. + + + + + Second condition. + + + + + If filtered to blanks - true. Read-only. + + + + + If filtered to nonblanks - true. Read-only. + + + + + + + + + + Record size + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + String value if there is some. + + + + + Extracts data from data provider. + + Object that provides access to the data. + Offset in the provider to the start of the record's data. + Size of the parsed data. + + + + Extracts additional data from specified provider, if necessary. + + Object that provides access to the data. + Offset in the provider to the start of the record's data. + Size of the parsed data. + + + + Serializes record into specified data provider. + + Object that provides access to the data. + Offset in the provider to the start of the record's data. + Size of the serialized data. + + + + Serializes additional data. + + Object that provides access to the data. + Offset in the destination array to the start of the data. + Size of the additional data. + + If data is null. + + + When iOffset is too big or size of the data array is too small + and additional data can't be fit into the data array. + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Data type. + + + + + Comparison sign. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets / sets length of the string (the string is stored after DOPER structures). + + + + + String value if there is some. + + + + + + + + + + DOPER data type. + + + + + Represents the FilterNotUsed data type. + + + + + Represents the RKNumber data type. + + + + + Represents the Number data type. + + + + + Represents the String data type. + + + + + Represents the BoolOrError data type. + + + + + Represents the MatchBlanks data type. + + + + + Represents the MatchNonBlanks data type. + + + + + DOPER comparison sign types. + + + + + Represents the Less comparison sign type. + + + + + Represents the Equal comparison sign type. + + + + + Represents the LessOrEqual comparison sign type. + + + + + Represents the Greater comparison sign type. + + + + + Represents the NotEqual comparison sign type. + + + + + Represents the GreaterOrEqual comparison sign type. + + + + + Boolean specifying whether the GUI should store a backup of the file while saving. + + + + + If True, then create backup file on saving. + + + + + Default constructor. Sets all fields to default values. + + + + + Read / initialize Constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for the record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + If True, then create backup file on saving. + + + + + Minimum possible record size. + + + + + Maximum possible record size. + + + + + The begin record defines the start of a block of records for a (Graphing) + data object. This record is matched with a corresponding EndRecord. + + + + + Summary description for BiffRecordRawWithArray. + + + + + Array that contains record data. + + + + + True if internal data array will be automatically resized + if there is not enough space for record data. + + + + + Default constructor, gets code value using reflection and attributes. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Read / initialize constructor. + + BinaryReader from which record data should be read. + Size of the read item. + + When specified reader is NULL. + + + + + Reserved for record's internal data array iReserve bytes. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + + + + + + Save record data to stream. + + Writer that will receive record data. + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the record. + If writer is NULL. + + If m_iLength of internal record data array is less than zero. + + + + + Save record data to stream. + + Writer that will receive record data. + Object to encrypt data. + Position in the output stream, used to reduce Flush + calls of the writer.BaseStream. + Size of the record. + If writer is NULL. + + If m_iLength of internal record data array is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, the class must pack all of its properties into + an internal Data array: m_data. This method is called by + FillStream, when the record must be serialized into stream. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + + + Get array of bytes from internal record data. + + Offset of first byte of data to get. + Length of required array. + Array of bytes from internal record data. + + If offset is less than zero or more than internal record data array size + or length is less than zero or more than internal record data array size + or length plus offset is more than internal record data array size. + + + + + Gets single byte from internal record data using GetBytes. + + Offset of byte to get. + Single byte from internal record data. + + + + Gets ushort from internal record data using GetBytes. + + Offset in bytes of ushort to get. + Ushort from internal record data. + + + + Gets short from internal record data using GetBytes. + + Offset in bytes of short to get. + Short from internal record. + + + + Gets int from internal record data using GetBytes. + + Offset in bytes of int to get. + Int from internal record. + + + + Gets uint from internal record data using GetBytes. + + Offset in bytes of uint to get. + Uint from internal record data. + + + + Gets long from internal record data using GetBytes. + + Offset in bytes of long to get. + Long from internal record data. + + + + Gets ulong from internal record data using GetBytes. + + Offset in bytes of ulong to get. + Ulong from internal record data. + + + + Gets float from internal record data using GetBytes. + + Offset in bytes of float to get. + Float from internal record data. + + + + Gets double from internal record data using GetBytes. + + Offset in bytes of double to get. + Double from internal record data. + + + + Gets single bit from internal record data using GetBytes. + + Offset of the byte that contains needed bit. + Position of bit in the byte. + True if specified bit is set to 1; otherwise False. + + bitPos argument should be not less than zero and not more than 7. + + + + + Gets string from internal record data using GetBytes, + and it increases the offset by string size in bytes. + + Offset of starting byte. + Indicates whether extracted string is ascii string (not unicode). + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes, + and it increases the offset by string size in bytes. + + Offset of starting byte. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes + and it increases offset by string size in bytes. + + Offset of starting byte. + Length of the string. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes. + + Offset of starting byte. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes. + + Offset of starting byte. + Returns size of the read data. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes. + + Offset of starting byte. + Length of the string. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes. + + Offset of starting byte. + Length of the string. + Gets bytes count that this string occupies in the data array. + Retrieved string. + + + + Gets string from internal record data using GetBytes. + + Offset of starting byte. + Length of the string. + Gets bytes count that this string occupies in the data array. + Flag for is bytes count available. + Retrieved string. + + + + Detect type of string and extracts it. + + Record data offset. + Contain next position. + Number of elements in the continuePos collection. + Current index in the continuePos array. + Length of string record. + Array of rich formatting values. + Array of unknown FarEast data. + Extracted string. + + + + Gets TAddr structure from internal record data. + + Offset in bytes of TAddr structure to get. + Retrieved TAddr structure. + + + + Gets TAddr structure from internal record data. + + Offset in bytes of TAddr structure to get. + Retrieved TAddr structure. + + + + Enlarges the internal record data array to facilitate + at least offset + length of data to be placed. + + Offset to the accessed data. + Length of the needed data. + + + + Reserve memory for internal array. + + Number of bytes that should be reserved. + + + + Sets bytes in internal record data array values. + + Offset in internal record data array to start from. + Array of bytes to set. + Position in value array to the data that will be set. + Length of the data. + If value array is NULL. + + If pos or length would be less than zero or their sum would be more + than size of value array. + + + If internal record data array is too small for receiving value array + and AutoGrowData is False. + + + + + Sets bytes in internal record data array values. + + Offset in internal record data array to start from. + Array of bytes to set. + If value array is NULL. + + If pos or length would be less than zero or their sum would be more + than size of value array. + + + If internal record data array is too small for receiving value array + and AutoGrowData is False. + + + + + Sets single byte in internal record data array using SetBytes method. + + Offset to the required byte. + New value for the byte. + + + + + + + + + + + + Sets ushort in internal record data array using SetBytes method. + + Offset to the required value. + New value for the specified ushort. + + + + Sets short in internal record data array using SetBytes method. + + Offset to the required value. + New value for the specified short. + + + + Sets int in internal record data array using SetBytes method. + + Offset to the required value. + New value for the specified int. + + + + Sets uint in internal record data array using SetBytes method. + + Offset to the required value. + New value for the specified uint. + + + + Sets long in internal record data array using SetBytes method. + + Offset to the required value. + New value for the specified long. + + + + Sets ulong in internal record data array using SetBytes method. + + Offset to the required value. + New value for the specified ulong. + + + + Sets float in internal record data array using SetBytes method. + + Offset to the required value. + New value for the specified float. + + + + Sets double in internal record data array using SetBytes method. + + Offset to the required value. + New value for the specified double. + + + + Sets one bit in specified byte in internal record data array. + + Offset of the byte in the internal record data array. + Value of bit. + Bit position in the byte. + + If bitPos is less than zero or more than 7. + + + + + Sets string in internal record data array using SetBytes method + without string length, updates offset parameter (adds string length). + + Offset to the string. + Value of the string. + Indicates whether string should be compressed or not. + + + + Sets string in internal record data array using SetBytes method + without string length. + + Offset to the string. + Value of the string. + Size of the string in bytes. + + + + Detects whether specified string contains only characters supported by ASCII encoding. + + String to check. + True if this string is fully supported by ASCII encoding. + + + + Sets string in internal record data array using SetBytes method + without string length. + + Offset to the string. + Value of the string. + Size of the string in bytes. + + + + Sets string in internal record data array using SetBytes method + without string length. + + Offset to the string. + Value of the string. + Indicates whether write compressed attribute for empty strings. + Indicates whether to write compressed (ascii) string or not. + Size of the string in bytes. + + + + Sets string in internal record data array using SetBytes method. + The String length is saved in one byte. + + Offset to the string. + Value of the string. + Size of the string data. + + + + Sets string in internal record data array using SetBytes method. + The String length is saved in two bytes. + + Offset to the string. + Value of the string. + Size of the string in bytes. + + + + Sets string in internal record data array using SetBytes method. + The String length is saved in two bytes. + + Offset to the string. + Value of the string. + Indicates whether write compressed attribute for empty strings. + Indicates whether string should be compressed or not. + Size of the string in bytes. + + + + Sets string in internal record data array using SetBytes method. + The String length is saved in two bytes + + Offset to the string. + Value of the string. + + + + Sets string in internal record data array using SetBytes method. + The String length is saved in two bytes + + Offset to the string. + Value of the string. + Indicates whether string should be compressed or not. + + + + Sets TAddr structure in internal record data. + + Offset in bytes of TAddr structure to set. + New value of the TAddr at the specified position. + + + + Sets TAddr structure in internal record data. + + Offset in bytes of TAddr structure to set. + New value of the Rectangle at the specified position. + + + + Method extracts from class its fields which have the custom attribute: + BiffRecordPosAttribute. Method returns two arrays sorted in special + order, the order of extraction and saving from/to stream. + + Returns Sorted Fields. + + + + Algorithm extracts field values from internal data storage. + + + + + Gets value of the field by BiffRecordPosAttribute. + + BiffRecordPosAttribute that describes required field. + Value of the field. + + + + Method tries by metadata information fill internal array + of record. + + Size of the filled data. + + + + Sets value of the specified field. + + BiffRecordPosAttribute that describes required field. + New field value. + Size of the used data. + + + + Clears internal data array. + + + + + Compares two Biff records. + + Biff record that should be compared with this Biff record. + True if this instance and extFormat contain the same data. + + + + Copies data from the current Biff record to the specified Biff record. + + Biff record that will receive data from the current record. + + When this record and parameter have different types. + + + + + + + + + + + + + + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + Size of the required storage space. Read-only. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + + + + + + Read-only. Returns record data. + + + + + If True, the array will automatically grow when the offset limit + is reached. This is required when the real record size is not known for an + Infill operation. Will throw exception on buffer offset overrun + when set to False. Default value is False. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Read-only. Maximum possible size of the record. + + + + + This record is part of the Page Settings Block. + It stores the background bitmap of a worksheet. + + + + + BifRecords container. + + + + + + + + + + + + + + + Array that contains positions of data of the continue records + in the m_data array. + + + + + + + + + + Default constructor fills all data with default values. + + + + + Read / Initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array iReserve bytes. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + This method constitutes the main part of parsing with continue records. + For inheritors this method must be called to get Continue records + which is placed after this record in the input stream. + + + + + + + + + + Creates continue record builder. + + Created builder. + + + + Read from stream record data. + + Stream with record data. + Object that provides access to the data. + Object that should be used to parse encrypted records. + Temporary buffer needed for some operations. + Size of the record data. + If reader is NULL. + + If stream is not big enough for data (end of stream + reached and all data were not read). + + + If record code is zero. + + + + + Save record data to stream. + + Writer that will receive record data. + Object to encrypt data. + Position in the output stream, used to reduce Flush + calls of the writer.BaseStream. + Size of the record in the stream. + If writer is NULL. + + If m_iLength of internal record data array is less than zero. + + + + + Extracts all continue records from the stream if needed and updates internal data array. + + True if there was extracted any continue record. + + + + Returns List with byte arrays with continue record's data. + + Full length of the additional data. + Last position in the stream. + List with byte arrays with continue record's data. + + + + Adds record data from single record to the List. + + List to add data to. + Record to add data from. + Size of the added data. + + + + OnFirstContinue event handler. + + Event sender. + Event arguments. + + + + + + + + + + Creates copy of the current object. + + A copy of the current object. + + + + + + + + + Pixel rows in bitmap are aligned to this number of bytes. + + + + + Header start. + + + + + Unknown value. + + + + + Unknown value. + + + + + Total size of the following record data, without this field (including CONTINUE records). + + + + + Header structure size. + + + + + Width of the picture, in pixel. + + + + + Height of the picture, in pixel. + + + + + Number of planes, must be 1. + + + + + Color depth, must be 24 bit true-color. + + + + + Image contained in the record. + + + + + Allocated unmanaged memory. + + + + + Default Constructor + + + + + Read / initialize Constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for the record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Infills record header. + + Size of the record header. + + + + Unknown value. + + + + + Unknown value. + + + + + Total size of the following record data, without this field (including CONTINUE records). + + + + + Header structure size. + + + + + Width of the picture, in pixel. + + + + + Height of the picture, in pixel. + + + + + Number of planes, must be 1. + + + + + Color depth, must be 24 bit true-color. + + + + + Image. + + + + + This record represents an empty cell. + It contains the cell address and formatting information. + + + + + This is parent class for all records that have cell position elements inside. + + + + + Zero-based row index. + + + + + Zero-based column index. + + + + + Index to the cell's extended format. + + + + + Default constructor + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + Returns size of the required storage space. + + Excel version. + Size of the required storage space. + + + + Row zero-based index. + + + + + Column zero-based index. + + + + + Index of extended format. + + + + + Size of the record's data. + + + + + Record size with header. + + + + + Default constructor that fills all data with default values. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + Returns size of the required storage space. + + Excel version. + Size of the required storage space. + + + + Read-only. Returns minimum possible size of the record's + internal data array. + + + + + Read-only. Returns maximum possible size of the record's + internal data array. + + + + + Summary description for BOFRecord. + It is used for the beginning of a set of + records that have a particular purpose or subject. + Used in sheets and workbooks. + + + + + Summary description for _BiffRecordRawWithStreamPos. + + + + + Position of the Biff record in the stream. + + + + + Default constructor, gets code value using reflection and attributes. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Read / initialize constructor. + + BinaryReader from which record data should be read. + Size of the read item. + + When specified reader is NULL. + + + + + Reserved for record's internal data array iReserve bytes. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Indicates record position in stream. This is a utility member of class and + is used only in the serialization process. Does not influence the data. + + + + + Represents the record size. + + + + + Version: + + + + + Type of the following data: + + + + + Build identifier: + + + + + Build year: + + + + + File history flag: + + + + + Lowest Excel version that can read all records in this file: + + + + + + + + + + Default Constructor + + + + + Read / initialize Constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for the record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Version: + + + + + Type of the following data: + + + + + Build identifier: + + + + + Build year: + + + + + File history flag: + + + + + Lowest Excel version that can read all records in this file. + + + + + Read-only. Returns minimum possible size of record. + + + + + Read-only. Returns maximum possible size of record. + + + + + + + + + + Indicates whether record allows shorter data. Read-only. + + + + + Indicates whether record need decoding when file is encoded or not. Read-only. + + + + + This enum that describes all possible data after this BOF record. + + + + + Represents the workbook data. + + + + + Represents the vb_module data. + + + + + Represents the worksheet data. + + + + + Represents the chart data. + + + + + Represents the excel_4_macro data. + + + + + Represents the workspace file data. + + + + + Summary description for BookBoolRecord. + Saves External Links record. + Contains a flag specifying whether the GUI should save externally + linked values from other workbooks. + + + + + 0 = Save external linked values. 1 = Do not save external linked values. + + + + + Default Constructor + + + + + Read / initialize Constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + If zero, then save external linked values. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's internal + data array. + + + + + This record represents a Boolean value or error value cell. + + + + + Interface for records that have Value property. + + + + + Value of the record. + + + + + Size of the record. + + + + + Boolean or error value (type depends on the m_bIsErrorCode). + + + + + False = Boolean value; True = Error code. + + + + + Default Constructor that fills all data with default values. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + Returns size of the required storage space. + + Excel version. + Size of the required storage space. + + + + Reads record's value from the data provider. + + Provider to read data from. + Offset to the record's start. + Excel version that was used to infill. + Record's value (BoolOrError and IsErrorCode). + + + + Boolean or error value (type depends on the IsError property). + + + + + False = Boolean value; True = Error code. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Value of the record. + + + + + + Summary description for BoundSheetRecord. + This record is located in the workbook globals area and represents a sheet inside + of the workbook. A record is written for each sheet. It stores the sheet name and + a stream offset to the BOF record within the workbook stream. + + + + + Absolute stream position of the BOF record of the sheet represented by this record. + + + + + Options: Visibility and sheet type. + + + + + Sheet type: + 0x00 = Worksheet + 0x02 = Chart + 0x06 = Visual Basic module + + + + + Sheet name. + + + + + Helper field of record. Value is not stored as a record structure field. + This index is used by the UpdateOffsets method for detecting the corresponding BOF + field. + + + + + BOF record that should be referenced. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + This method checks the record's internal data array for integrity. + + + If there is any internal error. + + + + + + + + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + + + + + Size of the required storage space. Read-only. + + + + + Absolute stream position of the BOF record of the sheet represented by this record. + + + + + Sheet name as a unicode string. + + + + + Helper field of record. Value is not stored as a record structure field. + This index is used by the UpdateOffsets method for detecting the corresponding BOF + field. + + + + + Sheet type. + + + + + Visibility type of Bound. + + + + + Read-only. Returns minimum possible size of the record's + internal data array. + + + + + Gets / sets BOF record that should be referenced. + + + + + Returns offset in the data array where encoded/decoded data should start. Read-only. + + + + + Possible sheet types. + + + + + Represents the Worksheet sheet type. + + + + + Represents the Chart sheet type. + + + + + Represents the VisualBasicModule sheet type. + + + + + Summary description for ByteArrayDataProvider. + + + + + Summary description for DataProvider. + + + + + Default constructor. + + + + + + + + + + Returns bit value at the specified position. + + Offset to the required value. + Bit index in the byte. + Bit at the specified position. + + + + Returns byte value at the specified position. + + Offset to the required value. + Byte at the specified position. + + + + Returns boolean value at the specified position. + + Offset to the required value. + Byte at the specified position. + + + + Returns Int16 value at the specified position. + + Offset to the required value. + Int16 value at the specified position. + + + + Returns UInt16 value at the specified position. + + Offset to the required value. + Int16 value at the specified position. + + + + Returns Int32 value at the specified position. + + Offset to the required value. + Int32 value at the specified position. + + + + Returns Int32 value at the specified position. + + Offset to the required value. + Int32 value at the specified position. + + + + Returns Int32 value at the specified position. + + Offset to the required value. + Int32 value at the specified position. + + + + Returns Int32 value at the specified position. + + Offset to the required value. + Int32 value at the specified position. + + + + Copies data from internal storage into specified data array. + + Source offset. + Destination array. + Destination offset. + Size in bytes of the data to copy. + + + + Copies data from internal storage into specified provider. + + Source offset. + Destination provider. + Destination offset. + Size in bytes of the data to copy. + + + + Reads data from BinaryReader. + + Reader to get data from. + Offset in the internal data to start filling from. + Number of bytes to read. + Temporary buffer to use. + + + + Reads data from BinaryReader. + + Reader to get data from. + Offset in the internal data to start filling from. + Number of bytes to read. + Temporary buffer to use. + Object used to decrypt data if necessary. + + + + Gets string from internal data and returns it's length in iFullLength parameter. + + Offset to the string data. + Length of the string in bytes. + Parsed string. + + When data array is smaller than the string that should be in it. + + + + + Gets string from internal data and updates offset. + + Offset to the string data. + Parsed string. + + When data array is smaller than the string that should be in it. + + + + + Gets string from byte array and returns it's length in iFullLength parameter. + + Offset to the string data. + Length of the string in bytes. + Parsed string. + + When data array is smaller than the string that should be in it. + + + + + Reads data array from another data array. + + Source offset. + Destination array. + Updated source offset. + + + + Reads data array from another data array. + + Source offset. + Destination array. + Number of bytes to read. + Updated source offset. + + + + Gets string from internal record data using GetBytes. + + Offset of starting byte. + Length of the string. + Gets bytes count that this string occupies in the data array. + Flags that represent is bytes count available. + Retrieved string. + + + + Gets string from internal record data using GetBytes + and it increases offset by string size in bytes. + + Offset of starting byte. + Length of the string. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Reads string from data provider. + + Offset to the first character. + Number of bytes in the string. + Encoding to use. + Indicates whether string is unicode. + Extracted string. + + + + Gets TAddr structure from internal data. + + Offset in bytes of TAddr structure to get. + Retrieved TAddr structure. + + + + Gets TAddr structure from internal data. + + Offset in bytes of TAddr structure to get. + Retrieved TAddr structure. + + + + Saves data into binary writer. + + Writer to save data into. + Start offset in the internal storage. + Number of bytes to save. + Temporary buffer to use. + + + + Writes byte value at the specified position. + + Offset to the required value. + Byte value to write at the specified position. + + + + Writes Int16 value at the specified position. + + Offset to the required value. + Int16 value to write at the specified position. + + + + Writes Int16 value at the specified position. + + Offset to the required value. + Int16 value to write at the specified position. + + + + Writes Int16 value at the specified position. + + Offset to the required value. + Int32 value to write at the specified position. + + + + Writes Int16 value at the specified position. + + Offset to the required value. + Int32 value to write at the specified position. + + + + Writes Int16 value at the specified position. + + Offset to the required value. + Int32 value to write at the specified position. + + + + Sets one bit in specified byte in internal record data array. + + Offset of the byte in the data array. + Bit position in the byte. + Value of bit. + + If bitPos is less than zero or more than 7. + + + + + Writes Double value at the specified position. + + Offset to the required value. + Double value to write at the specified position. + + + + Sets string in internal data. The String length is saved in two bytes. + + Offset to the string. + Value of the string. + + + + Sets string in internal data. The String length is saved in two bytes. + + Offset to the string. + Value of the string. + + + + Sets string in internal data. The String length is saved in two bytes. + + Offset to the string. + Value of the string. + Indicates whether string should be stored as unicode. + + + + Sets string in internal data. The String length is saved in two bytes. + + Offset to the string. + Value of the string. + Size of the written data. + + + + Sets string in internal data. The String length is saved in two bytes. + + Offset to the string. + Value of the string. + Indicates whether string should be stored in unicode format. + Size of the written data. + + + + Sets string in internal record data without string length, + updates offset parameter (adds string length). + + Offset to the string. + Value of the string. + + + + Sets string in internal record data without string length, + updates offset parameter (adds string length). + + Offset to the string. + Value of the string. + Indicates whether string should be stored in Unicode encoding or not. + + + + Sets bytes in internal record data array values. + + Offset in internal record data array to start from. + Array of bytes to set. + If value array is NULL. + + If pos or length would be less than zero or their sum would be more + than size of value array. + + + If internal record data array is too small for receiving value array + and AutoGrowData is False. + + + + + Sets bytes in internal record data array values. + + Offset in internal record data array to start from. + Array of bytes to set. + Position in value array to the data that will be set. + Length of the data. + If value array is NULL. + + If pos or length would be less than zero or their sum would be more + than size of value array. + + + If internal record data array is too small for receiving value array + and AutoGrowData is False. + + + + + Sets TAddr structure in internal record data. + + Offset in bytes of TAddr structure to set. + New value of the TAddr at the specified position. + + + + Sets TAddr structure in internal record data. + + Offset in bytes of TAddr structure to set. + New value of the Rectangle at the specified position. + + + + Moves memory inside internal buffer. + + Destination offset. + Source offset. + Memory size. + + + + Copies memory inside internal buffer. + + Destination offset. + Source offset. + Memory size. + + + + Resizes internal storage if necessary. + + Required size. + + + + Resizes internal storage if necessary. + + + + + + + + Writes zeros inside memory block. + + + + + Clears internal storage if allowed. + + + + + Creates data provider of the same type. + + Created data provider. + + + + + + + + + Dispose DataProvider + + + + + + + + + + Returns size of the internal buffer. Read-only. + + + + + Indicates whether data provider was cleared. + + + + + Pointer to the data array. + + + + + Default constructor to prevent creation of items without arguments. + + + + + Creates new instance of this class. + + Array to read data from. + + + + Returns byte value at the specified position. + + Offset to the required value. + Byte at the specified position. + + + + Returns Int16 value at the specified position. + + Offset to the required value. + Int16 value at the specified position. + + + + Returns Int32 value at the specified position. + + Offset to the required value. + Int32 value at the specified position. + + + + Returns Int32 value at the specified position. + + Offset to the required value. + Int32 value at the specified position. + + + + Copies data from internal storage into specified + + Source offset. + Destination array. + Destination offset. + Size in bytes of the data to copy. + + + + Copies data from internal storage into specified provider. + + Source offset. + Destination provider. + Destination offset. + Size in bytes of the data to copy. + + + + Reads data from BinaryReader. + + Reader to get data from. + Offset in the internal data to start filling from. + Number of bytes to read. + Temporary buffer needed for some operations. + + + + Reads string from data provider. + + Offset to the first character. + Number of bytes in the string. + Encoding to use. + Indicates is unicode encoding. + Extracted string. + + + + Resizes internal storage if necessary. + + Required size. + + + + Resizes internal storage if necessary + + + + + + + + Writes zeros inside memory block. + + + + + Writes byte value at the specified position. + + Offset to the required value. + Byte value to write at the specified position. + + + + Writes Int16 value at the specified position. + + Offset to the required value. + Int16 value to write at the specified position. + + + + Writes Int16 value at the specified position. + + Offset to the required value. + Int16 value to write at the specified position. + + + + Writes Int32 value at the specified position. + + Offset to the required value. + Int32 value to write at the specified position. + + + + Writes Int32 value at the specified position. + + Offset to the required value. + Int32 value to write at the specified position. + + + + Sets one bit in specified byte in internal record data array. + + Offset of the byte in the data array. + Bit position in the byte. + Value of bit. + + If bitPos is less than zero or more than 7. + + + + + Writes Int32 value at the specified position. + + Offset to the required value. + Double value to write at the specified position. + + + + Sets string in internal data without string length, + updates offset parameter (adds string length). + + Offset to the string. + Value of the string. + Indicates whether to use unicode encoding or not. + + + + Sets bytes in internal record data array values. + + Offset in internal record data array to start from. + Array of bytes to set. + Position in value array to the data that will be set. + Length of the data. + If value array is NULL. + + If pos or length would be less than zero or their sum would be more + than size of value array. + + + If internal record data array is too small for receiving value array + and AutoGrowData is False. + + + + + Saves data into binary writer. + + Writer to save data into. + Start offset in the internal storage. + Number of bytes to save. + Temporary buffer to use. + + + + Updates internal buffer. + + New buffer to set. + + + + + + + + + Clears internal data. + + + + + Moves memory inside internal buffer. + + Destination offset. + Source offset. + Memory size. + + + + Copies memory inside internal buffer. + + Destination offset. + Source offset. + Memory size. + + + + Creates provider of the same type. + + Created provider object. + + + + Return internal buffer. Read-only. + + + + + Returns size of the internal buffer. Read-only. + + + + + + + + + + Specifies the maximum number of times the formulas should be iteratively calculated. + This is a fail-safe against mutually recursive formulas locking up + a spreadsheet application. + + + + + Correct record size. + + + + + Maximum number of iterations allowed in circular references. + + + + + Default Constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for the record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Maximum number of iterations allowed in circular references. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Specifies whether to calculate formulas manually, automatically, or automatically + except for multiple table operations. + + + + + Specifies whether to calculate formulas manually, automatically, or automatically + except for multiple table operations. See TCalcMode for possible values. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Specifies whether to calculate formulas manually, automatically, or automatically + except for multiple table operations. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + The begin record defines the start of a block of records for a (Graphing) + data object. This record is matched with a corresponding EndRecord. + + + + + Minimum size of the record. + + + + + Size of the first block of reserved bytes in the font block. + + + + + Size of the second block of reserved bytes in the font block. + + + + + Size of the third block of reserved bytes in the font block. + + + + + Mask for font posture bit. + + + + + Mask for font cancellation (strikethrough) bit. + + + + + Mask for font style modification bit. + + + + + Mask for font cancellation modification bit. + + + + + Mask for left border line style bits. + + + + + Mask for right border line style bits. + + + + + Mask for top border line style bits. + + + + + Mask for bottom border line style bits. + + + + + Mask for left border color bits. + + + + + Mask for right border color bits. + + + + + Mask for top border color bits. + + + + + Mask for bottom border color bits. + + + + + Start bit of left border color bits. + + + + + Start bit of right border color bits. + + + + + Start bit of top border color bits. + + + + + Start bit of bottom border color bits. + + + + + Mask for fill pattern bits. + + + + + Mask for pattern color bits. + + + + + Mask for pattern backcolor bits. + + + + + Start bit of fill pattern bits. + + + + + Start bit of fill pattern back color bits. + + + + + Size of the font block. + + + + + Size of the border block. + + + + + Size of the pattern block. + + + + + Size of the number format block. + + + + + Default color index. + + + + + Type of the conditional formatting: + + 01H = Compare with current cell value + (the comparison specified below is used) + + 02H = Evaluate a formula (condition is met + if formula evaluates to a value not equal to 0) + + + + + Comparison operator: + 00H = No comparison (only valid for formula type, see above) + 01H = Between + 02H = Not between + 03H = Equal + 04H = Not equal + 05H = Greater than + 06H = Less than + 07H = Greater or equal + 08H = Less or equal + + + + + Size of the formula data for first value or formula. + + + + + Size of the formula data for second value or formula + (sz2, used for second part of �Between� and �Not between� + comparison, this field is 0 for other comparisons). + + + + + Option flags + + + + + Not used + + + + + False if left border style and color are modified. + + + + + False if right border style and color are modified. + + + + + False if top border style and color are modified. + + + + + False if bottom border style and color are modified. + + + + + False if pattern style is modified. + + + + + False if pattern color is modified. + + + + + False if pattern background color is modified. + + + + + False if the number format is modified. + + + + + True if record contains number format. + + + + + True if record contains font formatting block. + + + + + True if record contains border formatting block. + + + + + True if record contains pattern formatting block. + + + + + True if record contains the user defined number format. + + + + + Font height. + + + + + Font options. + + + + + Font weight (100-1000, only if font - style = 0). + Standard values are 0190H (400) for normal text + and 02BCH (700) for bold text. + + + + + Escapement type (only if font - esc = 0): + 0000H = None; 0001H = Superscript; 0002H = Subscript + + + + + Underline type (only if font - underl = 0): + 00H = None + 01H = Single + 02H = Double + 21H = Single accounting + 22H = Double accounting + + + + + Font color index or FFFFFFFFH to preserve the cell font color: + + + + + Option flags for modified font attributes: + + + + + 0 = Escapement type modified + + + + + 0 = Underline type modified: + + + + + Represents the text value. + + + + + Border line styles: + + + + + Border line colour indexes: + + + + + Fill pattern style: + + + + + Fill pattern color indexes: + + + + + Unused + + + + + Unsigned integer that specifies the identifier of the number format. + + + + + + Formula data for second value or formula (RPN token array without size field): + + + + + + + + + + + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserves for record's internal data array iReserve bytes. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Parses font block if it is present in the conditional format. + + Object that provides access to the data. + + Offset to the font block data in the internal data array. + + + + + Parses border block if it is present in the conditional format. + + Object that provides access to the data. + + Offset to the border block data in the internal data array. + + + + + Parses pattern block if it is present in the conditional format. + + Object that provides access to the data. + + Offset to the pattern block data in the internal data array. + + + + + Parses number format block if it is present in the conditional format. + + Object that provides access to the data. + + Offset to the number format block data in the internal data array. + + + + + Writes font block into internal data array + if it is present in the conditional format. + + Object that provides access to the data. + + Offset where font block should be written. + + + + + Writes border block into internal data array + if it is present in the conditional format. + + Object that provides access to the data. + + Offset where border block should be written. + + + + + Writes pattern block into internal data array + if it is present in the conditional format. + + Object that provides access to the data. + + Offset where pattern block should be written. + + + + + Writes number format block into internal data array + if it is present in the conditional format. + + Object that provides access to the data. + + Offset where number format block should be written. + + + + + Size of the required storage space. Read-only. + + + + + Clones current instance. + + Returns new instance. + + + + Serves as a hash function for a particular type, suitable for use in + hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + A hash code for the current Object without taking cell list into account. + + The Object to compare with the current Object. + + + + + Type of the conditional formatting: + + 01H = Compare with current cell value + (the comparison specified below is used) + + 02H = Evaluate a formula (condition is met + if formula evaluates to a value not equal to 0) + + + + + Comparison operator: + 00H = No comparison (only valid for formula type, see above) + 01H = Between + 02H = Not between + 04H = Not equal + 05H = Greater than + 06H = Less than + 03H = Equal + 07H = Greater or equal + 08H = Less or equal + + + + + Size of the formula data for first value or formula. Read-only. + + + + + Size of the formula data for second value or formula + (sz2, used for second part of "Between" and "Not between" + comparison, this field is 0 for other comparisons). Read-only. + + + + + Option flags. + + + + + Not used. + + + + + True if left border style and color are modified. + + + + + True if right border style and color modified. + + + + + True if top border style and color are modified. + + + + + True if bottom border style and color are modified. + + + + + True if pattern style is modified. + + + + + True if pattern color is modified. + + + + + False if pattern background color is modified. + + + + + False if Number format is modified. + + + + + True if record contains font formatting block. + + + + + True if record contains border formatting block. + + + + + True if record contains pattern formatting block. + + + + + True if record contains Number format. + + + + + Read-only. Maximum possible size of the record. + + + + + Font height (in twips = 1/20 of a point); + or FFFFFFFFH to preserve the cell font height. + + + + + Posture: 0 = Normal; 1 = Italic + + + + + Cancellation: 0 = Off; 1 = On + + + + + Font weight (400 - Normal text, 700 - Bold text). + + + + + Escapement type. + + + + + Underline type. + + + + + Font color index; or FFFFFFFFH to preserve the cell font color. + + + + + Indicates whether font style (posture or boldness) was modified. + + + + + Indicates whether font cancellation was modified. + + + + + Indicates whether font escapment was modified. + + + + + Indicates whether font underline was modified. + + + + + True if number format is user defined. + + + + + + Left border line style. + + + + + Right border line style. + + + + + Top border line style. + + + + + Bottom border line style. + + + + + Color index for left line. + + + + + Color index for right line. + + + + + Color index for top line. + + + + + Color index for bottom line. + + + + + Fill pattern style. + + + + + Color index for pattern. + + + + + Color index for pattern background. + + + + + Parsed first formula string. + + + + + Parsed second formula string. + + + + + Returns bytes of the first formula. Read-only. + + + + + Returns bytes of the second formula. Read-only. + + + + + + + + + + + + + + + + + + + + + + + + + Default constructor, sets all fields default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + + + + + + + + + + + This record defines a 3D chart group and also contains generic formatting information. + + + + + Correct record size. + + + + + Rotation angle (0 to 360 degrees). + + + + + Elevation angle (�90 to +90 degrees). + + + + + Distance from eye to chart (0 to 100). + + + + + Height of plot volume relative to width and depth. + + + + + Depth of points relative to width. + + + + + Space between series. + + + + + Option flags. + + + + + Whether to use perspective transform. + + + + + 3-D columns are clustered or stacked. + + + + + Use auto scaling. + + + + + Reserved; must be one. + + + + + Use 2D walls and gridlines. + + + + + Indicates whether elevation has default value. + + + + + Indicates whether rotation has default value. + + + + + Default constructor, sets all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Opertaor to check if the record are equal + + + + + + + + Checks and returns if the records are not equal + + + + + + + + Rotation angle (0 to 360 degrees). + + + + + Elevation angle (�90 to +90 degrees). + + + + + Indicates whether rotation has default value. + + + + + Indicates whether elevation has default value. + + + + + Distance from eye to chart (0 to 100). + + + + + Height of plot volume relative to width and depth. + + + + + Depth of points relative to width. + + + + + Space between series. + + + + + Holder of flags. + + + + + Whether to use perspective transform. + + + + + 3D columns are clustered or stacked. + + + + + Use auto scaling. + + + + + Use 2D walls and gridlines. + + + + + This record specifies linked series data or text. + + + + + Link index identifier. + + + + + Reference type. + + + + + Option flags holder. + + + + + Index to number format record. + + + + + Size of parsed formula of link array. + + + + + True if this object has a custom number format; False if number format + is linked to data source. + + + + + + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Clones current record. + + Returns cloned object. + + + + Link index identifier. + + + + + Reference type. + + + + + Option flags holder. + + + + + Index to number format record. + + + + + Size of parsed formula of link array. + + + + + True if this object has a custom number format; False if number format + is linked to data source. + + + + + + + + + + Link index options. + + + + + Represents the LinkToTitleOrText link index option. + + + + + Represents the LinkToValues link index option. + + + + + Represents the LinkToCategories link index option. + + + + + Represents the LinkToBubbles link index option. + + + + + + + + + + Use default categories. + + + + + Text or value entered directly into the formula bar. + + + + + Linked to worksheet. + + + + + Not used. + + + + + Error reported. + + + + + This record specifies rich-text formatting (bold, italic, font changes, + etc.) within chart titles and data labels. + + + + + Number of rich-text runs. + + + + + + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Clones current record. + + Returns cloned object. + + + + Number of rich-text runs. + + + + + + + + + + + + + + + Size of the TRun item. + + + + + First char index. + + + + + Font index. + + + + + New paragarph start or not. + + + + + Creates new instance of TRuns. + + Base first char. + Base font index. + + + + + Gets or sets first char index. + + + + + Gets or sets font index. + + + + + Check the new paragarph start or not. + + + + + This record describes the patterns and colors used in a filled area. + + + + + Correct size of the record. + + + + + Foreground color (RGB). + + + + + Background color (RGB). + + + + + Pattern. + + + + + Storage for record bit flags. + + + + + Automatic format. + + + + + Foreground and background are swapped when the data value is negative. + + + + + Index of foreground color. + + + + + Background color index. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Foreground color (RGB). + + + + + Background color (RGB). + + + + + Pattern. + + + + + Holder of record flags. + + + + + Index of foreground color. + + + + + Background color index. + + + + + Automatic format or not. + + + + + Foreground and background are swapped when the data value is negative. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record defines an area chart group. + + + + + Contains information about chart type. + + + + + Indicates whether values should be stacked. + + + + + Indicates whether values should be shown as percents. + + + + + Record size. + + + + + Holder of all flags. + + + + + Series in this group are stacked. + + + + + Each category is broken down as a percentage. + + + + + This area has a shadow. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Holder of all flags. + + + + + Series in this group are stacked. + + + + + Each category is broken down as a percentage. + + + + + This area has a shadow. + + + + + + + + + + + + + + + The ATTACHEDLABEL record defines the data label type. The ATTACHEDLABEL + record applies to the label data identified in the associated + DATAFORMAT record. + + + + + Correct record size. + + + + + Holder of all record flags. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Holder of all record flags... changes of record setting does not + influence on this property value till serialization. + + + + + + + + + + Show value as a percent of the total. This bit applies only to pie charts. + + + + + Show category label and value as a percentage (pie charts only). + + + + + Show smoothed line. + + + + + Show category label. + + + + + Show bubble sizes. + + + + + Possible option flags + + + + + No option flag set. + + + + + Show the actual value of the data point. + + + + + Show value as a percent of the total. This bit applies only to pie charts. + + + + + Show category label and value as a percentage (pie charts only). + + + + + Show smoothed line. + + + + + Show category label. + + + + + Show bubble sizes. + + + + + This record defines axis options. + + + + + Correct record size. + + + + + Minimum category on axis. + + + + + Maximum category on axis. + + + + + Value of major unit. + + + + + Units of major unit. + + + + + Value of minor unit. + + + + + Units of minor unit. + + + + + Base unit of axis. + + + + + Crossing point of value axis (date). + + + + + Option flags. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + size of read item + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Minimum category on axis. + + + + + Maximum category on axis. + + + + + Value of major unit. + + + + + Units of major unit. + + + + + Value of minor unit. + + + + + Units of minor unit. + + + + + Base unit of axis. + + + + + Crossing point of value axis (date). + + + + + Holder of record flags. + + + + + Use default minimum. + + + + + Use default maximum. + + + + + Use default major unit. + + + + + Use default minor unit. + + + + + Date axis. + + + + + Use default base. + + + + + Use default crossing point. + + + + + Use default date settings for axis. + + + + + Option flags. + + + + + None. + + + + + Use default minimum. + + + + + Use default maximum. + + + + + Use default major unit. + + + + + Use default minor unit. + + + + + This a date axis. + + + + + Use default base. + + + + + Use default crossing point. + + + + + Use default date settings for axis. + + + + + This record specifies the number of axes sets (1 = primary + only, 2 = primary and secondary) used on the chart (3D charts + can only have primary axes). + + + + + Number of axes sets. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Size of the required storage space. Read-only. + + + + + Number of axes sets. + + + + + Represents DisplayUnits option. + + + + + Record size constant. + + + + + Represents display units in axis. + + + + + Represents display units value. + + + + + Indicates is show display unit label. + + + + + Reserved value. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Represents display units in axis. + + + + + Represents display units value. + + + + + Indicates is show display unit label. + + + + + Represents reserved byte. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record usually follows an AXIS record to define the axis line + as it appears on the chart. + + + + + Correct size of the record. + + + + + Axis line identifier: + 0 = the axis line itself + 1 = major grid line along the axis + 2 = minor grid line along the axis + 3 = walls or floor -- walls if parent axis is type 0 or 2; floor if parent axis is type 1. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Axis line identifier. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + Represents chart category axis offset record. + + + + + Minimum record size constant (generated by some version of MS Excel (probably 2007 Beta). + + + + + Record size constant. + + + + + Represents display units in axis. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Indicates is show display unit label. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record specifies the location and size of the chart axes, + in units of 1/4000 of the chart area. + + + + + Correct record size. + + + + + Axis index (0 = main, 1 = secondary). + + + + + X coordinate of top left corner. + + + + + Y coordinate of top left corner. + + + + + Length of x axis. + + + + + Length of y axis. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Axis index (0 = main, 1 = secondary). + + + + + X coordinate of top left corner. + + + + + Y coordinate of top left corner. + + + + + Length of x axis. + + + + + Length of y axis. + + + + + This record defines the axis type. + + + + + Correct record size. + + + + + Axis type: + 0 = category axis or x axis on a scatter chart + 1 = value axis + 2 = series axis + + + + + Field reserved by Microsoft. Read-only. + + + + + Field reserved by Microsoft. Read-only. + + + + + Field reserved by Microsoft. Read-only. + + + + + Field reserved by Microsoft. Read-only. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Axis type: + 0 = category axis or x axis on a scatter chart + 1 = value axis + 2 = series axis + + + + + Field reserved by Microsoft. Read-only. + + + + + Field reserved by Microsoft. Read-only. + + + + + Field reserved by Microsoft. Read-only. + + + + + Field reserved by Microsoft. Read-only. + + + + + Represents the Chart axis type. + + + + + Represents the CategoryAxis chart axis type. + + + + + Represents the ValueAxis chart axis type. + + + + + Represents the SeriesAxis chart axis type. + + + + + This record defines a bar or column chart group. + + + + + Correct record size. + + + + + Space between bars (percent of bar width), default = 0. + + + + + Space between categories (percent of bar width), default = 50. + + + + + Holder of all flags. + + + + + True for horizontal bars (bar chart). + False for vertical bars (column chart). + + + + + Stack the displayed values. + + + + + Each category is displayed as a percentage. + + + + + True if this bar has a shadow; otherwise False. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Space between bars. + + + + + Space between categories (percent of bar width), default = 50. + + + + + Holder of all flags. + + + + + True for horizontal bars (bar chart). + False for vertical bars (column chart). + + + + + Stack the displayed values. + + + + + Each category is displayed as a percentage. + + + + + True if this bar has a shadow; otherwise False. + + + + + Represents begin display axis unit label record. + + + + + Record size constant. + + + + + Represents display units in axis. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Indicates is show display unit label. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record stores options for a custom bar of pie or pie of + pie chart; these are two of the pie chart subtypes. + + + + + Count of pie slices in the bar of pie or pie of pie chart. + + + + + Array of bytes; each byte contains a bit field that describes the + individual point positioning in the series. If a slice is on the + secondary pie or bar chart, the corresponding bit is set to 1 (one); + otherwise the bit is 0 (zero). + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Clones current record. + + Returns cloned record. + + + + Count of pie slices in the bar of pie or pie of pie chart. + + + + + Array of bytes; each byte contains a bit field that describes the + individual point positioning in the series. If a slice is on the + secondary pie or bar chart, the corresponding bit is set to 1 (one); + otherwise the bit is 0 (zero). + + + + + This record stores options for a bar of pie or pie of pie chart; + these are two of the pie chart subtypes. + + + + + Record size. + + + + + 0 = normal pie chart + 1 = pie of pie chart + 2 = bar of pie chart + + + + + Holder of DefaultSplitValue property flag. + + + + + True to use default split value; otherwise False. + + + + + Split type: + 0 = Position + 1 = Value + 2 = Percent + 3 = Custom + + + + + For split = 0, which positions should go to the other pie / bar. + + + + + For split = 2, what percentage should go to the other pie / bar. + + + + + Size of the second pie as a percentage of the first. + + + + + Space between the first pie and the second. + + + + + For split = 1, what values should go to the other pie / bar. + + + + + True if the second bar / pie has a shadow; otherwise False. + + + + + Represents LeaderLines of datalabels + This property is included as the support in enabled after 2003 formats + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + 0 = normal pie chart + 1 = pie of pie chart + 2 = bar of pie chart + + + + + True to use default split value; otherwise False. + + + + + Split type: + 0 = Position + 1 = Value + 2 = Percent + 3 = Custom + + + + + For split = 0, which positions should go to the other pie / bar. + + + + + For split = 2, what percentage should go to the other pie / bar. + + + + + Size of the second pie as a percentage of the first. + + + + + Space between the first pie and the second. + + + + + For split = 1, what values should go to the other pie / bar. + + + + + 1 = the second pie / bar has a shadow. + + + + + True to show leader lines to data labels. + + + + + This record defines the scaling options for a category or series axis. + + + + + IMaxCross interface. + + + + + Gets or sets IsMaxCross property. + + + + + Minimum value for CrossingPoint, LabelsFrequency, and TickMarksFrequency properties. + + + + + Maximum value for CrossingPoint, LabelsFrequency, and TickMarksFrequency properties. + + + + + Correct record size. + + + + + Value axis / category crossing point (2D charts only). + + + + + Value axis / category crossing point in double. + + + + + Frequency of labels. + + + + + Frequency of tick marks. + + + + + Record flags holder. + + + + + Value axis crossing: + False if axis crosses mid-category. + True if axis crosses between categories. + + + + + Value axis crosses at the far right category (in a line, bar, + column, scatter, or area chart; 2D charts only). + + + + + Display categories in reverse order. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Value axis / category crossing point (2D charts only). + + + + + Value axis / category crossing point in double (2D charts only). + + + + + Frequency of labels. + + + + + Frequency of tick marks. + + + + + Holder of record flags. + + + + + Value axis crossing: + False if axis crosses mid-category. + True if axis crosses between categories. + + + + + Value axis crosses at the far right category (in a line, bar, + column, scatter, or area chart; 2D charts only). + + + + + Display categories in reverse order. + + + + + This record is the parent record for the chart group format + description. Each chart group will have a separate CHARTFORMAT + record, followed by a BEGIN record, the chart-group description, + and an END record. + + + + + Correct size of the record. + + + + + Field reserved by Microsoft for own use. Read-only. + + + + + Field reserved by Microsoft for own use. Read-only. + + + + + Field reserved by Microsoft for own use. Read-only. + + + + + Field reserved by Microsoft for own use. Read-only. + + + + + Holder of record options. + + + + + Vary color for each data point. + + + + + Drawing order (0 = bottom of the z-order). + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Field reserved by Microsoft for own use. Read-only. + + + + + Field reserved by Microsoft for own use. Read-only. + + + + + Field reserved by Microsoft for own use. Read-only. + + + + + Field reserved by Microsoft for own use. Read-only. + + + + + + + + + + Vary color for each data point. + + + + + Drawing order (0 = bottom of the z-order). + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record specifies drop lines, hi-lo lines, or series lines + on a line chart. If the chart has both drop lines and hi-lo + lines, two CHARTLINE records will be present. + + + + + Record size. + + + + + Drop lines / hi-lo lines: + 0 = drop lines + 1 = hi-lo lines + 2 = series lines (the lines that connect the columns in a stacked column chart) + + + + + Boolean value indicates whether drop lines are present in stock, line or area charts + + + + + Boolean value indicates whether high low lines are present in stock or line charts + + + + + Boolean value indicates whether series lines are present in pie of pie or bar of pie charts + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Operator to check if the records are equal + + + + + + + + Checks and returns is the records are not equal + + + + + + + + Drop lines / hi-lo lines: + 0 = drop lines + 1 = hi-lo lines + 2 = series lines (the lines that connect the columns in a stacked column chart) + + + + + True if stock, line or area charts has drop lines + + + + + True if stock or line charts has high low lines + + + + + True if pie of pie or bar of pie charts has series lines + + + + + The CHART record marks the start of the chart data substream in the + workbook BIFF stream. This record defines the location of the chart + on the display and its overall size. The X and Y fields define the + position of the upper-left corner of the bounding rectangle that + encompasses the chart. The position of the chart is referenced to the page. + The Width and Height fields define the overall size (the bounding rectangle) of + the chart, including title, pointing arrows, axis labels, etc. + The position and size are specified in points (1/72 inch), using a fixed + point format (two bytes integer, two bytes fraction). + + + + + Correct size of the record. + + + + + X-position of upper-left corner. + + + + + Y-position of upper-left corner. + + + + + X-size. + + + + + Y-size. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + X-position of upper-left corner. + + + + + Y-position of upper-left corner. + + + + + X-size. + (1/72 inch), used a fixed point format (two bytes integer, two bytes fraction). + + + + + Y-size. + (1/72 inch), used a fixed point format (two bytes integer, two bytes fraction). + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + The DATAFORMAT record contains the zero-based numbers of the data + point and series. The subordinate records determine the format of + the series or point defined by the DATAFORMAT record. + + + + + Correct size of the record. + + + + + Point number (FFFFh means entire series). + + + + + Series index (file relative). + + + + + Series number (as shown in name box -- S1, S2, etc.). This can + be different from yi if the series order has been changed. + + + + + Holder of record flags. + + + + + True to use Microsoft Excel 4.0 colors for automatic formatting. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Point number (FFFFh means entire series). + + + + + Series index (file relative). + + + + + Series number (as shown in name box -- S1, S2, etc.). This can + be different from yi if the series order has been changed. + + + + + Options holder. + + + + + True to use Microsoft Excel 4.0 colors for automatic formatting. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Summary description for ChartDataLabelsRecord. + + + + + + + + + + Option flags. + + + + + Indicates whether series name is in data labels. + + + + + Indicates whether category name is in data labels. + + + + + Indicates whether value is in data labels. + + + + + Indicates whether percentage is in data labels. + + + + + Indicates whether bubble size is in data labels. + + + + + Length of the delimiter. + + + + + Delimiter. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Operator to check if the records are equal + + + + + + + + Checks and returns if the records are not equal + + + + + + + + Option flags. Read-only. + + + + + Indicates whether series name is in data labels. + + + + + Indicates whether category name is in data labels. + + + + + Indicates whether value is in data labels. + + + + + Indicates whether percentage is in data labels. + + + + + Indicates whether bubble size is in data labels. + + + + + Length of the delimiter. + + + + + Delimiter. + + + + + This record stores options for the chart data table. + + + + + Record size. + + + + + Holder of record options. + + + + + True if data table has horizontal borders. + + + + + True if data table has vertical borders. + + + + + True if data table has a border. + + + + + True if data table shows series keys. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Holds record flags. + + + + + True if data table has horizontal borders. + + + + + True if data table has vertical borders. + + + + + True if data table has a border. + + + + + True if data table shows series keys. + + + + + The DEFAULTTEXT record precedes a TEXT record to identify the text + defined in the TEXT record as the default properties for certain chart items. + + + + + Correct record size. + + + + + Object identifier for the text: + 0 = default text characteristics for "show labels" data labels + 1 = default text characteristics for value and percentage data labels + 2 = default text characteristics for all text in the chart + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Object identifier for the text: + TextDefaults.ShowLabels = default text characteristics for "show labels" data labels. + TextDefaults.ValueAndPercents = default text characteristics for value and percentage data labels. + TextDefaults.All = default text characteristics for all text in the chart. + + + + + Represents the text defaults options. + + + + + Represents the ShowLabels text defaults option. + + + + + Represents the ValueAndPercents text defaults option. + + + + + Represents the All text defaults option. + + + + + This record defines drop bars on a line chart. If the chart contains + drop bars, the chart BIFF will contain two DROPBAR records. The first + DROPBAR record corresponds to the up bar and the second DROPBAR record + corresponds to the down bar. + + + + + Record size. + + + + + Drop bar gap width (0 to 100%). + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Drop bar gap width (0 to 500%). + + + + + Represents end display axis unit label record. + + + + + Minimum record size constant (generated by some version of MS Excel (probably 2007 Beta). + + + + + Record size constant. + + + + + Represents display units in axis. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Indicates is show display unit label. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + The FBI record stores font metrics. + + + + + Correct record size. + + + + + Width of basis when font was applied. + + + + + Height of basis when font was applied. + + + + + Font height applied. + + + + + Scale basis. + + + + + Index number into the font table. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Width of basis when font was applied. + + + + + Height of basis when font was applied. + + + + + Font height applied. + + + + + Scale basis. + + + + + Index number into the font table. + + + + + This record is the child of a TEXT record and defines a text + font by indexing the appropriate font in the font table. The + font table is built from FONT records. + + + + + Correct record size. + + + + + Index number into the font table. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Index number into the font table. + + + + + Read-only. Minimum possible size of the record. + + + + + Read-only. Maximum possible size of the record. + + + + + This record is written by Microsoft Excel but it is ignored. + Applications writing chart BIFF do not need to write this + record and applications reading chart BIFF can ignore it. + + + + + Default record size. + + + + + + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Returns size of the required storage space. + + + + + The FRAME record defines the border that is present around a + displayed label as a rectangle. A displayed label can include + the chart title, the legend (if not a regular rectangle), a + category name, or a value amount. + + + + + Correct size of the record. + + + + + 0 = regular rectangle/no border + 1�3 (reserved) + 4 = rectangle with shadow + + + + + Record flags holder. + + + + + Microsoft Excel calculates size. + + + + + Microsoft Excel calculates position. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Record flags holder. + + + + + 0 = regular rectangle/no border + 1�3 (reserved) + 4 = rectangle with shadow + + + + + Microsoft Excel calculates size. + + + + + Microsoft Excel calculates position. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record stores fill effects such as gradient fills, patterns, + textures, and so on. The record data is obtained from the + Microsoft Office Drawing DLL. + + + + + Represents start mso index. + + + + + Represents last mso index. + + + + + Represents default offset. + + + + + Represents first bytes in record. + + + + + Represents last bytes. + + + + + Represents option list; + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + Parses data from stream. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Infill internal data. + + + + + Updates gel record to adds to stream. + + Returns array list with updated gel frame records. + + + + Clones current record. + + Returns cloned object. + + + + Updates record to serialize in biff stream. + + + + + Indicates whether record needs internal data array or if it can be cleaned. + + + + + Represents list of fill options. + + + + + This record specifies the number-format index for an axis. + + + + + Record size. + + + + + Number-format index (number of the FORMAT record in the BIFF, begins at zero). + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Number-format index (number of the FORMAT record in the BIFF, begins at zero). + + + + + The LEGEND record defines the location of the legend on the + display and its overall size. The displayed legend contains + all series on the chart. + + + + + Record size. + + + + + X-position of upper-left corner. + + + + + Y-position of upper-left corner. + + + + + X-size. + + + + + Y-size. + + + + + Type: + 0 = bottom + 1 = corner + 2 = top + 3 = right + 4 = left + 7 = not docked or inside the plot area + + + + + Spacing: + 0 = close + 1 = medium + 2 = open + + + + + Holder of record flags. + + + + + Automatic positioning (True if legend is docked). + + + + + Automatic series distribution (True in Microsoft Excel 5.0). + + + + + X positioning is automatic. + + + + + Y positioning is automatic. + + + + + True if vertical legend (a single column of entries); + False if horizontal legend (multiple columns of entries). + Manual-sized legends always have this bit set to False. + + + + + True if the chart contains a data table. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + X-position of upper-left corner. + + + + + Y-position of upper-left corner. + + + + + X-size. + + + + + Y-size. + + + + + Type: + 0 = bottom + 1 = corner + 2 = top + 3 = right + 4 = left + 7 = not docked or inside the plot area + + + + + Spacing: + 0 = close + 1 = medium + 2 = open + + + + + Automatic positioning (True if legend is docked). + + + + + Automatic series distribution (True in Microsoft Excel 5.0). + + + + + X positioning is automatic. + + + + + Y positioning is automatic. + + + + + True if vertical legend (a single column of entries); + False if horizontal legend (multiple columns of entries). + Manual-sized legends always have this bit set to False. + + + + + True if chart contains data table. + + + + + This record specifies information about a legend entry which has + been changed from the default legend-entry settings. + + + + + Record size. + + + + + Legend-entry index. + + + + + Record flags holder. + + + + + True if the legend entry has been deleted. + + + + + True if the legend entry has been formatted. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Legend-entry index. + + + + + Options bit flags holder. + + + + + True if the legend entry has been deleted. + + + + + True if the legend entry has been formatted. + + + + + This record defines the appearance of a line, such as an axis line or border. + + + + + Correct size of the record. + + + + + Color of line; RGB value high byte must be set to zero. + + + + + Pattern of line: + 0 = solid + 1 = dash + 2 = dot + 3 = dash-dot + 4 = dash dot-dot + 5 = none + 6 = dark gray pattern + 7 = medium gray pattern + 8 = light gray pattern + + + + + Weight of line: + �1 or 0xffff = hairline + 0 = narrow (single) + 1 = medium (double) + 2 = wide (triple) + + + + + Format flags holder. + + + + + Automatic format. + + + + + True to draw tick labels on this axis. + + + + + True to draw line by custom style. + + + + + Index to color of line. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Color of line; RGB value high byte must be set to zero. + + + + + Line pattern. + + + + + Weight of line. + + + + + Holder of record flags. + + + + + If true - default format; otherwise custom. + + + + + True to draw tick labels on this axis. + + + + + Custom format for line color. + + + + + Line color index.. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record defines a line chart group. + + + + + Record size. + + + + + Holder of record flags. + + + + + Stack the displayed values. + + + + + Each category is broken down as a percentage. + + + + + True if this line has a shadow. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Holder of record flags. + + + + + Stack the displayed values. + + + + + Each category is broken down as a percentage. + + + + + True if this line has a shadow. + + + + + This record defines the color and shape of the line + markers that appear on scatter and line charts. + + + + + Correct size of the record. + + + + + Foreground color: RGB value (high byte = 0). + + + + + Background color: RGB value (high byte = 0). + + + + + Type of marker. + + + + + Format flags. + + + + + Index to color of marker border. + + + + + Index to color of marker fill. + + + + + Size of line markers. + + + + + Automatic color. + + + + + True = "background = none". + + + + + True = "foreground = none". + + + + + Flags monitors the properties which is set and custom + + 0 th position - ForeColor/FillColorIndex + 1 th position - BackColor/BorderColorIndex + 2 th position - Interior None + 3 th position - Border None + 4 th position - Marker Type + 5 th position - Marker Size + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Foreground color: RGB value (high byte = 0). + + + + + Background color: RGB value (high byte = 0). + + + + + Type of marker. + + + + + Format flags. Read-only. + + + + + Index to color of marker border. + + + + + Index to color of marker fill. + + + + + Size of line markers. + + + + + Automatic color. + + + + + True = "background = none". + + + + + True = "foreground = none". + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + Indicates whether the Marker has the line properties. + + + + + Get/Set the flag options for the marker properties. + + + + + Type of marker. + + + + + Represents the NoMarker marker type. + + + + + Represents the Square marker type. + + + + + Represents the Diamond marker type. + + + + + Represents the Triangle marker type. + + + + + Represents the X marker type. + + + + + Represents the Star marker type. + + + + + Represents the DowJones marker type. + + + + + Represents the StandardDeviation marker type. + + + + + Represents the Circle marker type. + + + + + Represents the PlusSign marker type. + + + + + This record links a TEXT record to an object on + the chart or to the entire chart. + + + + + Correct size of the record. + + + + + Object text is linked to. + + + + + Link index 1, series number. + + + + + Link index 2, data point number. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Object text is linked to. + + + + + Link index 1, series number. + + + + + Link index 2, data point number. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record defines the format for a picture attached + to a data series or point. + + + + + Correct size of the record. + + + + + Picture type. + + + + + Image format. + + + + + Environment from which the file was written. + + + + + Option flags. + + + + + Formatting only; no picture attached. + + + + + Picture is attached to top and bottom of column. + + + + + Picture is attached to back and front of column. + + + + + Picture is attached to sides of column. + + + + + Scaling value for pictures, units/picture + (IEEE floating-point number). + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Picture type. + + + + + Image format. + + + + + Environment from which the file was written. + + + + + Option flags. Read-only. + + + + + Formatting only; no picture attached. + + + + + Picture is attached to top and bottom of column. + + + + + Picture is attached to back and front of column. + + + + + Picture is attached to sides of column. + + + + + Scaling value for pictures, units/picture + (IEEE floating-point number). + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + Picture type. + + + + + Represents the Stretched picture type. + + + + + Represents the Stacked picture type. + + + + + Image format. + + + + + Represents the WindowsMetafile image format. + + + + + Represents the MacintoshPICT image format. + + + + + Represents the WindowsBitmap image format. + + + + + Environment from which the file was written. + + + + + Represents the Windows environment option. + + + + + Represents the Macintosh environment option. + + + + + The distance of an open pie slice from the center of the pie + chart expressed as a percentage of the pie diameter. + For example, if the percent = 33 (21h), the pie slice is + one-third of the pie diameter away from the pie center. + + + + + Correct size of the record. + + + + + Distance of pie slice from center of pie. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Distance of pie slice from center of pie. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record defines a pie chart group and specifies pie chart options. + + + + + Correct size of the record. + + + + + Angle of the first pie slice expressed in degrees. + + + + + 0 = True pie chart + Non-zero = size of center hole in a donut chart (as a percentage). + + + + + Option flags. + + + + + True if this pie has a shadow. + + + + + True to show leader lines to data labels. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Angle of the first pie slice expressed in degrees. + + + + + 0 = True pie chart + Non-zero = size of center hole in a donut chart (as a percentage). + + + + + Option flags. Read-only. + + + + + True if this pie has a shadow. + + + + + True to show leader lines to data labels. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + + + + + + Correct size of the record. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record stores scale factors for font scaling. + + + + + Correct size of the record. + + + + + Horizontal growth of plot area for font scaling. + + + + + Vertical growth of plot area for font scaling. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Horizontal growth of plot area for font scaling. + + + + + Vertical growth of plot area for font scaling. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record defines manual position information for the main-axis + plot area, legend, and attached text (data labels, axis labels, + and chart title). The record data depends on the record's use, + as shown in the following sections. + + + + + Correct size of the record. + + + + + For plot area and text must be 2, + For legend must be 5. + + + + + + + + + + X coordinate of the top left corner. + + + + + Y coordinate of the top left corner. + + + + + X coordinate of the bottom right corner. + + + + + Y coordinate of the bottom right corner. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / Initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + + + + + + + + + + + X coordinate of the top left corner. + + + + + Y coordinate of the top left corner. + + + + + X coordinate of the bottom right corner. + + + + + Y coordinate of the bottom right corner. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + + + + + + Correct size of the record. + + + + + Option flags. + + + + + True if the chart contains radar axis labels. + + + + + Not used. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Option flags. Read-only. + + + + + True if the chart contains radar axis labels. + + + + + Field reserved by Microsoft. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record defines a radar chart group. + + + + + Correct size of the record. + + + + + Option flags. + + + + + True if the chart contains radar axis labels. + + + + + True if this radar series has a shadow. + + + + + Not used. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Option flags. Read-only. + + + + + True if the chart contains radar axis labels. + + + + + True if this radar series has a shadow. + + + + + Field reserved by Microsoft. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record specifies the PivotTable reference used for the chart. + + + + + Correct size of the record. + + + + + First PivotTable row. + + + + + Last PivotTable row. + + + + + First PivotTable column. + + + + + Last PivotTable column. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + First PivotTable row. + + + + + Last PivotTable row. + + + + + First PivotTable column. + + + + + Last PivotTable column. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record stores the scatter chart properties. + + + + + Correct size of the record. + + + + + Percent of largest bubble compared to chart in general. + + + + + Bubble size. + + + + + Option flags. + + + + + True if this a bubble series. + + + + + True to show negative bubbles. + + + + + True if bubble series has a shadow. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + Percent of largest bubble compared to chart in general. + + + + + Bubble size. + + + + + Option flags. Read-only. + + + + + True if this a bubble series. + + + + + True to show negative bubbles. + + + + + True if bubble series has a shadow. + + + + + This record defines the series error bars. + + + + + Correct size of the record. + + + + + Error-bar type. + + + + + Error-bar value source. + + + + + True if the error bars are T-shaped (have a line on the top and bottom). + + + + + Reserved; must be 1. + + + + + IEEE number; specifies the fixed value, percentage, + or number of standard deviations for the error bars. + + + + + Number of values or cell references used for custom error bars. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Error-bar type. + + + + + Error-bar value source. + + + + + True if the error bars are T-shaped (have a line on the top and bottom). + + + + + Reserved; must be 1. Read-only. + + + + + IEEE number; specifies the fixed value, percentage, + or number of standard deviations for the error bars. + + + + + Number of values or cell references used for custom error bars. + + + + + Error-bar type. + + + + + Represents the XDirectionPlus error-bar type. + + + + + Represents the XDirectionMinus error-bar type. + + + + + Represents the YDirectionPlus error-bar type. + + + + + Represents the YDirectionMinus error-bar type. + + + + + This record defines a series trend line. + + + + + Correct size of the record. + + + + + Represents default byte array for NaN value. + + + + + Represents default NaN value; + + + + + Regression type. + + + + + Polynomial order or moving average period. + + + + + IEEE number; specifies forced intercept. + (#NA if no intercept is specified) + + + + + True if the equation is displayed. + + + + + True if the R-squared value is displayed. + + + + + IEEE number; specifies number of periods to forecast forward. + + + + + IEEE number; specifies number of periods to forecast backward. + + + + + Updates trend line type on serialize. + + Represents trend line type. + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Regression type. + + + + + Polynomial order or moving average period. + + + + + IEEE number; specifies forced intercept. + (#NA if no intercept is specified) + + + + + True if the equation is displayed. + + + + + True if the R-squared value is displayed. + + + + + IEEE number; specifies number of periods to forecast forward. + + + + + IEEE number; specifies number of periods to forecast backward. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + Regression type. + + + + + Represents the Polynomial regression type. + + + + + Represents the Exponential regression type. + + + + + Represents the Logarithmic regression type. + + + + + Represents the Power regression type. + + + + + Represents the MovingAverage regression type. + + + + + This record specifies series formatting information. + + + + + Correct size of the record. + + + + + Flags. + + + + + True if the line series has a smoothed line. + + + + + True to draw bubbles with 3D effects. + + + + + True if this series has a shadow. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Flags. Read-only. + + + + + True if the line series has a smoothed line. + + + + + True to draw bubbles with 3D effects. + + + + + True if this series has a shadow. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record is subordinate to the second CHARTFORMAT (overlay) + record in a file and defines the series that are displayed as + the overlay to the main chart. The first CHARTFORMAT (main chart) + record in a file does not require a SERIESLIST record because all + series, except those specified for the overlay, are included in + the main chart. + + + + + Minimum size of the record. + + + + + Count of series. + + + + + List of series numbers (words). + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Operator to check if the records are equal + + + + + + + + Checks and returns if the records are not equal + + + + + + + + Clones current record. + + Returns cloned record. + + + + Count of series. Read-only. + + + + + List of series numbers (words). + + + + + Minimum possible size of the record. + + + + + This record describes the series of the chart and contains the + type of data and number of data fields that make up the series. + Series can contain 4000 points in Microsoft Excel version 5. The + sdtX and sdtY fields define the type of data that is contained in + this series. At present, the two types of data used in the Microsoft + Excel chart series are numeric and text (date and sequence + information is not used). The cValx and cValy fields contain the + number of cell records in the series. + + + + + Correct size of the record. + + + + + Type of data in categories. + + + + + Type of data in values. + + + + + Count of categories. + + + + + Count of values. + + + + + Type of data in Bubble size series. + + + + + Count of Bubble series values. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Type of data in categories. + + + + + Type of data in values. + + + + + Count of categories. + + + + + Count of values. + + + + + Type of data in Bubble size series. + + + + + Count of Bubble series values. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + Type of data. + + + + + Represents the Date data format. + + + + + Represents the Numeric data format. + + + + + Represents the Sequence data format. + + + + + Represents the Text data format. + + + + + The value of the ID field determines the assignment of the text field. + + + + + Minimum size of the record. + + + + + Text identifier: 0 = series name or text. + + + + + The series text string. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Text identifier: 0 = series name or text. + + + + + The series text string. + + + + + Minimum possible size of the record. + + + + + This record indicates the series index for the series that + the trend line or error bar is attached to. The series index + is the number of the series in the BIFF (starting with series one). + + + + + Correct size of the record. + + + + + Series index for the series that the trend line + or error bar is attached to. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Series index for the series that the trend line + or error bar is attached to. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record is part of the series specifications and indicates + the chart-group index for the series. The chart-group index + specifies the number of the chart group (specified by a + CHARTFORMAT record) in the BIFF, starting with chart group zero. + + + + + Correct size of the record. + + + + + Chart-group index. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Chart-group index. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + The Shadow record defines the Shadow properties and + the 3D features(bevel top and bevel bottom),Lignting and + Material properties + + + + + Represents a warmMatte Charts + + + + + NoShadow=0 + OffsetRight=1 + OffsetDiagonalBottomRight=2 + OffsetBottom=3 + OffsetDiagonalTopLeft=4 + OffsetCenter=5 + OffsetTop=6 + OffsetLeft=7 + OffsetDiagonalTopRight=8 + OffsetDiagonalBottomLeft=9 + + + + + NoShadow=0 + InsideDiagonalBottomLeft=1 + InsideTop=2 + InsideRight=3 + InsideLeft=4 + InsideDiagonalTopRight=5 + InsideDiagonalBottomRight=6 + InsideCenter=7 + InsideBottom=8 + InsideDiagonalTopLeft=9 + + + + + NoShadow=0, + PrespectiveDiagonalUpperRight=1, + PrespectiveDiagonalLowerRight=2, + PrespectiveDiagonalUpperLeft=3, + PrespectiveDiagonalLowerLeft=4, + Below=5 + + + + + NoAngle=0, + Angle=1, + ArtDeco=2, + Circle=3, + Convex=4, + CoolSlant=5, + Cross=6, + Divot=7, + HardEdge=8, + RelaxedInset=9, + Riblet=10, + Slope=11, + SoftRound=12 + + + + + NoEffect=0, + Matte=1, + WarmMatte=2, + Plastic=3, + Metal=4, + DarkEdge=5, + SoftEdge=6, + Flat=7, + WireFrame=8, + Powder=9, + TranslucentPowder=10, + Clear=11 + + + + + ThreePoint=0, + Balance=1, + BrightRoom=2, + Chilly=3, + Contrasting=4, + Flat=5, + Flood=6, + Freezing=7, + Glow=8, + Harsh=9, + Morning=10, + Soft=11, + Sunrise=12, + SunSet=13, + TwoPoint=14 + + + + + Represents ChartImpl object + + + + + Shadow data + + + + + Creates the Shadow and sets parent + properties to specified values + + parent ThreeDFormatImpl for the Shadow + + + + Returns the chart material type. + + + + + Creates a new object that is a copy of the current instance. + + + + + + Gets or sets the shadow outer presets. + + The shadow outer presets. + + + + Gets or sets the shadow inner presets. + + The shadow inner presets. + + + + Gets or sets the shadow prespective presets. + + The shadow prespective presets. + + + + Gets or sets the material. + + The material. + + + + Gets or sets the lighting. + + The lighting. + + + + Gets or sets the bevel top. + + The bevel top. + + + + Gets or sets the bevel bottom. + + The bevel bottom. + + + + Represents ChartImpl object + + + + + This record specifies chart sheet properties. + + + + + Correct size of the record. + + + + + Represents minimum record size. + + + + + Property flags. + + + + + True if chart type has been manually formatted (changed from the default). + + + + + True to plot only visible cells. + + + + + True not to size chart with window. + + + + + False to use default plot area dimensions; + True if POS record describes plot-area dimensions. + + + + + True if user has modified chart enough that fManPlotArea should be set to 0. + + + + + Empty cells plotted as: + 0 = not plotted + 1 = zero + 2 = interpolated + + + + + This field is not used. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Property flags. Read-only. + + + + + True if chart type has been manually formatted (changed from the default). + + + + + True to plot visible cells only. + + + + + True not to size chart with window. + + + + + False to use default plot area dimensions; + True if POS record describes plot-area dimensions. + + + + + True if user has modified chart enough that fManPlotArea should be set to 0. + + + + + Empty cells plotted as: + 0 = not plotted + 1 = zero + 2 = interpolated + + + + + Reserved by Microsoft. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record defines where a series appears in the list of series. + + + + + Correct size of the record. + + + + + Index into series list. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + size of read item + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Index into series list. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record defines a surface chart group. + + + + + Correct size of the record. + + + + + Option flags. + + + + + True if chart contains color fill for surface. + + + + + True if this surface chart has shading. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Option flags. Read-only. + + + + + True if chart contains color fill for surface. + + + + + True if this surface chart has shading. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record is used in conjunction with several child records + (which further define the text displayed on the chart) to define + the alignment, color, position, size, and so on of text fields + that appear on the chart. The fields in this record have meaning + according to the TEXT record's parent (CHART, LEGEND, or DEFAULTTEXT). + + + + + Mask for the rotation value. + + + + + First bit of the rotation value. + + + + + Mask for data label placement. + + + + + First bit of the data label placement value. + + + + + Correct size of the record. + + + + + Horizontal alignment of the text. + + + + + Vertical alignment of the text. + + + + + Display mode of the background. + + + + + Text color. + + + + + X-position of the text in 1/4000 of chart area. + + + + + Y-position of the text in 1/4000 of chart area. + + + + + X-size of the text in 1/4000 of chart area. + + + + + Y-size of the text in 1/4000 of chart area. + + + + + Option flags. + + + + + Index to color value of text. + + + + + Option flags. + + + + + True for automatic color; False for user-selected color. + + + + + If text is an attached data label: + True to draw legend key with data label; + False for no legend key. + + + + + True if text of label is the value of the data point; + False if text is the category label. + + + + + True if text is not horizontal; + False if text is horizontal. + + + + + True to use automatically generated text string; + False to use user-created text string. + Must be one for fShowValue to be meaningful. + + + + + True if default or unmodified; + False if modified. + + + + + True if an automatic text label has been deleted by the user. + + + + + True if background is set to automatic. + + + + + True to show category label and value as a percentage. + (pie charts only) + + + + + True to show value as a percent. + This bit applies only to pie charts. + + + + + True to show bubble sizes. + + + + + True to show label. + + + + + Text rotation. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Horizontal alignment of the text. + + + + + Vertical alignment of the text. + + + + + Display mode of the background. + + + + + Text color. + + + + + X-position of the text in 1/4000 of chart area. + + + + + Y-position of the text in 1/4000 of chart area. + + + + + X-size of the text in 1/4000 of chart area. + + + + + Y-size of the text in 1/4000 of chart area. + + + + + Option flags. Read-only. + + + + + Index to color value of text. + + + + + Option flags. Read-only. + + + + + True if automatic color; False if user-selected color. + + + + + If text is an attached data label: + True to draw legend key with data label; + False if no legend key. + + + + + True if text of label is the value of the data point; + False if text is the category label. + + + + + True if text is not horizontal; + False if text is horizontal. + + + + + True to use automatically generated text string; + False to use user-created text string. + Must be one for fShowValue to be meaningful. + + + + + True if default or unmodified; + False if modified. + + + + + True if an automatic text label has been deleted by the user. + + + + + True if background is set to automatic. + + + + + True to show category label and value as a percentage + (pie charts only). + + + + + True to show value as a percent. + This bit applies only to pie charts. + + + + + True to show bubble sizes. + + + + + True to show label. + + + + + Rotation. + + + + + Data label placement. + + + + + Text rotation. + + + + + Text rotation. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record defines tick mark and tick label formatting. + + + + + Mask for the rotation value. + + + + + First bit of the rotation value. + + + + + Correct size of the record. + + + + + Maximum possible angle. + + + + + Size of the first reserved field. + + + + + Type of major tick mark. + + + + + Type of minor tick mark. + + + + + Tick label position relative to axis line. + + + + + Background mode. + + + + + Tick-label text color- uint; RGB value, high byte = 0. + + + + + Tick-label text color - int; RGB value, high byte = 0. + + + + + Automatic text color. + + + + + Display flags. + + + + + Automatic text background. + + + + + Automatic rotation. + + + + + Index to color of tick label. + + + + + Text rotation angle. + + + + + Indicates if axis label is left to right. + + + + + Indicates if axis label is right to left. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Type of major tick mark. + + + + + Type of minor tick mark. + + + + + Tick label position relative to axis line. + + + + + Background mode. + + + + + Tick-label text color; RGB value, high byte = 0. + + + + + Tick-label text color; RGB value, high byte = 0. + + + + + Display flags. Read-only. + + + + + Index to color of tick label. + + + + + Reserved; must be zero. + + + + + Automatic text color. + + + + + Automatic text background. + + + + + Automatic rotation. + + + + + Indicates is axis label is left to right. + + + + + Indicates is axis label is right to left. + + + + + Rotation. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + Microsoft Excel writes this record, but its value is always zero. + Applications writing BIFF do not need to write this record. + If the application writes this record, the wUnits field must be zero. + + + + + Correct size of the record. + + + + + Always zero. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Always zero. Read-only. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This record defines the value axis. + + + + + Record size constant. + + + + + Maximum value on axis. + + + + + Maximum value on axis. + + + + + Value of major increment. + + + + + Value of minor increment. + + + + + Value where category axis crosses. + + + + + Format flags. + + + + + Automatic minimum selected. + + + + + Automatic maximum selected. + + + + + Automatic major selected. + + + + + Automatic minor selected. + + + + + Automatic category crossing point selected. + + + + + Logarithmic scale. + + + + + Values in reverse order. + + + + + Category axis to cross at maximum value. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Maximum value on axis. + + + + + Maximum value on axis. + + + + + Value of major increment. + + + + + Value of minor increment. + + + + + Value where category axis crosses. + + + + + Format flags. Read-only. + + + + + Automatic minimum selected. + + + + + Automatic maximum selected. + + + + + Automatic major selected. + + + + + Automatic minor selected. + + + + + Automatic category crossing point selected. + + + + + Logarithmic scale. + + + + + Values in reverse order. + + + + + Category axis to cross at maximum value. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + This class wraps single record. Used in charts for DataLabels settings. + + + + + Offset to the wrapped record data. + + + + + Wrapped record. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Gets / sets wrapped record. Read-only. + + + + + Represents wrapper for gel frame record. + + + + + Represents interface, that implement mso option and fopte option wrapper classes. + + + + + Replaces option with specified value. + + Option to set. + + + + Removes current option by id. + + Represents option id to remove. + + + + Represents option storage. + + + + + Creates new instance of object. + + + + + Creates new instance of object. + + Represents option storage. + + + + Replaces option with specified value. + + Option to set. + + + + Removes current option by id. + + Represents option id to remove. + + + + Returns option list. Read-only. + + + + + Summary description for PrintedChartSizeRecord. + + + + + Correct size of the record. + + + + + Information on how chart should be printed. + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Information on how chart should be printed. + + + + + Minimum possible size of the record. + + + + + Maximum possible size of the record. + + + + + Rotation type. + + + + + Represents the LeftToRight rotation type. + + + + + Represents the TopToBottom rotation type. + + + + + Represents the CounterClockwise rotation type. + + + + + Represents the Clockwise rotation type. + + + + + + Contains utility methods for object cloning. + + + + + Clones int array. + + Array to clone + Returns cloned array. + + + + Clones ushort array. + + Array to clone. + Returns cloned array. + + + + Clones string array. + + Array to clone. + Returns cloned array. + + + + Clones object array. + + Array to clone. + Returns cloned array. + + + + Clones object that implements ICloneable interface. + + Object to clone. + A clone of the object. + + + + Clones object that implements ICloneable interface. + + Object to clone. + A clone of the object. + + + + Clones List with objects that implement ICloneable interface. + + List with objects to clone. + List with clone of the objects. + + + + Clones List with objects that implement ICloneable interface. + + List with objects to clone. + List with clone of the objects. + + + + Clones SortedList with objects that implement ICloneable interface. + + SortedList with objects to clone. + SortedList with clone of the objects. + + + + Clone SortedList. + + SortedList to clone + Returns a copy of the SortedList. + + + + Clones List with objects that implement ICloneable interface. + + List with objects to clone. + Parent object for the new items. + List with clone of the objects. + + + + Clones object that implements ICloneable interface. + + Object to clone. + Parent object for the new object. + A clone of the object. + + + + Clones MsoBase record. + + Object to clone. + Parent object. + A clone of the object. + + + + Clones byte array. + + Array to clone. + Return cloned array. + + + + Clones formula tokens array. + + Array to clone. + Return cloned array. + + + + Clones ColumnInfo array. + + Array to clone. + Return cloned array. + + + + Clone Dictionary. + + Dictionary to clone + Returns a copy of the Dictionary. + + + + Clone Dictionary. + + Dictionary to clone + Returns a copy of the Dictionary. + + + + Clone Dictionary. + + Dictionary to clone + Returns a copy of the Dictionary. + + + + Clone Dictionary. + + Dictionary to clone + Returns a copy of the Dictionary. + + + + Clone Dictionary. + + Dictionary to clone. + Parent object for the new objects. + Returns a copy of the Dictionary. + + + + Creates copy of the stream. + + Stream to copy. + Created stream. + + + + Creates a copy of the array of boolean values. + + Array to clone. + Created object. + + + + Summary description for CodeNameRecord. + + + + + + + + + + Default constructor + + + + + Read / initialize constructor + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Size of the required storage space. Read-only. + + + + + + + + + + Stores the text encoding (code page) used to encode byte strings. + In BIFF8, it always contains the Unicode code page 1200. + + + + + Correct size of the record. + + + + + Stores the text encoding (code page) used to encode byte strings. + In BIFF8, it always contains the Unicode code page 1200. + + + + + Default Constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Stores the text encoding (code page) used to encode byte strings. + In BIFF8 it always contains the Unicode code page 1200. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Defines the formatting information for a range of columns including width, + outline, and collapsed options. + + + + + Bit mask for the outlevel value. + + + + + Maximum and correct record size. + + + + + Index of first column in the range. + + + + + Index of the last column in the range. + + + + + Width of the columns in 1/256 of the width of zero character, + using default font (first font record in the file). + + + + + Index of extended format record for default column formatting. + + + + + Options: Use bit fields instead of using this field. + + + + + Columns are hidden. + + + + + Columns are collapsed. + + + + + Not used. + + + + + Default Constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserves for record's internal data array iReserve bytes. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Compares this record with another ColumnInfoRecord. + + Object to compare with. + 0 if specified record is equal to the current record; otherwise -1. + + + + Sets options into default state without setting extended format index. + + + + + Read-only. Reserved value. + + + + + Index of first column in the range. + + + + + Index of the last column in the range. + + + + + Width of the columns in 1/256 of the width of the zero character, + using default font (first font record in the file). + + + + + Index of extended format record for default column formatting. + + + + + Columns are hidden. + + + + + Gets or sets a value indicating whether this instance is best fit. + + + true if this instance is best fit; otherwise, false. + + + + + Gets or sets a value indicating whether this instance is user set. + + + true if this instance is user set; otherwise, false. + + + + + Gets or sets a value indicating if the phonetic information should be displayed by default for the affected column(s) of the worksheet. + + + true if this instance is phenotic; otherwise, false. + + + + + Outline level of the columns (0 = no outline). + This property changes bits of private m_usOptions field. + Set method would raise ArgumentOutOfRange exception + if value is more than 7. + + + + + If 1, then columns are collapsed. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's internal data array. + + + + + Row or column index. + + + + + Whenever the content of the record exceeds the given limits, + the record must be split. Several Continue Records containing + the additional data are added after the parent record. + + + + + Summary description for ILengthSetter. + + + + + Sets length of the internal data. + + New length to set. + + + + + + + + + + Sets internal data array. + + Data array to set. + + + + Default constructor + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack its own properties into + an internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Size of the required storage space. Read-only. + + + + + + + + + + This record stores two Windows country identifiers. + The first represents the user interface language of the Excel version + that saved this file, and second represents the system regional settings + at the time the file was saved. + + + + + Correct size of the record. + + + + + Represents the user interface language of the Excel version + that saved this file. + + + + + Represents the system regional settings + at the time the file was saved. + + + + + Default constructor + + + + + Read/Initialize constructor + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Represents the user interface language of the Excel version + that saved this file. + + + + + Represents the system regional settings + at the time the file was saved. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record stores the contents of an external cell or cell range. + An external cell range has only one row. If a cell range spans over more than + one row, several CRN records will be created. + + + + + Offset to the values. + + + + + Error message. + + + + + Default subitem size (boolean, error and number). + + + + + Unused bytes for boolean and error cell values. + + + + + Index to last column inside of the referenced sheet. + + + + + Index to first column inside of the referenced sheet. + + + + + Index to row inside of the referenced sheet. + + + + + Array of cell values. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Data provider that contains record's data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + + + + + + + + + + + Returns size of the required storage space. + + Excel version. + Size of the required storage space. + + + + Creates copy of the current object. + + A copy of the current object. + + + + + + + + + Index to last column inside of the referenced sheet. + + + + + Index to first column inside of the referenced sheet. + + + + + Index to row inside of the referenced sheet. + + + + + Read-only. Minimum possible size of the record. + + + + + Array of cell values. + + + + + + + + + + Summary description for CustomPropertyRecord. + + + + + Size of fixed data. + + + + + Max length of name string. + + + + + Unknown record header. + + + + + Property name. + + + + + Property value. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Returns size of the required data array. + + Size of the required data array. + + + + Gets / sets property name. + + + + + Gets / sets property value. + + + + + This record specifies the base date for displaying date values. + All dates are stored as count of days past this base date. + + + + + Two bytes which used for storing boolean value: + 0 = Base date is 1899-Dec-31 (the cell value 1 represents 1900-Jan-01) + 1 = Base date is 1904-Jan-01 (the cell value 1 represents 1904-Jan-0) + + + + + Use first bit of m_usWindow to store boolean flag: + False = Base date is 1899-Dec-31 (the cell value 1 represents 1900-Jan-01) + True = Base date is 1904-Jan-01 (the cell value 1 represents 1904-Jan-0) + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Two bytes which are used for storing boolean value. + + + + + Boolean value specifying whether 1904 date windowing is used. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Contains relative offsets to calculate the stream position of + the first cell record for each row. + This record is written once in a row block. + + + + + Size of the fixed part. + + + + + Subitem size. + + + + + Relative offset to first row record in the row block + (difference between record position of this record and the row record; + positive offset for an earlier stream position). + + + + + Relative offset to first row record in the row block + (difference between record position of this record and the row record; + positive offset for an earlier stream position). + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array iReserve bytes. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + This method checks the record's internal data array for integrity. + + If there is any internal error. + + + + Size of the required storage space. Read-only. + + + + + Relative offset to first row record in the row block + (difference between record position of this record and the row record; + positive offset for an earlier stream position). + + + + + Relative offset to first row record in the row block + (difference between record position of this record and the row record; + positive offset for an earlier stream position). + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + This record stores a data consolidation reference. DConBin is identical to + DConName, except that DConBin is used when the data consolidation reference + refers to a built-in name (as described by a Name record). + + + + + Named range of the source area for consolidation. + + + + + Workbook name. + + + + + Used for preserving the Record. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack its own properties into + an internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Named range of the source area for consolidation. + + + + + Workbook name. + + + + + The DConName record contains the complete description of a named range of + cells for the Consolidate command (Data menu). + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Summary description for DCON. + + + + + Correct size of the record. + + + + + Index to the data consolidation function. + + + + + 1 indicates that the left column option is turned on. + + + + + 1 indicates that the top row option is turned on. + + + + + 1 indicates that the create links to source data option is turned on. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Index to the data consolidation function. + + + + + True means that the left column option is turned on. + + + + + True means that the top row option is turned on. + + + + + True means that the create links to source data option is turned on. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Summary description for DConRefRecord. + + + + + First row of the source area for consolidation. + + + + + Last row of the source area for consolidation. + + + + + First column of the source area for consolidation. + + + + + Last column of the source area for consolidation. + + + + + Workbook name. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + First row of the source area for consolidation. + + + + + Last row of the source area for consolidation. + + + + + First column of the source area for consolidation. + + + + + Last column of the source area for consolidation. + + + + + Workbook name. + + + + + Specifies the default width for columns that have no specific width set. + + + + + Correct size of the record. + + + + + Column width in characters, using the width of the zero character + with default font (first font record in the file). + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Column width in characters, using the width of the zero character + with default font (first font record in the file). + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Row height for rows with undefined or inexplicitly defined heights. + + + + + Correct record size. + + + + + Option flags. + + + + + Default row height for undefined rows / rows with undefined height. + + + + + Specifies whether the default settings for the row height have been changed.. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Option flags. + + + + + Default row height for undefined rows / rows with undefined height. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Returns a boolean value which specifies whether the default settings for the row height have been changed. + + + + + Stores the maximum change of the result to the exit of an iteration. + + + + + Default value of the maximum change in iteration. + + + + + Correct record size. + + + + + Maximum change in iteration (IEEE floating-point value). + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Maximum change in iteration (IEEE floating-point value). + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Contains the range address of the used area in the current sheet. + + + + + Correct record size. + + + + + Index to first used row. Zero base. + + + + + Index to last used row. One base. + + + + + Index to first used column. Zero base. + + + + + Index to last used column. One base. + + + + + Not used. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Read-only. Not used. + + + + + Index to first used row. + + + + + Index to last used row. + + + + + Index to first used column. + + + + + Index to last used column. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Double Stream Flag Record indicating if this is a double stream file. + Double Stream files contain both BIFF8 and BIFF7 workbooks. + + + + + Correct size of the record. + + + + + Indicates if this is a double stream file. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Indicates if this is a double stream file. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record is the list header of the Data Validity Table in the current sheet. + + + + + Option flags. + + + + + False if the prompt box is not visible. + True if the prompt box is currently visible. + + + + + False if the prompt box has a fixed position. + True if the prompt box appears at a cell. + + + + + True if cell validity data is cached in DV records. + + + + + Horizontal position of the prompt box, if it has a fixed position, in pixels. + + + + + Vertical position of the prompt box, if it has a fixed position, in pixels. + + + + + Object identifier of the drop-down arrow object for a list box, + If a list box is visible at the current cursor position; otherwise FFFFFFFFH. + + + + + Number of DV records. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + + + + + + + + + Read-only. Option flags. + + + + + False if prompt box is invisible. + True if prompt box is currently visible. + + + + + False if prompt box has fixed position. + True if prompt box appears at cell. + + + + + True if cell validity data is cached in DV records. + + + + + Horizontal position of the prompt box, if it has a fixed position, in pixels. + + + + + Vertical position of the prompt box, if it has a fixed position, in pixels. + + + + + Object identifier of the drop-down arrow object for a list box, + if a list box is visible at the current cursor position; otherwise FFFFFFFFH. + + + + + Number of DV records. + + + + + Read-only. Minimum possible size of the record. + + + + + Read-only. Maximum possible size of the record. + + + + + This record is part of the Data Validity Table. It stores data validity settings + and a list of cell ranges which contain these settings. The "prompt box" appears + while editing such a cell. The "error box" appears if the entered value does not + fit the conditions. The data validity settings of a sheet are stored in a sequential + list of DV records. This list is preluded by a DVAL record. If a string is empty + and the default text should appear in the prompt box or error box, the string + must contain a single zero character (string length will be 1). + + + + + Bit mask for data type. + + + + + Bit mask for error style. + + + + + Bit mask for condition. + + + + + Start bit of the error style in options. + + + + + Start bit of the condition in options. + + + + + + + + + + Size of the fixed part. + + + + + Option flags. + + + + + True if in list type validity, the string list is explicitly given in the formula. + + + + + True if empty cells are allowed. + + + + + True to suppress the drop-down arrow in list type validity. + + + + + True to show prompt box if cell selected. + + + + + True to show error box if invalid values are entered. + + + + + Title of the prompt box (Unicode string, 16-bit string length). + + + + + Title of the error box (Unicode string, 16-bit string length). + + + + + Text of the prompt box (Unicode string, 16-bit string length). + + + + + Text of the error box (Unicode string, 16-bit string length) + + + + + Number of cell range addresses. + + + + + Cell range address list with all affected ranges. + + + + + Tokens of the first formula. + + + + + Tokens of the choice value. + + + + + Formula or choice is parsed. + + + + + Tokens of the second formula. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + When last byte of read data is not the last byte of data after parsing. + + + + + In this method, a class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + In this method, the replace(current culture list separator binary value / 2C00) value + is replaced to replacewith(0000) value. when a choice value is not null, it is parsed + to split the string value by comma and combined by current culture list separator. + Then the value is converted to a byte array, then the current culture list separator + is replaced with "0000". + + + + + In this method, the choice string value is split by comma separator to store the string array. + + + + + In this method, The string value is converted to Byte array value. + + + + + Adds new range to the list of validation ranges. + + Range to add. + + + + Adds new ranges to the list of validation ranges. + + Array of ranges to add. + + + + Adds new ranges to the list of validation ranges. + + Collection of ranges to add. + + + + Clears the Address. + + + + + Evaluates size of the formula in bytes. + + Tokens to get size from. + Excel version that should be used to infill data. + Indicates whether we should add size of the additional data. + Formula size in bytes. + + + + Size of the required storage space. Read-only. + + + + + Returns StringEmpty if income string is empty or null. + + String to modify. + + + + + Returns empty string is income string is StringEmpty. + + String to modify. + + + + + Clone current record. + + Returns clone of the current object. + + + + + + + + + + + + + + + + + Option flags. + + + + + True if in list type validity, the string list is explicitly given in the formula. + + + + + True if empty cells are allowed. + + + + + True to suppress the drop-down arrow in list type validity. + + + + + True to show prompt box if cell is selected. + + + + + True to show error box if invalid values are entered. + + + + + Data type: + Changes bits of m_uiOptions private member. + + + + + Error style: + Changes bits of m_uiOptions private member. + + + + + Condition operator: + Changes bits of m_uiOptions private member. + + + + + Title of the prompt box (Unicode string, 16-bit string length). + + + + + Title of the error box (Unicode string, 16-bit string length). + + + + + Text of the prompt box (Unicode string, 16-bit string length). + + + + + Text of the error box (Unicode string, 16-bit string length). + + + + + Formula data for the first condition (RPN token array without size field). + + + + + Formula data for the second condition (RPN token array without size field). + + + + + Choice data for the condition. + + + + + Formula or Choice data is parsed. + + + + + Read-only. Number of cell range addresses. + + + + + Cell range address list with all the affected ranges. + + + + + Read-only. Minimum possible size of the record. + + + + + The end record defines the end of a block of records for a (Graphing) + data object. This record is matched with a corresponding BeginRecord. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + It indicates the end of a record block with leading BOF record. + This could be the end of the workbook globals, a worksheet, a chart, etc. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + One of the most complex records. There are two types: + Style and Cell. It should be noted that fields in the extended format record are + somewhat arbitrary. Almost all of the fields are bit-level, but + we name them as best as possible by functional group. In some + places, this is more conducive than others. + + + + + Indent bit mask: + + + + + Read order bit mask: + + + + + Start bit for read order value. + + + + + Parent index bit mask: + + + + + Rotation bit mask: + + + + + Top border palette bit mask: + + + + + Bottom border palette bit mask: + + + + + Diagonal bit mask: + + + + + Diagonal line bit mask: + + + + + Fill pattern bit mask: + + + + + Left border bit mask: + + + + + Right border bit mask: + + + + + Top border bit mask: + + + + + Bottom border bit mask: + + + + + Horizontal alignment bit mask: + + + + + Vertical alignment bit mask: + + + + + Background bit mask: + + + + + Foreground border bit mask: + + + + + Left border palette bit mask: + + + + + Right border palette bit mask: + + + + + Start bit for the right border bit mask: + + + + + + + + + + Mask for FillForeground property. + + + + + Default color index. + + + + + Default pattern color index. + + + + + Maximum possible index in the extended format, means that there is no parent. + + + + + Default value for HAlignJustify + + + + + Default value for VAlignJustify + + + + + Index to font record. + + + + + Index to FORMAT record. + + + + + Cell options. + + + + + True if cell is locked. + + + + + True if formula is hidden. + + + + + Type of extended format record, False = Cell XF; True = Style XF. + + + + + + + + + + Alignment options of the extended format. + + + + + True indicates that text is wrapped at right border. + + + + + For far east languages. Supported only for format, always 0 for US. + + + + + Indent options of the extended format. + + + + + True indicates shrinking content to fit into cell. + + + + + True indicates that XF contains merged cells. + + + + + Flag for number format, if False, then an attribute of the parent style is used. + + + + + Flag for font, if False, then an attribute of the parent style is used. + + + + + Flag for horizontal and vertical alignment, text wrap, indentation, + orientation, rotation, and text direction. If False, then an attribute + of the parent style is used. + + + + + Flag for border lines. + If False, then an attribute of the parent style is used. + + + + + Flag for background area style. + If False, then an attribute of the parent style is used. + + + + + Flag for cell protection (cell locked and formula hidden). + If False, then an attribute of the parent style is used. + + + + + Indent value. + + + + + Indicates whether the range is wrapped first + + + + + Indicates whether the range is rotated first + + + + + Border options: + + + + + Palette options: + + + + + True if diagonal line runs from top left to right bottom. + + + + + True if diagonal line runs from bottom left to right top. + + + + + Additional palette options: + + + + + Fill options: + + + + + Indicates whether hash is valid. + + + + + Current hash value. + + + + + Index to the parent extended format. + + + + + Extended format fill pattern type. + + + + + Index of Fill. + + + + + Index of Border. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for the record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Compares with Extended format record. + + Param to compare. + Returns compare results. + + + + Serves as a hash function for a particular type, suitable for use + in hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + Swaps colors if necessary. + + + + + Copies border settings from another extended format record. + + Source record to copy data from. + + + + Copies alignment settings from another extended format record. + + Source record to copy data from. + + + + Copies pattern settings from another extended format record. + + Source record to copy data from. + + + + Copies protection / cells settings from another extended format record. + + Source record to copy data from. + + + + Copies data from the current ExtendedFormat record to the specified + ExtendedFormat record. + + ExtendedFormat record that will receive data from + the current record. + + + + Copies data from the current Biff record to the specified Biff record. + + Biff record that will receive data from the current record. + + + + Cell options bits in one location. Read-only. + + + + + Border options bits in one location. Read-only. + + + + + Alignment options bits in one location. Read-only. + + + + + Index to font record. + + + + + Represent the fill index + + + + + Represent the Border Index + + + + + Index to FORMAT record: + + + + + True if cell is locked. + + + + + True if formula is hidden. + + + + + Type of extended format record. + + + + + + + + + + Gets /sets index to parent style XF (always FFFH in style XFs in Excel 97). + + + + + True means that text is wrapped at right border. + + + + + For far east languages supported only for format, always use False for US. + + + + + Gets or sets indent level. + + + + + True means to shrink content to fit into cell. + + + + + True if extended format contains merged cells. + + + + + Text direction, the reading order for far east versions. + + + + + Text rotation angle: + 0- Not rotated + 1-90- 1 to 90 degrees counterclockwise + 91-180- 1 to 90 degrees clockwise + 255- Letters are stacked top-to-bottom, but not rotated. + + + Thrown when value is more than 0xFF. + + + + + Flag for number format, if False, then an attribute of the parent style is used. + + + + + Flag for font, if False, then an attribute of the parent style is used. + + + + + Flag for horizontal and vertical alignment, text wrap, indentation, + orientation, rotation, and text direction. If False, then an attribute + of the parent style is used. + + + + + Flag for border lines. + If False, then an attribute of the parent style is used. + + + + + Flag for background area style. + If False, then an attribute of the parent style is used. + + + + + Flag for cell protection (cell locked and formula hidden). + If False, then attributes of the parent style is used. + + + + + Color index for top line color. + This property changes bits of the m_uiAddPaletteOptions class member. + + + Thrown when value is more than 0x7F. + + + + + Color index for bottom line color. + This property changes bits of the m_uiAddPaletteOptions class member. + + + Thrown when value is more than 0x7F. + + + + + Color index for left line color + This property changes bits of the m_usPaletteOptions class member. + + + Thrown when value is more than 0x7F. + + + + + Color index for right line color. + This property changes bits of the m_usPaletteOptions class member. + + + Thrown when value is more than 0x7F. + + + + + Color index for diagonal line color. + This property changes bits of the m_uiAddPaletteOptions class member. + + + Thrown when value is more than 0x7F. + + + + + Diagonal line style. + This property changes bits of the m_uiAddPaletteOptions class member. + + + Thrown when value is more than 0x0F. + + + + + Diagonal line is drawing from top left to bottom right corner of cell. + + + + + Diagonal line is drawing from bottom left to top right corner of cell. + + + + + Fill pattern: + This property changes bits of the m_uiAddPaletteOptions class member. + + + Thrown when value is more than 0x3F. + + + + + Left line style: + This property changes bits of the m_usBorderOptions class member. + + + + + Right line style: + This property changes bits of the m_usBorderOptions class member. + + + + + Top line style: + This property changes bits of the m_usBorderOptions class member. + + + + + Bottom line style: + This property changes bits of the m_usBorderOptions class member. + + + + + Horizontal alignment. + + + + + Vertical alignment. + + + + + Color index for pattern color + This property changes bits of m_usFillPaletteOptions. + + + Thrown when value is more than 0x7F. + + + + + Color index for pattern background. + This property changes bits of m_usFillPaletteOptions. + + + Thrown when value is more than 0x7F. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Type of extended format. + + + + + Represents the XF_CELL extended format type. + + + + + Represents the XF_STYLE extended format type. + + + + + This record contains the number of additional EXTERNSHEET records. + In BIFF8, this is omitted because there is only one EXTERNSHEET record. + + + + + Correct size of the record. + + + + + Number of additional EXTERNSHEET records. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Number of additional EXTERNSHEET records. + + + + + Read-only. Minimum possible size of the record. + + + + + Read-only. Maximum possible size of the record. + + + + + + + + + + Option flags. + + + + + One-based index to sheet in preceding SUPBOOK record, 0 + for global defined names (for external names), or + Not used (for add-in functions). + + + + + Not used. + + + + + External name (Unicode string, 8-bit string length) or + Add-in function name (Unicode string, 8-bit string length). + + + + + Size of the formula data. + + + + + Formula data or + 02H 00H 1CH 17H (formula representing the #REF! error code). + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Infills internal data in the case of DDE link extern name. + + + + + Read-only. Option flags. + + + + + Read-only. One-based index to sheet in preceding SUPBOOK + record, 0 for global defined names (for external names), or + Not used (for add-in functions). + + + + + Read-only. Not used. + + + + + Read-only. Formula data or + 02H 00H 1CH 17H (formula representing the #REF! error code). + + + + + External name (Unicode string, 8-bit string length) or + Add-in function name (Unicode string, 8-bit string length). + + + + + Read-only. Minimum possible size of the record. + + + + + + + + + + Indicates whether data array is needed to store record data. Read-only. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets or sets if it is add-in name record + + + + + Possible options flags. + + + + + The record stores a list with indexes to SUPBOOK records. + + + + + Size of the fixed part. + + + + + Maximum references in one record. + + + + + Number of following REF structures. + + + + + List of REF structures. + + + + + Represents the number of elements in rgXTI array + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserves for record's internal data array iReserve bytes. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + This method adds one TREF structure to the list. + + SUPBOOK index. + Index to first SUPBOOK sheet. + Index to last SUPBOOK sheet. + + Index of the old REF structure (if there was one) + or new REF structure. + + + + + + + + + + + + Append Reference + + + + + + Append References + + + + + + Prepend References + + + + + + Creates new instance + + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Size of the required storage space. Read-only. + + + + + Number of following REF structures. + + + + + List of REF structures. + + + + + Gets list of references. + + + + + Read-only. Minimum possible size of the record. + + + + + Stores index to SUPBOOK record. + + + + + Size of the TREF. + + + + + Index to SUPBOOK record. + + + + + Index to first SUPBOOK sheet. + + + + + Index to last SUPBOOK sheet. + + + + + Constructs reference by SUPBOOK index and its start and end sheet. + + SUPBOOK index. + Index to first SUPBOOK sheet. + Index to last SUPBOOK sheet. + + + + Index to SUPBOOK record. + + + + + Index to first SUPBOOK sheet. + + + + + Index to last SUPBOOK sheet. + + + + + Extended SST table info subrecord + contains the elements of "info" in the SST's array field. + + + + + Correct size of the record. + + + + + Absolute stream position of first string of the portion. + + + + + Position of first string of the portion inside the current record, + including record header. This counter restarts at zero, if the SST + record is continued with a CONTINUE record. + + + + + Not used. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Absolute stream position of first string of the portion. + + + + + Position of first string of the portion inside of current record, + including record header. This counter restarts at zero, if the SST + record is continued with a CONTINUE record. + + + + + Read-only. Reserved. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + + It is used by Excel to create a hash table with stream + offsets to the SST record to optimize string search operations. Excel + may not shorten this record if strings are deleted from the shared + string table, so the last part might contain invalid data. The stream + indexes in this record divide the SST into portions containing a + constant number of strings. + + + + + Size of the fixed part. + + + + + Subitem size. + + + + + Number of strings in a portion, this number is >=8. + + + + + Array that contains all portions. + + + + + Indicates and of workbook in some cases. + + + + + Reference to the SST record. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + + + + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Method updates fields of record which must contain stream offset + or other data. This method must be called before save operation + when all records placed in array in its positions and offsets can + be freely calculated. + + + + + Size of the required storage space. Read-only. + + + + + Number of strings in a portion, this number is >=8. + + + + + Array that contains all portions. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Indicates and of workbook in some cases. Read-only. + + + + + Gets / sets reference to the SST record. + + + + + This record is part of the file protection. It contains information about + the read/write password of the file. All record contents following this + record will be encrypted. + + + + + Value of hash field indicating that standard encryption algorithm was used. + + + + + Value of hash field indicating that strong encryption algorithm was used. + + + + + Indicates whether weak (xor) or not weak encryption was used. + 0 - BIFF2-BIFF7 weak XOR encryption, + 1 - BIFF8 standard encryption or BIFF8X strong encryption. + + + + + Encryption key calculated from the read/write password. + + + + + Hash value calculated from the read/write password. + + + + + Record content for BIFF8 standard encryption. + + + + + Record content for BIFF8X strong encryption. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Creates internal standard encryption block. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Indicates whether weak encryption is used. + + + + + Encryption key calculated from the read/write password. + + + + + Hash value calculated from the read/write password. + + + + + Returns content for BIFF8 standard encryption. Read-only. + + + + + Returns content for BIFF8 standard encryption. Read-only. + + + + + + + + + + Summary description for FilePassStandardBlock. + + + + + Correct record size. + + + + + Unique document identifier used to initialize the encryption algorithm. + + + + + Encrypted document identifier used to verify the entered password. + + + + + Digest used to verify the entered password. + + + + + Default constructor. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Buffer length. + + + + + + + + + + Unique document identifier used to initialize the encryption algorithm. Read-only. + + + + + Encrypted document identifier used to verify the entered password. Read-only. + + + + + Digest used to verify the entered password. Read-only. + + + + + Summary description for FilePassStrongBlock. + + + + + Option flags. + + + + + Unknown value. + + + + + Stream encryption algorithm identifier. + 00006801H = RC4 (Ron's Code 4) + 00006802H = SEAL (Secure Encryption Algorithm) + + + + + Password hashing algorithm identifier: + 00008001H = MD2 (Message Digest 2) + 00008002H = MD4 (Message Digest 4) + 00008003H = MD5 (Message Digest 5) + 00008004H = SHA-1 (Secure Hash Algorithm) + + + + + Hash key length (bits). + + + + + Cryptographic provider type: + 00000001H = RSA + 0000000CH = RSA SChannel + 0000000DH = DSS and Diffie-Hellman + 00000012H = DH SChannel + 00000018H = RSA and AES + + + + + Unknown or not used. + + + + + Cryptographic provider name, Unicode character array with trailing null character. + + + + + Unique document identifier used to initialize the encryption algorithm. + + + + + Encrypted document identifier used to verify the entered password. + + + + + Encrypted document identifier used to verify the entered password. + + + + + Digest used to verify the entered password. + + + + + Default constructor. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + + + + Option flags. + + + + + Unknown value. + + + + + Stream encryption algorithm identifier. + 00006801H = RC4 (Ron's Code 4) + 00006802H = SEAL (Secure Encryption Algorithm) + + + + + Password hashing algorithm identifier: + 00008001H = MD2 (Message Digest 2) + 00008002H = MD4 (Message Digest 4) + 00008003H = MD5 (Message Digest 5) + 00008004H = SHA-1 (Secure Hash Algorithm) + + + + + Hash key length (bits). + + + + + Cryptographic provider type: + 00000001H = RSA + 0000000CH = RSA SChannel + 0000000DH = DSS and Diffie-Hellman + 00000012H = DH SChannel + 00000018H = RSA and AES + + + + + Unknown or not used. Read-only. + + + + + Cryptographic provider name, Unicode character array with trailing null character. + + + + + Returns digest used to verify the entered password. Read-only. + + + + + The record represents an empty cell. + It contains the cell address and formatting information. + + + + + 1 = Recommend Read-only state while loading the file. + + + + + Hash value calculated from the Read-only password. + + + + + User name of the file creator. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + 1 = Recommend Read-only state while loading the file. + + + + + Hash value calculated from the Read-only password. + + + + + Index to XF (extended format) record. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + If the sheet contains a filtered list, the file will contain FilterModeRecord. + This record has no record data field. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Read-only. Maximum possible size of the record. + + + + + Function Group Count Record + Number of built in function groups in the current version of the + spreadsheet (probably only used in Windows). + + + + + Correct size of the record. + + + + + Number of built in function groups in the current version of the spreadsheet. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Number of built in function groups in the current version of the spreadsheet. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Font Record describes a font in the workbook (index = 0-3,5-infinity - skip 4) + An element in the Font Table contains information about a used font, + including character formatting. + + + + + Incorrect hash value. + + + + + Offset to the byte that indicates whether string is unicode. + + + + + Default font color. + + + + + Height of the font (in twips = 1/20 of a point). + + + + + Font attributes. + + + + + Palette color index. + + + + + Boldness (100-1000). Standard values are 0190H (400) for normal text + and 02BCH (700) for bold text. + + + + + Escapement: + + + + + Underline type: + + + + + Font family: + + + + + Character set: + + + + + Not used. + + + + + Font name: Unicode string, 8-bit string length. + + + + + Cached hash code value. + + + + + Represents the baseline value which indicates whether superscript or subscript + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Determines whether the specified object is equal to the current object. + + The object to compare with the current object. + + True if the specified object is equal to the current object; + otherwise False. + + + + + Serves as a hash function for a particular type, suitable for + use in hashing algorithms and data structures like a hash table. + + A hash code for the current object. + + + + + + + + + + + + + + + + + Read-only. Font attributes. + + + + + Height of the font (in twips = 1/20 of a point). + + + + + Palette color index. + + + + + Boldness (100-1000). Standard values are 0190H (400) for normal text + and 02BCH (700) for bold text. + + + + + Escapement: + + + + + Gets or sets the baseline value which indicates whether superscript or subscript + + + + + Underline type: + + + + + Font family: + + + + + Character set: + + + + + Font name: Unicode string, 8-bit string length. + + + + + True if characters are italic. + + + + + True if characters are strikeout. + + + + + Whether to use the Mac outline font style (Mac only). + + + + + Whether to use the Mac shadow font style thing (Mac only). + + + + + Not used. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Font attributes. + + + + + Indicates whether this font is in italics. + + + + + Indicates whether characters are strikeout. + + + + + Whether to use the Mac outline font style (Mac only). + + + + + Whether to use the Mac shadow font style (Mac only). + + + + + All known flags. + + + + + Record contains information about a number format. + + + + + Format index used in other records: + + + + + Length of format string: + + + + + Format string: + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Format index used in other records: + + + + + Length of format string: + + + + + Read-only. Minimum possible size of record. + + + + + Contains the token array and the result of a formula cell. + + + + + This interface supports DoubleValue property. + + + + + Returns double value. Read-only. + + + + + Returns type code. Read-only. + + + + + Represents first mask + + + + + Represents boolean mask. + + + + + Represents error mask. + + + + + Represents error mask. + + + + + String mask. + + + + + String mask. + + + + + Size of the fixed part. + + + + + Formula value in the case of string value. + + + + + Formula value in the case of blank value. + + + + + Offset to the formula value. + + + + + Size of the data before expression that belongs only to formula (without row, column, xf indexes). + + + + + + + + + + + + + + + + + + + + The calculated value of the formula. + + + + + The option flags. + + + + + True to always recalculate. + + + + + True to calculate on open. + + + + + True if part of a shared formula. + + + + + Reserved. + + + + + Size of the following formula data. + + + + + Formula data (RPN token array). + + + + + Array that contains all parsed tokens. + + + + + + + + + + Default constructor + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + Parses formula expression and fill and provides internal integrity data check. + + Object that provides access to the data. + Record's data offset. + Excel version that was used to infill data provider. + + If there is any internal error. + + + + + Prepares expression field. + + + + + Sets bool or error value. + + Represents bool or error byte value. + Indicates if this is error. + + + + Size of the required storage space. Read-only. + + + + + Converts error or bool value to formula double value. + + Represents error or bool value. + Indicates is error or bool. + Returns formula value. + + + + Sets flags so MS Excel understands that formula returns string. + + Object that provides access to the data. + Offset to the FormulaRecord.. + + + + Sets flags so MS Excel understands that formula returns string. + + Object that provides access to the data. + Offset to the FormulaRecord.. + + + + Reads record's value from the data provider. + + Provider to read data from. + Offset to the record's start. + Excel version used to infill data. + Record's value. + + + + Reads record's value from the data provider. + + Provider to read data from. + Offset to the record's start. + Excel version used to infill data. + Record's value. + + + + Reads record's value from the data provider. + + Provider to read data from. + Offset to the record's start. + Excel version used to infill data. + Record's value. + + + + Writes record's value into the data provider. + + Provider to write data into. + Offset to the record's start. + Excel version used to infill data. + Record's value. + + + + + + + + + + + + + + + + Converts formula tokens from Excel97to2003 to Excel2007 version and vice versa. + + Formula tokens. + Defines what conversion must be applied. + + + + Converts formula GOTO and IF token from Excel97to2003 to Excel2007 version and vice versa. + + Formula tokens. + GOTO token index. + Defines what conversion must be applied. + + + + Expression of the formula. + + + + + The calculated value of the formula. + + + + + Option flags of the formula. + + + + + True to always recalculate. + + + + + True to calculate on open. + + + + + True if part of a shared formula. + + + + + Array that contains all parsed tokens. + + + + + Read-only. Reserved. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + + + + + + The calculated value of the formula. + + + + + Indicates if formula record contain bool value. Read-only. + + + + + Indicates if formula record contain error value. Read-only. + + + + + Gets if the formula record is blank + + + + + + + + + + The calculated boolean value of the formula. + + + + + The calculated error value of the formula. + + + + + Array that contains all parsed tokens. + + + + + This token contains a 3D reference or an external reference to a cell range. + + + + + This token contains the reference to a cell range in the same sheet. + + + + + This class is the base class for each token of a formula. + + + + + Code of the token. + + + + + Default constructor. + + + + + Creates token using data from an array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Gets string from byte array, length of string is set in 16 bit value. + + Data array which contains string. + Offset to the string data. + Parsed string. + + + + Gets string from byte array and returns it's length in iFullLength parameter. + + Data array which contains string. + Offset to the string data. + Length of the string in bytes. + Parsed string. + + When data array is smaller than the string that should be in it. + + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Returns size of the tokens array. + + Excel version - defines resulting size. + Size of the tokens array. + + + + Converts token to byte array. + + Excel version - defines resulting array format and size. + Array of bytes representing this token. + + + + Converts token to a string. + + String representation of the token. + + + + Converts token to the string. + + Formula util. + String representation of the token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to a string. + + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + + + + + + + + + Indicates whether R1C1 notation must be used. + Formula util. + + + + + + + + + + Indicates whether R1C1 notation must be used. + Formula util. + + + + + + Moves token by iRowOffset to the right and iColumnOffset to the left. + (Updates formula token after copy operation.) + + Row offset. + Column offset. + Parent workbook. + Updated token. + + + + Adjusts the location of the token by the specified amount. + Returns adjusted token. (Updates formula token after move operation.) + + Index of the sheet where formula is located. + Zero-based row index which this token is located. + Zero-based column index where this token is located. + Index of the source worksheet in move range operation. + Index of the destination worksheet in move range operation. + Rectangle that was moved. + Location were range was moved. + Indicates whether token was changed during move operation. + Parent workbook. + Adjusted token. + + + + + + + + + + + + + Check whether the restangle intersects with the formula. + + Source rectange. + Formula first row + Formula first column + Formula last row + Formula last column + + + + + + + + + + + + + + Converts tokens from regular formula into tokens from shared formula. + + Represents parent workbook. + Represents row index. + Represents column index. + Formula token. + + + + Compares this token to the specified one. + + Token to compare with. + 0 if tokens are equal. + + + + Compares tokens content. + + Token to compare with this one. + 0 if tokens are equal. + + + + Compares two token arrays. + + The first array to compare. + The second array to compare. + True if arrays are equal; otherwise false. + + + + Converts and returns the string + + + + + + + + + + + + + + + + + + + Converts index to token code. + + + + + + + + Read-only. True if this ptg represents operation ptg. + + + + + Gets / sets. Code of the token. + + + + + This interface should be implemented by those tokens + that can be converted to IRange. + + + + + This interface should be implemented by those tokens + that can be converted to IRange. + + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Worksheet that contains range. + Range represented by the token. + + + + This interface is implemented by formula tokens that can provide corresponding rectangle object. + + + + + Returns rectangle represented by the token that implements this interface. + All coordinates are zero-based. + + Rectangle represented by the token. + + + + Updates token using data from specified rectangle. + + Rectangle with new token coordinates. + Updated token. + + + + Converts current token into error token. + + Created token. + + + + Summary description for IToken3D. + + + + + Converts current token to the 3D token. + + Reference to the worksheet. + Created token. + + + + Index of first row (0..65535) or row offset (-32768..32767). + + + + + Index of last row (0..65535) or row offset (-32768..32767). + + + + + Index of first column (0..255) or column offset (-128..127). + + + + + Option flags of first row and first column. + + + + + Index of last column (0..255) or column offset (-128..127). + + + + + Option flags of last row and last column. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Creates token by its string representation. + + String representation of the formula. + Parent workbook. + + When specified string is not valid token string. + + + + + Creates token using data from an array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Creates copy of the token. + + Token to clone. + + + + + + + + + + + + + + + Creates token using strings that represents cell addresses. + + Row index of the cell that contains this token. + Column index of the cell that contains this token. + String representation of the first row. + String representation of the first column. + String representation of the last row. + String representation of the last column. + + Parent workbook. + + + + Parses specified column and row values and fills token + fields with appropriate values. + + Row index of the cell that contains this token. + Column index of the cell that contains this token. + String representing left column of the area. + String representing top row of the area. + String representing right column of the area. + String representing bottom row of the area. + Indicates whether R1C1 notation is used. + Parent workbook. + + + + Converts token code to index (inverse operation to IndexToCode). + + Reference index. + + + + Gets corresponding error code. + + Corresponding error code. + + + + Indicates whether area covers whole single row. Read-only. + + + + + Indicates whether area covers whole rows. Read-only. + + + + + + + Indicates whether area covers whole columns. Read-only. + + + + + + + Indicates whether area covers whole single column. Read-only. + + + + + Converts incorrect area range to corresponding error ptg. + + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Converts specified index to token code. + + Index of the needed token. + Token that corresponds to the index. + + When index is less than one or greater than 3. + + + + + Converts specified token code to index. + + Token code for which index is required. + Index that corresponds to the code. + + When index is not one of tArea1, tArea2, tArea3. + + + + + Read-only. Size of the record. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to byte array. + + Array of bytes representing token. + + + + Moves row by iRowOffset, iColumnOffset. + + Row offset. + Column offset. + Parent workbook. + Updated token. + + + + + + + + + + + + + + Parent workbook. + + + + + Converts tokens from regular formula into tokens from shared formula. + + Parent workbook. + Represents first row from cells range of shared formula.Zero-base. + Represents first column from cells range of shared formula.Zero-based. + New token for shared formula. + + + + Converts full row or column ptg from Excel2007 to Excel97to03 version and vice versa. + + Returns converted Ptg. + Defines what conversion must be applied. + + + + + + + + + + + + + + + + Returns True if referenced cell was moved. + + + + + + + + + + + + + + Parent workbook. + + + + + + + + + + + + Parent workbook. + + + + + + + + + + + + Parent workbook. + + + + + Checks if while moving rectSource full top row was moved. + + Rectangle that was moved. + True if whole top row was moved. + + + + Checks if while moving rectSource full bottom row was moved. + + Rectangle that was moved. + True if whole bottom row was moved. + + + + Checks if while moving rectSource full left row was moved. + + Rectangle that was moved. + True if whole left row was moved. + + + + Checks if while moving rectSource full right row was moved. + + Rectangle that was moved. + True if whole right row was moved. + + + + + + + + + + + Parent workbook. + + + + + + + + + + + + Parent workbook. + + + + + + + + + + + + Parent workbook. + + + + + + + + + + + + Parent workbook. + + + + + + + + + + + + Parent workbook. + + + + + Checks whether one rectangle is outside of another one. + + First rectangle to check. + Second rectangle to check. + True if toCheck rectangle is outside of owner rectangle. + + + + Checks whether one rectangle is inside of another one. + + Rectangle that could contain another one. + Rectangle that could be contained by another one. + True if toCheck rectangle is contained by owner rectangle. + + + + + + + + + + + Parent workbook. + + + + + + + + + + + + Parent workbook. + + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Worksheet that contains range. + Range represented by the token. + + + + Returns rectangle represented by the token that implements this interface. + All coordinates are zero-based. + + Rectangle represented by the token. + + + + + + + + + + + Converts current token into error token. + + Created token. + + + + Converts current token to the 3D token. + + Reference to the worksheet. + Created token. + + + + Index of the first row (0..65535) or row offset (-32768..32767). + + + + + True if the first row index is relative. + + + + + True if the first column index is relative. + + + + + Index to column (0..255) or column offset (-128..127). + + + + + Index of the last row (0..65535) or row offset (-32768..32767). + + + + + True if the last row index is relative. + + + + + True if the last column index is relative. + + + + + Index to column (0..255) or column offset (-128..127). + + + + + Options for the top left cell of the range. + + + + + Options for the bottom right cell of the range. + + + + + Represents tokens that contains reference to worksheet. + + + + + This interface should be implemented by those tokens which contains 3D references. + + + + + Index to ExternSheetRecord. + + + + + Calls ToString method of the base (not 3d) class. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Index to REF entry in EXTERNSHEET record. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Creates token using data from an array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Constructs token by string value and parent workbook. + + String representation of the token. + Workbook containing the token. + + When specified formula string is not valid Area3D string. + + + + + Creates new token based on another Area3D token. + + Token to copy. + + + + Initializes new token. + + Worksheet reference index. + Zero-based first row index. + Zero-based first column index. + Zero-based last row index. + Zero-based last column index. + First cell options. + Second cell options. + + + + Initializes new token. + + Zero-based row index of the cell that will contain new token. + Zero-based column index of the cell that will contain new token. + Worksheet reference index. + String representation of the first row of the area. + String representation of the first column of the area. + String representation of the last row of the area. + String representation of the last column of the area. + Indicates whether strings are in R1C1 notation. + Parent workbook. + + + + Read-only. Size of the token. + + + + + Converts token to array of bytes. + + Array of bytes that represents this token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + To check the sheet name it's having any special charecter or not + + + + + + + Converts tokens from regular formula into tokens from shared formula. + + Parent workbook. + Represents first row from cells range of shared formula.Zero-base. + Represents first column from cells range of shared formula.Zero-based. + New token for shared formula. + + + + Converts token from shared formula into token from regular formula. + + Parent workbook. + Row index. + Column index. + New token for regular formula. + + + + + + + + + + + + + + + + + + + + + + + + + + Parent workbook. + + + + + Converts incorrect area range to corresponding error ptg. + + + + + Calls ToString method of the base (not 3d) class. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Sets index of the sheet in the correct value, + taking information from the specified workbook. + + Name of the worksheet that is referenced. + + Workbook that contains this record and must contain specified worksheet. + + + Unable to find specified worksheet in the workbook, + possibly because wasn't loaded yet. + + + + + Set area values such as reference indexes, first and last columns, and rows. + + Match that contains such groups SheetName, Column1, Column2, Row1, Row2. + Workbook that contains this token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Converts specified index to the token code. + + Function parameter index. + Token code that corresponds to the specified index. + + When index is less than 1 or greater than 3. + + + + + Converts specified token code to index. + + Token code for which index is required. + Index that corresponds to the code. + + When index is not one of tArea1, tArea2, tArea3. + + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Worksheet that contains range. + Range represented by the token. + + + + Reference to the worksheet. Read-only. + + + + + Summary description for AreaError3dPtg. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Creates token using data from array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + + + + + + + + + + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token code to index (inverse operation to IndexToCode). + + Reference index. + + + + Returns Ptg Offset + + + + + + + + + + + + + + + Converts specified index to the token code. + + Function parameter index. + Token code that corresponds to the specified index. + + When index is less than 1 or greater than 3. + + + + + Converts specified token code to index. + + Token code for which index is required. + Index that corresponds to the code. + + When index is not one of tAreaErr3d1, tAreaErr3d2, tAreaErr3d3. + + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Worksheet that contains range. + Range represented by the token. + + + + This token contains the last reference to a deleted cell range in the same sheet. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Creates token using data from array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + + + + + + + + + + Parent workbook. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token code to index (inverse operation to IndexToCode). + + Reference index. + + + + Returns Ptg Offset + + + + + + + + + + + + + + + Converts specified index to token code. + + Index of the needed token. + Token that corresponds to the index. + + When index is less than one or greater than 3. + + + + + Converts specified token code to index. + + Token code for which index is required. + Index that corresponds to the code. + + When index is not one of tAreaErr1, tAreaErr2, tAreaErr3. + + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Worksheet that contains range. + Range represented by the token. + + + + This token contains the reference to a cell range in the same sheet. + + + + + Default constructor. To prevent user from creating tokens without + parameters and to allow descendants. + + + + + Creates token by its string representation. + + String representation of the formula. + Parent workbook. + + When specified string is not a valid token string. + + + + + Creates token using data from an array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Converts token from shared formula into token from regular formula. + + Parent workbook. + Row index. + Column index. + New token for regular formula. + + + + Converts token code to index (inverse operation to IndexToCode). + + Token code (should be one of tAreaN1, tAreaN2, tAreaN3). + Reference index. + + + + Converts reference index to token code. + + Reference index. + Token code. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Gets the index of the updated row. + + The i row. + The row. + The workbook. + if set to true [is first]. + + + + + Gets the index of the updated column. + + The i column. + The column. + The workbook. + if set to true [is first]. + + + + + Gets corresponding error code. + + Corresponding error code. + + + + First column offset (-128..127). + + + + + Column offset (-128..127). + + + + + This token contains an array constant. The values of the array constant do not follow + the token identifier but are stored behind the complete token array. + + + + + This interface should be implemented by all token classes that + needs some additional data to be read after all formula tokens. + + + + + Reads additional token data that is placed after all formula tokens. + + Object that provides access to the data. + Offset to the additional token data. + Final offset in the data array. + + + + Returns size of the additional data. Read-only. + + + + + Constant that indicates that there is double value in the array. + + + + + Constant that indicates that there is string value in the array. + + + + + Constant that indicates that there is boolean value in the array. + + + + + Constant that indicates that there is error code in the array. + + + + + Constant that indicates that there is null code in the array. + + + + + Separators between rows of the array. + + + + + Separators between columns of the array. + + + + + Number of columns decreased by 1. + + + + + Number of rows decreased by 1. + + + + + Array of cached values. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs array token using string representation. + + Formula string. + Formula parser. + + + + Constructs array but does not read any data. ReadArray should be called for + this purpose because array data is placed just after all other tokens. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Reads array from byte array. + + Object that provides access to the data. + Starting position of array data. + Offset if the first byte after array. + + When data array is too small for tArray data. + + + + + Fills tArray token with data from byte array. + + Object that provides access to the data. + Offset in data array. + Number of columns in this array. + Number of rows in this array. + Returns final offset in data array. + + + + Fills tArray token with data from byte array. + + Data array. + Offset in data array. + Number of columns in this array. + Number of rows in this array. + Returns final offset in data array. + + + + Fills tArray token getting data from array of strings. + + Array of string that contains array data. + Formula parser object that should assist in array items parsing. + + When one of the specified arguments is empty. + + + + + Tries to parse string value as double, bool, or string and returns resulting object. + + String constant that will be parsed. + Formula parser object that should assist in array items parsing. + Parsed constant (double, bool, or string). + + + + Returns all values in data array. Must be written after formula data. + + Array of bytes of all constants stored in the array. + + + + Returns an array representation of boolean value. + + Boolean value that will be converted. + Array of bytes representing boolean value. + + + + Returns an array representation of the error code value. + + Error code. + Array of bytes representing the error code. + + + + Returns an array representation of the null code value. + + Array of bytes representing the null code. + + + + Returns an array representation of double value. + + Double value that will be converted. + Array of bytes representing double value. + + + + Returns an array representation of the string value. + + String value that will be converted. + Array of bytes representing the string value. + + + + Sets token code in accordance with referenceIndex. + + Index that corresponds to the token code. + + When index is less than 1 or larger than 3. + + + + + Read-only. Size of the array token. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts tArray token to byte array. + + Excel version - defines resulting array format and size. + Array of bytes representing this token. + + + + Returns token code by index. + + Index of the needed token. + + + When index is less than 1 or larger than 3. + + + + + + + + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + + + + + + A special attribute control token - typically either a SUM function or an IF function. + + + + + This class represents function with variable arguments number in a formula. + + + + + This class represents function token of a formula. + + + + + This class is the base class for all operation tokens in the formula. + + + + + Default arguments separator. + + + + + String representation of the operation. + + + + + Position of the operand (before (if it is set to False) or after (if it is set to True) operand) for unary operations. + + + + + Default constructor. + + + + + Creates operation from byte array and offset in this array. + + Object that provides access to the data. + Offset to token data. + Excel version that was used to infill data provider. + + + + Converts the operation and its operands to the string. + Gets all needed operands from the Stack parameter and pushes the result into the Stack. + + + Stack that contains all operands and receives result of the operation. + + + + + Converts the operation and its operands to the string. + Gets all needed operands from the Stack parameter and pushes the result into the Stack. + + Object used for formula parsing. + + Stack that contains all operands and receives result of the operation. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Returns array of string where each member corresponds to one argument. + + String representation of the formula. + Index of the operation. + Formula parser. + Array of strings containing operation operands. + + + + Updates parse formula options if necessary. + + Options to update. + Updated value. + + + + Returns arguments separator. + + FormulaUtil object, to get separator from. + Arguments separator. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Read-only. True if this class represents operation (always True for this class). + + + + + Read-only. Type of the operation. + + + + + Read-only. Number of operands this operation needs. + + + + + Gets / sets string representation of the operation. + + + + + Gets / sets True if operation sign should be placed after operand and False otherwise. + + + + + Array of all token attributes applied to the object. + This property is used to increase performance. + + + + + Delimiter between function arguments. + + + + + Index to built-in sheet function. + + + + + Number of arguments. + + + + + Default constructor + + + + + Constructs token using data from byte array. + + Object that provides access to the data. + Offset to token data. + Excel version that was used to infill data provider. + + + + Constructs token by function index. + + Function index. + + + + Constructs function token by function name. + + Valid function name. + + + + Gets operands from string and returns array of string representation of the operands. + + Formula string. + Index to built-in function. + True if function should check operands count. + Formula parser. + Array of strings that contain function operands. + + if checkParamCount = True and actual parameter count does not equal expected + + + + + + + + + + + + Read-only. Size of the token. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts the operation and its operands to the string. + Gets all needed operands from the Stack parameter and pushes the result into the Stack. + + Object used for formula parsing. + + Stack that contains all operands and receives result of the operation. + + + + + Converts the operation and its operands to the string for get the lambda expression. + + Object used for formula parsing. + Stack that contains all operands and receives result of the operation. + Count of the lambda function after close parenthesis. + Str delimeter is used in the lambda expression. + String that contains lambda expression. + + + + Gets operands from string and returns array of string representation of the operands. + + Formula string. + Index of the function in the formula string. + Formula parser. + Array of strings that contains function operands. + + + + Converts token to byte array. + + Array of bytes representing this token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Returns built-in function index. + + + + + Number of function arguments. + + + + + Read-only. Type of operation (TYPE_FUNCTION for all functions). + + + + + Array of all token attributes applied to the object. + This property is used to increase performance. + + + + + Constructs token using data from byte array. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Constructs token by built-in function index. + + Built-in function index. + + + + Constructs function token by function name. + + Valid function name. + + + + Default constructor + + + + + Read-only. Size of the token. + + + + + Gets operands from string and returns array of string representation of the operands. + + Formula string. + Index of function in the string. + Formula parser. + Array of strings containing function parameters. + + + + Converts token to byte array. + + Array of bytes representing this token. + + + + Takes all needed operands from the stack and pushes the result of the function. + + Object used for formula parsing. + + Stack that contains all operands and will receive result of the operation. + + + + + + + + + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Size of the token. + + + + + Size of word in bytes. + + + + + Sum function name. + + + + + If function name. + + + + + Goto function name. + + + + + Choose function name. + + + + + Not implemented message. + + + + + + + + + + The options used by the attribute. + + + + + The word contained in this attribute. + + + + + Offsets to the CHOOSE cases. Must be valid only if HasOptimizedChoose is true. + + + + + Default constructor for this token. + + + + + Constructs token and fills it with data from the byte array. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Constructs token by options value and data. + + Attribute options. + Attribute data. + + + + Constructs token by options value and data. + + Attribute options. + Attribute data. + + + + Read-only. Size of the token. + + + + + Takes all needed operands from the stack and pushes the result of the function. + + Object used for formula parsing. + + Stack that contains all operands that receive result of the operation. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to array of bytes. + + Array of bytes representing this token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Read-only. Options used by the attribute. + + + + + The word contained in this attribute. + + + + + + + + + + Gets / sets number of spaces in the case of space token. + + + + + + + + + + True when following function has semivolatile value, + that can change without user interaction (such as NOW, TODAY, etc.). + + + + + Returns True if this is an IF; otherwise False. + + + + + Returns True if this is a CHOOSE; otherwise False. + + + + + Returns True if this is a goto; otherwise False. + + + + + Returns True if this is SUM; otherwise False. + + + + + + + + + + Returns True if space exist; otherwise False. + + + + + + This class represents every binary operation. + + + + + Dictionary that allows to convert operation name to the token code. + + + + + Dictionary that allows to convert operation token code to its string representation. + + + + + Contains all token attributes. + + + + + Static constructor. Fills hashtable that allows us to get + token code by token string. + + + + + Returns token code by string representation of the operation. + + String representation of the operation. + Token code. + + + + Returns token code by string representation of the operation. + + Token to get string representation for. + String representation of the token. + + + + Default constructor. + + + + + Constructs BinaryOperation using string that contains the sign of operation. + + String representation of the operation. + + + + Constructs BinaryOperation using string that contains the sign of operation. + + Token code of the operation to create. + + + + Constructs token using array with data and offset. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Takes all needed operands from the stack and pushes the result of the operation. + + Object used for formula parsing. + + Stack that contains all operands and will receive result of the operation. + + + + + Gets operands from string and returns array of string representation of the operands. + + String representation of the formula. + Index of operation in the string. + Formula parser. + Array of strings with operation operands. + + + + + + + + + Read-only. Number of operands (always 2 for binary operations). + + + + + Read-only. Type of the operation ( TYPE_BINARY for binary operations). + + + + + Array of all token attributes applied to the object. + This property is used to increase performance. + + + + + This token represents a boolean operand in a formula. + + + + + Boolean value. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs token by boolean value. + + Boolean value that will be placed into this token. + + + + Constructs token by string value. + + String value, should be valid boolean string. + + + + Constructs token using data from byte array. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Read-only. Size of this token. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to byte array. + + Array of bytes representing this token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Gets / sets boolean value that is represented by this class. + + + + + Summary description for CellIntersectionPtg. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Intersections cell ptg. + + + + + + Intersections cell ptg. + + Object that provides access to the data. + Current index. + Excel version that was used to infill data provider. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Gets size. Override. + + + + + Represents CellRangeList formula token. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs BinaryOperation using string that contains the sign of operation. + + String representation of the operation. + + + + Constructs token using array with data and offset. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Converts token to a string. + + Object used for formula parsing. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + This class represents the control token (this can be tExp or tTbl). + + + + + This token contains an unsigned 16-bit integer value in the range from 0 to 65535. + + + + + Bit mask for row options. + + + + + Bit mask for column options. + + + + + Opening bracket for relative cell coordinates in R1C1 notation. + + + + + Closing bracket for relative cell coordinates in R1C1 notation. + + + + + Starting row character in R1C1 notation. + + + + + Starting column character in R1C1 notation. + + + + + Opening bracket for relative indexes in R1C1 notation. + + + + + Closing bracket for relative indexes in R1C1 notation. + + + + + Index to row (0..65535) or row offset (-32768..32767). + + + + + Index to column (0..255) or column offset (-128..127). + + + + + Option flags. + + + + + Default constructor: + To prevent user from creating tokens without arguments + and to allow descendants to do this. + + + + + Constructs reference by its string representation. + + String representation of the reference. + + + + Creates token using data from array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Creates token by coordinates and options. + + Row index. + Column index. + Options. + + + + Constructs reference by its string representation. + + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + String representation of the row. + String representation of the column. + Indicates whether R1C1 notation was used. + + + + + + + + + + Read-only. Size of the record. + + + + + Converts token to a string. + + String representation of the token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to array of bytes. + + Array of bytes that represents the token. + + + + Sets internal fields appropriate to specified row and column. + + Row index of the cell that contains this token. + Column index of the cell that contains this token. + String that contains column name. + String that contains row name. + Indicates whether R1C1 notation is used. + + + + Sets internal fields appropriate to specified row and column. + + String that contains column name. + String that contains row name. + + + + Sets internal fields appropriate to specified row and column. + + Row index of the cell that contains this token. + Column index of the cell that contains this token. + String that contains column name. + String that contains row name. + + + + Parses row or column index in R1C1 notation. + + Row or column index of the cell that contains reference. + String to parse. + Indicates whether index is relative. + + + + + Creates token and modifies it row and column indexes. + + Row offset. + Column offset. + Parent workbook. + Modified token. + + + + Returns modified token after move operation. + + Current sheet index. + Parent cell row index. + Parent cell column index. + Source sheet index. + Source rectangle. + Destination sheet index. + Destination rectangle. + Indicates whether token was changed. + Parent workbook. + + + + + Moves token into different worksheet. + + Token to move + Source sheet index. + Source rectangle. + Destination sheet index. + Row offset. + Column offset. + Parent workbook. + Modified token. + + + + Returns True if referenced cell was moved. + + + + + + + Converts token code to index (inverse operation to IndexToCode). + + Reference index. + + + + Gets corresponding error code. + + Corresponding error code. + + + + Updates token after move operation. + + Current sheet index. + Destination sheet index. + Row index. + Column index. + Indicates whether token was changed. + Parent workbook. + Updated token. + + + + Converts tokens from regular formula into tokens from shared formula. + + Parent workbook. + Represents first row from cells range of shared formula.Zero-base. + Represents first column from cells range of shared formula.Zero-based. + New token for shared formula. + + + + Returns True if bit specified by mask is set to 1; otherwise False. + + Options byte where bits will be checked. + Bit mask that should be used for checking. + True if bit specified by mask is set to 1. + + + + If value is True, then it sets all bits specified by mask in Options to 1; + otherwise clears them, return new value. + + Options byte where bits will be set. + Bit mask that should be used for checking. + Flag for operation. + Return Options with bit specified by mask set to value. + + + + Returns string representation of the cell. + + Row index of the cell that contains token. + Column index of the cell that contains token. + Index of cell row. + Index of cell column. + True if row is relative. + True if column is relative. + Indicates whether R1C1 notation must be used for string conversion. + String representation of the cell address. + + + + Returns string representation of the cell using A1 notation. + + Index of cell column. + Index of cell row. + True if column is relative. + True if row is relative. + String representation of the cell address. + + + + Return string representation of the cell in RC format. + RC format is format in which set only shifts from start row to other one. + + Index of cell column. + Index of cell row. + String representation of the cell address. + + + + Returns column index of the cell. + + Column index of the cell that contains token. + String representation of the column. + Column index. + Indicates whether R1C1 notation is used. + Indicates whether resulting column index is relative. + + When parsed column index is greater than 255. + + + + + Returns column index of the cell. + + String representation of the column. + Column index. + Indicates whether resulting column index is relative. + + When parsed column index is greater than 255. + + + + + Returns row index of the cell. + + Row index of the cell that contains token. + String representation of the row. + Indicates whether R1C1 notation is used. + Indicates whether row index is relative. + Row index. + + + + Returns row index of the cell. + + String representation of the row. + Indicates whether row index is relative. + Row index. + + + + Converts reference index to token code. + + Reference index. + Token code. + + + + Converts token code to index (inverse operation to IndexToCode). + + Token code (should be one of tRef1, tRef2, tRef3). + Reference index. + + + + Gets string representation of the cell in R1C1 notation. + + Row index of the cell that contains token. + Column index of the cell that contains token. + Cell row index. + Cell column index. + Indicates whether row is relative. + Indicates whether column is relative. + String representation of the cell in R1C1 notation. + + + + Converts row or column index into string representation using R1C1 notation. + + + Row or column index of a cell that contains reference to convert. + + Starting character. + End index. + Indicates whether index is relative. + String representation of row or column index using R1C1 notation. + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Worksheet that contains range. + Range represented by the token. + + + + Returns rectangle represented by the token that implements this interface. + All coordinates are zero-based. + + Rectangle represented by the token. + + + + + + + + + + + Converts current token to the 3D token. + + Reference to the worksheet. + Created token. + + + + Converts current token into error token. + + Created token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Set the byte value to Option flag. + + Byte value + + + + Gets / sets. Index to row (0..65535) or row offset (-32768..32767). + + + + + Gets / sets True if row index is relative. + + + + + Gets / sets True if column index is relative. + + + + + Gets / sets index to column (0..255) or column offset (-128..127). + + + + + Options. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs token from byte array. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + + + + + + + + Read-only. Size of the token. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to byte array. + + Array of bytes that represents this token. + + + + + + + + + Moves token into different worksheet. + + Token to move + Source sheet index. + Source rectangle. + Destination sheet index. + Row offset. + Column offset. + Parent workbook. + Modified token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + + + + + + + + + + + + This token contains an error code. + + + + + Default error name - used when unknown error code was used. + + + + + Dictionary that allows to get error code by error name. + + + + + Dictionary that allows to get error name by error code. + + + + + Error code. + + + + + Static constructor. Fills hashtables which allow to convert + error code to error string and vice versa. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs token using byte array. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Constructs token using error code. + + + String representation of the error that must be created. + + + When the specified error name is unknown. + + + + + Constructs token using error name. + + Name of the error. + + + + Read-only. Size of the token. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to byte array. + + Array of bytes representing this token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Gets / sets error code value. + + + + + This token contains an IEEE floating-point number. + + + + + Floating-point value. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs token by double value. + + Double value. + + + + Constructs token by string value that represents number. + + String value that will be converted to double. + + + + Constructs token by string value that represents number. + + String value that will be converted to double. + Represents culture for parsing from string. + + + + Constructs token using data from byte array. + + Object that provides access to the data. + Offset to token data. + Excel version that was used to infill data provider. + + + + Read-only. Size of the token. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + Represents current number info. + String representation of this token. + + + + Converts token to byte array. + + Array of bytes representing this token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Gets / sets value that is represented by this token. + + + + + This class represents an integer token in formula. + + + + + Contains an unsigned 16-bit integer value in the range from 0 to 65535. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs token by integer value. + + Integer value that will be placed into token. + + + + Constructs token by string value. + + String value that will be parsed into unsigned short. + + + + Constructs token using data from byte array. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Read-only. Size of the token. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to array of bytes. + + Array of bytes corresponding to the token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Get / sets value contained by this token. + + + + + Summary description for MemAreaPtg. + + + + + Size of the one rectangle data. + + + + + Size of the header block. + + + + + Reserved. + + + + + The length of the reference subexpression. + + + + + Subexpression. + + + + + + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + + + + + Excel version that was used to infill data provider. + + + + + + + + + + Size of the ptg token. Read-only. + + + + + Converts token to byte array. + + Array of bytes representing this token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Extracts additional data. + + Object that provides access to the data. + Offset to the additional data. + Offset after extracting all required data. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Returns the length of the reference subexpression. Read-only. + + + + + Returns the reference subexpression. Read-only. + + + + + Rectangles. + + + + + Returns size of the additional data. Read-only. + + + + + Not fully implemented because of lack of documentation. + + + + + Size of the token. + + + + + Token data. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Creates token using data from array of bytes. + + Object that provides access to the data. + Offset to the token data in the data array. + Excel version that was used to infill data provider. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to the array of bytes. + + + + + + Read-only. Size of the token. + + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Not fully implemented because of lack of documentation. + + + + + Size of the token. + + + + + The length of the reference subexpression. + + + + + Token data. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Create new instance of MemFuncPtg. + + Size of new instance. + + + + Creates token using data from array of bytes. + + Object that provides access to the data. + Offset to the token data in the data array. + Excel version that was used to infill data provider. + + + + Read-only. Size of the token. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to the array of bytes. + + + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + The length of the reference subexpression. + + + + + A missing argument in a function argument list that is stored as a tMissArg token. + This token does not contain any additional data. + + + + + Default constructor + + + + + Constructs token using data from byte array. + + Object that provides access to the data. + Offset to token data. + Excel version that was used to infill data provider. + + + + Almost the same as default constructor. + + Must be equal to string.Empty. + + When specified string is not empty. + + + + + Read-only. Size of the token. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + This token contains the one-based index to a NAME record. + + + + + One-based Index of ExternNameRecord. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs token using data from a byte array. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Creates token by its string representation. + + String representation of the token. + Workbook that contains this reference. + + + + Creates token by its string representation. + + String representation of the token. + Workbook that contains this reference. + Worksheet that contains this reference. + + + + Creates token by name index. + + Name index. + + + + Read-only. Size of the token. + + + + + Converts token to string. + + String representation of the token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to array of bytes. + + Array of bytes representing this token. + + + + Returns token code by index. + + Index of the token code. + Required token code. + + When index is less than 1 or greater than 3. + + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Parent sheet. + Range represented by the token. + + + + Returns rectangle represented by the token that implements this interface. + + Rectangle represented by the token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Gets / sets one-based index of ExternNameRecord. + + + + + Gets / sets one-based index of ExternNameRecord for Int32. + + + + + This token contains the index to a NAME or EXTERNNAME record. It occurs by using + internal or external names, add-in functions, DDE links, or linked OLE objects. + + + + + Index to a REF entry in an EXTERNSHEET record in the Link Table. + + + + + One-based index to a NAME record or EXTERNNAME record. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs token using data from array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Creates token by its string representation. + + String representation of the token. + Workbook that contains this reference. + + + + Creates new instance of NameX token by extern workbook index and name index in the workbook. + + Zero-based book index. + Zero-based name index. + + + + Read-only. Size of the record. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Calls ToString method of the base (not 3d) class. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to array of bytes. + + Array of bytes corresponding to the token. + + + + Returns token code by index + + Index of the token code. + Required token code. + + When index is less than 1 or greater than 3. + + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Parent worksheet + Range represented by the token. + + + + Returns rectangle represented by the token that implements this interface. + + Rectangle represented by the token. + + + + + + + + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Gets / sets one-based index of ExternNameRecord or NameRecord. + + + + + Gets / sets index to REF entry in EXTERNSHEET record in the Link Table. + + + + + Parentheses. This token is for display purposes only, it does not affect the result + of the token array. If it follows an operator, the parentheses will enclose + the operator and its operand(s), which is the result of the enclosed + operation. This operator does not modify the token class of its operand. + + + + + This class represents all unary operations. + + + + + Contains all token attributes. + + + + + Dictionary that allows to get token code by unary operation name. + + + + + Static constructor. Fills hashtable that allows us to get + token code by token string. + + + + + Gets token code using unary operation string representation. + + String representation of the unary operation. + Token code. + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs unary operation token by its string representation. + + + String representation of the operation that will be created. + + + + + Creates unary operation from the data array and offset of the first byte in it. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Read-only. Size of the token. + + + + + Takes all needed operands from the stack and pushes the result of the operation. + + Object used for formula parsing. + + Stack that contains all operands and will receive the result of the operation. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Returns array of operands. + + Formula string. + Index of unary operation in the formula string. + Formula parser. + Array of strings that contain unary operation operands. + + + + Read-only. Type of operation. + + + + + Array of all token attributes applied to the object. + This property is used to increase performance. + + + + + Contains all token attributes. + + + + + Static constructor. + + + + + Default constructor + + + + + Creates token using data from an array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Creates token by string representation. + + String should be equal to "(". + + When strFormula is not equal to "(". + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Gets all needed operands from the Stack parameter and pushes result into the Stack. + + Object used for formula parsing. + + Stack that contains all operands and will receive operation result as string. + + + + + Returns array of string where each member corresponds to one argument. + + Formula string. + Index of opening bracket. + Formula parser. + Array of strings that contain operation parameters. + + + + Updates parse formula options if necessary. + + Options to update. + Updated value. + + + + Returns all TokenAttributes applied to the token. Read-only. + + + + + This token contains a 3D reference or an external reference to a cell. + + + + + Index to a REF entry in an EXTERNSHEET record in the Link Table. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Creates token using data from an array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Creates token by its string representation. + + String representation of the token. + Workbook that contains this reference. + + + + + + + + + + + + + + + Creates token. + + Sheet reference. + Row index. + Column index. + Options. + + + + + + + + + + Read-only. Size of the record. + + + + + Converts token to the string. + + String representation of the token. + + + + Converts token to the array of bytes. + + Array of bytes that represents this token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Calls ToString method of the base (not 3d) class. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + + + + + + + + + + + Parent workbook. + + + + + Converts token from shared formula into token from regular formula. + + Parent workbook. + Row index. + Column index. + New token for regular formula. + + + + Converts tokens from regular formula into tokens from shared formula. + + Parent workbook. + Represents first row from cells range of shared formula.Zero-base. + Represents first column from cells range of shared formula.Zero-based. + New token for shared formula. + + + + Converts tokens from regular formula into tokens from shared formula. + + + + + + Converts token code to index (inverse operation to IndexToCode). + + Reference index. + + + + Gets corresponding error code. + + Corresponding error code. + + + + Returns referenced worksheet name. + + Parent workbook. + Sheet reference index + Referenced worksheet name. + + + + Sets index of the sheet in correct value + by getting the information from specified workbook. + + Name of the worksheet that is referenced. + + Workbook that contains this record. It must contain specified worksheet. + + + + + Returns token code by index. + + Index of the token code. + Required token code. + + When index is less than 1 or greater than 3. + + + + + Converts token code to index (inverse operation to IndexToCode). + + Token code (should be one of tRef1, tRef2, tRef3). + Reference index. + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Worksheet that contains range. + Range represented by the token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + + + + + + This token contains a 3D reference or an external reference to a cell. + + + + + This token contains the reference to a cell in the same sheet. It stores relative + components as signed offsets and is used in shared formulas, conditional formatting, + and data validity. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Creates token using data from an array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Constructs reference by its string representation. + + Row index of the cell that contains formula to parse. + Column index of the cell that contains formula to parse. + String representation of the row. + String representation of the column. + Indicates whether R1C1 notation was used. + + + + Converts token from shared formula into token from regular formula. + + Parent workbook. + Row index. + Column index. + New token for regular formula. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts current token to the 3D token. + + Reference to the worksheet. + Created token. + + + + Gets corresponding error code. + + Corresponding error code. + + + + Converts token code to index (inverse operation to IndexToCode). + + Token code (should be one of tRefN1, tRefN2, tRefN3). + Reference index. + + + + Converts reference index to token code. + + Reference index. + Token code. + + + + Index to a REF entry in an EXTERNSHEET record in the Link Table. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Creates token using data from an array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Creates token by its string representation. + + String representation of the token. + Workbook that contains this reference. + + + + Creates token. + + Row index of the cell that contains this token. + Column index of the cell that contains this token. + Sheet reference. + String that contains column name. + String that contains row name. + Indicates whether R1C1 notation should be used. + + + + Creates token. + + Sheet reference. + Row index. + Column index. + Options. + + + + Converts token from shared formula into token from regular formula. + + Parent workbook. + Row index. + Column index. + New token for regular formula. + + + + Read-only. Size of the record. + + + + + Converts token to the string. + + String representation of the token. + + + + Converts token to the array of bytes. + + Array of bytes that represents this token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Calls ToString method of the base (not 3d) class. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Returns modified token after move operation. + + Current sheet index. + Parent cell row index. + Parent cell column index. + Source sheet index. + Source rectangle. + Destination sheet index. + Destination rectangle. + Indicates whether token was changed. + Parent workbook. + + + + + Converts token code to index (inverse operation to IndexToCode). + + Reference index. + + + + Gets corresponding error code. + + Corresponding error code. + + + + Returns referenced worksheet name. + + Parent workbook. + Sheet reference index + Referenced worksheet name. + + + + Sets index of the sheet in correct value + by getting the information from specified workbook. + + Name of the worksheet that is referenced. + + Workbook that contains this record. It must contain specified worksheet. + + + + + Returns token code by index. + + Index of the token code. + Required token code. + + When index is less than 1 or greater than 3. + + + + + Converts token code to index (inverse operation to IndexToCode). + + Token code (should be one of tRef1, tRef2, tRef3). + Reference index. + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Worksheet that contains range. + Range represented by the token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Index to a REF entry in an EXTERNSHEET record in the Link Table. + + + + + This token contains the last 3D reference or external reference to a cell in a + deleted row or column. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Creates token using data from an array of bytes. + + Object that provides access to the data. + Offset to token data. + Excel version that was used to infill data provider. + + + + Creates token by its string representation. + + String representation of the token. + Workbook that contains this reference. + + + + Creates error token based on Ref3D token. + + Token to get data from. + + + + Converts token to string. + + String representation of this token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + + + + + + + + + + + Parent workbook. + + + + + Returns token code by index. + + Index of the token code. + Required token code. + + When index is less than 1 or greater than 3. + + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Worksheet that contains range. + Range represented by the token. + + + + This token contains the last reference to a deleted cell in the same sheet. + + + + + + + + + + Static constructor. + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Creates token using data from array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + + + + + + + + + + + + + + Creates error token based on specified ref token. + + Token to take data from. + + + + Converts token to a string. + + String representation of this token. + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + + + + + + + + + + + Parent workbook. + + + + + Converts reference index to token code. + + Reference index. + Token code. + + + + Converts tokens from regular formula into tokens from shared formula. + + Parent workbook. + Represents first row from cells range of shared formula.Zero-base. + Represents first column from cells range of shared formula.Zero-based. + New token for shared formula. + + + + Returns range represented by the token that implements this interface. + + Workbook that contains range. + Worksheet that contains range. + Range represented by the token. + + + + This token contains a string constant. + The maximum length of the string is 255 characters in BIFF8. + + + + + String value. + + + + + 1 - 2 bytes per character, 0 - 1 byte per character (compressed unicode). + + + + + Default constructor. To prevent user from creating a token without + parameters and to allow descendants do this. + + + + + Constructs token by string value. + + Value that will contain this token. + + + + Creates token using data from array of bytes. + + Object that provides access to the data. + Offset to the token data. + Excel version that was used to infill data provider. + + + + Read-only. Size of the token. + + + + + Converts token to a string. + + Formula util. + Zero-based row index of the cell that contains this token. + Zero-based row index of the cell that contains this token. + Indicates whether R1C1 notation should be used. + String representation of this token. + + + + Converts token to array of bytes. + + Array of bytes that correspond to the token. + + + + Infill PTG structure. + + Represents storage. + Offset in storage. + Excel version that was used to infill data provider. + + + + Gets / sets value of this token (its string constant). + + + + + This class represents the unknown token of a formula. + + + + + Default constructor + + + + + Creates token from an array of bytes. + + Object that provides access to the data. + Offset to the token data in data array. + Excel version that was used to infill data provider. + + + + Read-only. Size of the token. + + + + + Converts token to string. + + Converts token to the string. + + + + Summary description for _FormulaConstants. + + + + + + + + + + Represents the tAdd binary token. + + + + + Represents the tSub binary token. + + + + + Represents the tMul binary token. + + + + + Represents the tDiv binary token. + + + + + Represents the tPower binary token. + + + + + Represents the tConcat binary token. + + + + + Represents the tLessThan binary token. + + + + + Represents the tLessEqual binary token. + + + + + Represents the tEqual binary token. + + + + + Represents the tGreaterEqual binary token. + + + + + Represents the tGreater binary token. + + + + + Represents the tNotEqual binary token. + + + + + Represents the tCellRangeIntersection binary token. + + + + + Represents the tCellRangeList binary token. + + + + + Represents the tCellRange binary token. + + + + + Represents the tUnaryPlus unary token. + + + + + Represents the tUnaryMinus unary token. + + + + + Represents the tPercent unary token. + + + + + Represents the tParentheses unary token. + + + + + Represents the tFunction1 function token. + + + + + Represents the tFunction2 function token. + + + + + Represents the tFunction3 function token. + + + + + Represents the tFunctionVar1 function token. + + + + + Represents the tFunctionVar2 function token. + + + + + Represents the tFunctionVar3 function token. + + + + + Represents the tFunctionCE1 function token. + + + + + Represents the tFunctionCE2 function token. + + + + + Represents the tFunctionCE3 function token. + + + + + Represents the tMissingArgument constant token. + + + + + Represents the tStringConstant constant token. + + + + + Represents the tError constant token. + + + + + Represents the tBoolean constant token. + + + + + Represents the tInteger constant token. + + + + + Represents the tNumber constant token. + + + + + Represents the tExp control token. + + + + + Represents the tTbl control token. + + + + + Represents the tExtended control token. + + + + + Represents the tAttr control token. + + + + + Represents the tSheet control token. + + + + + Represents the tEndSheet control token. + + + + + Represents the tArray1 operand token. + + + + + Represents the tArray2 operand token. + + + + + Represents the tArray3 operand token. + + + + + Represents the tName1 operand token. + + + + + Represents the tName2 operand token. + + + + + Represents the tName3 operand token. + + + + + Represents the tRef1 operand token. + + + + + Represents the tRef2 operand token. + + + + + Represents the tRef3 operand token. + + + + + Represents the tArea1 operand token. + + + + + Represents the tArea2 operand token. + + + + + Represents the tArea3 operand token. + + + + + Represents the tMemArea1 operand token. + + + + + Represents the tMemArea2 operand token. + + + + + Represents the tMemArea3 operand token. + + + + + Represents the tMemErr1 operand token. + + + + + Represents the tMemErr2 operand token. + + + + + Represents the tMemErr3 operand token. + + + + + Represents the tMemNoMem1 operand token. + + + + + Represents the tMemNoMem2 operand token. + + + + + Represents the tMemNoMem3 operand token. + + + + + Represents the tMemFunc1 operand token. + + + + + Represents the tMemFunc2 operand token. + + + + + Represents the tMemFunc3 operand token. + + + + + Represents the tRefErr1 operand token. + + + + + Represents the tRefErr2 operand token. + + + + + Represents the tRefErr3 operand token. + + + + + Represents the tAreaErr1 operand token. + + + + + Represents the tAreaErr2 operand token. + + + + + Represents the tAreaErr3 operand token. + + + + + Represents the tRefN1 operand token. + + + + + Represents the tRefN2 operand token. + + + + + Represents the tRefN3 operand token. + + + + + Represents the tAreaN1 operand token. + + + + + Represents the tAreaN2 operand token. + + + + + Represents the tAreaN3 operand token. + + + + + Represents the tMemAreaN1 operand token. + + + + + Represents the tMemAreaN2 operand token. + + + + + Represents the tMemAreaN3 operand token. + + + + + Represents the tMemNoMemN1 operand token. + + + + + Represents the tMemNoMemN2 operand token. + + + + + Represents the tMemNoMemN3 operand token. + + + + + Represents the tNameX1 operand token. + + + + + Represents the tNameX2 operand token. + + + + + Represents the tNameX3 operand token. + + + + + Represents the tRef3d1 operand token. + + + + + Represents the tRef3d2 operand token. + + + + + Represents the tRef3d3 operand token. + + + + + Represents the tArea3d1 operand token. + + + + + Represents the tArea3d2 operand token. + + + + + Represents the tArea3d3 operand token. + + + + + Represents the tRefErr3d1 operand token. + + + + + Represents the tRefErr3d2 operand token. + + + + + Represents the tRefErr3d3 operand token. + + + + + Represents the tAreaErr3d1 operand token. + + + + + Represents the tAreaErr3d2 operand token. + + + + + Represents the tAreaErr3d3 operand token. + + + + + Represents the tRefN3d1 operand token. + + + + + Represents the tRefN3d2 operand token. + + + + + Represents the tRefN3d3 operand token. + + + + + Indicates end of formula token. This token is used only for parser + internal purposes and shouldn't appear in the resulting formula. + + + + + Indicates closing parenthesis. This token is used only for parser + internal purposes and shouldn't appear in the resulting formula. + + + + + Indicates delimiter between arguments. This token is used only for parser + internal purpose and shouldn't appear in the resulting formula. + + + + + Indicates open bracket. This token is used only for parser + internal purpose and shouldn't appear in the resulting formula. + + + + + Indicates close bracket. This token is used only for parser + internal purpose and shouldn't appear in the resulting formula. + + + + + Indicates boolean value - true. This token is used only for parser + internal purpose and shouldn't appear in the resulting formula. + + + + + Indicates boolean value - false. This token is used only for parser + internal purpose and shouldn't appear in the resulting formula. + + + + + Indicates space token. This token is used only for parser + internal purpose and shouldn't appear in the resulting formula. + + + + + Indicates identifier token. This token can be range, named range, function call, etc. + This token is used only for parser internal purpose and shouldn't appear in the resulting formula. + + + + + Indicates identifier token that contains DDE link. + This token is used only for parser internal purpose and shouldn't appear in the resulting formula. + + + + + Indicates 3D identifier token. This token can be range, named range. + This token is used only for parser internal purpose and shouldn't appear in the resulting formula. + + + + + Represents the operation type. + + + + + Represents the TYPE_UNARY operation type. + + + + + Represents the TYPE_BINARY operation type. + + + + + Represents the TYPE_FUNCTION operation type. + + + + + + + + + + None priority. + + + + + Logical equality priority. + + + + + Concatenation priority. + + + + + Plus and minus operation priority. + + + + + Multiplication and divide operations priority. + + + + + Priority of the power operation. + + + + + Unary operation priority (-,+,%). + + + + + Cell Range operator (:). + + + + + Attribute provides link information between formula token and + formula token class. + + + + + Type of the formula token. + + + + + String representation of the operation (if this is attribute for + operation), otherwise string.Empty. + + + + + True if operation symbol should be placed after operand + (only for unary operands). + + + + + Cannot create without parameters. + + + + + Creates token attribute by Formula code. + + Code of the token that will be created. + + + + Creates token attribute by formula code and operation sign. + + Token code. + String representation of the operation. + + + + Creates token attribute by formula code, operation sign, and position of + placement (before the False or after the True operand - this is only for unary operations, + default value is False). + + Code of the operation. + String representation of the operation. + True if operation is placed after operands; False if before. + + + + Read-only. Type of the formula token. + + + + + Read-only. String representation of the operation (if this is attribute for + operation); otherwise string.Empty. + + + + + Read-only. True if operation symbol should be placed after operand + (only for unary operands). + + + + + There can be multiple token codes that correspond to one class, + i.e. tRef1, tRef2, tRef3 correspond to class RefPtg. + This attribute is used to help FormulaUtil choose the token code to use. + + + + + Index of the reference type (for tokens that can have several types). + + + + + Array of indexes, first correspond to first parameter, + second for the second parameter and so on. + + + + + Expected token type. + + + + + To prevent construction without arguments. + + + + + Creates attribute that describes the function that has + the same token index index for all arguments. + + Index of the token. + + + + Creates attribute for function with specified token indexes order. + First member of the array corresponds to the first argument of the function, + second member for the second argument and so on. + + Array of token indexes. + + + + Creates attribute for specified token type with specified token indexes. + + Target token class. + Array of token indexes. + + + + Creates attribute for specified token type with specified token indexes. + + Target token class. + Token index for all function parameters. + + + + Returns index of the reference. + + + + + Returns token index for the specified argument number. + + + + + Target token class + + + + + + + + + + This attribute describes error code. Used for converting error messages from + and to string. + + + + + String that represents error. + + + + + Code of the error. + + + + + To prevent creation without arguments. + + + + + Creates attribute for error with specified string value and error code. + + String representation of the error. + Error code. + + + + + + + + + + + + + + This record specifies if the option to print sheet grid lines + (PrintGridlinesRecord) has ever been changed. + + + + + Correct size of the record. + + + + + Flag denoting whether the user has modified the grid lines. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + This flag specifies if the option to print sheet grid lines + (PrintGridlinesRecord) has ever been changed. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Contains information about the layout of outline symbols. + + + + + Width of the area to display row outlines (left of the sheet), in pixels. + + + + + Height of the area to display column outlines (above the sheet), in pixels. + + + + + Number of visible row outline levels (used row levels + 1; + or 0, if not used). + + + + + Number of visible column outline levels (used column levels + 1; + or 0, if not used). + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Width of the area to display row outlines (left of the sheet), in pixels. + + + + + Height of the area to display column outlines (above the sheet), in pixels. + + + + + Number of visible row outline levels (used row levels + 1; + or 0, if not used). + + + + + Number of visible column outline levels (used column levels + 1; + or 0, if not used). + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + If this record exists in the stream, then Excel contains Visual Basic macros. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Maximum possible size of the record. Read-only. + + + + + Summary description for HeaderFooterImageRecord. + + + + + This record contains a drawing object provided by the Drawing tool. + + + + + Data offset. + + + + + + + + + + + + + + + Default constructor + + + + + Dispose + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + + + + + + Parses data. + + + + + + + + + + Creates List for all data. + + First free index in the resulting List. + Created List. + + + + Fills array list with structures data. + + Stream to put resulting data into. + Start index in List. + + + + Size of the required storage space. Read-only. + + + + + + + + + + + Creates Continue Record Builder + + + + + + + + + + + + Returns array with all mso structures. Read-only. + + + + + Returns List with all mso structures. Read-only. + + + + + Indicates whether record needs internal data array + or if it can be cleaned. Read-only. + + + + + Offset to the structures data. + + + + + Record header in workbook part. + + + + + Record header in worksheet part. + + + + + Record header in workbook when it is not first record + (when it is used instead of Continue record). + + + + + Data offset. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Creates List for all data. + + First free index in the resulting List. + Created List. + + + + Adds record data from single record to the List. + + List to add data to. + Record to add data from. + Size of the added data. + + + + Creates continue record builder. + + Created builder. + + + + Sets length of the internal data. + + Length to set. + + + + Offset to the structures data. + + + + + Special class for building Continue Records. + + + + + + Special class for building Continue Records. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Type of additional records. + + + + + + + + + + + + + + + + + + + + + + Write array of data into output stream. + + Array of data. + Start index of an array. + Length of data to copy. + Quantity of created Continue Records. + + + + + + + + + + Method that checks if Continue Record is needed. + + Length of data that needs to be stored. + True if Continue Record will be needed for data storage; + otherwise False. + + + + + + + + + + + + + + + + + + + + Returns the unused bytes. + + + + + + + + + + + + + + + Return maximum size of record. + + + + + Type of the first additional record. + + + + + Type of additional records. + + + + + Maximum size of the continue record data. + + + + + + + + + + + + + + + + Write array of data into output stream. + + Array of data. + Start index of an array. + Length of data to copy. + Quantity of created Continue Records. + + + + Maximum size of the continue record data. + + + + + Represents the Header Footer Record + + + + + Excel 2003 record length + + + + + Excel 2010 record length + + + + + Type of data in categories. + + + + + Type of data in categories. + + + + + Type of data in categories. + + + + + Type of data in categories. + + + + + Stores the data in Even Header. + + + + + Stores the data in Even Footer. + + + + + Stores the data in First Header. + + + + + Stores the data in First Footer. + + + + + Record databytes. + + + + + HeaderFooter Record Code + + + + + Default constructor, initializes all fields with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Gets or sets if Align HeaderFoote With PageMargins + + + + + Gets or sets the value of Different Odd and Even Page Header Footer + + + + + Gets or sets if the HeaderFooter is sclaed with document + + + + + Gets or sets the value of Different First Page Header Footer + + + + + Represents the data in Even Header. + + + + + Represents the data in Even Footer. + + + + + Represents the data in First Header. + + + + + Represents the data in First Footer. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Specifies a header for a sheet. + + + + + Header string. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Header string. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Flag defines whether to hide placeholders and object. + + + + + Correct size of the record. + + + + + Flag that defines whether to hide placeholders and object. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Flag that defines whether to hide placeholders and object. + + + + + Read-only. Returns minimum possible size of record's internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + The record represents an empty cell. + It contains the cell address and formatting information. + + + + + GUID size. + + + + + Start byte of the standard link GUID. + + + + + Start byte of the URL moniker GUID. + + + + + Start byte of the file moniker GUID. + + + + + String represent the backslash. + + + + + Standard link GUID. + + + + + URL moniker GUID. + + + + + File moniker GUID. + + + + + Standard link GUID bytes. + + + + + URL moniker GUID bytes. + + + + + File moniker GUID bytes. + + + + + Unknown block in the file link. + + + + + Another unknown block in the file link. + + + + + Index to first row. + + + + + Index to last row. + + + + + Index to first column. + + + + + Index to last column. + + + + + Unknown value: 00000002H. + + + + + Option flags. + + + + + True if file link or URL. + False if no link. + + + + + True if absolute path or URL. + False if relative file path. + + + + + If this field and other description bits are + True, then there is a description. + False if there is no description. + + + + + True if there is a text mark. + False if there is no text mark. + + + + + If this field and other description bits are + True, then there is description. + False if there is no description. + + + + + True if there is a target frame. + False if there is no target frame. + + + + + True if UNC path (incl. server name). + False if file link or URL. + + + + + (optional, see option flags) Character count of description text, + including trailing zero word. + + + + + (optional, see option flags) Character array of description text, + no Unicode string header, always 16-bit characters, zero-terminated. + + + + + (optional, see option flags) Character count of target frame, + including trailing zero word. + + + + + (optional, see option flags) Character array of target frame, + no Unicode string header, always 16-bit characters, zero-terminated. + + + + + (optional, see option flags) Character count of the text mark, + including trailing zero word. + + + + + (optional, see option flags) Character array of the text + mark without "#" sign, no Unicode string header, always + 16-bit characters, zero-terminated. + + + + + HyperLink type. + + + + + URL length. + + + + + URL string. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Parses description. + + Offset to the description data. + + + + Parses target frame. + + Offset to the target frame data. + + + + Parses special data block. + + Offset to the data. + + + + Parses text mark. + + Offset to the data. + + + + Checks whether it is ULR link. + + Offset to the GUID to check. + True if it is URL link. + + + + Checks whether it is link to a local file. + + Offset to the GUID to check. + True if it is link to the local file. + + + + Checks whether it is link to a UNC. + + Offset to the GUID to check. + True if it is link to the UNC. + + + + Parses URL. + + Offset to the URL data. + + + + Parses link to a file. + + Offset to the data. + + + + Parses UNC link. + + Offset to the data. + + + + Parses link to the workbook. + + Offset to the data. + + + + Infill's length and string value. + + String length. + String value. + Indicates whether length is one byte. + + + + Infills special data. + + + + + Infills file special data. + + + + + Infills UNC special data. + + + + + Infills URL special data. + + + + + Infills workbook special data. + + + + + Sets options according to the link type. + + + + + Index to first row. + + + + + Index to first column. + + + + + Index to last row. + + + + + Index to last column. + + + + + Unknown value: 00000002H. Read-only. + + + + + Option flags. Read-only. + + + + + True if file link or URL. + False if no link. + + + + + True if absolute path or URL. + False if relative file path. + + + + + True if there is description. + False if there is no description. + + + + + True if there is a text mark. + False if there is no text mark. + + + + + True if there is a target frame. + False if there is no target frame. + + + + + True if UNC path (incl. server name). + False if file link or URL. + + + + + + + + + + + + + + + + + + + + + + + + + (optional, see option flags) Character count of description text, + including trailing zero word. Read-only. + + + + + (optional, see option flags) Character array of description text, + no Unicode string header, always 16-bit characters, zero-terminated. + + + + + (optional, see option flags) Character count of target frame, + including trailing zero word. Read-only. + + + + + (optional, see option flags) Character array of target frame, + no Unicode string header, always 16-bit characters, zero-terminated. + + + + + (optional, see option flags) Character count of the text mark, + including trailing zero word. + + + + + (optional, see option flags) Character array of the text + mark without the "#" sign, no Unicode string header, always + 16-bit characters, zero-terminated. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Read-only. + + + + + + + + + + Contains a list of explicit column page breaks. + + + + + Size of the fixed part. + + + + + Size of the subitem. + + + + + Size of the fixed part. + + + + + Number of page breaks. + + + + + Array of HorizontalPageBreaks. + + + + + Default constructor, sets all fields' default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + When data array does not fit to the page breaks array. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Size of the required storage space. Read-only. + + + + + Array of HorizontalPageBreaks. + + + + + Read-only. Minimum possible size of the record. + + + + + This class contains information about single page break. + + + + + The row of the break. + + + + + The starting column of the break. + + + + + The ending column of the break. + + + + + Default constructor + + + + + Constructs class instance and fills fields with values. + + Row of the break. + Starting column of the break. + Ending column of the break. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + The row of the break. + + + + + The starting column of the break. + + + + + The ending column of the break. + + + + + This record contains the complete description of a bitmapped graphic object, + such as a drawing created by a graphic tool. + + + + + Summary description for BiffRecordWithContinue. + + + + + Summary description for BiffRecordRawWithDataProvider. + + + + + Object that gives access to the record's data. + + + + + Default constructor. + + + + + + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, the class must pack all of its properties into + an internal Data array: m_data. This method is called by + FillStream, when the record must be serialized into stream. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + + Gets string from internal record data using GetBytes. + + Offset of starting byte. + Length of the string. + Retrieved string. + + if Offset + iStrLen is out of data array + + + + + Gets string from internal record data using GetBytes. + + Offset of starting byte. + Length of the string. + Gets bytes count that this string occupies in the data array. + Retrieved string. + + + + Gets string from internal record data using GetBytes. + + Offset of starting byte. + Length of the string. + Gets bytes count that this string occupies in the data array. + Flag for is bytes count available. + Retrieved string. + + + + Detect type of string and extracts it. + + Record data offset. + Contain next position. + Number of elements in the continuePos collection. + Current index in the continuePos array. + Length of string record. + Array of rich formatting values. + Array of unknown FarEast data. + Extracted string. + + + + Sets byte in internal record data array values. + + Offset in internal record data array to start from. + Byte value to set. + + + + Sets ushort in internal record data array values. + + Offset in internal record data array to start from. + Value to set. + + + + Sets bytes in internal record data array values. + + Offset in internal record data array to start from. + Array of bytes to set. + Position in value array to the data that will be set. + Length of the data. + If value array is NULL. + + If pos or length would be less than zero or their sum would be more + than size of value array. + + + If internal record data array is too small for receiving value array + and AutoGrowData is False. + + + + + Sets bytes in internal record data array values. + + Offset in internal record data array to start from. + Array of bytes to set. + If value array is NULL. + + If pos or length would be less than zero or their sum would be more + than size of value array. + + + If internal record data array is too small for receiving value array + and AutoGrowData is False. + + + + + Sets string in internal record data array using SetBytes method + without string length. + + Offset to the string. + Value of the string. + Size of the string in bytes. + + + + Sets string in internal record data array using SetBytes method + without string length. + + Offset to the string. + Value of the string. + Indicates whether write compressed attribute for empty strings. + Size of the string in bytes. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Mask to get two bytes value. + + + + + Array that contains positions of data of the continue records + in the m_data array. + + + + + Size of the first record length. + + + + + Default constructor. + + + + + Read from stream record data. + + Stream with record data. + Object that provides access to the data. + Object that should be used to parse encrypted records. + Temporary buffer needed for some operations. + Size of the record data. + If reader is NULL. + + If stream is not be big enough for data (end of stream + reached) and all data were not read. + + + If record code is zero. + + + + + Save record data to stream. + + Writer that will receive record data. + Represents data provider. + Object to encrypt data. + Position in the output stream. Used to increase performance. + Size of the record in the stream. + If writer is NULL. + + If m_iLength of internal record data array is less than zero. + + + + + Creates copy of the current object. + + A copy of the current object. + + + + Type of the first continue record. Read-only. + + + + + Indicates whether we should add header of continue records to the internal data provider. Read-only. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into + an internal Data array: m_data. This method is called by + FillStream, when the record must be serialized into stream. + + + + + + Occurs right after BOF, gives information where the DBCELL records are for a sheet. + Important for locating cells. + + + + + Size of the fixed part. + + + + + Subitem size. + + + + + Not used. + + + + + Index to first used row. + + + + + Index to first row of unused tail of sheet. + + + + + Not used. + + + + + Array of absolute stream positions to the DBCELL record. + + + + + Array with DBCell records that must be referenced by this record. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + + + + Object that provides access to the data. + Object to encrypt data. + Position in the output stream. Used to increase performance. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + This method checks record's internal data array for integrity. + + + If there is any internal error. + + + + + Method update fields of record which must contain stream offset + or other data. This method must be called before save operation + when all records placed in array on own positions and offsets can + be freely calculated. + + + + + Size of the required storage space. Read-only. + + + + + Index to first used row. + + + + + Index to first row of unused tail of sheet. + + + + + Array of nm absolute stream positions to the DBCELL record. + + + + + Read-only. Not used. + + + + + Read-only. Not used. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Gets / sets array with DBCell records that must be referenced by this record. + + + + + Shows where the Interface Records end (MMS) (has no fields). + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's internal data array. + + + + + Defines the beginning of Interface records (MMS). + + + + + Correct size of the record. + + + + + The codepage for the file. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + The codepage for the file. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Summary description for IntPtrContinueRecordBuilder. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Type of additional records. + + + + + + + + + + Size of the first record. + + + + + Size of the header for continue records. + + + + + Initializes new instance of the continue record builder. + + Parent record. + Size of the continue record header. + + + + + + + + + + Write array of data into output stream. + + Array of data. + Start index of an array. + Length of data to copy. + Quantity of created Continue Records. + + + + + + + + + + Method that checks if Continue Record is needed. + + Length of data that needs to be stored. + True if Continue Record will be needed for data storage; + otherwise False. + + + + + + + + + + + + + + + + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Returns the unused bytes. + + + + + + + + + + + + + + + Offset from the current record (or continue record) start. Read-only. + + + + + Return maximum size of record. + + + + + Type of the first additional record. + + + + + Type of additional records. + + + + + Maximum size of the continue record data. + + + + + Size of the first record. + + + + + + + + + + Summary description for IntPtrDataProvider. + + + + + + + + + + Pointer to the data array. + + + + + m_ptrData converted into Int64 value. + + + + + Indicates whether this instance is responsible for memory allocation and freeing. + + + + + Size of the allocated data. + + + + + Default constructor to prevent creation of items without arguments. + + + + + + + + + + Returns byte value at the specified position. + + Offset to the required value. + Byte at the specified position. + + + + Returns Int16 value at the specified position. + + Offset to the required value. + Int16 value at the specified position. + + + + Returns Int32 value at the specified position. + + Offset to the required value. + Int32 value at the specified position. + + + + Returns Int32 value at the specified position. + + Offset to the required value. + Int32 value at the specified position. + + + + Copies data from internal storage into specified + + Source offset. + Destination array. + Destination offset. + Size in bytes of the data to copy. + + + + Reads data from BinaryReader. + + Reader to get data from. + Offset in the internal data to start filling from. + Number of bytes to read. + Temporary buffer to use. + + + + Reads string from data provider. + + Offset to the first character. + Number of bytes in the string. + Encoding to use. + Indicates is unicode encoding. + Extracted string. + + + + Writes byte value at the specified position. + + Offset to the required value. + Byte value to write at the specified position. + + + + Writes Int16 value at the specified position. + + Offset to the required value. + Int16 value to write at the specified position. + + + + Writes Int16 value at the specified position. + + Offset to the required value. + Int16 value to write at the specified position. + + + + Writes Int32 value at the specified position. + + Offset to the required value. + Int32 value to write at the specified position. + + + + Writes Int64 value at the specified position. + + Offset to the required value. + Int64 value to write at the specified position. + + + + Sets one bit in specified byte in internal record data array. + + Offset of the byte in the data array. + Bit position in the byte. + Value of bit. + + If bitPos is less than zero or more than 7. + + + + + Writes Int32 value at the specified position. + + Offset to the required value. + Double value to write at the specified position. + + + + Sets string in internal data without string length, + updates offset parameter (adds string length). + + Offset to the string. + Value of the string. + Indicates whether string must be stored using Unicode encoding or not. + + + + Sets bytes in internal record data array values. + + Offset in internal record data array to start from. + Array of bytes to set. + Position in value array to the data that will be set. + Length of the data. + If value array is NULL. + + If pos or length would be less than zero or their sum would be more + than size of value array. + + + If internal record data array is too small for receiving value array + and AutoGrowData is False. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Resizes internal storage if necessary. + + Required size. + + + + Resizes the internal storage if needed + + + + + + + + Clears internal storage if allowed. + + + + + Copies data from internal storage into specified provider. + + Source offset. + Destination provider. + Destination offset. + Size in bytes of the data to copy. + + + + Writes zeros inside memory block. + + + + + Moves memory inside internal buffer. + + Destination offset. + Source offset. + Memory size. + + + + Copies memory inside internal buffer. + + Destination offset. + Source offset. + Memory size. + + + + Creates provider of the same type. + + Created provider object. + + + + Gets / sets internal data storage. + + + + + Returns size of the internal buffer. Read-only. + + + + + Returns heap handle. + + + + + + + + + + Tells whether to iterate over formula calculations or not + (if a formula is dependent upon another formula's result) + (odd feature for something that can only have 32 elements in a formula). + + + + + Correct record size. + + + + + 0 = Iterations off; 1 = Iterations on + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + 0 = Iterations off; 1 = Iterations on + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record contains the addresses of all row and column label ranges + in the current sheet. + + + + + Number of ranges in row ranges array. + + + + + Cell range address list with all row label ranges. + + + + + Number of ranges in column ranges array. + + + + + Cell range address list with all column label ranges. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + If last byte of the parsed data won't be the last byte of read data. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Read-only. Number of ranges in row ranges array. + + + + + Cell range address list with all row label ranges. + + + + + Read-only. Number of ranges in column ranges array. + + + + + Cell range address list with all column label ranges. + + + + + Read-only. Minimum possible size of the record. + + + + + This record represents a cell that contains a string. + In BIFF8, it is replaced by the LABELSST record. + Nevertheless, Excel can import a LABEL record contained in a BIFF8 file. + + + + + This interface supports StringValue property. + + + + + Returns string value. Read-only. + + + + + Size of fixed part. 6 bytes - row, column and xf index, 2 bytes string len, 1 byte string type. + + + + + Label - Unicode string + + + + + Default constructor + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + Size of the required storage space. Read-only. + + + + + Label - Unicode string + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Returns string value. Read-only. + + + + + Value of the record. + + + + + Represents a cell that contains a string. + Refers to a string in the shared string table and is a column value. + + + + + Correct size of the record. + + + + + Index offset. + + + + + Index into SST record. + + + + + Default constructor + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + Returns size of the required storage space. + + Excel version. + Size of the required storage space. + + + + Sets new index. + + Object that provides access to the data. + Offset to the start of the record data. + New SST index. + Excel version of the used data storage. + + + + Sets new index. + + Object that provides access to the data. + Offset to the start of the record data. + Excel version of the used data storage. + Index in the SST table. + + + + Index into SST record. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + + + + + + This record is part of the Page Settings block. + It contains the margin of the current worksheet. + + + + + Default value of top margin. + + + + + Correct record size. + + + + + It contains the top page margin of the current worksheet + (IEEE floating-point value). + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + Maximum change in iteration (IEEE floating-point value). + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's internal data array. + + + + + Contains all merged cell ranges of the current sheet. + Optional record defining a square area of cells to "merge" into one cell. + + + + + Maximum possible number of regions in the single MergeCells record. + + + + + Size of the fixed part. + + + + + Subitem size. + + + + + Number of ranges. + + + + + All merged cell ranges of the current sheet. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + This method checks a record's internal data array for integrity. + + + If there is any internal error. + + + + + Size of the required storage space. Read-only. + + + + + Copies regions to the internal array. + + First region to copy. + Regions count. + Array with regions to copy. + + + + Returns number of ranges. + + + + + All merged cell ranges of the current sheet. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + This class contains information about the region of merged cells. + + + + + First row of the region. + + + + + Last row of the region. + + + + + First column of the region. + + + + + Last column of the region. + + + + + To prevent creation without parameters. + + + + + Creates copy of region. + + Region to copy. + + + + Creates region by specified first and last rows and first and last columns. + + First row of the region. + Last row of the region. + First column of the region. + Last row of the region. + + + + Moves region. + + Row delta. + Column delta. + + + + Converts region into Rectangle. + + Rectangle corresponding to this region. + + + + Creates a copy of the current object. + + A copy of the current object. + + + + Compares two merged regions. + + First region to compare. + Second region to compare. + + + + + Determines whether the specified object is equal to the current object. + + The object to compare with the current object. + True if the specified object is equal to the current object; otherwise, false. + + + + Serves as a hash function for a MergedRegion object. + + A hash code for the current object. + + + + Read-only. First row of the region. + + + + + Gets/sets last row of the region. + + + + + Read-only. First column of the region. + + + + + Gets/sets last column of the region. + + + + + Returns number of cells used by + + + + + Defines how many add menu and delete menu options are stored in the file. + + + + + Correct size of the record. + + + + + Count of add menu options that are stored in the file. + + + + + Count of delete menu options that are stored in the file. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Count of add menu options that are stored in the file. + + + + + Count of delete menu options that are stored in the file. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Main class constructor. Application and Parent properties are set. + + WorkbookImpl + CompoundStorage + + + + Main class constructor. Application and Parent properties are set. + + + + + Parse Customxml parts + + CustomXmlParts + Schemas collection + Stream Data + XmlID + + + + Parses CustomXml Item Properties + + Property Stream + SchemasCollection + + + + Parses Item properties + + Xml Reader + SchemasCollection + + + + Parses Schema Reference and add to collection + + Xml Reader + SchemasCollection + + + + Parses Individual schemas + + Xml Reader + Schemas Collection + + + + Serialize CustomXml Parts + + + + + Serialize Custom Xml properties + + Custom Xml Parts + Item Stream + + + + Serialize CustomXml Properties + + Custom Xml Parts + XmlWriter + + + + Serialize Xml Data in Storage + + Xml Data + Storage + + + + This record contains a drawing object provided by the Microsoft + Office Drawing tool. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + + + + + + + + Sets length of the internal data. + + Length to set. + + + + Size of the required storage space. Read-only. + + + + + + + + + + + + + + + Summary description for ArrayWrapper. + + + + + Wrapped byte array. + + + + + Hash value. + + + + + Default constructor. To prevent user from creation without arguments. + + + + + Initializes new instance of the wrapper. + + Buffer to wrap. + + + + Determines whether the specified Object is equal to the current Object. + + The Object to compare with the current Object. + + True if the specified Object is equal to the current Object; otherwise, false. + + + + + Serves as a hash function for a particular type, suitable for use in + hashing algorithms and data structures like a hash table. + + A hash code for the current Object. + + + + Evaluates hash value. + + + + + Summary description for Attributes. + + + + + + + + + + + + + + + Creates new instance. + + Type of new instance + + + + + + + + + Summary description for MsoBase. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Dictionary key - Type of the MsoBase class, Value - its code. + + + + + Static constructor. + + + + + Default constructor. + + + + + + + + + + + + + + + + + + + + + + + + + Fills record from the data array. + + Array that contains record data. + Offset to the record data. + Size of the extracted data. + + + + Fills internal data array. + + + + + Fills internal data array. + + Stream to write record data into. + Offset index. + List with breaks indexes in arrRecords. + List with records. + Returns array of bytes. + + + + Infills internal data array. + + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + Clone current instance. + + Parent object to create instance. + Returns cloned instance. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Updates NextMsoDrawingData. + + + + + Extracts record from the stream. + + Stream to get data from. + + + + + + + + + Converts from fixed point integer value into double. + + Value to convert. + Converted double value. + + + + Writes Int32 value int stream. + + Stream to write value into. + Value to write. + + + + Writes UInt32 value int stream. + + Stream to write value into. + Value to write. + + + + Writes Int16 value int stream. + + Stream to write value into. + Value to write. + + + + Writes UInt16 value int stream. + + Stream to write value into. + Value to write. + + + + Reads Int32 value from stream. + + Stream to read value from. + Value extracted from the stream. + + + + Reads UInt32 value from stream. + + Stream to read value from. + Value extracted from the stream. + + + + Reads Int16 value from stream. + + Stream to read value from. + Value extracted from the stream. + + + + Reads UInt16 value from stream. + + Stream to read value from. + Value extracted from the stream. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns maximum record size. Read-only. + + + + + Summary description for MsoPicture. + + + + + Common interface for all records that contains picture. + + + + + Picture that is contained by the record. + + + + + Picture Stream + + + + + Picture id. + + + + + Size of the bitmap header. + + + + + Number of used colors. + + + + + Size of each color definition in the palette. + + + + + To specify two UIDs. + + + + + To specify BlipPNG's two UIDs. + + + + + To specify BlipJPEG's two UIDs. + + + + + Dib identifier. ("BM"). + + + + + Reserved. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates new instance of object. + + Parent object. + Base data. + Index of offset. + + + + Creates new instance of object. + + Parent object. + Stream to get data from. + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + + + + + + + Clone current instance. + + Returns cloned instance. + + + + Creates image stream and fills it with necessary data. + + Stream to read image data from. + Offset to the image data. + + + + Indicates whether Art Blip contains Two Unique Id's. + + + + + + Returns number of used colors in the dib image. + + Number of used colors in the dib image. + + + + Evaluates hash value for the stored picture. + + + + + Adds bitmap header to stream. + + + + + + + + + + Gets or sets picture of that is contained in the record. + + + + + Gets or sets the picture stream + + + + + + + + + + + + + + + + + + + + Indicates whether this is dib bitmap. + + + + + Summary description for MsoContainerBase. + + + + + + + + + + Creates new instance of object. + + Parent object. + + + + Creates new instance of object. + + Parent object. + Base data. + Offset index. + + + + Creates new instance of object. + + Parent object. + Base data. + Offset index. + Data getter. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + Clone current instance. + + Returns cloned instance. + + + + Array of items. Read-only. + + + + + Internal list of items (to increase performance). Read-only. + + + + + Summary description for MsoFactory. + + + + + Represents new hashtable + key - code; value - mso record. + + + + + + + + + + + + + + + Create Mso Record. + + Parent object. + Type of created record. + Base data. + Offset index. + Returns new instance of MsoBase record. + + + + Create Mso Record. + + Parent object. + Type of created record. + Base data. + Offset index. + Data getter. + Returns new instance of Mso Base. + + + + Creates Mso record. + + Parent object. + Base data. + Offset index. + Returns new instance of Mso record. + + + + Creates Mso record. + + Parent object. + Base data. + Offset index. + Data getter. + Returns new instance of Mso record. + + + + Creates Mso record. + + Parent object. + Stream to get data from. + Returns new instance of Mso record. + + + + Create Mso Record. + + Parent object. + Type of created record. + Stream with record's data. + Returns new instance of MsoBase record. + + + + Creates Mso record. + + Parent object. + Stream to get data from. + Data getter. + Returns new instance of Mso record. + + + + Create Mso Record. + + Parent object. + Type of created record. + Stream to get data from. + Data getter. + Returns new instance of Mso Base. + + + + + + + + + + + + + + + + + + Registers all known mso record types inside internal collections. + + + + + Summary description for MsofbtSpgr. + + + + + Correct record size. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates new instance of object. + + Parent object. + Base data. + Offset index. + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + Size of the required storage space. Read-only. + + + + + + + + + + + + + + + + + + + + + + + + + Summary description for MsofbtBSE. + + + + + + + + + + + + + + + + + + + + Required type on Win32. + + + + + Required type on Mac. + + + + + Blip size in stream. + + + + + Reference count on the blip. + + + + + File offset in the delay stream. + + + + + How this blip is used. + + + + + Length of the blip name. + + + + + For the future. + + + + + For the future. + + + + + + + + + + + + + + + Index of the record in the collection. + + + + + Path to the picture item (used in Excel 2007). + + + + + Creates new instance. + + Parent object. + + + + Creates new instance. + + Parent object. + Base data. + Offset index. + + + + Dispose + + + + + Dispose + + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + Clone current instance. + + Returns cloned instance. + + + + + + + + + + + Required type on Win32. + + + + + Required type on Mac. + + + + + + + + + + Blip size in stream. + + + + + Reference count on the blip. + + + + + File offset in the delay stream. + + + + + How this blip is used. + + + + + Length of the blip name. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets / sets index of the bse in the collection. + + + + + Gets / sets path to the picture zip item. Used in Excel 2007 format. + + + + + Summary description for MsofbtBstoreContainer. + + + + + Default version of container. + + + + + Default instance of container. + + + + + + + + + + + + + + + + + + + + + + + + + + + Dispose + + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + Summary description for MsofbtSpgr. + + + + + Correct record size. + + + + + + + + + + + + + + + + + + + + + + + + + Creates new instance. + + Parent object. + + + + Creates new instance. + + Parent object. + Base data. + Offset index. + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Summary description for MsofbtClientAnchor. + + + + + Mask for column / row index. + + + + + Mask for offset index. + + + + + + + + + + Length for short data. + + + + + Correct record size. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Indicates whether it is short version of client anchor. Used in headers/footers. + + + + + Zero-based top row index. + + + + + Top row offset. + + + + + Zero-based bottom row index. + + + + + Bottom row offset. + + + + + Indicates whether this anchor is oneCellAnchor (used in Excel 2007 format). + + + + + + + + + + + + + + + + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + Size of the required storage space. Read-only. + + + + + Compares if the objects are equal + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Indicates whether it is short version of client anchor. Used in headers/footers. + + + + + Indicates whether parent shape should be stored as oneCellAnchor or not. + Default value false. + + + + + Summary description for MsofbtSpgr. + + + + + + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + Data getter. + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + Clone current instance. + + Returns cloned instance. + + + + Updates NextMsoDrawingData. + + + + + Adds single record to the AdditionalData array. + + Record to add. + + + + Adds range of records to the AdditionalData array. + + Collection to add. + + + + Adds range of records to the AdditionalData array. + + Collection to add. + + + + + + + + + + + + + + Summary description for MsofbtSpgr. + + + + + + + + + + + + + + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + Data getter. + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + Clone current instance. + + Returns cloned instance. + + + + Updates NextMsoDrawingData. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Summary description for MsofbtDg. + + + + + Default instance. + + + + + Correct record size. + + + + + The number of shapes in this drawing. + + + + + The last MSOSPID given to an SP in this Drawing Group. + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + Size of the required storage space. Read-only. + + + + + The number of shapes in this drawing. + + + + + The last MSOSPID given to an SP in this Drawing Group. + + + + + Summary description for MsofbtDgContainer. + + + + + Default container version. + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + Data getter. + + + + Represents MsofbtDgg in MsoDrawing. + + + + + Default offset to the array. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Parse Structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of it's properties into + an internal Data array: m_data. This method is called by + FillStream, when the record must be serialized into stream. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + Clone current instance. + + Returns cloned instance. + + + + Adds cluster. + + Group id. + Number. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Cluster Id. + + + + + Size of the record. + + + + + DG owning the SPIDs in this cluster. + + + + + Number of SPIDs used so far. + + + + + + + + + + + + + + + + + + + + + + + + + Converts record to the bytes array. + + Array of bytes with record's data. + + + + + + + + + + Clone current instance. + + Return shallow copy of current instance. + + + + DG owning the SPIDs in this cluster. + + + + + Number of SPIDs used so far. + + + + + Record's size. + + + + + Summary description for MsofbtDggContainer. + + + + + Default container version. + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + Data getter. + + + + Dispose + + + + + Summary description for MsofbtOPT. + + + + + Minimum option index. + + + + + List with shape properties. + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + + + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + Clone current instance. + + Returns cloned instance. + + + + Clone current instance. + + Returns cloned instance. + + + + + + + + + + + + + + + + + + Option to set + + + + Replaces option with specified value. + + Option to set. + + + + Searches for option in the record. + + Option to find. + Index of the option. + + + + Removes some option by index. + + Index of option to remove. + + + + Returns index of option index. + + + + + + + Array with shape properties. Read-only. + + + + + Returns singe option from the collection. Read-only. + + + + + Gets property list with all properties. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Property ID. + + + + + Value is a blip ID � only valid if fComplex is FALSE. + + + + + Complex property, value is length. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Clone current instance. + + Return Clone of current object. + + + + Property ID. + + + + + Value is a blip ID � only valid if fComplex is FALSE. + + + + + Complex property, value is length. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Summary description for MsofbtSpgr. + + + + + + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + + + + + + + Summary description for MsofbtSp. + + + + + Default record version. + + + + + Record size. + + + + + + + + + + + + + + + This shape is a group shape. + + + + + Not a top-level shape. + + + + + This is the topmost group shape. Exactly one of these per drawing. + + + + + The shape has been deleted. + + + + + The shape is an OLE object. + + + + + Shape has a hspMaster property. + + + + + Shape is flipped horizontally. + + + + + Shape is flipped vertically. + + + + + Connector type of shape. + + + + + Shape has an anchor of some kind. + + + + + Background shape. + + + + + Shape has a shape type property. + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + Size of the required storage space. Read-only. + + + + + + + + + + + + + + + This shape is a group shape. + + + + + Not a top-level shape. + + + + + This is the topmost group shape. Exactly one of these per drawing. + + + + + The shape has been deleted. + + + + + The shape is an OLE object. + + + + + Shape has a hspMaster property. + + + + + Shape is flipped horizontally. + + + + + Shape is flipped vertically. + + + + + Connector type of shape. + + + + + Shape has an anchor of some kind. + + + + + Background shape. + + + + + Shape has a shape type property. + + + + + Summary description for MsofbtSpgrContainer. + + + + + Default version of container. + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + Data getter. + + + + Summary description for MsofbtSpgr. + + + + + Default record version. + + + + + Correct record size. + + + + + + + + + + + + + + + + + + + + + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Summary description for MsofbtSpgrContainer. + + + + + Default container version. + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + Data getter. + + + + Summary description for MsofbtSplitMenuColors. + + + + + Correct record size. + + + + + + + + + + + + + + + + + + + + + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents metafile picture in the workbook. + + + + + Default buffer size. + + + + + Offset to UID. + + + + + Offset to metafile size. + + + + + Offset to compressed size. + + + + + To specify BlipEMF's two UIDs. + + + + + To specify BlipWMF's two UIDs. + + + + + To specify BlipPICT's two UIDs. + + + + + To specify BlipTIFF's two UIDs. + + + + + Memory stream with picture data. + + + + + Array with compressed picture. + + + + + UID of the picture. + + + + + Primary UID. + + + + + Cache of the metafile size. + + + + + Boundary of metafile drawing commands. + + + + + Size of metafile in EMUs. + + + + + Cache of saved size (size of m_pvBits). + + + + + Compression type. + + + + + Applied filter. + + + + + Inner picture. + + + + + Creates new instance of the picture. + + Parent record. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + Creates new object. + + Parent object. + Stream to get data from. + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + Parses structure. + + + + + Indicates whether Art Blip contains Two Unique Id's. + + + + + + Loads primary UID. + + Stream to get primary UID from if necessary. + Offset after reading primary uid. + + + + Saves metafile into MemoryStream. + + Picture to serialize. + Memory stream with metafile data. + + + + Converts GraphicsUnit into MetafileFrameUnit. + + Value to convert. + Converted value. + + + + Compresses metafile picture. + + Stream with metafile. + Offset to the metafile. + Compressed picture. + + + + Clone current instance. + + Returns cloned instance. + + + + Frees all unmanaged resources. + + + + + Destructor. + + + + + Picture. + + + + + Gets or sets the picture stream + + + + + + + + + + Summary description for MsoUnknown. + + + + + Creates new object. + + Parent object. + + + + Creates new object. + + Parent object. + Base data. + Offset index. + + + + + + + + + Infills internal data array. + + Stream to serialize into. + Offset. + List with breaks indexes in arrRecords. + List with records. + + + + Indicates whether record needs internal data array or if it can be cleaned. + + + + + Summary description for _MsoEnums. + + + + + Represents the msofbtDggContainer MsoRecord type. + + + + + Represents the Dgg type. + + + + + Represents the CLSID type. + + + + + Represents the OPT type. + + + + + Represents the ColorMRU type. + + + + + Represents the SplitMenuColors type. + + + + + Represents the BstoreContainer type. + + + + + Represents the BSE type. + + + + + Represents the DgContainer type. + + + + + Represents the Dg type. + + + + + Represents the RegroupItems type. + + + + + Represents the ColorScheme type. + + + + + Represents the SpgrContainer type. + + + + + Represents the SpContainer type. + + + + + Represents the Spgr type. + + + + + Represents the Sp type. + + + + + Represents the Textbox type. + + + + + Represents the ClientTextbox type. + + + + + Represents the Anchor type. + + + + + Represents the ChildAnchor type. + + + + + Represents the ClientAnchor type. + + + + + Represents the ClientData type. + + + + + Represents the OleObject type. + + + + + Represents the DeletedPspl type. + + + + + Represents the SolverContainer type. + + + + + Represents the ConnectorRule type. + + + + + Represents the AlignRule type. + + + + + Represents the ArcRule type. + + + + + Represents the ClientRule type. + + + + + Represents the CalloutRule type. + + + + + Represents the Selection type. + + + + + Represents the Unknown type. + + + + + Represents the MsoBlipUsage options. + + + + + Represents the Default option. + + + + + Represents the Texture option. + + + + + Represents the UsageMax option. + + + + + Represents the MsoBlipType options. + + + + + Represents the ERROR option. + + + + + Represents the UNKNOWN option. + + + + + Represents the EMF option. + + + + + Represents the WMF option. + + + + + Represents the PICT option. + + + + + Represents the JPEG option. + + + + + Represents the PNG option. + + + + + Represents the DIB option. + + + + + Represents the FirstClient option. + + + + + Represents the LastClient option. + + + + + Represents the MsoBlipCompression options. + + + + + Represents the Deflate option. + + + + + Represents the None option. + + + + + Represents the Test option. + + + + + Represents the MsoBlipFilter options. + + + + + Represents the Adaptive option. + + + + + Represents the None option. + + + + + Represents the Test option. + + + + + Represents the Mso options. + + + + + Do not group this shape. + + + + + Represents the TextId options. + + + + + Represents the wrap text options . + + + + + Represents the TextDirection options. + + + + + Represents the SizeTextToFitShape options. + + + + + Represents the BlipId options. + + + + + Represents the BlipName options. + + + + + Represents fill type. + + + + + Represents the location of the top of the crop rectangle + + + + + Represents the location of the bottom of the crop rectangle. + + + + + Represents the location of the left side of the crop rectangle. + + + + + Represents the location of the right side of the crop rectangle. + + + + + Host-defined ID for OLE objects (usually a pointer). + + + + + Represents the ForeColor options. + + + + + Represents the transparency. + + + + + Represents the BackColor options. + + + + + Represents the gradient transparency options. + + + + + Represents shape pattern. + + + + + Represents shape pattern, texture name. + + + + + Represents shape gradient shading style. + + + + + Represents shape gradient shading variants. + + + + + Represents first record for shape gradient shading style. + + + + + Represents second record for shape gradient shading style. + + + + + Represents third record for shape gradient shading style. + + + + + Represents fourth record for shape gradient shading style. + + + + + Represents preset gradient data. + + + + + Represents gradient color type. + + + + + Hit test a shape as though filled. + + + + + Line color. + + + + + Line color. + + + + + Line Weight. + + + + + Line color. + + + + + Contain line pattern. + + + + + Line pattern. + + + + + Line style + + + + + Line dash style + + + + + Line start arrow. + + + + + Line end arrow. + + + + + Start arrow width. + + + + + Start arrow len. + + + + + End arrow width. + + + + + End arrow len. + + + + + Represents if dot value is round. + + + + + Represents the NoLineDrawDash options. + + + + + Represents the ForeShadowColor options. + + + + + Excel5-style shadow. + + + + + Name of the shape (only if explicitly set). + + + + + Alternative text. + + + + + Represents in comment shape show always property. + + + + + Represents a range of empty cells. All cells are located in the same row. + + + + + + + + + + Returns size of the subrecord if it was placed as separate record (including BiffRecord header). Read-only. + + + + + Inserts cell inside this record. + + Cell to insert. + + + + Removes information about specified column from the record and splits record into two. + \ + Zero-based index of the column to remove. + Split records. + + + + Splits record into subrecords. + + Indicates whether styles must be ignored. + Array with all subrecords. + + + + Zero-based index of the first column. + + + + + Zero-based index of the last column. + + + + + Returns size of the sub record. Read-only. + + + + + Returns type of the subrecord. Read-only. + + + + + Size of the fixed part. + + + + + Minimum record size. + + + + + Size of the subitem. + + + + + List of 16-bit indexes to XF records. + + + + + Index to last column. + + + + + Default constructor + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + This method checks the record's internal data array for integrity. + + If there is any internal error. + + + + Creates BlankRecord corresponding to the specified column. + + Column index. + Corresponding BlankRecord. + + + + Returns size of the required storage space. + + Excel version. + Size of the required storage space. + + + + Increases last column of the record. + + Object that provides access to the data. + Offset to the record start (record code). + Record data length. + Value that must be added to the column width. + Excel version used to fill data. + + + + Returns size of the subrecord if it was placed as separate record (including BiffRecord header). Read-only. + + + + + Inserts cell inside this record. + + Cell to insert. + + + + Removes information about specified column from the record and splits record into two. + + Zero-based index of the column to remove. + Splitted records. + + + + Creates record based in the information from this record. + + The first column index in the resulting record. + The last column index in the resulting record. + Created record. + + + + Creates blank record with specified column index. + + Zero-based column index of the created record. + Created record. + + + + Splits record into subrecords. + + Indicates whether styles must be ignored. + Array with all subrecords. + + + + Index to first column. + + + + + List of 16-bit indexes to XF records. + + + + + Index to last column. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Returns size of the subrecord. Read-only. + + + + + Returns type of the subrecord. Read-only. + + + + + Represents a cell range containing RK value cells. + All cells are located in the same row. + + + + + Size of the fixed part. + + + + + Size of the subitem. + + + + + List of RkRec structures. + + + + + Index to last column. + + + + + Default constructor + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + Returns size of the required storage space. + + Excel version. + Size of the required storage space. + + + + Returns size of the subrecord if it was placed as separate record (including BiffRecord header). Read-only. + + + + + Inserts cell inside this record. + + Cell to insert. + + + + Merges this and specified records. + + Record to merge with. + + + + + + + + + + Creates subrecord corresponding to the specified record. + + + + + + + Removes information about specified column from the record and splits record into two. + + Zero-based index of the column to remove. + Splitted records. + + + + Creates record based in the information from this record. + + The first column index in the resulting record. + The last column index in the resulting record. + Created record. + + + + Creates blank record with specified column index. + + Zero-based column index of the created record. + Created record. + + + + Splits record into subrecords. + + Indicates whether styles must be ignored. + Array with all subrecords. + + + + Index to the first column. + + + + + Index to last column. + + + + + List of RkRec structures. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Returns size of the subrecord. Read-only. + + + + + Returns type of the subrecord. Read-only. + + + + + Contains information about single RK entry in MulRKRecord. + + + + + Index of ExtendedFormat of the RK entry. + + + + + RK number of the RK entry. + + + + + Default constructor. To prevent user creating class + instance without parameters. + + + + + Constructs RkRec and sets its ExtendedFormat and Rk number values. + + Value of ExtendedFormat index. + Value of RkNumber. + + + + Index of ExtendedFormatRecord for this Rk number. + + + + + Read-only. 32-bit value contained by the record. + + + + + Read-only. Returns double value stored as Rk. + + + + + The begin record defines the start of a block of records for a (Graphing) + data object. This record is matched with a corresponding EndRecord. + + + + + Bit mask of the Function group. + + + + + Size of the fixed part. + + + + + Predefined names: + + + + + Option flags. + + + + + True if name is hidden. + + + + + True if name is a function. + + + + + True if name is a command. + + + + + True if function macro or command macro. + + + + + True if complex function (array formula or user defined). + + + + + True if built-in name. + + + + + True if name contains binary data. + + + + + Keyboard shortcut. + + + + + Length of the name. + + + + + Size of the formula data. + + + + + Reserved. + + + + + 0 if global name; otherwise index to sheet (one-based). + + + + + Length of menu text. + + + + + Length of description text. + + + + + Length of help topic text. + + + + + Length of status bar text. + + + + + Name (Unicode string without length field). + + + + + Formula data (RPN token array without size field). + + + + + Optional. Menu text (Unicode string without length field). + + + + + Optional. Description text (Unicode string without length field). + + + + + Optional. Help topic text (Unicode string without length field). + + + + + Optional. Status bar text (Unicode string without length field). + + + + + Parsed formula expression. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Infill fixed part of the record. + + Object that provides access to the data. + Starting offset. + + + + Infill fixed part of the record. + + Object that provides access to the data. + Offset to the fixed part data. + + + + Size of the required storage space. Read-only. + + + + + Determines number of bytes needed to store string without length field. + + Value to measure. + Number of bytes needed to store string without length field. + + + + Method checks name of NameRecord and determines whether it is a default or not. + + Name to check. + True if name is Predefined name; otherwise False. + + + + Looks for name in the predefined names table. + + Value to look for. + Index in the predefined names array. + + + + + + + + + + Clear Data + + + + + True if name is hidden. + + + + + True if name is a function. + + + + + True if name is a command. + + + + + True if function macro or command macro. + + + + + True if complex function (array formula or user defined). + + + + + True if built-in name. + + + + + True if name contains binary data. + + + + + Index to function group. + Changes bits of m_usOptions member. + + + + + Keyboard shortcut. + + + + + Read-only. Length of the name. + + + + + Read-only. Size of the formula data. + + + + + 0 if global name; otherwise index to sheet (one-based). + + + + + Read-only. Length of menu text. + + + + + Read-only. Length of description text. + + + + + Read-only. Length of help topic text. + + + + + Read-only. Length of status bar text. + + + + + Name (Unicode string without length field). + + + + + Formula data (RPN token array without size field). + + + + + Optional. Menu text (Unicode string without length field). + + + + + Optional. Description text (Unicode string without length field). + + + + + Optional. Help topic text (Unicode string without length field). + + + + + Optional. Status bar text (Unicode string without length field). + + + + + Read-only. Reserved (not used). + + + + + Read-only. Minimum possible size of the record. + + + + + The NOTE record specifies a comment associated with a particular cell. + + + + + Size of the fixed part of the record. + + + + + Row of the comment. + + + + + Column of the comment. + + + + + Options flag. + + + + + Whether the comment is visible. + + + + + Object ID for OBJ record that contains the comment. + + + + + Length of the name of the original comment author. + + + + + Name of the original comment author. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Size of the required storage space. Read-only. + + + + + Index to row. + + + + + Index to column. + + + + + Name of the original comment author. + + + + + Object ID for OBJ record that contains the comment. + + + + + Indicates whether the comment is visible. + Changes one bit in m_usOptions field. + + + + + Read-only. Reserved. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Represents a cell that contains a floating-point value. + + + + + Correct record size. + + + + + IEEE floating-point value. + + + + + Default constructor + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + Returns size of the required storage space. + + Excel version. + Size of the required storage space. + + + + Reads record's value from the data provider. + + Provider to read data from. + Offset to the record's start. + Excel version that was used to infill. + Record's value. + + + + IEEE floating-point value. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + + + + + + Returns double value. Read-only. + + + + + Value of the record. + + + + + This record is part of the worksheet / workbook protection. It determines whether + the objects of the current sheet are protected. Object protection is not active + if this record is omitted. + + + + + Default record size. + + + + + 0 = Objects not protected; 1 = Objects protected + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + 0 = Objects not protected; 1 = Objects protected + + + + + Read-only. Minimum possible size of the record. + + + + + Read-only. Maximum possible size of the record. + + + + + The OBJ record contains a partial description of a drawing object + and the MSODRAWING, MSODRAWINGGROUP, and MSODRAWINGSELECTION records contain + the remaining drawing object data. + + + + + Array that contain all subrecords. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Get subrecord by its offset. + + Object that provides access to the data. + Offset to the subrecord. + Start offset of the OBJRecord. + Parsed subrecord from internal data array. + + + + Adds new subrecord. + + Record to add. + + + + Searches for the subrecord of the specified type. + + Record type to search for. + Found subrecord or null if not found. + + + + Searches for the index of the subrecord with the specified type. + + Record type to search for. + Index of the found subrecord or -1 if not found. + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + Read-only. Returns array of subrecords. + + + + + Read-only. Returns array of subrecords. + + + + + Indicates whether this record needs a data array after parsing + is complete. Read-only. + + + + + To store an OBJ record in BIFF8, Microsoft Excel writes a collection + of sub-records. The structure of a sub-record is identical to the + structure of a BIFF record. Each sub-record begins with a 2-byte + ID number ft (see the following table). Next a 2-byte length field, + cb, specifies the length of the sub-record data field. The sub-record + data field follows the length field. The first sub-record is always + ftCmo (common object data) and the last sub-record is always ftEnd. + + + + + Represents the ftEnd subrecord type. + + + + + Represents the Reserved0 subrecord type. + + + + + Represents the Reserved1 subrecord type. + + + + + Represents the Reserved2 subrecord type. + + + + + Represents the ftMacro subrecord type. + + + + + Represents the ftButton subrecord type. + + + + + Represents the ftGmo subrecord type. + + + + + Represents the ftCf subrecord type. + + + + + Represents the ftPioGrbit subrecord type. + + + + + Represents the ftPictFmla subrecord type. + + + + + Represents the ftCbls subrecord type. + + + + + Represents the ftRbo subrecord type. + + + + + Represents the ftSbs subrecord type. + + + + + Represents the ftNts subrecord type. + + + + + Represents the ftSbsFmla subrecord type. + + + + + Represents the ftGboData subrecord type. + + + + + Represents the ftEdoData subrecord type. + + + + + Represents the ftRboData subrecord type. + + + + + Represents the ftCblsData subrecord type. + + + + + Represents the ftLbsData subrecord type. + + + + + Represents the ftCblsFmla subrecord type. + + + + + Represents the ftCmo subrecord type. + + + + + Possible object types: + + + + + Represents the otGroup object type. + + + + + Represents the otLine object type. + + + + + Represents the otRectangle object type. + + + + + Represents the otOval object type. + + + + + Represents the otArc object type. + + + + + Represents the otChart object type. + + + + + Represents the otText object type. + + + + + Represents the otButton object type. + + + + + Represents the otPicture object type. + + + + + Represents the otPolygon object type. + + + + + Represents the otReserved0 object type. + + + + + Represents the otCheckBox object type. + + + + + Represents the otOptionBtn object type. + + + + + Represents the otEditBox object type. + + + + + Represents the otLabel object type. + + + + + Represents the otDialogBox object type. + + + + + Represents the otSpinner object type. + + + + + Represents the otScrollBar object type. + + + + + Represents the otGroupBox object type. + + + + + Represents the otGroupBox object type. + + + + + Represents the otComboBox object type. + + + + + Represents the otReserved1 object type. + + + + + Represents the otReserved2 object type. + + + + + Represents the otReserved3 object type. + + + + + Represents the otReserved4 object type. + + + + + Represents the otComment object type. + + + + + Represents the otReserved5 object type. + + + + + Represents the otReserved6 object type. + + + + + Represents the otReserved7 object type. + + + + + Represents the otReserved8 object type. + + + + + Represents the otMSODrawing object type. + + + + + Common object data. + + + + + Type of the object. + + + + + Default constructor. + + + + + Initialize new instance. + + Type of the subrecord. + Length of the subrecord's data. + Array that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Size of the required storage space. Read-only. + + + + + Indicates whether object is locked. + + + + + Common object data. + + + + + Type of the object. + + + + + Indicates whether combo box has 3D shadow. + + + + + Default constructor. + + + + + Initialize new instance. + + Type of the subrecord. + Length of the subrecord's data. + Array that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Size of the required storage space. Read-only. + + + + + Indicates whether object is Checked. + + + + + Indicates whether object is locked. + + + + + this class parse and serialize check box Linked cell + + + + + Formula tokens. + + + + + Default constructor. + + + + + Initialize new instance. + + Type of the subrecord. + Length of the subrecord's data. + Array that contains subrecord's data. + + + + Gets/sets parsed formula tokens. + + + + + Common object data. + + + + + Bit mask for ChangeColor property. + + + + + Type of the object. + + + + + Object's id. + + + + + Option flags. + + + + + Reserved. + + + + + Indicates that record length is zero. + + + + + Default constructor. + + + + + Initialize new instance. + + Type of the subrecord. + Length of the subrecord's data. + Array that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Clones current objects. + + Returns instance of cloned object. + + + + Size of the required storage space. Read-only. + + + + + Indicates whether object is locked. + + + + + Indicates whether object is printable. + + + + + Indicates whether auto fill is turned on. + + + + + Indicates whether auto line option is turned on. + + + + + Indicates whether excel is allowed to change color of combo box (used in autofilters). + + + + + Object's ID. + + + + + Object type. + + + + + Reserved. + + + + + Returns record options. Read-only. + + + + + End of OBJ record. + + + + + Correct record size. + + + + + Default constructor. + + + + + Creates new instance of the subrecord. + + Type of the subrecord. + Length of the subrecord's data. + Array that contains subrecord's data. + + + + Parses array of bytes. + + Array to parse. + + + + Size of the required storage space. Read-only. + + + + + Note structure. + + + + + Size of the record. + + + + + Bit position for value that defines arrow color. + + + + + Index to the byte that defines arrow color. + + + + + Bitmask for TypeValid property. + + + + + Bitmask for combo box Type property. + + + + + Starting bit for the combo box Type property. + + + + + Defoult record data. + + + + + Internal data array. + + + + + Number of lines in the list box. + + + + + Formula holding referenced area. + + + + + Selected item index. + + + + + Option flags. + + + + + Edit id. + + + + + Array indicating whether so item was selected or not. + + + + + Indicates whether this record is short representation of the list box data record + (without options, and any additional data). + + + + + Shape's type. + + + + + Default constructor. + + + + + Initializes new instance of subrecord. + + Type of the subrecord. + Length of the subrecord's data. + Buffer that contains subrecord's data. + + + + Initializes new instance of subrecord. + + Type of the subrecord. + Length of the subrecord's data. + Buffer that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + Type of the object this record is part of. + + + + Parses selected items in the case of multiple selection enabled. + + Buffer to get data from. + Offset to the selection data start. + Offset after extracting necessary data. + + + + Clones current objects. + + Returns instance of cloned object. + + + + Size of the required storage space. Read-only. + + + + + Serialization + + + + + + + Serializes + + + + + + + + Returns internal data array. Read-only. + + + + + Indicates whether arrow has default or selected color. + + + + + Number of items in the list. + + + + + Formula token specifying referenced area. + + + + + One-based selected index. 0 - no item is selected. + + + + + Options. + + + + + An ObjId that specifies the edit box associated with this list. + + + + + List box drop data. + + + + + Gets or sets value indicating whether combo box type has valid value. + + + + + Gets or sets combo box type. + + + + + Gets or sets value indicates whether control has 3-D effect. + + + + + Gets or sets list selection type. + + + + + Gets value indicating whether we have multi selection or not. + + + + + Enum contains possible list selection type. + + + + + The list control is only allowed to have one selected item. + + + + + The list control is allowed to have multiple items selected by clicking on each item. + + + + + The list control is allowed to have multiple items selected by holding the CTRL key + and clicking on each item. + + + + + Represents ftMacro + + + + + Formula tokens that identifies associated macro. + + + + + Default constructor. + + + + + Default constructor. + + + + + Parse the bytes + + + + + + Serialization + + + + + + + Get storage size for ExcelVersion + + + + + + + Clones current objects. + + Returns instance of cloned object. + + + + Gets or sets formula tokens with associated macro. + + + + + Note structure. + + + + + Correct record size. + + + + + Internal data array. + + + + + Initializes new instance of subrecord. + + Type of the subrecord. + Length of the subrecord's data. + Buffer that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Clones current objects. + + Returns instance of cloned object. + + + + Size of the required storage space. Read-only. + + + + + Returns internal data array. Read-only. + + + + + Note structure. + + + + + Start of the string data. + + + + + Default header (data is unknown for us). + + + + + Default footer (data is unknown for us). + + + + + Internal data array. + + + + + Internal data array. + + + + + + + + + + Default constructor. + + + + + Initializes new instance of subrecord. + + Type of the subrecord. + Length of the subrecord's data. + Buffer that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Clones current objects. + + Returns instance of cloned object. + + + + Size of the required storage space. Read-only. + + + + + Formula value. + + + + + Common object data. + + + + + Default constructor. + + + + + Initialize new instance. + + Type of the subrecord. + Length of the subrecord's data. + Array that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Size of the required storage space. Read-only. + + + + + Common object data. + + + + + Type of the object. + + + + + Type of the object. + + + + + Reserved object 1 + + + + + Reserved object 2; + + + + + Default constructor. + + + + + Initialize new instance. + + Type of the subrecord. + Length of the subrecord's data. + Array that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Size of the required storage space. Read-only. + + + + + Indicates whether object is First Button in the group. + + + + + Indicates Next Button in the Group. + + + + + Note structure. + + + + + Size of the record. + + + + + Default record data. + + + + + Internal data array. + + + + + Default constructor. + + + + + Initializes new instance of subrecord. + + Type of the subrecord. + Length of the subrecord's data. + Buffer that contains subrecord's data. + + + + Parses byte array. + + Array to parse. + + + + Serialization + + + + + + + Clones current objects. + + Returns instance of cloned object. + + + + Size of the required storage space. Read-only. + + + + + Returns internal data array. Read-only. + + + + + Gest or sets the value + + + + + Gets or sets Minimum value + + + + + Gets or sets Maximum value + + + + + Gets or sets Increment value + + + + + Gets or sets Page value + + + + + Gets or sets Horizontal value + + + + + Gets or sets the value of scroll bar width + + + + + + + + Subrecord's internal data. + + + + + Initializes new subrecord. + + Type of the new subrecord. + Length of the subrecord. + Array that contains subrecord's data. + + + + Parses bye array. + + Array to parse. + + + + Fills array with binary representation of the subrecord. + + Object that provides access to the data. + Offset in the buffer to copy data to. + + + + Clones current objects. + + Returns instance of cloned object. + + + + Size of the required storage space. Read-only. + + + + + Returns internal data array. Read-only. + + + + + Represents LbsDropData + + + + + Option flags. + + + + + An unsigned integer that specifies the number of lines to be displayed + in the dropdown. If there are more lines than that in the list, + a scrollbar can appear. + + + + + An unsigned integer that specifies the smallest width in pixels allowed for the dropdown window. + + + + + Current string value in the dropdown. + + + + + Serializes object inside specified data provider. + + Data provider to serialize into. + Offset to start serialization from. + + + + Extracts object from specified data provider. + + Data provider to get data from. + Offset to start getting data from. + + + + Gets + + + + + + Creates a copy of the current object. + + A copy of the current object. + + + + Option flags. + + + + + An unsigned integer that specifies the number of lines to be displayed + in the dropdown. If there are more lines than that in the list, + a scrollbar can appear. + + + + + An unsigned integer that specifies the smallest width in pixels allowed for the dropdown window. + + + + + Current string value in the dropdown. + + + + + Offset to the row index. + + + + + Offset to the column index. + + + + + Formula tokens. + + + + + Default constructor. + + + + + Initialize new instance. + + Type of the subrecord. + Length of the subrecord's data. + Array that contains subrecord's data. + + + + Gets/sets parsed formula tokens. + + + + + This record stores RecalcId identifiers. + + + + + Represents the Record Type + + + + + Represents Calc Identifier. + + + + + Default constructor + + + + + Read/Initialize constructor + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Represents the user interface language of the Excel version + that saved this file. + + + + + Represents the system regional settings + at the time the file was saved. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record stores the size of an embedded OLE object + (when Microsoft Excel is a server). + + + + + Default record size. + + + + + Reserved. + + + + + First row of the object. + + + + + Last row of the object. + + + + + First column of the object. + + + + + Last column of the object. + + + + + Default constructor, sets all fields' default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Read-only. Get reserved field value. + + + + + First row of the object. + + + + + Last row of the object. + + + + + First column of the object. + + + + + Last column of the object. + + + + + Read-only. Return minimum possible size of the record. + + + + + Read-only. Returns maximum possible size of the record. + + + + + This record contains the definition of all user-defined colors available + for cell and object formatting. + + + + + Number of colors (nm). Contains 16 in BIFF3-BIFF4 + and 56 in BIFF5-BIFF8. + + + + + Array of colors. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Read-only. Number of colors (nm). Contains 16 + in BIFF3-BIFF4 and 56 in BIFF5-BIFF8. + + + + + Array of colors. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Structure describing color entry. + + + + + Value of the red part of the color. + + + + + Value of the green part of the color. + + + + + Value of the blue part of the color. + + + + + Not used. + + + + + Converts object to string. + + String representation of the object. + + + + + + + + + Correct record size. + + + + + Position of the vertical split (px, 0 = No vertical split). + Unfrozen pane: Width of the left pane(s) (in twips = 1/20 of a point). + Frozen pane: Number of visible columns in left pane(s). + + + + + Position of the horizontal split (py, 0 = No horizontal split). + Unfrozen pane: Height of the top pane(s) (in twips = 1/20 of a point). + Frozen pane: Number of visible rows in top pane(s). + + + + + Index to first visible row in bottom pane(s). + + + + + Index to first visible column in right pane(s). + + + + + Identifier of pane with active cell cursor (see below). The last field + specifying the active pane has a size of 1 byte in BIFF2-BIFF4 and 2 + bytes in BIFF5-BIFF8. The correct identifiers for all possible + combinations of visible panes are shown in the following pictures: + px=0, py=0 -> 3 + px=0, py>0 -> 3 + 2 + px>0, py=0 -> 3 1 + px>0, py>0 -> 3 1 + 2 0 + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Position of the vertical split (px, 0 = No vertical split). + Unfrozen pane: Width of the left pane(s) (in twips = 1/20 of a point). + Frozen pane: Number of visible columns in left pane(s). + + + + + Position of the horizontal split (py, 0 = No horizontal split). + Unfrozen pane: Height of the top pane(s) (in twips = 1/20 of a point). + Frozen pane: Number of visible rows in top pane(s). + + + + + Index to first visible row in bottom pane(s). + + + + + Index to first visible column in right pane(s). + + + + + Identifier of pane with active cell cursor (see below). The last field + specifying the active pane has a size of 1 byte in BIFF2-BIFF4 and 2 + bytes in BIFF5-BIFF8. The correct identifiers for all possible + combinations of visible panes are shown in the following pictures: + px=0, py=0 -> 3 + px=0, py>0 -> 3 + 2 + px>0, py=0 -> 3 1 + px>0, py>0 -> 3 1 + 2 0 + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Stores the encrypted password for a sheet or workbook. + + + + + 16-bit hash value of the password. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + 16-bit hash value of the password. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Stores the (2 byte) encrypted password for a shared workbook. + + + + + Default record size. + + + + + Encrypted password for a shared workbook. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. + + + + + Encrypted password for a shared workbook. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record is an extension of the CacheDataRecord. + Both records contain PivotTable cache data. + Corresponds to SXDBEX in Excel format specification. + + + + + Default record size. + + + + + The date that the PivotTable cache was created or was last refreshed. + The date is stored as an 8-byte IEEE floating-point number. + + + + + Count of SXFormula records for this cache. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + The date that the PivotTable cache was created or was last refreshed. + The date is stored as an 8-byte IEEE floating-point number. + + + + + Count of SXFormula records for this cache. + + + + + This record is stored on a separate stream that maintains information about + each PivotTable cache. The record is followed by a single CacheDataExRecord + and several FDB records, one for each field in the PivotTable. + SXDBEX in Excel specification. + + + + + Offset to the user name field. + + + + + Number of records in database. + + + + + Identifies the stream. + + + + + Option flags. + + + + + Indicates whether data is being saved with table layout. + + + + + Indicates whether the PivotTable must be refreshed before next update. + + + + + Indicates whether the PivotTable will be refreshed on load. + + + + + Indicates whether the cache is optimized to use the least amount of memory. + + + + + Indicates whether results of the query are obtained in the background. + + + + + Indicates whether refresh is enabled. + + + + + Number of records for each database block. + + + + + Number of base fields in databases. + + + + + Number of base fields, grouped fields, and calculated fields. + + + + + This value is not used and can be set to zero. + + + + + Data source is one of: + 1 - Excel worksheet, + 2 - external data, + 4 - consolidation, + 8 - scenario PivotTable. + + + + + Number of characters in the string containing the name of the user who + last refreshed the PivotTable. + + + + + The user who last refreshed the PivotTable. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Fills cache with data from the range. + + Data range to fill. + + + + Number of records in database. + + + + + Identifies the stream. + + + + + Option flags. + + + + + Indicates whether data is being saved with table layout. + + + + + Indicates whether the PivotTable must be refreshed before next update. + + + + + Indicates whether the PivotTable will be refreshed on load. + + + + + Indicates whether the cache is optimized to use the least amount of memory. + + + + + Indicates whether results of the query are obtained in the background. + + + + + Indicates whether refresh is enabled. + + + + + Number of records for each database block. + + + + + Number of base fields in databases. + + + + + Number of base fields, grouped fields, and calculated fields. + + + + + This value is not used and can be set to zero. Read-only. + + + + + Data source is one of: + 1 - Excel worksheet, + 2 - external data, + 4 - consolidation, + 8 - scenario PivotTable. + + + + + Number of characters in the string containing the name of the user who + last refreshed the PivotTable. Read-only. + + + + + The user who last refreshed the PivotTable. + + + + + This record stores options from the Consolidate dialog box (Data menu). + + + + + Default record size. + + + + + Index to the data consolidation function. + + + + + If it is equal to 1 then the Left Column option is turned on. + + + + + If it is equal to 1 then the Top Row option is turned on. + + + + + If it is equal to 1 then the Create Links To Source Data option is turned on. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Index to the data consolidation function. + + + + + If it is equal to True then the Left Column option is turned on. + + + + + If it is equal to True then the Top Row option is turned on. + + + + + If it is equal to 1 then the Create Links To Source Data option is turned on. + + + + + Function types. + + + + + Represents the Average function type. + + + + + Represents the CountNums function type. + + + + + Represents the Count function type. + + + + + Represents the Max function type. + + + + + Represents the Min function type. + + + + + Represents the Product function type. + + + + + Represents the StdDev function type. + + + + + Represents the StdDevp function type. + + + + + Represents the Sum function type. + + + + + Represents the Var function type. + + + + + Represents the Varp function type. + + + + + Summary description for DataItem. + + + + + Value for name length indicating that name is Null. + + + + + Offset to the Name property. + + + + + Field that this data item is based on. + + + + + Index to the aggregation function: + 0 - Sum, + 1 - Count, + 2 - Average, + 3 - Max, + 4 - Min, + 5 - Product, + 6 - Count Nums, + 7 - StdDev, + 8 - StdDevp, + 9 - Var, + 10 - Varp, + + + + + Data display format: + 0 - Normal, + 1 - Difference from, + 2 - Percentage of, + 3 - Percentage difference from, + 4 - Running total in, + 5 - Percentage of row, + 6 - Percentage of column, + 7 - Percentage of total, + 8 - Index. + + + + + Index to the SXVD record used by the data display format. + + + + + Index to the SXVI record used by the data display format. + + + + + Index to the format table for this item. + + + + + Length of the name; if it is equal to 0xFFFF, then name is null + and the name in the PivotTable cache storage is used. + + + + + Name of the item. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Field that this data item is based on. + + + + + Index to the aggregation function: + 0 - Sum, + 1 - Count, + 2 - Average, + 3 - Max, + 4 - Min, + 5 - Product, + 6 - Count Nums, + 7 - StdDev, + 8 - StdDevp, + 9 - Var, + 10 - Varp, + + + + + Data display format: + 0 - Normal, + 1 - Diffrence from, + 2 - Percentage of, + 3 - Percentage difference from, + 4 - Running total in, + 5 - Percentage of row, + 6 - Percentage of column, + 7 - Percentage of total, + 8 - Index. + + + + + Index to the SXVD record used by the data display format. + + + + + Index to the SXVI record used by the data display format. + + + + + Index to the format table for this item. + + + + + Length of the name; if it is equal to 0xFFFF, then name is null + and the name in the PivotTable cache storage is used. Read-only. + + + + + Name of the item. + + + + + This record stores information about the SQL query string that retrieves + external data for a PivotTable. The record is followed by SXSTRING records + that contain the SQL strings and then by a SXSTRING record that contains + the SQL server connection string. + + + + + Bit mask for DataSourceType property. + + + + + Default record size. + + + + + Options flags. + + + + + True for ODBC connection. + + + + + True for SQL statement or URL. + + + + + True for server-based page fields. + + + + + True for Web (WWW) query. + + + + + Indicates whether save password option is on. + + + + + Indicates whether save tables in HTML only option is on. + + + + + Number of parameter strings. + + + + + Number of strings for SQL statement or URL. + + + + + Number of strings for post method of Web query. + + + + + Number of strings for SQL statement for server-based page fields. + + + + + Number of strings for ODBC connection string. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Options flags. Read-only. + + + + + 1 - ODBC data source, + 2 - DAO recordset (no actual information about the recordset is saved), + 3 - reserved, + 4 - Web (WWW) query. + + + + + True for ODBC connection. + + + + + True for SQL statement or URL. + + + + + True for server-based page fields. + + + + + True for Web (WWW) query. + + + + + Indicates whether save password option is on. + + + + + Indicates whether save tables in HTML only option is on. + + + + + Number of parameter strings. + + + + + Number of strings for SQL statement or URL. + + + + + Number of strings for post method of Web query. + + + + + Number of strings for SQL statement for server-based page fields. + + + + + Number of strings for ODBC connection string. + + + + + This record stores an array of variable-length SXLI structures, which + describe the row and column items in a PivotTable. There are two + LineItemArrayRecords for each PivotTable: the first stores row items, + and the second stores column items. + + + + + Array of LineItem structures. + + + + + Indicates whether internal data array should be preserved. + + + + + Default constructor. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + + + + + + Creates new instance + + + + + + Array of LineItem structures. + + + + + Indicates whether record needs internal data array or if it can be cleaned. + + + + + Indicates whether we should add header of continue records to the internal data provider. Read-only. + + + + + LineItem class. + + + + + Size of the fixed part. + + + + + Bit for IsMultiDataName property. + + + + + Bit for IsSubtotal property. + + + + + Bit for IsBlock property. + + + + + Bit for IsGrand property. + + + + + Bit for IsMultiDataOnAxis property. + + + + + Count of items that are identical to the previous element in items array. + + + + + Item type. + + + + + Maximum index to the items array. + + + + + Option flags. + + + + + Array of indexes to SXVI records; the number of elements in the array is m_usMaxType + 1; + + + + + + + + + + + + + + + + + + + + + + Creates new instance + + + + + + Count of items that are identical to the previous element in items array. + + + + + Item type. + + + + + Maximum index to the items array. Read-only. + + + + + Option flags. Read-only. + + + + + Array of indexes to SXVI records. + + + + + Indicates whether to use data field name for the subtotal (instead of using "Total"). + + + + + Indicates whether this item is a subtotal. + + + + + Indicates whether this item is a block total. + + + + + Indicates whether this item is a grand total. + + + + + Indicates whether + + + + + Size of the record. Read-only. + + + + + Item type. + + + + + Represents the Data line item type. + + + + + Represents the Default line item type. + + + + + Represents the Sum line item type. + + + + + Represents the CountA line item type. + + + + + Represents the Count line item type. + + + + + Represents the Average line item type. + + + + + Represents the Max line item type. + + + + + Represents the Min line item type. + + + + + Represents the Product line item type. + + + + + Represents the Stdev line item type. + + + + + Represents the StdevP line item type. + + + + + Represents the Var line item type. + + + + + Represents the VarP line item type. + + + + + Represents the GrandTotal line item type. + + + + + This record stores an array of page item indexes that represent the table + references for a multiple-consolidation PivotTable. + + + + + Array of 2-byte indexes to page items. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Array of 2-byte indexes to page items. + + + + + This record stores the number of page item names in a multiple-consolidation + PivotTable. The names are stored in SXSTRING records that follow this record. + + + + + Default record size. + + + + + Number of page item names. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Number of page item names. + + + + + This record contains information about the PivotTable page item. + + + + + List with page item description for each filter applied. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Creates copy of the current object. + + Copy of the current object. + + + + Returns field items. Read-only. + + + + + This class contains information about field + + + + + Index to the ViewItemRecord for the page item. + + + + + Index to the ViewFieldsRecord for the page item. + + + + + Object ID for the page item drop-down arrows. + + + + + Creates copy of the current object. + + Create copy. + + + + This record stores a PivotTable parsed expression. + + + + + Offset to parsed expression data. + + + + + Size of the parsed expression. + + + + + Number of RTSXNAME records to follow this record. + + + + + Parsed expression. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Size of the parsed expression. Read-only. + + + + + Number of RTSXNAME records to follow this record. + + + + + Parsed expression. + + + + + Summary description for PivotBooleanRecord. + + + + + Record size. + + + + + Boolean value, 0 - false, 1 - true. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Boolean value. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Value of the record. + + + + + Contains information about date/time value in the pivot table. + + + + + Size of the record. + + + + + Year. + + + + + Months. + + + + + Days. + + + + + Hours. + + + + + Minutes. + + + + + Seconds. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Year. + + + + + Months. + + + + + Days. + + + + + Hours. + + + + + Minutes. + + + + + Seconds. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Value of the record. + + + + + Summary description for PivotDoubleRecord. + + + + + Size of the record. + + + + + Double value. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Double value. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Value of the record. + + + + + Summary description for PivotEmptyRecord. + + + + + Record size. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Value of the record. + + + + + Summary description for PivotBooleanRecord. + + + + + Record size. + + + + + Boolean value, 0 - false, 1 - true. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Error code. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Value of the record. + + + + + Summary description for PivotFieldRecord. + + + + + Record size. + + + + + Option flags. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Maybe m_bNotAny. + + + + + + + + + + + + + + + + + + + + Unknown. + + + + + First item count. + + + + + Unknown. + + + + + Second item count. + + + + + Field name. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Option flags. + + + + + + + + + + + + + + + Indicates whether field can contain double values. + + + + + Indicates whether field can contain double values without fraction. + + + + + Indicates whether field can contain string values. + + + + + Unknown flag. + + + + + + + + + + Unknown flag. + + + + + Indicates whether field can contain date values. + + + + + Unknown. + + + + + First item count. + + + + + Unknown. + + + + + Second item count. + + + + + Field name. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + This record stores formatting data. + + + + + Default record size. + + + + + 0 - clear, + 1 - format applied. + + + + + Length of data. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + 0 - clear, + 1 - format applied. + + + + + Length of data. + + + + + This record stores a PivotTable formula. + + + + + Default record size. + + + + + Reserved. Should be set to zero. + + + + + -1 if the calculated item formula applies to all fields, or, + if positive, the field that this calculated item formulas applies to. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Reserved. Should be set to zero. Read-only. + + + + + -1 if the calculated item formula applies to all fields, or, + if positive, the field that this calculated item formulas applies to. + + + + + Summary description for PivotIndexListRecord. + + + + + Index list. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Index list. + + + + + Summary description for PivotNamePairRecord. + + + + + Default record size. + + + + + Field. + + + + + Index of item in field. + + + + + Reserved, should be set to zero. + + + + + Option flags. + + + + + + + + + + Indicates whether item is referred to by position (physical) + rather than by name (logical). + + + + + If m_bPhysical is true, then item is referred to using relative + references rather than absolute references. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Field. + + + + + Index of item in field. + + + + + Reserved, should be set to zero. Read-only. + + + + + Option flags. + + + + + + + + + + Indicates whether item is referred to by position (physical) + rather than by name (logical). + + + + + Indicates whether item is referred to using relative + references rather than absolute references. + + + + + This record stores a PivotTable name. + + + + + Default record size. + + + + + Option flags. + + + + + If it is set to true then the name is invalid and should + be displayed and evaluated as #NAME. + + + + + Field to aggregate in calculated field formulas. + + + + + Function to use for aggregation in calculated field formulas. + + + + + Number of SXPAIR records to follow this record. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Option flags. Read-only. + + + + + If it is set to true then the name is invalid and should + be displayed and evaluated as #NAME. + + + + + Field to aggregate in calculated field formulas. + + + + + Function to use for aggregation in calculated field formulas. + + + + + Number of SXPAIR records to follow this record. + + + + + This record stores information about multiple-consolidation PivotTable source data. + + + + + Bit mask for PageCount property. + + + + + Default record size. + + + + + Count (1-based) of DCONREF or DCONNAME records that follow the SXTBL record. + + + + + Count (1-based) of SXTBPG records that follow the DCONREF or DCONNAME records. + + + + + Option flags. + + + + + Indicates whether the user selected the Create A Single Page Field For Me + option in PivotTable Wizard dialog box. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. + + + + + Count (1-based) of DCONREF or DCONNAME records that follow the SXTBL record. + + + + + Count (1-based) of SXTBPG records that follow the DCONREF or DCONNAME records. + + + + + Option flags. Read-only. + + + + + Indicates whether the user selected the Create A Single Page Field For Me + option in PivotTable Wizard dialog box. + + + + + Count (1-based) of page fields. + + + + + This record contains an SQL query string, an SQL server connection string + or page item name from a multiple-consolidation PivotTable. + + + + + String. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + String value. + + + + + Indicates whether data array is required by this record. Read-only. + + + + + Value of the record. + + + + + This record contains top-level PivotTable information. + + + + + Offset to the PivotTable name data. + + + + + First row of the PivotTable. + + + + + Last row of the PivotTable. + + + + + First column of the PivotTable. + + + + + Last column of the PivotTable. + + + + + First row containing PivotTable headings. + + + + + First row containing PivotTable data. + + + + + First column containing PivotTable data. + + + + + Index to the cache. + + + + + Reserved. Must be zero. + + + + + Default axis for a data field. + + + + + Default position for a data field. + + + + + Number of fields. + + + + + Number of row fields. + + + + + Number of column fields. + + + + + Number of page fields. + + + + + Number of data fields. + + + + + Number of data rows. + + + + + Number of data columns. + + + + + Option flags. + + + + + Indicates whether the PivotTable contains grand totals for rows. + + + + + Indicates whether the PivotTable contains grand totals for columns. + + + + + Indicates whether the PivotTable has an autoformat applied. + + + + + Indicates whether the width / height autoformat is applied. + + + + + Indicates whether the font autoformat is applied. + + + + + Indicates whether the alignment autoformat is applied. + + + + + Indicates whether the Border autoformat is applied. + + + + + Indicates whether the pattern autoformat is applied. + + + + + Indicates whether the PivotTable has an autoformat applied. + + + + + Index to the PivotTable autoformat. + + + + + Length of the PivotTable name. + + + + + Length of the data field name. + + + + + PivotTable name. + + + + + Name of the data field. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + First row of the PivotTable. + + + + + Last row of the PivotTable. + + + + + First column of the PivotTable. + + + + + Last column of the PivotTable. + + + + + First row containing PivotTable headings. + + + + + First row containing PivotTable data. + + + + + First column containing PivotTable data. + + + + + Index to the cache. + + + + + Reserved. Must be zero. Read-only. + + + + + Default axis for a data field. + + + + + Default position for a data field. + + + + + Number of fields. + + + + + Number of row fields. + + + + + Number of column fields. + + + + + Number of page fields. + + + + + Number of data fields. + + + + + Number of data rows. + + + + + Number of data columns. + + + + + Option flags. Read-only. + + + + + Indicates whether the PivotTable contains grand totals for rows. + + + + + Indicates whether the PivotTable contains grand totals for columns. + + + + + Indicates whether the PivotTable has an autoformat applied. + + + + + Indicates whether the width / height autoformat is applied. + + + + + Indicates whether the font autoformat is applied. + + + + + Indicates whether the alignment autoformat is applied. + + + + + Indicates whether the Border autoformat is applied. + + + + + Indicates whether the pattern autoformat is applied. + + + + + Indicates whether the PivotTable has an autoformat applied. + + + + + Index to the PivotTable autoformat. + + + + + Length of the PivotTable name. Read-only. + + + + + Length of the data field name. Read-only. + + + + + PivotTable name. + + + + + Name of the data field. + + + + + This record contains extended PivotTable view fields information. + + + + + Option flags. + + + + + Show all items for this field. + + + + + User can drag field to row area. + + + + + User can drag field to column area. + + + + + User can drag field to page area. + + + + + User can remove field from view. + + + + + This field is a server-based field in the page area. + + + + + Autosort is enabled. + + + + + Autosort ascending. + + + + + Autoshow is enabled. + + + + + Show top values. + + + + + Calculated field. + + + + + Reserved. + + + + + Number of items to show for AutoShow, default is 10. + + + + + 0-based index of data field that AutoSort is based on or 0xFFFF for current field. + + + + + 0-based index of data field that AutoShow is based on. + + + + + Number format of field or 0 if none. + + + + + Subtotal name. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Option flags. Read-only. + + + + + Show all items for this field. + + + + + User can drag field to row area. + + + + + User can drag field to column area. + + + + + User can drag field to page area. + + + + + User can remove field from fiew. + + + + + This field is a server-based field in the page area. + + + + + Autosort is enabled. + + + + + Autosort ascending. + + + + + Autoshow is enabled. + + + + + Show top values. + + + + + Calculated field. + + + + + Reserved. Read-only. + + + + + Number of items to show for AutoShow, default is 10. + + + + + 0-based index of data field that AutoSort is based on or 0xFFFF for current field. + + + + + 0-based index of data field that AutoShow is based on. + + + + + Number format of field or 0 if none. + + + + + Specifies the custom text that is displayed for the subtotals label. + + + + + This record contains PivotTable view fields and other information. + + + + + Length indicating that name is null. + + + + + Offset to the string data. + + + + + Axis. + + + + + Number of subtotals attached. + + + + + Item subtotal type. + + + + + Indicating whether the subtotal is positioned at the top. The default value is True. + + + + + Number of items. + + + + + Length of the name; if it is equals to 0xFFFF then name is null + and the name in the cache is used. + + + + + Name. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Axis. + + + + + Number of subtotals attached. + + + + + Item subtotal type. + + + + + Gets or sets a boolean value indicating whether the subtotal is positioned at the top. The default value is True. + + + + + Number of items. + + + + + Length of the name; if it is equals to 0xFFFF then name is null + and the name in the cache is used. + + + + + Name. + + + + + This record contains information about a PivotTable item. + + + + + Offset to the name data. + + + + + Item type. + + + + + Option flags. + + + + + Indicates whether the item is hidden. + + + + + Indicates whether detail is hidden. + + + + + Indicates whether the item is a calculated item. + + + + + Indicates whether item is an item that does not exist in any records. + + + + + Index to the PivotTable cache. + + + + + Length of the name. If it is equal to 0xFFFF, then name is null + and the name in the cache is used. + + + + + Name. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Item type. + + + + + Option flags. Read-only. + + + + + Indicates whether the item is hidden. + + + + + Indicates whether detail is hidden. + + + + + Indicates whether the item is calculated item. + + + + + Indicates whether item is an item that does not exist in any records. + + + + + Index to the PivotTable cache. + + + + + Length of the name. If it is equal to 0xFFFF, then name is null + and the name in the cache is used. Read-only. + + + + + Name. + + + + + Possible item types. + + + + + Represents the item type. + + + + + Represents the item type. + + + + + Represents the Data item type. + + + + + Represents the Default item type. + + + + + Represents the Sum item type. + + + + + Represents the Counta item type. + + + + + Represents the Count item type. + + + + + Represents the Average item type. + + + + + Represents the Max item type. + + + + + Represents the Min item type. + + + + + Represents the Product item type. + + + + + Represents the Stdev item type. + + + + + Represents the Stdevp item type. + + + + + Represents the Var item type. + + + + + Represents the Varp item type. + + + + + Represents the GrandTotal item type. + + + + + This record contains an integer that defines the data source for a PivotTable. + + + + + Default record size. + + + + + Data source. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Data source. + + + + + Possible data sources. + + + + + Microsoft Excel list or database. + + + + + External data source (Microsoft Query). + + + + + Multiple consolidation ranges. + + + + + Another PivotTable. + + + + + A Scenario Manager summary report. + + + + + This record stores an array of field ID numbers (2-byte integers) for + the row fields and column fields in a PivotTable. Two RowColumnFieldIdRecords + appear in the file: the first contains the array of row field IDs, and + the second contains the array of column field IDs. + + + + + Array of 2-byte integers; contains either row field IDs or column field IDs. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Array of 2-byte integers; contains either row field IDs or column field IDs. + + + + + This record stores PivotTable rule data. + + + + + Default record size. + + + + + Bit mask for RuleType property. + + + + + First bit for RuleType property. + + + + + Position of current field in axis. + + + + + Current field. + + + + + Option flags. + + + + + Indicates whether current field is in row area. + + + + + Indicates whether current field is in column area. + + + + + Indicates whether current field is in page area. + + + + + Indicates whether current field is in data area. + + + + + Indicates whether header is not selected. + + + + + Indicates whether data is not selected. + + + + + Indicates whether row grand total is selected. + + + + + Indicates whether column grand total is selected. + + + + + + + + + + + + + + + + + + + + Reserved, must be zero. + + + + + Number of SXFILT records following this record. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Position of current field in axis. + + + + + Current field. + + + + + Option flags. Read-only. + + + + + Indicates whether current field is in row area. + + + + + Indicates whether current field is in column area. + + + + + Indicates whether current field is in page area. + + + + + Indicates whether current field is in data area. + + + + + + + + + + Indicates whether header is not selected. + + + + + Indicates whether data is not selected. + + + + + Indicates whether row grand total is selected. + + + + + Indicates whether column grand total is selected. + + + + + + + + + + + + + + + + + + + + Reserved, must be zero. + + + + + Number of SXFILT records following this record. + + + + + This record stores PivotTable Rule Filter options. + + + + + Default record size. + + + + + BitMask for Dim field. + + + + + Start bit for Dim field. + + + + + Bit mask for SXVD field. + + + + + Options flags. + + + + + Indicates whether field is in row area. + + + + + Indicates whether field is in column area. + + + + + Indicates whether field is in page area. + + + + + Indicates whether field is in data area. + + + + + Options flags. + + + + + + + + + + Number of ViewItemRecord records. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + Options flags. + + + + + Indicates whether field is in row area. + + + + + Indicates whether field is in column area. + + + + + Indicates whether field is in page area. + + + + + Indicates whether field is in data area. + + + + + + + + + + Options flags. Read-only. + + + + + + + + + + + + + + + Number of ViewItemRecord records. + + + + + Represents the Function types. + + + + + Represents the Data type. + + + + + Represents the Default type. + + + + + Represents the Sum type. + + + + + Represents the CountA type. + + + + + Represents the Count type. + + + + + Represents the Average type. + + + + + Represents the Max type. + + + + + Represents the Min type. + + + + + Represents the Product type. + + + + + Represents the Stdev type. + + + + + Represents the Stdevp type. + + + + + Represents the Var type. + + + + + Represents the Varp type. + + + + + This record stores PivotTable selection information. + + + + + Size of the record. + + + + + 0-based index of the window of the sheet. + + + + + 0-based index of the pane of the window. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + 0-based index of the window of the sheet. + + + + + 0-based index of the pane of the window. + + + + + Maximum size of the record. + + + + + Minimum size of the record + + + + + This record contains a SQL datatype identifier. + + + + + Correct record size. + + + + + The SQL datatype of the field described in the immediately preceding SXFDB record. + These are the same values as found in the ODBC SDK. See the SQL datatypes in SQL.H. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Evaluates size of the required storage space. + + Size of the required storage space. + + + + The SQL datatype of the field described in the immediately preceding SXFDB record. + + + + + The SQL datatypes. + + + + + Represents the SQL_UNKNOWN_TYPE SQL data type. + + + + + Represents the SQL_CHAR SQL data type. + + + + + Represents the SQL_NUMERIC SQL data type. + + + + + Represents the SQL_DECIMAL SQL data type. + + + + + Represents the SQL_INTEGER SQL data type. + + + + + Represents the SQL_SMALLINT SQL data type. + + + + + Represents the SQL_FLOAT SQL data type. + + + + + Represents the SQL_REAL SQL data type. + + + + + Represents the SQL_DOUBLE SQL data type. + + + + + Represents the SQL_DATETIME SQL data type. + + + + + Represents the SQL_VARCHAR SQL data type. + + + + + This record is a header record for a group of SXVS, SXEXT, and SXSTRING records + that describe the PivotTable streams in the SX DB storage (the PivotTable cache storage). + The StreamId field identifies the stream. + + + + + Default record size. + + + + + Stream Id. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. + + + + + Stream Id. + + + + + This record follows the SXVIEW record and contains information about + additional features added to PivotTables in Excel. + + + + + Bit mask for WrapPage property value. + + + + + Start bit for WrapPage property value. + + + + + Maximum value for WrapPage property. + + + + + Offset to the strings data. + + + + + Number of SXFORMAT records to follow. + + + + + Number of characters for DisplayErrorString string. + + + + + Number of characters for DisplayNullString string. + + + + + Number of characters in Tag string. + + + + + Number of RTSXSELECT records to follow. + + + + + Number of page field per row. + + + + + Number of page field per column. + + + + + Option flags. + + + + + + + + + + + + + + + + + + + + Option flags. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Number of characters for page field style string. + + + + + Number of characters for table style string. + + + + + Number of characters for vacate style string. + + + + + ErrorString. + + + + + NullString. + + + + + Tag. + + + + + Page field style. + + + + + Table style. + + + + + Vacate style. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + + + + In this method, the class must pack all of its properties into an + internal data array, m_data. This method is called by + FillStream when the record must be serialized into a stream. + + + + + Number of SXFORMAT records to follow. + + + + + Number of characters for DisplayErrorString string. Read-only. + + + + + Number of characters for DisplayNullString string. Read-only. + + + + + Number of characters in Tag string. Read-only. + + + + + Number of RTSXSELECT records to follow. + + + + + Number of page field per row. + + + + + Number of page field per column. + + + + + Option flags. Read-only. + + + + + + + + + + + + + + + + + + + + + + + + + Option flags. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Number of characters for page field style string. Read-only. + + + + + Number of characters for table style string. Read-only. + + + + + Number of characters for vacate style string. Read-only. + + + + + ErrorString. + + + + + NullString. + + + + + Tag. + + + + + Page field style. + + + + + Table style. + + + + + Vacate style. + + + + + Defines whether to store with full precision or what is displayed the GUI. + + + + + Default record size. + + + + + Whether to use full precision or just skew some of the figures; + 1 = full precision. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. + + + + + Whether to use full precision or just skew some of the figures; + 1 = full precision. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record saves printer settings and printer driver information. + + + + + Default constructor + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + When string's length does not fit to internal data length or + when last string ends before data (some extra data at the + end of m_data array). + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Creates copy of the current object. + + A copy of the current object. + + + + + + + + + Indicates whether we should add header of continue records to the internal data provider. Read-only. + + + + + Indicates whether record needs internal data array + or if it can be cleaned. Read-only. + + + + + Defines whether or not to print the gridlines when you + print your spreadsheet on paper. + + + + + Default record size. + + + + + Whether or not to print the gridline. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. + + + + + Whether or not to print the gridline. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Whether or not to print the row / column headers + of the spreadsheet in the physical form. + + + + + Default record size. + + + + + Print headers or not. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Print headers or not. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Stores print setup options. + + + + + Bit mask for error print options. + + + + + Start bit of error print options in m_usOptions. + + + + + Correct record size. + + + + + Paper size. + + + + + Scaling factor in percent. + + + + + Start page number. + + + + + Fit worksheet width to this number of pages (0 = use as many as needed). + + + + + Fit worksheet height to this number of pages (0 = use as many as needed). + + + + + Options flag. + + + + + False to print pages in columns; + True to print pages in rows. + + + + + False for landscape; True for portrait. + + + + + True if paper size, scaling factor, paper orientation (portrait / landscape), + print resolution, and number of copies are not initialized. + + + + + False to print in color; True to print in black and white. + + + + + False for default print quality; True for draft quality. + + + + + Indicates whether to print cell notes. + + + + + False if paper orientation setting is valid; + True if paper orientation setting is not initialized. + + + + + False for automatic page numbers; + True to use starting page number. + + + + + False if print notes are displayed; + True if print notes are at the end of sheet. + + + + + Print resolution in dpi. + + + + + Vertical print resolution in dpi. + + + + + Header margin (IEEE floating-point value). + + + + + Footer margin (IEEE floating-point value). + + + + + Number of copies to print. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Paper size. + + + + + Scaling factor in percent. + + + + + Start page number. + + + + + Fit worksheet width to this number of pages (0 = use as many as needed). + + + + + Fit worksheet height to this number of pages (0 = use as many as needed). + + + + + Print resolution in dpi. + + + + + Vertical print resolution in dpi. + + + + + Header margin (IEEE floating-point value). + + + + + Footer margin (IEEE floating-point value). + + + + + Number of copies to print. + + + + + False to print pages in columns; + True to print pages in rows. + + + + + False if landscape; True if portrait. + + + + + True if paper size, scaling factor, paper orientation (portrait / landscape), + print resolution, and number of copies are not initialized. + + + + + False to print in color; True to print in black and white. + + + + + False for default print quality; True for draft quality. + + + + + Indicates whether to print cell notes. + + + + + False if paper orientation setting is valid; + True if paper orientation setting is not initialized. + + + + + False for automatic page numbers; + True to use starting page number. + + + + + False if print notes as displayed; + True if print notes are at the end of sheet. + + + + + Indicates how to print errors. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Describes whether this is a protected shared / tracked workbook. + + + + + Default record size. + + + + + Whether or not this is protected shared / tracked workbook. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. + + + + + Whether or not this is protected shared / tracked workbook. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Whether a worksheet or a workbook is protected against modification. + Protection is not active if this record is omitted. + + + + + Whether a worksheet or a workbook is protected against modification. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Whether a worksheet or a workbook is protected against modification. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record contains the cell range and text for a ToolTip. + It occurs in conjunction with the HLINK record for hyperlinks in the Hyperlink Table. + + + + + Size of the fixed part. + + + + + 0x0800 (repeated record identifier). + + + + + Cell range address of all cells containing the ToolTip. + + + + + ToolTip string. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + If the last symbol of string (it is also last symbol of the data array) is not zero. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Size of the required storage space. Read-only. + + + + + Cell range address of all cells containing the ToolTip. + + + + + ToolTip string. + + + + + Read-only. Returns minimum possible size of the record. + + + + + Represents range protection and error indicators. + + + + + Represents length offset. + + + + + Represents data offset. + + + + + Represents default subrecord size. + + + + + Represents record end unknown bytes count. + + + + + Represents default subrecords size. + + + + + Represents first unknown bytes. + + + + + Represents second unknown bytes. + + + + + Represents error indicator hide options. + + + + + Represents array of error indicator structure. + + + + + Preserves range protection record + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Gets default record store size. Read-only. + + + + + Tries to reduce number of ranges. + + + + + Represents hide options. + + + + + Represents error indicators object. + + + + + Read-only. Minimum possible size of the record. + + + + + Describes which reference mode to use. + + + + + Correct record size. + + + + + Stores which method is used to show cell addresses in formulas. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Stores which method is used to show cell addresses in formulas: + 1 = A1 mode + 0 = RC mode + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Flag whether to refresh all external data when loading a sheet. + + + + + Default record size. + + + + + Flag whether to refresh all external data when loading a sheet. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. + + + + + Flag whether to refresh all external data when loading a sheet. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Represents a cell that contains an RK value + (encoded integer or floating-point value). + + + + + Correct record size. + + + + + Record size with header. + + + + + Offset to the number from the start of the record's data. + + + + + Offset to the number from the start of the record's data. + + + + + Represents rk mask. + + + + + Maximum number that is possible to store as rk record. + + + + + Minimum number that is possible to store as rk record. + + + + + RK value. + + + + + True if value is multiplied by 100. + + + + + True if signed integer; False if floating-point value. + + + + + Default constructor + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset to the record's data. + Excel version used to fill data. + + + + Returns size of the required storage space. + + Excel version. + Size of the required storage space. + + + + Converts string to the Rk number. + + String to convert. + + + + Sets RkNumber to the specified value. + + Double value to set. + + + + Sets integer value to the specified value. + + Value to set. + + + + Sets RkRecord values from MulRKRecord.RkRec + + MulRKRecord.RkRec with needed values. + + + + Converts RKRecord into MulRKRecord.RkRec. + + Converted record. + + + + Converts string to RK number. + + String to parse. + Parsed RK number. If returns int.MaxValue - cannot parse RK number. + + + + Converts double to RK number. + + Value to convert. + Converted RK number. If returns int.MaxValue - cannot parse RK number. + + + + Converts Rk number to double. + + Rk number to convert. + Converted double value. + + + + Converts double value to integer. Value as IEEE double or IEEE / 100 double. + + Value to convert. + Indicates is convert to IEEE / 100. + Int value corresponding to the double value. + + + + Encodes rk number. + + Represents value to encode. + Returns encoded value. + + + + Gets double value using unsafe code. + + Represents value. + Returns double value. + + + + Gets double value using safe code. + + Represents value. + Returns double value. + + + + Reads record's value from the data provider. + + Provider to read data from. + Offset to the record's start. + Excel version that was used to infill. + Record's value. + + + + Read-only. RK value. + + + + + RK value converted to double. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + + + + + + True if this is not a floating point value. + + + + + True if value was multiplied by 100. + + + + + Returns double value. Read-only. + + + + + Value of the record. + + + + + Stores the row information for the sheet. + + + + + Bit mask for outline level. + + + + + Maximum row height in points. + + + + + + + + + + Index of this row. + + + + + Index to column of the first cell which is described by a cell record. + + + + + Index to column of the last cell which is described by a cell record, + increased by 1. + + + + + Height of the row, in twips = 1/20 of a point. + + + + + Not used. + + + + + Options flag. + + + + + Worksheet object. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + + + + + + Index of this row. + + + + + Index to column of the first cell which is described by a cell record. + + + + + Index to column of the last cell which is described by a cell record, + increased by 1. + + + + + Height of the row, in twips = 1/20 of a point. + + + + + If the row is formatted, then this is the index to + the extended format record. + + + + + The outline level of this row. + Changes some bits of m_usOptionFlags private member. + + + When value is more than 7. + + + + + Whether or not to collapse this row. + + + + + Whether or not to display this row with 0 height. + + + + + Whether the font and row height are not compatible. + True if they aren't compatible. + + + + + Whether the row has been formatted (even if it has all blank cells). + + + + + True if there is additional space above the row. + + + + + True if there is additional space below the row. + + + + + Undocumented bit flag. If it is set to False, then Excel will + not show row groups. Default value is True. + + + + + Read-only. Not used. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + + + + + + Row or column index. + + + + + Gets or sets the worksheet. + + The worksheet. + + + + Possible option flags. + + + + + Whether or not to collapse this row. + + + + + Whether or not to display this row with 0 height. + + + + + Whether the font and row height are not compatible. + True if they aren't compatible. + + + + + Whether the row has been formatted (even if its got all blank cells) or + row has explicit default format. + + + + + If this value is set to False, then Excel will not show row outline + groups. + + + + + Additional space above the row. + + + + + Additional space below the row. + + + + + This record stores a formatted text cell (Rich-Text). + In BIFF8 it is replaced by the LABELSST record. + Nevertheless, Excel uses this record if it copies formatted + text cells to the clipboard. + + + + + Index to row. + + + + + Index to column. + + + + + Index to XF (Extended Format) record. + + + + + Unformatted Unicode string, 16-bit string length. + + + + + Number of rich text formatting runs. + + + + + Array of formatting runs. + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Excel version used for infill. + Size of the record data. + + + + Index to row. + + + + + Index to column. + + + + + Index to XF (Extended Format) record. + + + + + Unformatted Unicode string, 16-bit string length. + + + + + Array of formatting runs. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Returns string value. Read-only. + + + + + Rich text formatting run. + + + + + First formatted character (zero-based). + + + + + Index to FONT record. + + + + + Defines whether to recalculate before saving (set to 1). + + + + + Correct record size. + + + + + Defines whether to recalculate before saving (set to 1). + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + Defines whether to recalculate before saving (set to 1). + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record is part of the worksheet / workbook protection. + It determines whether the scenarios of the current sheet + are protected. Scenario protection is not active + if this record is omitted. + + + + + Default record size. + + + + + 0 = Objects not protected; 1 = Objects protected + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. + + + + + 0 = Scenarios not protected; 1 = Scenarios protected + + + + + Read-only. Minimum possible size of the record. + + + + + Read-only. Maximum possible size of the record. + + + + + Shows the user's selection on the sheet + for write set num refs to 0. + + + + + Size of the fixed part. + + + + + Subitem size. + + + + + The window pane for the record. + + + + + The active cell's row. + + + + + The active cell's column. + + + + + The active cell's reference number. + + + + + The number of cell refs. + + + + + List of ADDR structures. + + + + + Sets selection range. + + Ref index. + Addr to set. + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Size of the required storage space. Read-only. + + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + The window pane for the record. + + + + + The active cell's row. + + + + + The active cell's column. + + + + + The active cell's reference number. + + + + + The number of cell refs. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + List of ADDR structures. + + + + + Each cell range address (called an ADDR structure) contains 4 16-bit values. + Cell range address, BIFF8. + + + + + Index to first row. + + + + + Index to last row. + + + + + Index to first column. + + + + + Index to last column. + + + + + Index to first row. + + + + + Index to last row. + + + + + Index to first column. + + + + + Index to last column. + + + + + Creates TAddr by specified first and last rows and first and last columns. + + First row of the cell range. + Last row of the cell range. + First column of the cell range. + Last column of the cell range. + + + + Creates TAddr by specified first and last rows and first and last columns. + + First row of the cell range. + Last row of the cell range. + First column of the cell range. + Last column of the cell range. + + + + Converts object to the string. + + String representation of the object. + + + + Index to first row. + + + + + Index to last row. + + + + + Index to first column. + + + + + Index to last column. + + + + + This record stores the token array of a shared formula. + Shared formulas are similar to array formulas in that they store + a formula used in a range of cells. The SharedFormula record + is not a real cell record but follows the first FORMULA + record of the cell range. + + + + + Size of the record's fixed part. + + + + + Index to first row of the shared formula range. + + + + + Index to last row of the shared formula range. + + + + + Index to first column of the shared formula range. + + + + + Index to last column of the shared formula range. + + + + + Not used. + + + + + Size of the formula data. + + + + + Token array of the shared formula. + + + + + + + + + + Default constructor fills all data with default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Index to first row of the shared formula range. + + + + + Index to last row of the shared formula range. + + + + + Index to first column of the shared formula range. + + + + + Index to last column of the shared formula range. + + + + + Read-only. Size of the formula data. + + + + + Token array of the shared formula. + + + + + Gets/sets formula into/from shared formula record. + + + + + Read-only. Reserved. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Whether to center between horizontal margins. + + + + + Whether or not to horizontally or vertically (depending on the record code) center this sheet. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Whether or not to horizontally or vertically (depending on record code) center this sheet. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record stores the colour of the tab below the sheet containing the sheet name. + + + + + Record size. + + + + + Repeated record identifier. + + + + + Reserved. + + + + + Reserved. + + + + + Reserved. + + + + + Size of the record + + + + + Color index for sheet name tab. + + + + + Options shows the value of following. + 0 to 7 bit - Color Index value should be same as m_iColorIndex. + 8 th bit - Indicates whether Conditional formatting formulas in this workbook evaluated. + 9 th bit - Indicates whether The sheet is published. + + + + + Type of color. + + + + + Color value. + + + + + Tint and shade. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. + + + + + Compare the value with the given compare value and returns the boolean value + + input long value + input compare value + the boolean value + + + + Repeated record identifier. + + + + + Reserved. + + + + + Reserved. + + + + + Reserved. + + + + + Unknown data. + + + + + Color index for sheet name tab. + + + + + Read-only. Minimum possible size of the record. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Maximum memory size for internal buffer. + + + + + Gets the boolean value indicates whether the Conditional formatting formulas in this workbook is Evaluated + + + + + Gets the boolean value indicates whether the sheet is not published. + + + + + Type of color. + + + + + Color value. + + + + + Tint and shade. + + + + + Options value. + + + + + Summary description for SheetProtection. + + + + + Represents the Error Indicator sheet protection id. + + + + + Represents option offset. + + + + + Represents default record store size. + + + + + Represents default embedded record data. + + + + + Options flag. + + + + + Indicates is contain sheet protection. + + + + + Represents the Protection type. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Gets default record store size. Read-only. + + + + + Represents protected options. + + + + + Indicates is record contain sheet protection. + + + + + Read-only. Minimum possible size of the record. + + + + + Read-only. Maximum possible size of the record. + + + + + Represents the protection type. + + + + + This record stores the last settings from the "Sort" dialog + for each sheet. These settings are not attached to a cell range + in the sheet, so it is not possible to determine + the cell range sorted with the settings of this record. + + + + + Bit mask for the table index. + + + + + Start bit for the table index. + + + + + Size of the fixed part size. + + + + + Option flags. + + + + + False to sort rows (top to bottom); + True to sort columns (left to right). + + + + + False to sort first key in ascending order; + True to sort first key in descending order. + + + + + False to sort second key in ascending order; + True to sort second key in descending order. + + + + + False to sort third key in ascending order; + True to sort third key in descending order. + + + + + False to sort case-insensitive; + True to sort case-sensitive. + + + + + Length of first sort key. + + + + + Length of second sort key. + + + + + Length of third sort key. + + + + + First sort key. + + + + + Second sort key. + + + + + Third sort key. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Returns size of the string + + + + + + + Size of the required storage space. Read-only. + + + + + False to sort rows (top to bottom); + True to sort columns (left to right). + + + + + False to sort first key in ascending order; + True to sort first key in descending order. + + + + + False to sort second key in ascending order; + True to sort second key in descending order. + + + + + False to sort third key in ascending order; + True to sort third key in descending order. + + + + + False to sort case-insensitive; + True to sort case-sensitive. + + + + + One-based index into the table of defined sort lists, + or 0 for sorting without a list. + This property changes some bits of m_usOptions. + + + + + Read-only. Length of first sort key. + + + + + Read-only. Length of second sort key. + + + + + Read-only. Length of third sort key. + + + + + First sort key. + + + + + Second sort key. + + + + + Third sort key. + + + + + Read-only. Minimum possible size of the record. + + + + + Static String Table Record: + This holds all the strings for LabelSSTRecords. + + + + + Options byte offset in the string. + + + + + Number of string in workbook. + + + + + Number of unique strings in workbook. + + + + + Array of workbook's strings. + + + + + Array that stores positions of the strings in the m_data array. + + + + + Array that stores offsets of the strings starting from the beginning + of the record (Continue or SST). + + + + + + + + + + Default constructor + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + If any internal error occurred. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Serializes text data. + + Record builder to put data into. + String options. + Size of the formatting data. + Total size of the string data. + Array containing string data. + + + + Infills formatting bytes. + + Record builder to put data into. + Array containing formatting data. + Size of the formatting data. + + + + Tries to prognose records size and prepare data storage so it won't require resize operation. + + + + + Resizes buffer if necessary. + + Buffer to check. + Desired buffer size. + + + + This method checks record's internal data array for integrity. + + If there is any internal error. + + + + Size of the required storage space. Read-only. + + + + + Number of string in workbook. + + + + + Number of unique strings in workbook. + + + + + Array of workbook's strings. + + + + + Array that stores positions of the strings in the m_data array. + + + + + Array that stores offsets of the strings starting from the beginning + of the record (Continue or SST). + + + + + Configuration property. If value is True, then on detection of dataless + record, the class will try to continue to get records from the stream. + + + + + + + + + + This record stores the result of a string formula. + It occurs directly after a string formula. + + + + + Size of the fixed part. + + + + + String length. + + + + + Non-empty Unicode string. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Non-empty Unicode string. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Style Record: + Describes a built-in style in the GUI or user defined style. + + + + + Extended format index bit mask. + + + + + The actual index of the style extended format record. + + + + + Whether the style is built in or user-defined. + + + + + If this is a built in style, then it is the number of the built in style. + If this is user-defined style, then it is length of style's name. + + + + + The row or column level of the style. + + + + + The style's name (if user-defined). + + + + + The style's name (if user-defined and greater than 256 symbols). + + + + + Represents the default external format index based on workbook version + + + + + /Represents if the stylename is encoded, when style name is greater than 256 symbols + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Copies this record into another StyleRecord. + + + + + + Whether the style is built in or user-defined. + + + + + + The actual index of the style extended format record. + + + + + The row or column level of the style. + + + + + The row or column level of the style. + + + + + The style's name (if user-defined). + + + + + Represents actual style name in case of AsciiConversion + + + + + Gets or sets if the style record is built-in customized + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Returns style name. Read-only. + + + + + Gets or sets the default external format index based on workbook version + + + + + Header of this record + + + + + Whether the style is built in or user-defined. + + + + + Whether the style is hidden in user interface or not. + + + + + Whether the style is custom or not. + + + + + Reserved data. + + + + + Specify the type of style + + + + + Buid in data + + + + + The style's name (if user-defined). + + + + + The row or column level of the style. + + + + + If this is a built in style, then it is the number of the built in style. + If this is user-defined style, then it is length of style's name. + + + + + Default constructor + + + + + Initialize the variables + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Whether the style is built in or user-defined. + + + + + Whether the style is hidden in user interface or not + + + + + Whether the style is custom or not. + + + + + The style's name (if user-defined). + + + + + Specify the type of style + + + + + This record stores the URL of an external document + and a list of sheet names inside this document. Furthermore, + it is used to store DDE and OLE object links or to indicate + an internal 3D reference or an add-in function. + + + + + This constant indicates that the sup book record contains internal references. + + + + + This constant indicates that the sup book record contains add-in functions. + + + + + Indicates whether this record is used for internal references or external references. + + + + + Indicates whether add-in function names are stored + in EXTERNNAME records following this SUPBOOK record. + + + + + Number of sheet names (if external references) or + number of sheets in this document (if internal references). + + + + + Length of encoded URL without sheet name (if external references). + 0401h (if internal references) + + + + + Encoded URL without sheet name. + + + + + List of sheet names. + + + + + Original URL value. + + + + + Default constructor + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + When string's length does not fit to internal data length or + when last string ends before data (some extra data at the + end of m_data array). + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + + + + + + Size of the required storage space. Read-only. + + + + + Creates copy of the SupBookRecord. + + SupBookRecord with copied data. + + + + Whether the record is used for internal references or external references. + + + + + Read-only. Minimum possible size of the record. + + + + + Read-only. Maximum possible size of the record. + + + + + Encoded URL without sheet name (for external references). + + + + + Gets / sets original url value. + + + + + List of sheet names. + + + + + Number of sheet names (if external references) or + number of sheets in this document (if internal references). + + + + + + + + + + Sheet Tab Index Array Record: + Contains an array of sheet ID's. Sheets always keep their ID + regardless of what their name is. + + + + + Array of tab IDs. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + This method checks a record's internal data array for integrity. + + + If there is any internal error. + + + + + Size of the required storage space. Read-only. + + + + + Array of tab IDs. + + + + + This record stores information about a multiple operation + table in the sheet. It follows the first FORMULA record + of the cell range containing the operation table. + + + + + Bit mask for the operation mode. + + + + + First bit of the operation mode. + + + + + Index to first row of the multiple operation table range. + + + + + Index to last row of the multiple operation table range. + + + + + Index to first column of the multiple operation table range. + + + + + Index to last column of the multiple operation table range. + + + + + Option flags. + + + + + True to always recalculate array formula. + + + + + True to calculate array formula on open. + + + + + Index to row of input cell (in mode 1x2 index to row of + input cell for row input). + + + + + Index to column of input cell (in mode 1x2 index to column + of input cell for row input). + + + + + In mode 1x2 index to row of input cell for column input; + else not used. + + + + + In mode 1x2 index to column of input cell for column input; + else not used. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Index to first row of the multiple operation table range. + + + + + Index to last row of the multiple operation table range. + + + + + Index to first column of the multiple operation table range. + + + + + Index to last column of the multiple operation table range. + + + + + True to always recalculate array formula. + + + + + True to calculate array formula on open. + + + + + Whether to display outline symbols (in the gutters). + Changes bits of m_usOptions. + + + When value is more than 4. + + + + + Index to row of input cell (in mode 1x2 index to row of + input cell for row input). + + + + + Index to column of input cell (in mode 1x2 index to column + of input cell for row input). + + + + + In mode 1x2 index to row of input cell for column input; + else not used. + + + + + In mode 1x2 index to column of input cell for column input; + else not used. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + If stream is not specified. + If stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Read-only. Maximum possible size of the record. + + + + + This record stores a text object. The TXO record is followed + by two CONTINUE records. The first CONTINUE record contains the text + data and the second CONTINUE contains the formatting runs. + If the text box contains no text, these CONTINUE records + are not written to the file. + + + + + Bit mask for horizontal alignment. + + + + + Bit mask for vertical alignment. + + + + + Option flags. + + + + + Whether the Lock Text option is on. + + + + + Orientation of text within the object boundary. + + + + + Reserved, must be zero. + + + + + Reserved, must be zero. + + + + + Length of text (in first CONTINUE record). + + + + + Length of formatting runs (in second CONTINUE record). + + + + + Reserved, must be zero. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Horizontal text alignment. + This property changes bits of m_usOptions private field. + + + + + Vertical text alignment: + This property changes bits of m_usOptions private field. + + + + + Whether the Lock Text option is on. + + + + + Orientation of text within the object boundary. + + + + + Length of text (in first CONTINUE record). + + + + + Length of formatting runs (in second CONTINUE record). + + + + + Not used. + + + + + Not used. + + + + + Not used. + + + + + Read-only. Minimum possible size of the record. + + + + + Read-only. Maximum possible size of the record. + + + + + Summary description for TextFormat. + + + + + + + + + + + + + + + Size of a single formatting run. + + + + + + + + + + + + + + + Formatting runs, key - position, value - font index. + + + + + String value. + + + + + Default font index. + + + + + Options. + + + + + Indicates whether string was changed and possibly needs defragmentation. + + + + + Number of references to this object. + + + + + Reprsents the Rich Text. + + + + + Indicates the string is preserverd type or not + + + + + Indicates the string is encoded type or not + + + + + Default constructor. + + + + + Creates instance with specified default font index. + + Index of the default font. + + + + Converts TextWithFormat to string. + + Object to convert to string. + String value of the object. + + + + Converts string to TextWithFormat. + + String value. + Converted TextWithFormat. + + + + Sets font index for specified range of characters. + + Start character of the range. + End character of the range. + Font index to set. + + + + Returns font index for the specified character. + + Character index to get font index. + Font index for the specified character. + + + + Returns font index for the specified character. + + Character index to get font index. + Font index for the specified character. + + + + Returns font index at the specified position in the formatting runs array. + + Index of the formatting run. + Font index. + + + + Returns character position at the specified position in the formatting runs array. + + Index of the formatting run. + Character position. + + + + Sets font index at the specified position in the formatting runs array. + + Index of the formatting run. + Font index to set. + + + + Clears formatting. + + + + + Compares the current instance with another object of the same type. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the comparands. + + + + + Compares formatting runs. + + First formatting runs to compare. + Second formatting runs to compare. + + 0 if they are equal, + -1 if first formatting run is less then second; + otherwise 1. + + + + + + + + + + Returns starting position for formatting block which contains specified position. + + Position to which formatting is applied. + Starting position for formatting block which contains specified position. + + + + Removes all formatting within specified range. + + Start position of the range. + End position of specified range. + + + + Defragments text formatting. + + + + + Checks if specified offset is correct. + + Length of the array. + Offset in the array. + + When iOffset is out of range. + + + + + Copies formatting runs into another TextWithFormat object. + + TextWithFormat to copy data into. + + + + Converts this object to string. + + String representation of this object. + + + + Determines whether the specified object is equal to the current object. + + The object to compare with the current object. + + True if the specified object is equal to the current object; + otherwise False. + + + + + Returns hashcode for the object. + + A hash code for the current object. + + + + Parses byte array. + + Array of bytes to parse. + Offset of the object's data in the array. + Size of the object in the data array. + + + + Evaluates size of the text in bytes. + + Returns text size in bytes. + + + + Returns size of the formatting runs. + + Size of the formatting runs. + + + + Serializes formatting. + + Returns array of bytes that contains formatting data. + + + + Serializes formatting. + + Buffer for formatting data. + Offset in the buffer where to serialize formatting. + Indicates whether defragmentation is needed. + Size of formatting data. + + + + Returns string options. + + Options byte. + + + + Converts byte array to string. + + Byte array with string data. + Desired number of charts. + Indicates whether string is in unicode format. + Offset of the string data. + Extracted string. + + + + Parses formatting runs. + + Array with formatting runs data. + Offset to formatting runs. + Number of formatting runs to parse. + + + + Parses formatting runs. + + Array with formatting runs. + + + + Parses Far East data. + + + + + + + + Serializes formatting runs. + + Array with formatting runs. + + + + Serializes formatting runs into specified array. + + Destination array. + Offset to the data. + Indicates whether defragmentation is needed. + Size of the serialized data. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + Creates a new object that is a copy of the current instance. + + Dictionary with new font indexes. + A new object that is a copy of this instance. + + + + Updates font indexes. + + Dictionary with new font indexes. + + + + Reprsents the Rich Text + + + + + Text string. + + + + + Formatting runs, key - position, value - font index. + + + + + List of formatting runs. Read-only. + + + + + Gets / sets default font index. + + + + + Returns number of formatting runs. Read-only. + + + + + Returns true if string is preserved type. + + + + + Returns true if string is encoded type. + + + + + Possible string flags. + + + + + Non-Unicode + + + + + The string is saved as double-byte characters. + + + + + Extended string follows (Far East versions). + + + + + Rich string follows. + + + + + + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Read-only. Returns maximum possible size of record. + + + + + Represents UnknowEndRecord + + + + + Default record size. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Gets / sets first unknown int value. + + + + + Gets / sets second unknown int value. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Summary description for UnkMacrosDisable. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Maximum possible size of the record. Read-only. + + + + + + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + If there is any internal error. + + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Reserved. + + + + + Reserved. + + + + + Reserved. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + This record describes all unknown information in records. + + + + + + + + + + + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Read / initialize constructor. + + Reader from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + + + + Size of the required storage space. Read-only. + + + + + Clones current instance. + + Returns cloned object. + + + + + + + + + + + + + + + + + + + Gets / sets length of the data array. + + + + + Summary description for UnsafeDataProvider. + + + + + Default constructor to prevent creation of items without arguments. + + + + + Creates provider of the same type. + + Created provider object. + + + + Returns byte value at the specified position. + + Offset to the required value. + Byte at the specified position. + + + + Returns Int16 value at the specified position. + + Offset to the required value. + Int16 value at the specified position. + + + + Returns Int32 value at the specified position. + + Offset to the required value. + Int32 value at the specified position. + + + + Returns Int32 value at the specified position. + + Offset to the required value. + Int32 value at the specified position. + + + + Returns Double value at the specified position. + + Offset to the required value. + Double value at the specified position. + + + + Writes byte value at the specified position. + + Offset to the required value. + Byte value to write at the specified position. + + + + Writes Int16 value at the specified position. + + Offset to the required value. + Int16 value to write at the specified position. + + + + Writes Int32 value at the specified position. + + Offset to the required value. + Int32 value to write at the specified position. + + + + Writes Int64 value at the specified position. + + Offset to the required value. + Int64 value to write at the specified position. + + + + Writes Double value at the specified position. + + Offset to the required value. + Double value to write at the specified position. + + + + Informs the GUI if this was written by something that can use + "natural language" formulas. + + + + + Default record size. + + + + + Whether or not to use natural language formulas. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Whether or not to use natural language formulas. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Contains a list of explicit column page breaks. + + + + + Size of the fixed part. + + + + + Size of the subitem. + + + + + Number of page breaks. + + + + + Array of VerticalPageBreaks. + + + + + Default constructor, sets all fields default values. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Size of the required storage space. Read-only. + + + + + Array of VerticalPageBreaks. + + + + + Read-only. Maximum possible size of the record. + + + + + Structure that contains information about a vertical page break. + + + + + The column of the break. + + + + + The starting row of the break. + + + + + The ending row of the break. + + + + + Default constructor + + + + + Constructs class instance and fills it with specified values. + + Column of the break. + Starting row of the break. + Ending row of the break. + + + + Creates a new object that is a copy of the current instance. + + A new object that is a copy of this instance. + + + + The column of the break. + + + + + The starting row of the break. + + + + + The ending row of the break. + + + + + Stores the attributes of the workbook window. This is basically + so that the GUI is aware of the size of the window holding the spreadsheet + document. + + + + + Correct record size. + + + + + Horizontal position. + + + + + Vertical position. + + + + + The width of the window. + + + + + The height of the window. + + + + + The option's bitmask (see bit setters). + + + + + The selected tab number. + + + + + The displayed tab number. + + + + + The number of selected tabs. + + + + + Ratio of the width of the tabs to the horizontal scrollbar. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + Horizontal position of the window. + + + + + Vertical position of the window. + + + + + The width of the window. + + + + + The height of the window. + + + + + The selected tab number. + + + + + The displayed tab number. + + + + + The number of selected tabs. + + + + + Ratio of the width of the tabs to the horizontal scrollbar. + + + + + Indicates whether window is hidden. + + + + + Indicates whether window is icon. + + + + + Indicates whether to display horizontal scrollbar. + + + + + Indicates whether to display vertical scrollbar. + + + + + Display tabs at the bottom. + + + + + Property value reserved by Microsoft for own values. + + + + + Read-only. Options flag. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Possible option flags. + + + + + Indicates whether window is hidden. + + + + + Indicates whether window is icon. + + + + + Reserved. + + + + + Indicates whether to display horizontal scrollbar. + + + + + Indicates whether to display vertical scrollbar. + + + + + Display tabs at the bottom. + + + + + Flags indicating whether workbook windows are protected. + + + + + Size of the record data. + + + + + Whether workbook windows are protected. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Converts data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + Size of the record data. + + + + Whether workbook windows are protected. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Sheet window settings. + + + + + Maximum record size. + + + + + Indicates the size when this record is in Chart Sheet. + + + + + The option's bitmask (you should use the bit setters). + + + + + The top row visible in the window. + + + + + The leftmost column displayed in the window. + + + + + The palette index for the header color. + + + + + Zoom magification in page break view. + + + + + The zoom magnification in normal view. + + + + + Reserved. + + + + + Length of the original record. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + The top row visible in the window. + + + + + The leftmost column displayed in the window. + + + + + The palette index for the header color. + + + + + Whether the window should display formulas. + + + + + Whether the window should display gridlines. + + + + + Whether the window should display row and column headings. + + + + + Whether the window should freeze panes. + + + + + Whether the window should display zero values. + + + + + Whether the window should display a default header. + + + + + Is this Arabic? + + + + + Whether the outline symbols are displayed. + + + + + Freeze unsplit panes or not. + + + + + Sheet tab is selected. + + + + + Is the sheet currently displayed in the window? + + + + + Was the sheet saved in page break view? + + + + + Read-only. Option flags. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Length of the original record. + + + + + Possible option flags. + + + + + Indicates whether the window should display formulas. + + + + + Indicates whether the window should display gridlines. + + + + + Indicates whether the window should display row and column headings. + + + + + Indicates whether the window should freeze panes. + + + + + Indicates whether the window should display zero values. + + + + + Indicates whether the window should display a default header. + + + + + Indicates whether this is Arabic. + + + + + Indicates whether the outline symbols are displayed. + + + + + Indicates whether freeze panes are unsplit or not. + + + + + Indicates whether sheet tab is selected. + + + + + Indicates whether sheet is currently displayed in the window. + + + + + Indicates whether sheet was saved in page break view. + + + + + This record stores the magnification of the active view of the current worksheet. + In BIFF8 this can be either the normal view or the page break preview. + This is determined in the WINDOW2 record. + The magnification is stored as reduced fraction. The magnification results + from nscl / dscl. + + + + + Correct size of the record. + + + + + Numerator of the view magnification fraction. + + + + + Denominator of the view magnification fraction. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Numerator of the view magnification fraction. + The magnification results from NumMagnification / DenumMagnification. + + + + + Denominator of the view magnification fraction. + The magnification results from NumMagnification / DenumMagnification. + + + + + + + + + + Stores the Username of the owner of the spreadsheet generator + (on UNIX, it's the user's login; on Windows, it is the name you typed during + installation). + + + + + Default user name. + + + + + Minimum record size. + + + + + Maximum record size. + + + + + Space character value. + + + + + User name, Unicode string, 16-bit string length, 109 characters. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, a class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Size of the record data. + Offset in the buffer. + Excel version used for infill. + + + + User name, Unicode string, 16-bit string length, 109 characters. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + Indicates whether record allows shorter data. Read-only. + + + + + This record indicates that write protection is used and read-only mode is recommended. + + + + + Correct record size. + + + + + Default constructor. + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + When stream is not specified. + When stream does not support read or seek operations. + + + + Reserved for record's internal data array. + + Amount of bytes for the data array. + If amount of bytes requested is less than zero. + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Size of the required storage space. Read-only. + + + + + Read-only. Maximum possible size of the record. + + + + + This record stores a 16-bit value with Boolean options + for the current sheet. + + + + + Bit mask for DisplayGuts property. + + + + + First bit of the DispayGuts value. + + + + + + + + + + Option flags (you should use bit fields). + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Indicates if automatic breaks are visible. + + + + + Indicates if this is a sheet dialog sheet. + + + + + Whether to apply automatic styles to outlines. + + + + + Whether summary rows will appear below detail in outlines. + + + + + Whether summary rows will appear right of the detail in outlines. + + + + + Whether to fit stuff to the page. + + + + + Whether to display outline symbols (in the gutters). + Changes bits of m_usOptions. + + + When value is more than 3. + + + + + Whether to use alternate expression eval. + + + + + Whether to use alternate formula entry. + + + + + Read-only. Returns minimum possible size of record's + internal data array. + + + + + Read-only. Returns maximum possible size of record's + internal data array. + + + + + + + + + + + + + + + Indicates whether automatic breaks are visible. + + + + + Indicates whether sheet is a dialog sheet. + + + + + Indicates whether to apply automatic styles to outlines. + + + + + Indicates whether summary rows will appear below detail in outlines. + + + + + Indicates whether summary rows will appear right of the detail in outlines. + + + + + Indicates whether to fit stuff to the page. + + + + + Indicates whether to use alternate expression eval. + + + + + Indicates whether to use alternate formula entry. + + + + + XCT � CRN Count: + This record stores the number of immediately following CRN records. + These records are used to store the cell contents of external references. + + + + + Correct record size. + + + + + Number of following CRN records. + + + + + Index into sheet table of the involved SUPBOOK record. + + + + + Default constructor + + + + + Read / initialize constructor. + + Stream from which record data should be read. + Size of read item. + + If stream is not specified. + + + If stream does not support read or seek operations. + + + + + Reserved for record's internal data array. + + Amount of bytes for data array. + + If amount of bytes requested is less than zero. + + + + + Parse structure of record. Convert Data buffer to special + values according to record specification. + + Object that provides access to the data. + Offset to the record's data. + Length of the record's data. + Excel version used for infill. + + + + In this method, class must pack all of its properties into + an internal data array, m_data. This method is called by + FillStream, when the record must be serialized into a stream. + + Object that provides access to the data. + Offset in the buffer. + Excel version used for infill. + + + + Number of following CRN records. + + + + + Index into sheet table of the SUPBOOK record. + + + + + Read-only. Minimum possible size of the record. + + + + + Read-only. Maximum possible size of the record. + + + + + Attribute provides link information between class and Biff8. + record types + + + + + Biff record code. + + + + + Default constructor. To prevent creation of attribute without attributes. + + + + + Creates attribute by record code. + + Biff record code. + + + + Read-only. Returns code of record. + + + + + Known field types to parser. + + + + + Represents the Integer field type. + + + + + Represents the Bit field type. + + + + + Represents the String field type. + + + + + Represents the String16Bit field type. + + + + + Represents the OEMString field type. + + + + + Represents the OEMString16Bit field type. + + + + + Represents the Float field type. + + + + + Attribute of records class members that provide information + about location of the variable in binary data. It also indicates + type to which the data must be converted to. + + + + + Position of the field in the record. + + + + + Size of the field. + + + + + True if attribute describes bit field. + + + + + True if attribute describes string field. + + + + + Indicates whether attribute describes string field with 16 bit length. + + + + + True if attribute describes OEM string field. + + + + + True if attribute describes OEM string field. + + + + + True if attribute describes float field. + + + + + True if attribute describes signed field. + + + + + Creates attribute by field position, size, signed flag, and field type. + + + Position of the filed data in the record data array. + + + Size of the field data or position of the bit in the byte. + + Is field signed or not? + Type of the field. + + + + Creates attribute for integer field by its position, + size, and signed flag. + + + Position of the filed data in the record data array. + + + Size of the field data or position of the bit in the byte. + + Is field signed or not? + + + + Creates attribute for unsigned field by field position, + size, and field type. + + + Position of the filed data in the record data array. + + + Size of the field data or position of the bit in the byte. + + Type of the field. + + + + Creates attribute by field position and field type. + Field size is zero and field is unsigned. + + + Position of the filed data in the record data array. + + Type of the field. + + + + Creates attribute for unsigned field by field position and size. + + + Position of the filed data in the record data array. + + + Size of the field data or position of the bit in the byte. + + + + + Compares the object + + + + + + + Read-only. Returns position of the field in the record data. + + + + + Read-only. Returns size of the filed or bit position (for bit fields). + + + + + Read-only. Returns True if attribute describes bit field. + + + + + Read-only. Returns True if attribute describes signed field. + + + + + Read-only. Returns True if attribute describes string field. + + + + + Indicates whether attribute describes string field with 16 bit length. + + + + + Read-only. Returns True if attribute describes float field. + + + + + Read-only. Returns True if this attribute describes OEM string. + + + + + Read-only. Returns True if this attribute describes OEM string with 16 bit length field. + + + + + Existence of such attribute in class metadata indicates to the Excel writer that + the record class contains offset field which can be calculated only after + all records are saved into an array and are in place. + + + + + Type of the Biff record. + + + + + No public default constructor. + + + + + Constructs attribute for specified Biff record type. + + Type of the Biff record. + + + + Get type of records used for offset calculations. + + + + + This attribute tells the Excel Writer the order in which order offsets should be calculated. + + + + + Array that stores the Biff records order. + + + + + Default constructor. Prevents creating attribute without parameters. + + + + + Constructs attribute and fills array of records + order with specified values. + + Order of the biff records. + + + + Read-only. Returns the array of Biff records order. + + + + + Class used for sorting. Compare method organizes the array in special + order: first the large fields, followed by one bit, and then the bit fields. + Such an order is required by the auto extraction algorithm. + + + + + Compares two objects and returns a value indicating whether + one is less than, equal to, or greater than the other. + + First object to compare. + Second object to compare. + + Value less than zero if x is less than y, + zero if x equals y, + greater than zero if x is greater than y + + + + + This internal class that is used for automatic extraction and + save of the Biff records. + + + + + Key value of the pair. + + + + + Tag value of the pair. + + + + + This method is called when key value is changed. + + + + + This method is called when tag value is changed. + + + + + Default constructor. To prevent construction without parameters. + + + + + Constructs pair by key and tag values. + + Key value. + Tag value. + + + + Event that will be raised after key value changes. + + + + + Event that will be raised after tag value changes. + + + + + Gets / sets key value. + + + + + Gets / sets tag value. + + + + + Helper class which allows extract continue records from stream. + + + + + + + + + + Reference on reader. + + + + + Reference on start position in stream. + + + + + Current record extracted from stream. + + + + + Indicate whether the Reset method needs to be called. + + + + + + + + + + + + + + + + + + + + Object that can be used to decrypt record's content. + + + + + Disable access to default constructor for users. + + + + + Main constructor for class. + + Reference on stream BinaryReader. + Object used to decrypt encrypted records. + Represents data provider. + + + + Peek at one record from stream. + + Peeked Biff record. + + + + Class to store current stream position as start point. + + New position which stored as start point. + + + + + + + + + + Return stream to the start position and reset enumerator. + + + + + Move to the next item in stream. + + True if record was extracted successfully; otherwise False. + + + + Check if is the end of stream. + + + + + Type safe Current record. + + + + + Get current extracted record from stream. + + + + + Special class for data publishing as Continue Records. + + + + + Reference to writer + + + + + Constructs class and sets reference to a writer. + + + Writer for which utility class will be constructed. + + + + + Publish / save data as Continue Records into writer stream. + + Data which must be published as Continue Records. + Start point in an array. + Size of records and data in bytes. + + + + Publish / save data as Continue Records into writer stream. + + Data which must be published as Continue Records. + Start point in an array. + Length of data from start point. + Size of records and data in bytes. + + + + Publish / save data as Continue Records into writer stream. + + Data which must be published as Continue Records. + Start point in an array. + Length of data from start point. + Maximum size of Continue Record size. + Size of records and data in bytes. + + + + Publish Continue Record into internal data array of destination record. + + Data to publish. + Start point. + Destination. + Offset in the destination's data array. + Size of the published data. + + + + Publish Continue Record into internal data array of destination record. + + Data to publish. + Start point. + Length of data to publish. + Destination. + Offset in the destination's data array. + Size of the published data. + + + + Publish Continue Record into internal data array of destination record. + + Data to publish. + Start point. + Length of data to publish. + Max size for continue record. + Destination. + Offset in the destination's data array. + Size of the published data. + + + + Summary description for BytesList. + + + + + + + + + + + + + + + Default size of the internal array. + + + + + + + + + + First free position. + + + + + Indicates whether list can reserve some space. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Enum that defines constants for all known Biff records. + + + + + Represents the Array Biff record. + + + + + Represents the AutoFilter Biff record. + + + + + Represents the AutoFilterInfo Biff record. + + + + + Represents the BOF Biff record. + + + + + Represents the BOF2 Biff record. + + + + + Represents the Backup Biff record. + + + + + Represents the Begin Biff record. + + + + + It stores the background bitmap of a worksheet. + + + + + Represents the Blank Biff record. + + + + + Represents the BookBool Biff record. + + + + + Represents the BoolErr Biff record. + + + + + Represents the BottomMargin Biff record. + + + + + Represents the BoundSheet Biff record. + + + + + Represents the CF Biff record. + + + + + Represents the CF12 Biff record. + + + + + Represents the CFEx Biff record. + + + + + Represents the CRN Biff record. + + + + + Represents the CalCount Biff record. + + + + + Represents the CalcMode Biff record. + + + + + Represents the CodeName Biff record. + + + + + Represents the Codepage Biff record. + + + + + Represents the ColumnInfo Biff record. + + + + + Represents the CondFMT Biff record. + + + + + Represents the CondFMT12 Biff record. + + + + + Represents the Continue Biff record. + + + + + Represents the Continue Frt record. + + + + + Represents the Country Biff record. + + + + + Represents custom property record. + + + + + Represents the DBCell Biff record. + + + + + Represents the DCON Biff record. + + + + + Represents the DCONBIN Biff record. + + + + + Represents the DCONNAME Biff record. + + + + + Represents the DCONRef Biff record. + + + + + Represents the DSF Biff record. + + + + + Represents the DV Biff record. + + + + + Represents the DVal Biff record. + + + + + Represents the DateWindow1904 Biff record. + + + + + Represents the DefaultColWidth Biff record. + + + + + Represents the DefaultRowHeight Biff record. + + + + + Represents the Delta Biff record. + + + + + Represents the Dimensions Biff record. + + + + + Represents the EOF Biff record. + + + + + Represents the End Biff record. + + + + + Represents the ExtSST Biff record. + + + + + Represents the ExtSSTInfoSub Biff record. + + + + + Represents the ExtendedFormat Biff record. + + + + + Represents the ExtendedFormatCRC Biff record. + + + + + Represents the Extension of ExtendedFormat Biff record. + + + + + Represents the ExternCount Biff record. + + + + + Represents the ExternName Biff record. + + + + + Represents the ExternSheet Biff record. + + + + + Represents the FilePass Biff record. + + + + + Represents the FileSharing Biff record. + + + + + Represents the FilterMode Biff record. + + + + + Represents the FnGroupCount Biff record. + + + + + Represents the Font Biff record. + + + + + Represents the Footer Biff record. + + + + + Represents the Format Biff record. + + + + + Represents the Formula Biff record. + + + + + Represents the Gridset Biff record. + + + + + Represents the Guts Biff record. + + + + + Represents the HasBasic Biff record. + + + + + Represents the HCenter Biff record. + + + + + Represents the HLink Biff record. + + + + + Represents the Header Biff record. + + + + + Represents image in header or footer. + + + + + This record specifies the even page header and footer text, and the first page + header and footer text of the current sheet. + + + + + Represents the HideObj Biff record. + + + + + Represents the HorizontalPageBreaks Biff record. + + + + + Represents ImageData biff record. + + + + + Represents the Index Biff record. + + + + + Represents the InterfaceEnd Biff record. + + + + + Represents the InterfaceHdr Biff record. + + + + + Represents the Iteration Biff record. + + + + + Represents the Label Biff record. + + + + + Represents the LabelRanges Biff record. + + + + + Represents the LabelSST Biff record. + + + + + Represents the LeftMargin Biff record. + + + + + Represents the MMS Biff record. + + + + + Represents the MergeCells Biff record. + + + + + Represents the MSODrawing Biff record. + + + + + Represents the MSODrawingGroup Biff record. + + + + + Represents the MulBlank Biff record. + + + + + Represents the MulRK Biff record. + + + + + Represents the Name Biff record. + + + + + Represents the Note Biff record. + + + + + Represents the Number Biff record. + + + + + Represents the OBJ Biff record. + + + + + Represents the ObjectProtect Biff record. + + + + + Represents the OleSize Biff record. + + + + + Represents the Palette Biff record. + + + + + Represents the Pane Biff record. + + + + + Represents the Password Biff record. + + + + + Represents the PasswordRev4 Biff record. + + + + + Represents the Precision Biff record. + + + + + Represents the PrintedChartSize Biff record. + + + + + THis records saves settings and printer driver information. + + + + + Represents the PrintGridlines Biff record. + + + + + Represents the PrintHeaders Biff record. + + + + + Represents the PrintSetup Biff record. + + + + + Represents the Protect Biff record. + + + + + Represents the ProtectionRev4 Biff record. + + + + + Represents the QuickTip Biff record. + + + + + Represents the RefMode Biff record. + + + + + Represents the RefreshAll Biff record. + + + + + Represents the RightMargin Biff record. + + + + + Represents the RK Biff record. + + + + + Represents the Row Biff record. + + + + + Represents the RString Biff record. + + + + + Represents the SaveRecalc Biff record. + + + + + Represents the ScenProtect Biff record. + + + + + Represents the Selection Biff record. + + + + + Represents the default column width for all sheet columns. + + + + + Represents the Setup Biff record. + + + + + Represents the beginning of a collection of records + + + + + Represents the shape formatting properties for chart elements + + + + + Represents the end of a collection of records + + + + + Represents the SharedFormula Biff record. + + + + + Represents the SharedFormula2 Biff record. + + + + + This record stores the colour of the tab below the sheet containing the sheet name. + + + + + Represents the Sort Biff record. + + + + + Represents the SST Biff record. + + + + + Represents the String Biff record. + + + + + Represents the Style Biff record. + + + + + Represents the Extension of Style Biff record. + + + + + Represents the SupBook Biff record. + + + + + Represents the TabId Biff record. + + + + + Represents the Table Biff record. + + + + + Represents the Template Biff record. + + + + + Represents the TextObject Biff record. + + + + + Represents the Theme Biff record. + + + + + Represents the TopMargin Biff record. + + + + + Represents the UseSelFS Biff record. + + + + + Represents the VCenter Biff record. + + + + + Represents the VerticalPageBreaks Biff record. + + + + + Represents the WSBool Biff record. + + + + + Represents the WindowOne Biff record. + + + + + Represents the WindowProtect Biff record. + + + + + Represents the WindowTwo Biff record. + + + + + Represents the WindowZoom Biff record. + + + + + Represents the WriteAccess Biff record. + + + + + Represents the WriteProtection record. + + + + + Represents the XCT Biff record. + + + + + Represents the Unknown Biff record. + + + + + Represents the UnkBegin Biff record. + + + + + Represents the UnkEnd Biff record. + + + + + Represents the UnkMarker Biff record. + + + + + Represents the UnkMacrosDisable Biff record. + + + + + This record contains workbook-specific information. + + + + + Represents the ChartDataLabels Biff record. + + + + + Represents the ChartChart Biff record. + + + + + Represents the ChartSeries Biff record. + + + + + Represents the ChartDataFormat Biff record. + + + + + Represents the ChartLineFormat Biff record. + + + + + Represents the ChartMarkerFormat Biff record. + + + + + Represents the ChartAreaFormat Biff record. + + + + + Represents the ChartPieFormat Biff record. + + + + + Represents the ChartAttachedLabel Biff record. + + + + + Represents the ChartAttachedLabelLayout Biff record. + + + + + Represents the ChartAttachedLabelPlotArea Biff record + + + + + Represents the ChartSeriesText Biff record. + + + + + Represents the ChartChartFormat Biff record. + + + + + Represents the ChartLegend Biff record. + + + + + Represents the ChartSeriesList Biff record. + + + + + Represents the ChartBar Biff record. + + + + + Represents the ChartLine Biff record. + + + + + Represents the ChartPie Biff record. + + + + + Represents the ChartArea Biff record. + + + + + Represents the ChartScatter Biff record. + + + + + Represents the ChartChartLine Biff record. + + + + + Represents the ChartAxis Biff record. + + + + + Represents the ChartTick Biff record. + + + + + Represents the ChartValueRange Biff record. + + + + + Represents the ChartCatserRange Biff record. + + + + + Represents the ChartAxisLineFormat Biff record. + + + + + Represents the ChartFormatLink Biff record. + + + + + Represents the ChartDefaultText Biff record. + + + + + Represents the ChartText Biff record. + + + + + Represents the ChartFontx Biff record. + + + + + Represents the ChartObjectLink Biff record. + + + + + Represents the ChartFrame Biff record. + + + + + Represents the ChartPlotArea Biff record. + + + + + Represents the Chart3D Biff record. + + + + + Represents the ChartPicf Biff record. + + + + + Represents the ChartDropBar Biff record. + + + + + Represents the ChartRadar Biff record. + + + + + Represents the ChartSurface Biff record. + + + + + Represents the ChartRadarArea Biff record. + + + + + Represents the ChartAxisParent Biff record. + + + + + Represents the ChartLegendxn Biff record. + + + + + Represents the ChartShtprops Biff record. + + + + + Represents the ChartSertocrt Biff record. + + + + + Represents the ChartAxesUsed Biff record. + + + + + Represents the ChartSbaseref Biff record. + + + + + Represents the ChartSerParent Biff record. + + + + + Represents the ChartSerAuxTrend Biff record. + + + + + Represents the ChartIfmt Biff record. + + + + + Represents the ChartPos Biff record. + + + + + Represents the ChartAlruns Biff record. + + + + + Represents the ChartAI Biff record. + + + + + Represents the chart text properties stream + + + + + Represents the ChartSerAuxErrBar Biff record. + + + + + Represents the ChartSerFmt Biff record. + + + + + Represents the Chart3DDataFormat Biff record. + + + + + Represents the ChartFbi Biff record. + + + + + Represents the ChartBoppop Biff record. + + + + + Represents the ChartAxcext Biff record. + + + + + Represents the ChartDat Biff record. + + + + + Represents the ChartPlotGrowth Biff record. + + + + + Represents the ChartSiIndex Biff record. + + + + + Represents the ChartGelFrame Biff record. + + + + + Represents the ChartBoppCustom Biff record. + + + + + Represents the ChartShadow Biff record. + + + + + Represents the ChartUnits Biff record. + + + + + Represents the ChartWrapper Biff record. + + + + + Represents the ChartAxisDisplayUnits biff record. + + + + + Represents the ChartBegDispUnitRecord biff record. + + + + + Represents the ChartEndDispUnitRecord biff record. + + + + + Represents the ChartAxisOffsetRecord biff record. + + + + + Represents the CacheData Biff record. + + + + + Represents the CacheDataEx Biff record. + + + + + Represents the DataItem Biff record. + + + + + Represents the ViewExtendedInfo Biff record. + + + + + Represents the ExternalSourceInfo Biff record. + + + + + Represents the SQLDataTypeId Biff record. + + + + + Represents the RuleFilter Biff record. + + + + + Represents the ParsedExpression Biff record. + + + + + Represents the PivotFormat Biff record. + + + + + Represents the PivotFormula Biff record. + + + + + Represents the StreamId Biff record. + + + + + Represents the RowColumnFieldId Biff record. + + + + + Represents the LineItemArray Biff record. + + + + + Represents the PivotName Biff record. + + + + + Represents the PivotNamePair Biff record. + + + + + Represents the PageItem Biff record. + + + + + Represents the RuleData Biff record. + + + + + Represents the SelectionInfo Biff record. + + + + + Represents the sheet protection biff record. + + + + + Represents range protection and error indicators. + + + + + Represents the PivotString Biff record. + + + + + Represents the PivotSourceInfo Biff record. + + + + + Represents the PageItemIndexes Biff record. + + + + + Represents the PageItemNameCount Biff record. + + + + + Represents the PivotViewFields Biff record. + + + + + Represents the PivotViewFieldsEx Biff record. + + + + + Represents the PivotViewItem Biff record. + + + + + Represents the PivotViewDefinition Biff record. + + + + + Represents the PivotViewSource Biff record. + + + + + Represents the PivotDateTime Biff record. + + + + + Represents the PivotDouble Biff record. + + + + + Represents the PivotEmpty Biff record. + + + + + Represents the PivotBoolean Biff record. + + + + + Represents the PivotError Biff record. + + + + + Represents the PivotField Biff record. + + + + + Represents the PivotIndexList Biff record. + + + + + Represents pivot view additional info record. + + + + + + Rerpresents the External connection record. + + + + + Represents properties for a query table. + + + + + Represents the properties for a query table field. + + + + + Represents a DbQuery or ParamQry record depending on the record. + + + + + Represents the name and refresh information for a query table or a PivotTable view. + + + + + Represents shared feature data that is used to describe a table in a worksheet + + + + + Represents the properties related to the formatting of a query table. + + + + + Represents the additional properties + + + + + Represents the DataBaseConnection + + + + + Represents the oledbconnection + + + + + Represents the Externalconnectioncollection + + + + + Represents the Feature record for query table + + + + + Represents the pagelayout view record + + + + + + + + + + Storage of all records. + + + + + Removes the item at the specified index from the list. + + Index of the item to removed. + + + + Inserts an item to the list at the specified position. + + Index at which value should be inserted. + The record to insert into list. + + + + Removes the first occurrence of a specific record from the list. + + Value to remove. + + + + Determines whether the list contains a specific value. + + The record to locate in the list. + True if the value is found in the list; otherwise False. + + + + Removes all items from the list. + + + + + Determines the index of a specific item in the list. + + Record to locate in the list. + The index of the value if found in the list; otherwise -1. + + + + Adds an item to the list. + + The item to add to the list. + The position into which the new element was inserted. + + + + Adds an item to the list. + + The item to add to the list. + The position into which the new element was inserted. + + + + Adds a range of items to the list. + + + Collection of the records that should be added to the list. + + + + + Adds a range of items to the list. + + + Collection of the records that should be added to the list. + + + + + Adds a range of items to the list. + + + Collection of the records that should be added to the list. + + + + + Inserts an item to the list at the specified position. + + Index at which value should be inserted. + The record to insert into list. + + + + Removes the first occurrence of a specific record from the list. + + Value to remove. + + + + Determines whether the list contains a specific value. + + The record to locate in the list. + True if the value is found in the list; otherwise False. + + + + Determines the index of a specific item in the list. + + Record to locate in the list. + The index of the value if found in the list; otherwise -1. + + + + Adds an item to the list. + + The item to add to the list. + The position into which the new element was inserted. + + + + Copies the elements of the ICollection to an array, + starting at a particular array index. + + + The one dimensional array that is the destination of the + elements copied from ICollection. The array must have + zero-based indexing. + + + The zero-based index in an array at which copying begins. + + + + + Returns an enumerator that can iterate through a collection. + + + An IEnumerator that can be used to iterate through the collection. + + + + + Returns an enumerator that can iterate through a collection. + + + An IEnumerator that can be used to iterate through the collection. + + + + + Updates offsets to the Biff records. + + + + + Method that updates StreamPos field in records stored in this collection. + + + + + Copy the BiffStorage item to list + + + + + + + Read-only. True if list has fixed size. + + + + + Read-only. True if list is Read-only. + + + + + Gets / sets record in the list at the specified index. + + + + + Gets / sets record in the list at the specified index. + + + + + Read-only. Gets a value indicating whether access to the + ICollection is synchronized (thread-safe). + + + + + Read-only. Gets the number of elements contained in the ICollection. + + + + + Read-only. Gets an object that can be used to synchronize + access to the ICollection. + + + + + Class for extracting Biff records from the stream. + + + + + Default size of the buffer + + + + + Version number that stands for BIFF8 + + + + + Stream of data which will be used by reader + + + + + Internal binary reader. + + + + + TRUE - indicate that object was disposed and cannot be used, + otherwise FALSE + + + + + TRUE - destroy stream on own dispose, otherwise false. + + + + + Minimal version that is accepted by the reader + + + + + Buffer for records data. + + + + + Object that provides access to the data. + + + + + To prevent construct of object by default constructor. + + + + + Open stream for reading. + + Input stream which contains data. + + + + Open stream for reading and control stream live time. + + Input stream which contains data + TRUE - reader will dispose stream on own + destroy, otherwise FALSE + + + + Free all resources used by this class + + + + + Gets next record from the stream. + + Extracted biff record. + + + + Gets next record from the stream. + + Decryptor used to decrypt encrypted records. + Extracted biff record. + + + + Gets record from the stream without changing stream position. + + Extracted biff record. + + + + Gets record type from the stream without changing stream position. + + Extracted record type. + + + + Searches for the next BOFRecord in the stream. + + Found BOFRecord or null if was not found. + + + + Seeks for the specified record. + + Record to search. + Found record, or NULL if record was not found. + + + + Extract Record from stream. This method used by IsEOF property + to optimize its performance. + + Extracted record. + + + + Base stream. + + + + + Returns base BinaryReader. Read-only. + + + + + Get / Set minimal version accepted by the reader + + + + + Returns reference to the internal buffer. Read-only. + + + + + Returns object that provides access to the data. Read-only. + + + + + Read-only. Property return TRUE when reader cannot + extract no more records from stream. + + + + + This class contains information about all known biff records. + Used for registering the biff record type, creating new biff records + and extracting them from a stream. + + + + + Default size for the internal dictionaries + + + + + code-to-constructor pair + + + + + Initialize internal dictionary by Records + + + + + Fills factory without using reflection. + + + + + Create empty record by specified type. + + Type of the record that should be created. + Created record if succeeded, null otherwise. + + + + Create empty record by specified type. + + Type of the record that should be created. + Created record if succeeded, null otherwise. + + + + Extracts unknown record from the stream + + Stream that contains needed record + Extracted unknown record + + + + Extracts unknown record from the stream + + Reader that contains record + Extracted unknown record + + + + Extracts specified record from the reader + + Type of the record to be extracted + Reader that contains record + Object that provider access to the record data. + + Decryptor used to parse encrypted records. + This argument can be null when no decryption is required. + + Temporary buffer needed for some operations. + Extracted record + + When specified reader is null + + + + + Extracts specified record from the reader. + + Type of the record to be extracted. + Reader that contains record. + Temporary buffer needed for some operations. + Extracted record. + + When specified reader is null. + + + + + Extracts specified record from the reader. + + Type of the record to be extracted. + Reader that contains record. + Temporary buffer needed for some operations. + Extracted record. + + When specified reader is null. + + + + + Extracts record from the BinaryReader. + + BinaryReader that contains record to extract. + Object that provides access to the data. + Temporary buffer needed for some operations. + Extracted record. + + + + Extracts record from the BinaryReader. + + BinaryReader that contains record to extract. + Object that provides access to the data. + Object used to decrypt encrypted records. + Temporary buffer needed for some operations. + Extracted record. + + + + Extracts record from array of bytes. + + Object that provides access to the data. + Offset to the record's start. + Excel version used for infill. + Extracted record. + + + + Extracts from the BinaryReader type of the next record. + + BinaryReader that contains record to extract. + Type of the next record in the BinaryReader. + When reader is null. + + When code of the extracted record is zero. + + + + + Extract from stream Next Record type. + + Stream that contains record to extract. + Extracted record. + + + + + + + + + Size of the buffer. + + + + + Stream of data which will be used by reader. + + + + + True indicates that the object was disposed and cannot be used; + otherwise False. + + + + + TRUE to destroy stream on own dispose; otherwise False. + + + + + + + + + + Buffer for record data. + + + + + Object that provides access to internal data. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Object to encrypt data. + + + + + + + Object to encrypt data. + + + + + + + Object to encrypt data. + + + + + + + + + Returns internal buffer. Read-only. + + + + + Class that encapsulates pointer to unmanaged memory block + and used to convert managed memory block (byte array) + into managed object. + + + + + Default memory block size. + + + + + Minimum memory block size. + + + + + Maximum memory block size. + + + + + Exception message for OutOfMemoryException. + + + + + Pointer to the memory block. + + + + + Size of the memory block. + + + + + Default constructor. + + + + + Initializes new instance of MemoryConverter with specified memory block size. + + Size of the memory block. + + + + Ensures that memory block will be able to accept iDesiredSize bytes. + + Bytes that memory block should be able to accept. + + If iDesiredSize is larger than maximum possible memory block size. + + + When was unable to allocate desired memory block size. + + + + + Copies data from arrData into internal memory block. + + Data to copy. + + + + Copies data from arrData into internal memory block starting + from specified index to the end of the array. + + Data to copy. + Start index of the data to copy. + + + + Copies specified number of bytes from arrData into internal memory block starting + from specified index to the end of the array. + + Data to copy. + Start index of the data to copy. + Number of bytes to copy. + + + + Copies data from internal memory block into object. + + Destination object. + + + + Copies data from internal memory block into object. + + Destination object. + + + + Copies data from byte array into specified object. + + Data to copy. + Destination object. + + + + Copies data from byte array into specified object. + + Data to copy. + Start index of the data to copy. + Destination object. + + + + Copies data from byte array into specified object. + + Data to copy. + Start index of the data to copy. + Number of bytes to copy. + Destination object. + + + + + + + + + + + + Draw the RTf text. + + The cell rectangle. + The cell adjacent rectangle. + The pdf graphics. + Font collection. + _drawString collection. + Indicating wheater shape or not + Indicating wheather is wrapText or not + Indicating wheather shape Horizontal Text is overflow or not + Indicating wheather shape vertical Text is overflow or not. + + + + Update the text height. + + The cell adjacent rectangle + Text line collection + Indicating the this shape autospace or not + + + + + Gets the ascent value from the system font. + + System font. + returns the ascent value of the system font. + + + + Layout the new line. + + The cell rectangle. + Used height. + The lineinfo collection. + The textinfo collection. + Used width. + Maximun ascent. + Maximum height. + Last line. + The text. + + + + Layout the XY position. + + Used width. + Maximum ascent. + The cell width. + The textinfo collection. + Last line. + Maximum height. + Used height. + + + + Check the previous element. + + The lineinfo collection. + The textinfo collection. + The text. + Used width. + Used height. + The cell bounds. + + + + Draw the text template. + + The cell bounds. + Pdf graphics. + The lineinfo collection. + shift y. + + + + Gets the shift value for superscript and subscript. + + XlsIO font. + returns ShiftY value. + + + + Normalizes the color. + + The color. + The Normailzed Color + + + + Layout the text. + + The cell rectangle. + Used width. + Used height. + The font. + Pdf font. + Pdf brush. + The text size. + The text ascent. + Maximum height. + Maximum ascent. + The text. + + + + + Gets the space index before the space. + + The text. + Start index. + returns the index before the space. + + + + Layout the splitted text. + + The cell bounds. + Used height. + The textinfo collection. + Used width. + Maximum ascent. + Maximum height. + The font. + Pdf font. + Pdf brush. + The text. + The text size. + The text ascent. + Text current index. + Text previous index. + + + + Split the text by character. + + The cell bounds. + Used height. + The lineinfo collection. + The textinfo collection. + Used width. + Maximun ascent. + Maximum height. + The text. + Pdf font. + Pdf brush. + The font. + The text size. + The text ascent. + Text current index. + the original text. + + + + Gets the text index after the space. + + The text. + Start index. + returns the index after the space. + + + + Update the XY position. + + Maximum ascent. + The textinfo collection. + Shift X. + + + + Justify the line. + + Used width. + Maximum ascent. + The cell width. + The textinfo collection. + + + + Remove the white spaces. + + The textinfo collection. + + + + + Update the line position. + + The textinfo collection. + Shift X. + TextInfo index. + + + + Update the X position. + + The textinfo collection. + Shift X. + + + + Gets system font. + + + Returns System Font. + + + + Gets system font. + + + Returns System Font. + + + + Checks the unicode. + + The unicode text. + + True if the text is an unicode else false will returned. + + + + + Gets the ascent value from the system font. + + System font. + returns the ascent value of the system font. + + + + Draw the text template. + + The cell bounds. + Pdf graphics. + The lineinfo collection. + shift y. + + + + Represents the TextInfo collection. + + + + + Represent the maximum height of the line. + + + + + Initialize the new instace for LineInfo class. + + + + + Dispose the objects. + + + + + Represents the TextInfo collection. + + + + + Line Text. + + + + + Text width. + + + + + Returns the Max Height of the Line. + + + + + The text. + + + + + Text ascent. + + + + + Text bounds. + + + + + XlsIO font. + + + + + Unicode font. + + + + + Text length. + + + + + Text start index. + + + + + Initialize the new instance for TextInfo class. + + Original text. + + + + Reperesents the original text. + + returns original text. + + + + Copy the XlsIO font, Pdf font, Pdf brush and Text ascent to the destination object. + + The destination object. + + + + Dispose the object. + + + + + The text. + + + + + XlsIO font. + + + + + Unicode font. + + + + + Text bounds. + + + + + Text ascent. + + + + + Text start index. + + + + + Text length. + + + + + X position. + + + + + Y position. + + + + + Text Width. + + + + + Text height. + + +
+
diff --git a/ZZ_Signature_C/obj/Debug/ZZ_Signature_C.csproj.AssemblyReference.cache b/ZZ_Signature_C/obj/Debug/ZZ_Signature_C.csproj.AssemblyReference.cache index 8d95606b..e7456d2c 100644 Binary files a/ZZ_Signature_C/obj/Debug/ZZ_Signature_C.csproj.AssemblyReference.cache and b/ZZ_Signature_C/obj/Debug/ZZ_Signature_C.csproj.AssemblyReference.cache differ diff --git a/ZZ_Signature_C/obj/Debug/ZZ_Signature_C.csproj.FileListAbsolute.txt b/ZZ_Signature_C/obj/Debug/ZZ_Signature_C.csproj.FileListAbsolute.txt index 204d143e..849c20bf 100644 --- a/ZZ_Signature_C/obj/Debug/ZZ_Signature_C.csproj.FileListAbsolute.txt +++ b/ZZ_Signature_C/obj/Debug/ZZ_Signature_C.csproj.FileListAbsolute.txt @@ -64,3 +64,15 @@ E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\Newtonsoft.Json.xml E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\NLog.xml E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\NLog.Database.xml E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\FastReport.xml +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\DOCGEN.dll +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\Syncfusion.XlsIO.Base.dll +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\Syncfusion.ExcelToPDFConverter.Base.dll +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\OfficePrinter.dll +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\Syncfusion.Presentation.Base.dll +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\DOCGEN.pdb +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\DOCGEN.xml +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\DOCGEN.dll.config +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\Syncfusion.XlsIO.Base.xml +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\Syncfusion.ExcelToPDFConverter.Base.xml +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\OfficePrinter.pdb +E:\Software-Projekte\OnDoc\OnDoc\ZZ_Signature_C\bin\Debug\Syncfusion.Presentation.Base.xml diff --git a/vbBarcodes/bin/Debug/Database.dll b/vbBarcodes/bin/Debug/Database.dll index 38ae82c6..5f4135ee 100644 Binary files a/vbBarcodes/bin/Debug/Database.dll and b/vbBarcodes/bin/Debug/Database.dll differ diff --git a/vbBarcodes/bin/Debug/Database.pdb b/vbBarcodes/bin/Debug/Database.pdb index 3de10ea3..5cc28b03 100644 Binary files a/vbBarcodes/bin/Debug/Database.pdb and b/vbBarcodes/bin/Debug/Database.pdb differ diff --git a/vbBarcodes/bin/Debug/Model.dll b/vbBarcodes/bin/Debug/Model.dll index cfb0e4be..e9b2b2dd 100644 Binary files a/vbBarcodes/bin/Debug/Model.dll and b/vbBarcodes/bin/Debug/Model.dll differ diff --git a/vbBarcodes/bin/Debug/Model.pdb b/vbBarcodes/bin/Debug/Model.pdb index 4e6ffae7..db579073 100644 Binary files a/vbBarcodes/bin/Debug/Model.pdb and b/vbBarcodes/bin/Debug/Model.pdb differ diff --git a/vbBarcodes/obj/Debug/vbBarcodes.vbproj.AssemblyReference.cache b/vbBarcodes/obj/Debug/vbBarcodes.vbproj.AssemblyReference.cache index 7796a52d..d4a28e4e 100644 Binary files a/vbBarcodes/obj/Debug/vbBarcodes.vbproj.AssemblyReference.cache and b/vbBarcodes/obj/Debug/vbBarcodes.vbproj.AssemblyReference.cache differ