我的任务是使用RtdServer在C#中编写实时Excel自动化加载项.我非常依赖Stack Overflow中遇到的知识.我决定表达我的感谢,写下如何记录所有我学到的东西.Kenny Kerr的Excel RTD服务器:最小的C#实现文章帮助我入门.我发现Mike Rosenblum和Govert的评论特别有帮助.
通过将值更改为,我已经在Excel 2010(32位)中启动并运行了excelRTDserver.py.我可以在加载项列表中看到服务器,如果我进入单元格,我会得到当前时间.但它永远不会更新.如果我将"5"更改为另一个数字,我会得到更新但在初始更改后它永远不会再次更改.EXCEL_TLB_MINOR7=RTD("Python.RTD.TimeServer","","seconds","5")
如何更新它?我在这里发现了其他有类似问题的人,但没有解决方案.
更新:我还有一点 - 在将PyIDispatch回调对象转换为IRTDUpdateEvent回调对象时,ServerStart中引发了异常.使用此方法捕获错误消息,我得到"当该文件已存在时无法创建文件.".如果我按照这里的建议并使用win32com.client.CastTo(CallbackObject,'IRTDUpdateEvent')我得到"这个COM对象不能自动化makepy进程 - 请为此对象手动运行makepy",但我已经运行了makepy for Microsoft Excel 12.0 Object Library(1.6).
任何帮助将不胜感激.
我是arduino编程的新手.几乎没有经验.
我希望对我的arduino Uno板进行编程,以读取PT100 RTD传感器的2/3/4线配置(精度等级至少为0.5°C).温度范围为0至400°C和-50至100°C.
由于我对这个领域完全陌生,我会欣赏有关电路,图像和代码的相当描述性的信息.
我已经对这个问题进行了很多研究,但是无法解决我的问题.
此外,我不能使用热敏电阻或任何IC来读取温度,因为安装RTD的机器具有PID,但我想创建一个可以在计算机上获取温度的数据记录器.
我想用C++编写一个excel RTD服务器,但除了这个http://weblogs.asp.net/kennykerr/archive/2008/12/02/Rtd5之外,还没有找到任何运气查找和完成如何操作的教程.aspx.
但是,由于我对这些东西不熟悉,我认为我需要更完整的东西.你们中的任何人都可以指向C++示例的方向吗?
谢谢
编辑:对于那些感兴趣的人,我发现了这个:http://www.codeproject.com/Articles/245265/Guide-to-Writing-Custom-Functions-in-Excel-Part-II.aspx
我在C#中为Excel创建了一个RTD服务器,它不断地使用数据更新单元格,并且需要使用多个Excel实例.问题是如果我在多个Excel实例中具有相同的RTD公式并且我在其中一个Excel实例中删除了公式,它会调用RTD服务器中的DisconnectData方法,因此Excel的其他实例中的相同公式会停止更新即使他们仍然应该更新.
在C#中是否有一种方法可以强制每个Excel实例拥有自己的RTD服务器,或者RTD服务器是否有办法正确识别Excel的多个实例并在调用之前检查是否已从所有excel工作簿中删除了所有公式实例我的RTD服务器中的DisconnectDatamethod.
我有一个Excel自动化加载项,由我的安装程序在COM注册.通过注册COM,我的加载项出现在(对于Excel 2007)Excel选项>加载项>管理Excel加载项转到...>自动化列表中.用户仍必须导航到上面的对话框并选择我的加载项才能启用它.
在向COM注册类型后,是否可以(通过注册表项)在我的安装程序类(或在VBA中)以编程方式启用我的自动机加载项?
提前谢谢 - 弗兰克
我一直在寻找,并找不到RTD CLIENT的任何示例(尽管许多RTD服务器示例).
我的目标是将数据从RTD服务器"拉"到我的应用程序中以进行算法交易.
如果可能的话,不使用C#/ .Net,因为我正在寻找一种轻量级,可部署的解决方案.
你能给我一些提示吗?
我在 Excel 中有 RTD 服务器,它从 thinkorswim 应用程序中提取数据。我想将数据拉入 C#。我的编程经验有限,因此阅读了多个有关 C# 中 RTD 服务器实现的教程,但其中大多数对我来说是两个高级教程。所以我想知道是否有人可以推荐一些介绍性阅读材料。这是我尝试实现的示例代码:
http://awkwardcoder.com/2014/01/24/excel-rtd-client-in-c/
我将它复制并粘贴到 Visual Studio (VS) 中并调用了类 RtdClient.cs。VS 立即突出显示以下行:
ComImport, TypeLibType((short)0x1040)
MarshalAs
MethodImpl
Run Code Online (Sandbox Code Playgroud)
并写入找不到类型和命名空间。
我是否缺少任何参考资料?我添加了对 COM 类型 Tos.RTD 的引用,但没有帮助。
同样在注册表中,我找到了带有 Tos.RTD 和 CLSID 的文件夹。我假设 CSLID 指向 COM 类型?
在 VS Tos.RTD 中有几个接口。在上面的链接中,我没有看到这些接口的方法的实现。怎么了?
我还通过反射阅读了以下RTD我知道第二个链接依赖于反射。这两种方法的优点/缺点是什么?哪一个在概念上更有意义?
正如你所看到的那样,我迷路了,所以任何建议将不胜感激。