Spire.XLS试用手记
生活随笔
收集整理的這篇文章主要介紹了
Spire.XLS试用手记
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Spire.XLS試用手記
下載地址
http://www.e-iceblue.com/downloads/spire.xls_7.6.33.zip
? ? 下載解壓以后,雙擊spire.xls_7.6.33.msi進(jìn)行安裝;
二 運(yùn)行Demo
? ? 如下圖。左側(cè)是Demo列表,可以看到Demo例子比較多。
三 運(yùn)行第一個(gè)編輯工作表的例子
new一個(gè)工作表,
Workbook workbook = new Workbook();
從模板載入工作表,
workbook.LoadFromFile(@"..\..\..\..\..\..\Data\EditSheetSample.xls");
對(duì)單元格賦值,
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");
運(yùn)行結(jié)果如下圖;
四 運(yùn)行一個(gè)生成圖表的例子
初始化圖表,
Workbook workbook = new Workbook();
workbook.CreateEmptySheets(1);
Worksheet sheet = workbook.Worksheets[0];
sheet.Name = "Chart data";
調(diào)用createChartData插入圖表數(shù)據(jù),
createChartData(sheet);
設(shè)置圖表所占單元格范圍,標(biāo)題,坐標(biāo)軸等屬性,
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";
}
運(yùn)行結(jié)果如下圖;
五 做一個(gè)數(shù)據(jù)導(dǎo)出的例子
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"..\..\..\..\..\..\Data\DataTableSample.xls");
Worksheet sheet = workbook.Worksheets[0];
this.dataGrid1.DataSource = ?sheet.ExportDataTable();
運(yùn)行結(jié)果如下圖;
比較方便,一條語(yǔ)句可以把excel表格內(nèi)容導(dǎo)入到DataTable中;
六 做一個(gè)讀XML的例子
Workbook workbook = new Workbook();
using (FileStream fileStream = File.OpenRead(@"E:\sample.xml"))
{
? ? ? workbook.LoadFromXml(fileStream);
}
workbook.SaveToFile("Sample.xls");
運(yùn)行結(jié)果如下圖;
比較方便,一條語(yǔ)句可以讀取XML文檔到excel表格;
七 做一個(gè)插入行的例子
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);
把一個(gè)行的內(nèi)容和風(fēng)格拷貝到另一個(gè)行,結(jié)果如下;
? ? 這個(gè)軟件還是不錯(cuò)的,操作Excel的功能豐富,編程比較方便,也不太大。
? ? Spire.XLS是一個(gè).Net操作Excel的組件。
下載地址
http://www.e-iceblue.com/downloads/spire.xls_7.6.33.zip
? ? 下載解壓以后,雙擊spire.xls_7.6.33.msi進(jìn)行安裝;
二 運(yùn)行Demo
? ? 如下圖。左側(cè)是Demo列表,可以看到Demo例子比較多。
三 運(yùn)行第一個(gè)編輯工作表的例子
new一個(gè)工作表,
Workbook workbook = new Workbook();
從模板載入工作表,
workbook.LoadFromFile(@"..\..\..\..\..\..\Data\EditSheetSample.xls");
對(duì)單元格賦值,
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");
運(yùn)行結(jié)果如下圖;
四 運(yùn)行一個(gè)生成圖表的例子
初始化圖表,
Workbook workbook = new Workbook();
workbook.CreateEmptySheets(1);
Worksheet sheet = workbook.Worksheets[0];
sheet.Name = "Chart data";
調(diào)用createChartData插入圖表數(shù)據(jù),
createChartData(sheet);
設(shè)置圖表所占單元格范圍,標(biāo)題,坐標(biāo)軸等屬性,
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";
}
運(yùn)行結(jié)果如下圖;
五 做一個(gè)數(shù)據(jù)導(dǎo)出的例子
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"..\..\..\..\..\..\Data\DataTableSample.xls");
Worksheet sheet = workbook.Worksheets[0];
this.dataGrid1.DataSource = ?sheet.ExportDataTable();
運(yùn)行結(jié)果如下圖;
比較方便,一條語(yǔ)句可以把excel表格內(nèi)容導(dǎo)入到DataTable中;
六 做一個(gè)讀XML的例子
Workbook workbook = new Workbook();
using (FileStream fileStream = File.OpenRead(@"E:\sample.xml"))
{
? ? ? workbook.LoadFromXml(fileStream);
}
workbook.SaveToFile("Sample.xls");
運(yùn)行結(jié)果如下圖;
比較方便,一條語(yǔ)句可以讀取XML文檔到excel表格;
七 做一個(gè)插入行的例子
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);
把一個(gè)行的內(nèi)容和風(fēng)格拷貝到另一個(gè)行,結(jié)果如下;
? ? 這個(gè)軟件還是不錯(cuò)的,操作Excel的功能豐富,編程比較方便,也不太大。
總結(jié)
以上是生活随笔為你收集整理的Spire.XLS试用手记的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 用C#实现计算机图形学算法
- 下一篇: 图解用Wireshark进行Http协议