logo Spire.XLS 系列教程 我也要发布文档

教程:在Excel 中插入 OLE 对象


Spire.XLS for .NET 是一款专业的 .NET Excel 组件, 它可以用在各种.NET 框架中,包括 .NET Core、ASP.NET 和 Windows Forms 等相关的.NET 应用程序。在Excel表格中图片也是我们经常会使用到的工具,这时我们如何使用Spire.XLS来完成呢?这就是本系列教程将给大家详细讲解的。

下载Spire.XLS最新版体验

11月优惠进行时,消费满额即享折上豪礼,想买Spire.Doc的朋友赶快咨询在线客服吧!

推荐阅读:【想要快速完成文档格式转换吗?Spire系列组件格式转换完整攻略来啦!】


在Excel 中插入 OLE 对象

OLE(Object Linking and Embedding)是一种面向对象的技术,利用这一技术,可以使一个程序中创建的内容在另一个程序中可用,例如,将Word文档和PowerPoint幻灯片作为OLE对象插入到Excel工作表。实现这个功能需要下载Spire.Office并将相应的dll文件添加到应用程序中。本文将详细介绍如何使用Spire.Xls将Word文档作为OLE对象插入到Excel工作表。

定义一个GetDocImage(string docxFile) 方法获取图片,这里的图片是原始Word文档中的数据信息图像,将OLE对象插入到Excel工作表后,这个图像将显示在Excel工作表中。

private static Image GetDocImage(string docxFile)
{
//加载Word文档
Document document = new Document();
document.LoadFromFile(docxFile);

//将Word文档的第一页保存为图片
Image olePicture=document.SaveToImages(0, Spire.Doc.Documents.ImageType.Bitmap);
     return olePicture;
 }

调用上个步骤获取的图像,将Word文档作为OLE对象插入到Excel工作表中。

static void Main(string[] args)
{
//加载Excel文档
Workbook workbook = new Workbook();
workbook.LoadFromFile("d:\\Excel示例.xlsx");

//获取第一张工作表
Worksheet ws = workbook.Worksheets[0];

//插入OLE对象
string docx = "d:\\Word示例.docx";
Image image = GetDocImage(docx);
IOleObject oleObject = ws.OleObjects.Add(docx, image, OleLinkType.Embed);
oleObject.Location = ws.Range["B4"];
oleObject.ObjectType = OleObjectType.WordDocument;

//保存文档
workbook.SaveToFile("OLE文档.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("OLE文档.xlsx");
}

Insert-OLE-Object-in-Excel.png