用户选择随机excel单元格,单击按钮,执行宏-彭博DDE

用户选择随机excel单元格,单击按钮,执行宏-彭博DDE,excel,bloomberg,dde,Excel,Bloomberg,Dde,我对宏和这个论坛都很陌生。我搜索了论坛,没有找到我想要的答案。我正在编写一个宏来启动Bloomberg DDE,因此当单击一个按钮时,终端窗口将出现在前面,其中包含已提交的特定语法 一般来说,假设$B$3=MSFT,$H$2=CSCO,$E$9=GIS 如果用户在电子表格上选择MSFT,然后单击GIP30按钮,我希望将以下信息发送到BB终端: MSFT GIP30 因此,除了确定所选单元的宏之外,在传输到BB DDE之前,可能还需要附加“US”。我从网上收集了一些花边新闻 当我硬编码“MSFT

我对宏和这个论坛都很陌生。我搜索了论坛,没有找到我想要的答案。我正在编写一个宏来启动Bloomberg DDE,因此当单击一个按钮时,终端窗口将出现在前面,其中包含已提交的特定语法

一般来说,假设$B$3=MSFT,$H$2=CSCO,$E$9=GIS

如果用户在电子表格上选择MSFT,然后单击GIP30按钮,我希望将以下信息发送到BB终端:

MSFT GIP30

因此,除了确定所选单元的宏之外,在传输到BB DDE之前,可能还需要附加“US”。我从网上收集了一些花边新闻

当我硬编码“MSFT US”时,它就开始工作了,但需要它是动态的。我注释掉了“动态”代码

感谢所有的帮助

谢谢

Sub OpenGIP()

Dim ch As Long
ch = DDEInitiate("winblp", "bbk")
'Opens Bloomberg window #2 (Note: <blp-n> - where n is [BB Window instance # - 1])
Call DDEExecute(ch, "<blp-1><home> MSFT US <EQUITY> GIP30 <GO>")
'Call DDEExecute(ch, "<blp-1><home> ActiveCell.Value & ' US' <EQUITY> GIP30 <GO>")
Call DDETerminate(ch)

End Sub
Sub-OpenGIP()
暗淡如长
ch=DDE启动(“winblp”、“bbk”)
'打开Bloomberg窗口#2(注意:-其中n是[BB窗口实例#-1])
调用DDExecute(ch,“MSFT US GIP30”)
'Call DDEExecute(ch,“ActiveCell.Value&'US'GIP30”)
呼叫终止(ch)
端接头
试试这个

Call DDEExecute(ch, "<blp-1><home> " & ActiveCell.value & " US <EQUITY> GIP30 <GO>")
调用DDEExecute(ch,“&ActiveCell.value&“US GIP30”)