Spire.XLS试用手记
生活随笔
收集整理的這篇文章主要介紹了
Spire.XLS试用手记
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Spire.XLS試用手記
下載地址
http://www.e-iceblue.com/downloads/spire.xls_7.6.33.zip
? ? 下載解壓以后,雙擊spire.xls_7.6.33.msi進行安裝;
二 運行Demo
? ? 如下圖。左側(cè)是Demo列表,可以看到Demo例子比較多。
三 運行第一個編輯工作表的例子
new一個工作表,
Workbook workbook = new Workbook();
從模板載入工作表,
workbook.LoadFromFile(@"..\..\..\..\..\..\Data\EditSheetSample.xls");
對單元格賦值,
Worksheet sheet = workbook.Worksheets[0];
sheet.Range["B1"].Text = "Hello,World!";
sheet.Range["B2"].NumberValue = 1234.5678;
sheet.Range["B3"].DateTimeValue = System.DateTime.Now;
sheet.Range["B4"].Formula = "=1111*11111";
保存為需要的xls文件,
workbook.SaveToFile("Sample.xls");
運行結果如下圖;
四 運行一個生成圖表的例子
初始化圖表,
Workbook workbook = new Workbook();
workbook.CreateEmptySheets(1);
Worksheet sheet = workbook.Worksheets[0];
sheet.Name = "Chart data";
調(diào)用createChartData插入圖表數(shù)據(jù),
createChartData(sheet);
設置圖表所占單元格范圍,標題,坐標軸等屬性,
ChartSheet chartsheet = workbook.Charts.Add("chart worksheet");
chartsheet.DataRange = sheet.Range["A1:B5"];
chartsheet.SeriesDataFromRange = false;
chartsheet.ChartTitle = "Sales market by country";
chartsheet.ChartTitleArea.IsBold = true;
chartsheet.ChartTitleArea.Size = 12;
chartsheet.PrimaryCategoryAxis.Title = "Country";
chartsheet.PrimaryCategoryAxis.Font.IsBold = true;
chartsheet.PrimaryCategoryAxis.TitleArea.IsBold = true;
chartsheet.PrimaryValueAxis.Title = "Sales(in Dollars)";
chartsheet.PrimaryValueAxis.HasMajorGridLines = false;
chartsheet.PrimaryValueAxis.TitleArea.TextRotationAngle = 90;
chartsheet.PrimaryValueAxis.MinValue = 1000;
chartsheet.PrimaryValueAxis.TitleArea.IsBold = true;
foreach (Charts.ChartSerie cs in chartsheet.Series)
{
? ? cs.Format.Options.IsVaryColor = true;
? ? cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = true;
}
chartsheet.Legend.Position = LegendPositionType.Top;
workbook.SaveToFile("Sample.xls");
創(chuàng)建圖表數(shù)據(jù),給單元格賦值;
private void CreateChartData(Worksheet sheet)
{
sheet.Range["A1"].Value = "Country";
sheet.Range["A2"].Value = "Cuba";
sheet.Range["A3"].Value = "Mexico";
sheet.Range["A4"].Value = "France";
sheet.Range["A5"].Value = "German";
//Sales
sheet.Range["B1"].Value = "Sales";
sheet.Range["B2"].NumberValue = 6000;
sheet.Range["B3"].NumberValue = 8000;
sheet.Range["B4"].NumberValue = 9000;
sheet.Range["B5"].NumberValue = 8500;
//Style
sheet.Range["A1:B1"].Style.Font.IsBold = true;
sheet.Range["A2:B2"].Style.KnownColor = ExcelColors.LightYellow;
sheet.Range["A3:B3"].Style.KnownColor = ExcelColors.LightGreen1;
sheet.Range["A4:B4"].Style.KnownColor = ExcelColors.LightOrange;
sheet.Range["A5:B5"].Style.KnownColor = ExcelColors.LightTurquoise;
//Border
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeTop].Color = Color.FromArgb(0, 0, 128);
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeTop].LineStyle = LineStyleType.Thin;
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeBottom].Color = Color.FromArgb(0, 0, 128);
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeBottom].LineStyle = LineStyleType.Thin;
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeLeft].Color = Color.FromArgb(0, 0, 128);
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeLeft].LineStyle = LineStyleType.Thin;
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeRight].Color = Color.FromArgb(0, 0, 128);
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeRight].LineStyle = LineStyleType.Thin;
sheet.Range["B2:B5"].Style.NumberFormat = "\"$\"#,##0";
}
運行結果如下圖;
五 做一個數(shù)據(jù)導出的例子
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"..\..\..\..\..\..\Data\DataTableSample.xls");
Worksheet sheet = workbook.Worksheets[0];
this.dataGrid1.DataSource = ?sheet.ExportDataTable();
運行結果如下圖;
比較方便,一條語句可以把excel表格內(nèi)容導入到DataTable中;
六 做一個讀XML的例子
Workbook workbook = new Workbook();
using (FileStream fileStream = File.OpenRead(@"E:\sample.xml"))
{
? ? ? workbook.LoadFromXml(fileStream);
}
workbook.SaveToFile("Sample.xls");
運行結果如下圖;
比較方便,一條語句可以讀取XML文檔到excel表格;
七 做一個插入行的例子
Worksheet worksheet = workbook.Worksheets[0];
worksheet.InsertRow(2);
worksheet.Copy(worksheet.Range["A1:E1"], worksheet.Range["A2:E2"], true);
worksheet.InsertRow(5, 2);
worksheet.Copy(worksheet.Range["A3:E4"], worksheet.Range["A5:E6"], true);
把一個行的內(nèi)容和風格拷貝到另一個行,結果如下;
? ? 這個軟件還是不錯的,操作Excel的功能豐富,編程比較方便,也不太大。
? ? Spire.XLS是一個.Net操作Excel的組件。
下載地址
http://www.e-iceblue.com/downloads/spire.xls_7.6.33.zip
? ? 下載解壓以后,雙擊spire.xls_7.6.33.msi進行安裝;
二 運行Demo
? ? 如下圖。左側(cè)是Demo列表,可以看到Demo例子比較多。
三 運行第一個編輯工作表的例子
new一個工作表,
Workbook workbook = new Workbook();
從模板載入工作表,
workbook.LoadFromFile(@"..\..\..\..\..\..\Data\EditSheetSample.xls");
對單元格賦值,
Worksheet sheet = workbook.Worksheets[0];
sheet.Range["B1"].Text = "Hello,World!";
sheet.Range["B2"].NumberValue = 1234.5678;
sheet.Range["B3"].DateTimeValue = System.DateTime.Now;
sheet.Range["B4"].Formula = "=1111*11111";
保存為需要的xls文件,
workbook.SaveToFile("Sample.xls");
運行結果如下圖;
四 運行一個生成圖表的例子
初始化圖表,
Workbook workbook = new Workbook();
workbook.CreateEmptySheets(1);
Worksheet sheet = workbook.Worksheets[0];
sheet.Name = "Chart data";
調(diào)用createChartData插入圖表數(shù)據(jù),
createChartData(sheet);
設置圖表所占單元格范圍,標題,坐標軸等屬性,
ChartSheet chartsheet = workbook.Charts.Add("chart worksheet");
chartsheet.DataRange = sheet.Range["A1:B5"];
chartsheet.SeriesDataFromRange = false;
chartsheet.ChartTitle = "Sales market by country";
chartsheet.ChartTitleArea.IsBold = true;
chartsheet.ChartTitleArea.Size = 12;
chartsheet.PrimaryCategoryAxis.Title = "Country";
chartsheet.PrimaryCategoryAxis.Font.IsBold = true;
chartsheet.PrimaryCategoryAxis.TitleArea.IsBold = true;
chartsheet.PrimaryValueAxis.Title = "Sales(in Dollars)";
chartsheet.PrimaryValueAxis.HasMajorGridLines = false;
chartsheet.PrimaryValueAxis.TitleArea.TextRotationAngle = 90;
chartsheet.PrimaryValueAxis.MinValue = 1000;
chartsheet.PrimaryValueAxis.TitleArea.IsBold = true;
foreach (Charts.ChartSerie cs in chartsheet.Series)
{
? ? cs.Format.Options.IsVaryColor = true;
? ? cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = true;
}
chartsheet.Legend.Position = LegendPositionType.Top;
workbook.SaveToFile("Sample.xls");
創(chuàng)建圖表數(shù)據(jù),給單元格賦值;
private void CreateChartData(Worksheet sheet)
{
sheet.Range["A1"].Value = "Country";
sheet.Range["A2"].Value = "Cuba";
sheet.Range["A3"].Value = "Mexico";
sheet.Range["A4"].Value = "France";
sheet.Range["A5"].Value = "German";
//Sales
sheet.Range["B1"].Value = "Sales";
sheet.Range["B2"].NumberValue = 6000;
sheet.Range["B3"].NumberValue = 8000;
sheet.Range["B4"].NumberValue = 9000;
sheet.Range["B5"].NumberValue = 8500;
//Style
sheet.Range["A1:B1"].Style.Font.IsBold = true;
sheet.Range["A2:B2"].Style.KnownColor = ExcelColors.LightYellow;
sheet.Range["A3:B3"].Style.KnownColor = ExcelColors.LightGreen1;
sheet.Range["A4:B4"].Style.KnownColor = ExcelColors.LightOrange;
sheet.Range["A5:B5"].Style.KnownColor = ExcelColors.LightTurquoise;
//Border
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeTop].Color = Color.FromArgb(0, 0, 128);
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeTop].LineStyle = LineStyleType.Thin;
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeBottom].Color = Color.FromArgb(0, 0, 128);
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeBottom].LineStyle = LineStyleType.Thin;
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeLeft].Color = Color.FromArgb(0, 0, 128);
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeLeft].LineStyle = LineStyleType.Thin;
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeRight].Color = Color.FromArgb(0, 0, 128);
sheet.Range["A1:B5"].Style.Borders[BordersLineType.EdgeRight].LineStyle = LineStyleType.Thin;
sheet.Range["B2:B5"].Style.NumberFormat = "\"$\"#,##0";
}
運行結果如下圖;
五 做一個數(shù)據(jù)導出的例子
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"..\..\..\..\..\..\Data\DataTableSample.xls");
Worksheet sheet = workbook.Worksheets[0];
this.dataGrid1.DataSource = ?sheet.ExportDataTable();
運行結果如下圖;
比較方便,一條語句可以把excel表格內(nèi)容導入到DataTable中;
六 做一個讀XML的例子
Workbook workbook = new Workbook();
using (FileStream fileStream = File.OpenRead(@"E:\sample.xml"))
{
? ? ? workbook.LoadFromXml(fileStream);
}
workbook.SaveToFile("Sample.xls");
運行結果如下圖;
比較方便,一條語句可以讀取XML文檔到excel表格;
七 做一個插入行的例子
Worksheet worksheet = workbook.Worksheets[0];
worksheet.InsertRow(2);
worksheet.Copy(worksheet.Range["A1:E1"], worksheet.Range["A2:E2"], true);
worksheet.InsertRow(5, 2);
worksheet.Copy(worksheet.Range["A3:E4"], worksheet.Range["A5:E6"], true);
把一個行的內(nèi)容和風格拷貝到另一個行,結果如下;
? ? 這個軟件還是不錯的,操作Excel的功能豐富,編程比較方便,也不太大。
總結
以上是生活随笔為你收集整理的Spire.XLS试用手记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用C#实现计算机图形学算法
- 下一篇: 图解用Wireshark进行Http协议