工作时间看股票:采用Excel RTD技术获取和讯网的实时股票行情及深沪港最新指数

本文地址:http://www.cnblogs.com/Charltsing/p/RTD.html

QQ:564955427

在Excel里面获取实时数据大概有几种方式:
1、定时器+函数
2、DDE
3、RTD

第一种方法会造成Excel在更新数据时无法操作,在插件里面也可能会发生Com error,究其原因是因为Excel是STA进程,不能在忙的时候操作它。
第二种的DDE是一种动态数据交换机制(Dynamic Data Exchange,DDE)。使用DDE通讯需要两个Windows应用程序,其中一个作为服务器处理信息,另外一个作为客户机从服务器获得信息。DDE的稳定性和效率都存在问题。目前微软不推荐在Excel里面使用此技术。

第三种:
从Excel 2002开始,微软提供了一种叫做Excel RTD(real-time data)的技术,使用该技术可以在Excel中实时查看和更新数据。RTD采用所谓的“推-拉”相结合的技术,使得其在实时获取和更新不断变化的数据(例如股票、汇率、天气)的性能方面,相比较之前的DDE更加稳健和快速。

由此可见,RTD是专门为了在Excel中能够实时刷新数据而设计的,主要好处是:实时,稳定,效率高。

这几天有空,我就写了一个实时刷新和讯网实时行情数据的加载项,做成XLL格式,方便调用。

使用方法:根据你的Office是32位还是64位,双击HeXunRTDtool.xll或者HeXunRTDtool64.xll,加载RTD服务器。
              然后在工作表里面写入函数 =RTDTimer(参数1,参数2),参数1是股票号码或者指数名称,参数2是想看的数据字段,例如“成交量”,“成交额”,“最新价”等等,具体见文档说明。

公式写好之后,只要和讯网实时行情有更新,就可以在Excel里面实时看到变化。(新手请注意打开Excel宏安全性,以免插件无法加载)

注意事项:本插件在.net 4.0下开发,请自行安装.NET Framework 4.0安装包。
              如果有杀毒软件报警,请无视或删除本插件。

欢迎测试并提出建议: 插件下载 v1.22 ,2016.10.28 released,增加自动加载插件的功能,修正获取Excel宿主问题。

 

使用说明:

 

演示动画:

 从演示中可以看到RTD技术不会影响Excel的正常使用。

 

本文地址:http://www.cnblogs.com/Charltsing/p/RTD.html

QQ:564955427

posted @ 2016-10-17 10:46  Charltsing  阅读(7398)  评论(6编辑  收藏  举报