使用DDE将图像添加到Excel工作表

时间:2012-02-17 13:45:48

标签: delphi dde

我正在开发一个Delphi项目,我需要将值导出到Excel工作表。 我的项目支持两种实现方法: 1)使用管理工作表创建的thied party dll 2)使用内置的dde,并执行命令。

两种方式都很好用,但现在我想添加对excel工作表导出图像的支持。使用第一种方式,这很容易实现。

我的问题是如何使用DDE命令将图像添加到Excel工作表?还将赞赏所有支持的dde命令的完整列表。我来this,但它似乎没有解决我的问题......

3 个答案:

答案 0 :(得分:4)

找出与Excel通信的正确语法可能是一个真正的痛苦或不可能。我从来没有找到关于如何从Delphi完成它的完整文档。我通常最终会进行大量的试验和错误测试,添加和删除括号和方括号等。对于格式错误的语法来说,Excel的错误消息毫无价值。

我建议你考虑一种混合方法,你可以使用Delphi在Excel中启动宏,之前在必要时将参数戳入隐藏的(xlVeryHidden)工作表。然后,您可以在VBA中执行所有操作,从而打开一个示例代码和支持的世界(例如,MrExcel.com论坛是一个很好的帮助来源。)

你知道Deborah Pate的网站,没有:http://www.djpate.freeserve.co.uk/AutoExcl.htm

答案 1 :(得分:0)

你不能只使用DDE。

我认为正确的方法不是DDE而是OLE自动化(COM IDispatch接口)。 DDE仅用于通过其三个主要的读/写/执行命令将应用程序链接到另一个应用程序,因此功能比OLE自动化更受限制。您可以成为DDE客户端,并且可以连接到Excel。 Excel可以是DDE服务器或DDE客户端。在这种情况下,您可以使用Excel并使用DDE轻松编写文本。

但是,我不相信您可以将位图图像信息放入DDE写入,但您可以编写文本,数字和公式。我在Excel和Delphi中大量使用DDE,并且从未见过有任何迹象表明它是可能的。 DDE有三个基本操作:

  • 偷看(阅读)

  • 戳(写)

  • 执行(呼叫功能)

如果你曾经问过如何使用OLE自动化,这将是另一回事,并且使用Delphi会相对简单,因为Delphi支持COM和OLE Automation流畅。

罗伯特弗兰克的回答似乎也很好。您可以使用VBA宏并从DDE Execute调用它们,但是我的能力超出了建议的范围。

答案 2 :(得分:-1)

在我的情况下,它使用以下命令:

{{1}}