/ / DimとしてのDim。コンパイルエラー:ユーザー定義型が定義されていません - excel、vba、rest

ディクショナリとしてDim。コンパイルエラー:ユーザー定義型が定義されていません - 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は6

@ YowE3kのようにMicrosoft Scripting Runtimeへの参照を追加しました:

VBAエディタで:

ツール - >リファレンス

AddRef1

Microsoft Scripting Runtimeの検索

それをチェックする

クリックOK

AddRef2