如何在Microsoft Visual Basic(VBA for Excel)中使用Bloomberg Data History(BDH)命令

时间:2014-12-01 20:30:00

标签: excel vba bloomberg

我想使用一个简单的VBA脚本在我的电子表格的特定位置调用Bloomberg BDH函数,这在计算上很原始。

虽然使用标准Excel函数看起来不是问题,但只要插入包含引号的Bloomberg函数部分(例如“Dates,Period”,“H,M”),我就会得到预期的结束语错误。

我想要做的就是将这些函数调用插入到指定的单元格中。不幸的是,我没有VBA的经验,也不知道为什么引号似乎搞乱了。

是否有替代= BDH功能,不使用VBA不喜欢的符号?或者有没有其他方法可以使用marco将Bloomberg函数插入指定的单元格?

非常感谢任何帮助!

以下是我尝试使用的确切代码:

Range("B16").Value = "=BDH("TSLA", "PX_LAST", "01/01/2014", "01/03/2014", "Period, Dates", "M,H")"

2 个答案:

答案 0 :(得分:1)

您必须使用更多引号来转义引号。设置公式属性而不是设置值也没有什么坏处,但是没有必要这样做。这是引起编译器错误的引号。

Range("B16").Formula = "=BDH(""TSLA"", ""PX_LAST"", ""01/01/2014"", ""01/03/2014"", ""Period, Dates"", ""M,H"")"

答案 1 :(得分:0)

syntax I found最后的可选设置被设置为“Setting = x,OtherSetting = y”,这将是我的公式设置方式:

Range("B16").Formula = "=BDH(""TSLA"", ""PX_LAST"", ""01/01/2014"", ""01/03/2014"", ""Period=M, Dates=H"")"