我在使用 Excel 2007 和 SQL Server 2008 R2 时遇到了很多麻烦。
我需要在两个或多个工作簿之间共享数据,并且我想通过远程服务器上的 SQL 数据库(放置在 SQL Server 2008 R2 中)来完成此操作。我将 VBA 与 ADO 和 SQL Server Native Client OLE DB 提供程序一起用作数据访问提供程序。当一个客户端将数据从 Excel 上传到数据库时,我希望 SQL Server 2008 R2 向其他工作簿发出关于数据库已更改的信号,我的问题是如何做到这一点?我可以在 VBA 中做到这一点吗?
我已经想出了如何在 SQL Server 2008 R2 中使用事件通知,但我的问题还是如何通知 Excel,而无需运行每隔 30 秒左右查询 Service Broker 队列中的消息的宏。我知道 Excel 2007 不支持多线程,并且由于我还需要 Excel 来运行其他宏,所以每 30 秒运行一次这些检查并不是解决方案。