C# 操作 Excel 创建不同工作表,生成不同数据和图表类型并复制代码
以下是示例代码,可以创建3个工作表,每个工作表生成不同的数据和图表类型,并将代码复制到剪贴板。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Excel = Microsoft.Office.Interop.Excel;
using System.Windows.Forms;
namespace ExcelDemo
{
class Program
{
static void Main(string[] args)
{
//创建Excel对象
Excel.Application excel = new Excel.Application();
excel.Visible = true;
Excel.Workbook workbook = excel.Workbooks.Add();
Excel.Worksheet worksheet1 = (Excel.Worksheet)workbook.Worksheets.Add();
Excel.Worksheet worksheet2 = (Excel.Worksheet)workbook.Worksheets.Add();
Excel.Worksheet worksheet3 = (Excel.Worksheet)workbook.Worksheets.Add();
//在第一个工作表中生成数据和图表
worksheet1.Name = '数据表';
Excel.Range range1 = worksheet1.Range['A1', 'B5'];
range1.Value = new object[,] { {'姓名', '成绩'},
{'张三', 80},
{'李四', 90},
{'王五', 70},
{'赵六', 85} };
Excel.ChartObjects chartObjects1 = (Excel.ChartObjects)worksheet1.ChartObjects();
Excel.ChartObject chartObject1 = chartObjects1.Add(50, 50, 300, 200);
Excel.Chart chart1 = chartObject1.Chart;
chart1.SetSourceData(range1);
chart1.ChartType = Excel.XlChartType.xlColumnClustered;
//在第二个工作表中生成数据和图表
worksheet2.Name = '饼图';
Excel.Range range2 = worksheet2.Range['A1', 'B4'];
range2.Value = new object[,] { {'部门', '销售额'},
{'部门1', 500},
{'部门2', 800},
{'部门3', 600} };
Excel.ChartObjects chartObjects2 = (Excel.ChartObjects)worksheet2.ChartObjects();
Excel.ChartObject chartObject2 = chartObjects2.Add(50, 50, 300, 200);
Excel.Chart chart2 = chartObject2.Chart;
chart2.SetSourceData(range2);
chart2.ChartType = Excel.XlChartType.xlPie;
//在第三个工作表中生成数据和图表
worksheet3.Name = '折线图';
Excel.Range range3 = worksheet3.Range['A1', 'C6'];
range3.Value = new object[,] { {'日期', '销售额', '利润'},
{'1月', 500, 100},
{'2月', 800, 200},
{'3月', 600, 120},
{'4月', 900, 180},
{'5月', 700, 140} };
Excel.ChartObjects chartObjects3 = (Excel.ChartObjects)worksheet3.ChartObjects();
Excel.ChartObject chartObject3 = chartObjects3.Add(50, 50, 300, 200);
Excel.Chart chart3 = chartObject3.Chart;
chart3.SetSourceData(range3);
chart3.ChartType = Excel.XlChartType.xlLine;
//复制代码到剪贴板
StringBuilder sb = new StringBuilder();
sb.AppendLine('/* 代码生成 */');
sb.AppendLine('Excel.Application excel = new Excel.Application();');
sb.AppendLine('excel.Visible = true;');
sb.AppendLine('Excel.Workbook workbook = excel.Workbooks.Add();');
sb.AppendLine('Excel.Worksheet worksheet1 = (Excel.Worksheet)workbook.Worksheets.Add();');
sb.AppendLine('Excel.Worksheet worksheet2 = (Excel.Worksheet)workbook.Worksheets.Add();');
sb.AppendLine('Excel.Worksheet worksheet3 = (Excel.Worksheet)workbook.Worksheets.Add();');
sb.AppendLine('//在第一个工作表中生成数据和图表');
sb.AppendLine('//...');
sb.AppendLine('//在第二个工作表中生成数据和图表');
sb.AppendLine('//...');
sb.AppendLine('//在第三个工作表中生成数据和图表');
sb.AppendLine('//...');
Clipboard.SetText(sb.ToString());
Console.WriteLine('代码已复制到剪贴板。');
Console.ReadKey();
}
}
}
使用方法:
- 确保已安装 Microsoft.Office.Interop.Excel 库,并添加引用。
- 将以上代码复制到您的项目中,并运行。
- 代码将创建一个 Excel 文件,并生成三个工作表,每个工作表包含不同的数据和图表类型。
- 代码还将生成的代码复制到您的剪贴板,方便您直接使用。
注意:
- 此代码需要安装 Microsoft Office Excel 软件才能运行。
- 代码生成的图表仅为示例,您可以根据自己的需要进行修改。
更多信息:
原文地址: https://www.cveoy.top/t/topic/oLi5 著作权归作者所有。请勿转载和采集!