Excel VBA挂在DDEInitiate()上

问题描述 投票:1回答:1

我在VBA中具有以下代码以连接到Bloomberg终端:

Dim Blp As Long
Blp = DDEInitiate("Winblp", "bbk")

Call DDEExecute(Blp, "<Blp-1>" & "NAPMPMI" & "<INDEX>" & " DES<GO>")

Call DDETerminate(Blp)

每次Excel都冻结在DDEInitiate()部分上,并且仅在我重新启动计算机或注销并重新登录后才起作用。

我尝试了以下操作,他们无法解决此问题:

1)。关闭一些Excel和COM加载项。我发现DDEInitiate工作时和停止工作时激活的加载项是相同的。因此,似乎不是阻止DDEInitiate运行的Excel / COM加载项。

2)。通过执行以下操作杀死代码开头的所有通道:

Dim i, ChannelNumber As Integer
For i = 1 To 1000
    Application.DDETerminate (i) ' Closes all DDE links whose channels might be open
Next i

我还能尝试什么,DDE是否有其他替代方法可以将类似的命令发送给Bloomberg?

excel vba bloomberg dde
1个回答
0
投票

您找到解决方法了吗?

© www.soinside.com 2019 - 2024. All rights reserved.