Monday, 28 August 2017 06:28
Add formula in Excel
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace NPOI
{
class Program
{
static void Main(string[] args)
{
//Create workbook
IWorkbook workbook = new XSSFWorkbook();
ISheet sheet = workbook.CreateSheet("MySheet");
//Create cells
IRow row = sheet.CreateRow(0);
ICell cell1 = row.CreateCell(0);
ICell cell2 = row.CreateCell(1);
ICell cell3 = row.CreateCell(2);
ICell sumCell = row.CreateCell(3);
//Set the value of the cells
cell1.SetCellValue(10);
cell2.SetCellValue(15);
cell3.SetCellValue(20);
//Add formula
sumCell.SetCellFormula("sum(A1:C1)");
//Save the file
FileStream file = File.Create("ExcelFormula.xlsx");
workbook.Write(file);
file.Close();
//Launch the file
System.Diagnostics.Process.Start("ExcelFormula.xlsx");
}
}
}
Published in
NPOI
Monday, 28 August 2017 06:24
Add comment in Excel
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace NPOI
{
class Program
{
static void Main(string[] args)
{
//Create workbook
IWorkbook workbook = new XSSFWorkbook();
ISheet sheet = workbook.CreateSheet("MySheet");
//Create the drawing patriarch
IDrawing drawing = sheet.CreateDrawingPatriarch();
//Create cell and set its value
ICell cell = sheet.CreateRow(2).CreateCell(2);
cell.SetCellValue("Comment");
//Create comment
IClientAnchor anchor = workbook.GetCreationHelper().CreateClientAnchor();
IComment comment = drawing.CreateCellComment(anchor);
comment.String = new XSSFRichTextString("Spire.XLS");
comment.Author = ("E-iceblue");
cell.CellComment = (comment);
//Save the file
FileStream file = File.Create("ExcelComment.xlsx");
workbook.Write(file);
file.Close();
//Launch the file
System.Diagnostics.Process.Start("ExcelComment.xlsx");
}
}
}
Published in
NPOI
Thursday, 24 August 2017 01:51
Sort excel data
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Excel;
namespace VSTO
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
//Open the workbook file
Excel.Application ExcelApp = Application;
Excel.Workbook workbook = ExcelApp.Application.Workbooks.Open("C:\\Sample.xlsx");
//Get the first sheet
Excel.Worksheet sheet = (Excel.Worksheet)workbook.Sheets["Sheet1"];
//Sort the specified range
Excel.Range range = sheet.get_Range("A1:A7");
range.Sort(range.Columns[1], Excel.XlSortOrder.xlAscending,
missing, missing, Excel.XlSortOrder.xlAscending,
missing, Excel.XlSortOrder.xlAscending,
Excel.XlYesNoGuess.xlNo, missing, missing,
Excel.XlSortOrientation.xlSortColumns,
Excel.XlSortMethod.xlPinYin,
Excel.XlSortDataOption.xlSortNormal,
Excel.XlSortDataOption.xlSortNormal,
Excel.XlSortDataOption.xlSortNormal);
//Save
workbook.SaveAs("SortedExcel.xlsx");
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
Published in
VSTO
Thursday, 24 August 2017 01:49
Set page break in Excel
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Excel;
namespace VSTO
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
//Open the workbook file
Excel.Application excelApp = Application;
Excel.Workbook workbook = excelApp.Application.Workbooks.Open("C:\\Sample.xlsx");
//Get the active worksheet
Excel.Worksheet sheet = workbook.ActiveSheet;
//Set page break horizontally
Excel.Range range1 = sheet.get_Range("A7");
sheet.HPageBreaks.Add(range1);
//Set page break vertically
Excel.Range range2 = sheet.get_Range("B7");
sheet.VPageBreaks.Add(range2);
//Save the file
workbook.SaveAs("PageBreakExcel.xlsx");
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
Published in
VSTO
Thursday, 24 August 2017 01:46
Set cell style in Excel
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Excel;
using System.Drawing;
using System.Reflection;
namespace VSTO
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
//Open the workbook file
Excel.Workbook workbook = this.Application.Workbooks.Add();
//Get the active sheet
Excel.Worksheet sheet = workbook.ActiveSheet;
//Add style of specified range
Excel.Style style = workbook.Styles.Add("Style");
style.Font.Size = 16;
style.Font.Color = Color.Red;
style.Interior.Color = Color.Black;
style.Interior.Pattern = Excel.XlPattern.xlPatternSolid;
Excel.Range range = sheet.get_Range("A1","A7");
range.Value = "Spire";
range.Style = "Style";
//Save the file
workbook.SaveAs("StyleExcel.xlsx");
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
Published in
VSTO
Thursday, 24 August 2017 01:40
Protect and Unprotect worksheets
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Excel;
using System.Reflection;
namespace VSTO
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
//Add a new workbook
Excel.Workbook excelApp = this.Application.Workbooks.Add();
//Protect the worksheet with password
((Excel.Worksheet)excelApp.ActiveSheet).Protect("Spire");
//Unprotect the worksheet specifying its password
((Excel.Worksheet)excelApp.ActiveSheet).Unprotect("Spire");
//Save the file
excelApp.SaveAs("Result.xlsx");
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
Published in
VSTO
Thursday, 24 August 2017 01:39
Merge cells in Excel
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Excel;
namespace VSTO
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
//Instantiate the Application object
Excel.Application ExcelApp = Application;
//Add a Workbook
Excel.Workbook workbook = ExcelApp.Workbooks.Add();
//Get the First sheet
Excel.Worksheet sheet = (Excel.Worksheet)workbook.Sheets["Sheet1"];
//Merge A1-B5 to one cell
sheet.get_Range("A1", "B5").Merge();
//Save the file
workbook.SaveAs("MergedCells.xlsx");
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
Published in
VSTO
Thursday, 24 August 2017 01:37
Insert hyperlink in Excel
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Excel;
namespace VSTO
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
//Instantiate the Application object
Excel.Application excelApp = Application;
//Add a Workbook
Excel.Workbook workbook = excelApp.Workbooks.Add();
//Get the first sheet
Excel.Worksheet sheet = (Excel.Worksheet)workbook.Sheets["Sheet1"];
//Define a range object(A1)
Excel.Range range = sheet.get_Range("A1", "A1");
//Add a hyperlink
sheet.Hyperlinks.Add(range, "https://www.e-iceblue.com/", Type.Missing, "Click to E-iceblue website", "E-iceblue site");
//Save the file
workbook.SaveAs("ExcelHyperlink.xlsx");
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
Published in
VSTO
Thursday, 24 August 2017 01:35
Insert background image in Excel
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Excel;
namespace VSTO
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
//Instantiate the Application object
Excel.Application ExcelApp = Application;
//Add a workbook
Excel.Workbook workbook = ExcelApp.Workbooks.Add();
//Get the first sheet
Excel.Worksheet sheet = (Excel.Worksheet)workbook.Sheets["Sheet1"];
//Set a background image
sheet.SetBackgroundPicture(@"C:\Users\Administrator\Desktop\image.jpg");
//Save the file
workbook.SaveAs("BackgroundImage.xlsx");
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
Published in
VSTO
Thursday, 24 August 2017 01:33
Create excel chart
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Excel;
namespace VSTO
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
//Instantiate the Application object.
Excel.Application ExcelApp = Application;
//Add a Workbook.
Excel.Workbook objBook = ExcelApp.Workbooks.Add();
//Get the active Worksheet
Microsoft.Office.Interop.Excel.Worksheet nativeWorksheet = Globals.ThisAddIn.Application.ActiveWorkbook.ActiveSheet;
Microsoft.Office.Tools.Excel.Worksheet sheet = Globals.Factory.GetVstoObject(nativeWorksheet);
//Add data for pie chart
sheet.Cells[1, 1] = "Quarter";
sheet.Cells[1, 2] = "Sales";
sheet.Cells[2, 1] = "One";
sheet.Cells[2, 2] = 4000;
sheet.Cells[3, 1] = "Two";
sheet.Cells[3, 2] = 6000;
sheet.Cells[4, 1] = "Three";
sheet.Cells[4, 2] = 10000;
sheet.Cells[5, 1] = "Four";
sheet.Cells[5, 2] = 13000;
//Chart reference
Microsoft.Office.Tools.Excel.Chart chart;
//Add a Pie Chart
chart = sheet.Controls.AddChart(0, 100, 400, 200, "Sales by quarter");
chart.ChartType = Microsoft.Office.Interop.Excel.XlChartType.xl3DPie;
//Set chart title
chart.HasTitle = true;
chart.ChartTitle.Text = "Sales by quarter";
//Set region of chart data
Microsoft.Office.Interop.Excel.Range chartRange = sheet.get_Range("A2", "B5");
chart.SetSourceData(chartRange);
//Get the active workbook
Microsoft.Office.Interop.Excel.Workbook workbook = sheet.Application.ActiveWorkbook;
//Save the file
workbook.SaveAs("3DPieChart.xlsx");
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
Published in
VSTO