将命令从excel文件发送到c#程序

时间:2011-04-04 15:00:24

标签: c# excel

我有一个从Excel读取数据并将数据写入Excel文件的程序。我需要将命令从Excel文件发送到c#程序(例如从excel中捕获F9并在c#程序中获取它)

我正在使用Microsoft.Office.Interop.Excel框架。

我该怎么做?>

3 个答案:

答案 0 :(得分:1)

excel应用程序界面还为某些excel函数提供事件,例如

Microsoft.Office.Interop.Excel.Application:

    //
    // Summary:
    //     Occurs after any worksheet is recalculated or after any changed data is plotted
    //     on a chart.
    event AppEvents_SheetCalculateEventHandler SheetCalculate;

答案 1 :(得分:0)

您可能必须调用本机Win32方法来添加一个消息钩子,在Excel窗口中查找字符消息。

答案 2 :(得分:0)

oferyo,

您好。您没有提到需要处理的数据量大小?或类型,(问题如下:'发送'到目标Excel文件的内容是否包括图形或仅包含数据?)。

您没有提到您正在使用哪个版本的C#,但您可以考虑从嵌入或添加到原始Excel电子表格的VBA脚本中调用Web服务?

MSDN article on calling WebServices from within VBA

我不记得如何将VBA代码转换为Excel电子表格中的特定事件(如重新计算/按F9),但我认为这应该是微不足道的。

如果您使用的是C#3.5或更高版本,则可以在应用程序中托管WCF服务...但我建议您更好地描述问题,因为它可能是VBA-> WCF / WebService->应用程序解决方案可能是严重过度设计?

希望这有助于您考虑VBA中的选项......

的问候,

Aidanapword