title: Dim As Dictionary. Compile Error: User-defined type not defined
body: <p>Can you please assist with this problem?
  Whenever I run this macro, it stops at:</p>
  
  <pre><code>Dim authResult As Dictionary
  </code></pre>
  
  <p>With an error message of:
  Compile error: User-defined type not defined.</p>
  
  <p>I have not used the dictionary type before and I am trying to re-use this code from a sample macro.</p>
  
  <p>The aim of this script is to use excel to make rest calls to a website so that I can download historic data. I am currently stuck at the login section.</p>
  
  <pre><code>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
  </code></pre>
  
  <p>Thanks in advance.
  Cheers,
  Joe</p>