昏暗的字典。编译错误:未定义用户定义的类型

时间:2017-09-09 06:55:54

标签: excel vba rest

你能帮忙解决这个问题吗? 每当我运行这个宏时,它都停在:

Dim authResult As Dictionary

出现以下错误消息: 编译错误:未定义用户定义的类型。

之前我没有使用过字典类型,我试图从示例宏中重用这段代码。

此脚本的目的是使用excel对网站进行休息调用,以便我可以下载历史数据。我目前卡在登录部分。

Sub Login()

    Dim userName As String
    Dim password As String
    Dim apiKey As String

    userName = "username"
    password = "password"
    apiKey = "key123"

    'activityTextbox.Text = ""
    'clearData

    Dim authResult As Dictionary
    Set authResult = restClient.authenticateAccount(userName, password, apiKey)
    If Not authResult Is Nothing Then
        'appendActivity "Connected"
        ' Configure Excel to pull streaming updates as often as possible
        Application.RTD.ThrottleInterval = 0
        ' Uncomment for real-time prices - this is very CPU intensive
        ' Buffer interval defaults to 500ms
        'Application.WorksheetFunction.RTD "IG.api.excel.RTD.IGApiRTDServer", "", "bufferInterval", "0"
        ' Set manual refresh to true from very remote locations
        ' Application.WorksheetFunction.RTD "IG.api.excel.RTD.IGApiRTDServer", "", "manualRefresh", "true"
        ' This will require manually calling refresh to update lighstreamer subscriptions, i.e.
        ' Application.WorksheetFunction.RTD "IG.api.excel.RTD.IGApiRTDServer", "", "refresh"
        Dim maxPriceRequestsPerSecond As Double
        maxPriceRequestsPerSecond = 0  ' all available updates
        If restClient.streamingAuthentication(maxPriceRequestsPerSecond) Then
            m_loggedIn = True
            'populateWatchlists
            'populateAccounts
            'manualStreamingRefresh
        'Else
         '   appendActivity "Lightstreamer connection failure"
        End If
    Else
        MsgBox "Authentication failed"
    End If

End Sub

提前致谢。 干杯, 乔

1 个答案:

答案 0 :(得分:14)

添加对Microsoft Scripting Runtime的引用,@ YowE3k说:

在VBA编辑器中:

工具 - >参考

AddRef1

查找Microsoft Scripting Runtime

检查

点击“确定”

AddRef2