vato 在 Word 文档中使用 C# 嵌入 Excel 图表

如果你想在 Word 文档中使用 C# 嵌入 Excel 图表,你可以通过以下步骤实现:

  1. 创建并配置 Excel 图表:
cs 复制代码
   using Excel = Microsoft.Office.Interop.Excel;
   
   // 创建 Excel 应用程序
   Excel.Application excelApp = new Excel.Application();
   excelApp.Visible = true; // 用于调试时显示 Excel 应用程序
   
   // 添加新工作簿
   Excel.Workbook workbook = excelApp.Workbooks.Add();
   Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets[1];
   
   // 添加一些样本数据
   worksheet.Cells[1, 1].Value = "类别";
   worksheet.Cells[1, 2].Value = "数值 1";
   worksheet.Cells[1, 3].Value = "数值 2";
   
   worksheet.Cells[2, 1].Value = "A";
   worksheet.Cells[2, 2].Value = 10;
   worksheet.Cells[2, 3].Value = 20;
   
   worksheet.Cells[3, 1].Value = "B";
   worksheet.Cells[3, 2].Value = 15;
   worksheet.Cells[3, 3].Value = 25;
   
   // 添加图表
   Excel.ChartObjects chartObjects = (Excel.ChartObjects)worksheet.ChartObjects();
   Excel.ChartObject chartObject = chartObjects.Add(100, 100, 300, 200);
   Excel.Chart chart = chartObject.Chart;
   
   // 设置图表数据范围
   Excel.Range chartDataRange = worksheet.Range["A1:C3"];
   chart.SetSourceData(chartDataRange);
  1. 将 Excel 图表嵌入到 Word 文档:
cs 复制代码
 using Word = Microsoft.Office.Interop.Word;
   using System.Runtime.InteropServices;
   
   // 创建 Word 应用程序
   Word.Application wordApp = new Word.Application();
   wordApp.Visible = true; // 用于调试时显示 Word 应用程序
   
   // 添加新文档
   Word.Document doc = wordApp.Documents.Add();
   Word.Range rng = doc.Range();
   
   // 复制 Excel 图表
   chart.ChartArea.Copy();
   
   // 将图表粘贴到 Word 文档
   rng.PasteExcelTable(false, false, false);
   
   // 清理 Excel
   excelApp.Quit();
   
   // 清理 Word
   Marshal.ReleaseComObject(rng);
   Marshal.ReleaseComObject(doc);
   Marshal.ReleaseComObject(wordApp);

请确保你的项目中引用了 Microsoft Word 和 Microsoft Excel 主互操作程序集(PIAs)。此外,使用 `Marshal.ReleaseComObject` 适当地处理 COM 对象的清理,以避免内存泄漏。

这个例子创建了一个 Excel 图表,然后将其复制并粘贴到 Word 文档中。在 Word 中,对图表的进一步操作可能会受到限制,因为 Word 不像 Excel 那样直接支持对图表数据的详细操作。

相关推荐
技术小甜甜1 小时前
【Copilot】能选 Claude 和 GPT-6 了,Excel 分析该交给谁
gpt·excel·copilot·claude·microsoft365·gpt-6
小白今天也很酷1 天前
MCXN947更新板载DAP_Link固件的方法
c语言·python·单片机·ubuntu·excel·1024程序员节
ratel️2 天前
小墨析 · Office Agent 日常办公不烧心
python·langchain·word·excel·fastapi·js·ppt
Logic1012 天前
没有TextSplit函数的老版本也能拆分单元格的内容
excel·拆分数据·excel技巧·数据拆分·拆分单元格·textsplit·旧版excel
2601_967987372 天前
你们都用Python实现了哪些自动化办公?
python·excel·自动化办公·1024程序员节·学习资料·跨平台操作
城数派2 天前
1901-2025年中国省/市/县三级逐月平均气温数据Excel+Shp格式
excel
gtstore3 天前
从 Excel 迁移到仓库管理系统的数据准备与切换方案
excel·数据迁移·仓库管理系统·进销存·信息化实施
ms365copilot3 天前
我不再自己做 Word、Excel 和 PPT 了,我让 Copilot 直接帮我创建 (1)
word·powerpoint·excel·copilot
cspttty4 天前
2027采购岗求职:大数据管理与应用专业如何把Excel、SQL变成业务能力
excel
ms365copilot4 天前
Excel Copilot 一键定位修改的内容
excel·copilot