我知道DDE是过时的过时技术。但是我正在创建一个C#Windows窗体应用程序,以将数据发送到Excel文件以进行研究。我使用Win32 DDE函数,下面是到目前为止我尝试过的功能。
Pinvoke签名:
browser.executeScript("document.getElementById('download').click()");
DdeConnect返回非零值,表示连接成功。
我的问题:
如何将字符串值发送到Excel工作表?例如,我想将“名称”发送到excel单元格A1。我应该为任务使用哪个DDE功能?
答案 0 :(得分:0)
您正在尝试使用DDEML,确实很难找到合适的DDEML示例,因为实际上需要使用DDE的许多人都是直接使用原始Windows消息来这样做的。 您将必须首先使用 DdeClientTransaction 启动客户端事务,然后使用相应的api(例如DdeGetData或DdeAddData,DdeAccessData等)来访问或获取数据。 您可以在MS文档here中找到有关DDEML的更多详细信息。
但是,由于您已经在使用C#,因此我强烈建议您仅在COM程序集部分中添加对Microsoft Excel或Office对象库的引用,并使用Microsoft.Office.Interop.Excel;
using Microsoft.Office.Interop.Excel;
Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();