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 那样直接支持对图表数据的详细操作。

相关推荐
曹牧2 天前
Excel:筛选两列中不匹配项
excel
それども2 天前
Excel文件解析 - 什么是SAX和DOM
java·excel
それども2 天前
Excel文件解析 - SAX和DOM方式的区别
java·前端·excel
それども2 天前
Excel文件解析 - SAX startRow cell endRow 执行顺序
java·前端·excel
梦因you而美2 天前
Python win32com操作Excel:彻底禁用链接更新及各类弹窗(实测有效)
python·excel·win32com·禁用链接更新·excel弹框
それども2 天前
Excel文件解析 - SAX startRow cell endRow 执行时机
java·excel
HWL56792 天前
在网页中实现WebM格式视频自动循环播放
前端·css·html·excel·音视频
开开心心就好3 天前
图片校正漂白工具永久免费,矫正实时预览
网络·人工智能·windows·计算机视觉·计算机外设·电脑·excel
开开心心_Every3 天前
音频视频转文字工具,离线语音识别免费
人工智能·游戏·微信·pdf·excel·语音识别·memcache
开开心心_Every3 天前
电脑网速加速工具,无线有线叠加网络
网络·游戏·微信·pdf·电脑·excel·语音识别