title: Dictionary object adding items before .add() is called
body: <p>I am using a dictionary object from the <strong>MS Scripting Runtime library</strong> to store a series of arrays and perform operations on the array cells as necessary. There is a for loop to go through the process of creating all of these entries. My issue is that when using the <code>.exists</code> property, it is returning <code>True</code> even before the item has been added. </p>
  
  <p>Closer debugging indicates that the key is being added to the dictionary at the beginning of the for loop, even though no <code>.add</code> command is used and will not be used until the end of the loop.</p>
  
  <p>I have tried a few different configurations, but here is a simple example that fails:</p>
  
  <pre><code>Dim dTotals As Dictionary
  Set dTotals = New Dictionary
  
  dTotals.CompareMode = BinaryCompare
  
  For Each cell In rAppID
      If Not dTotals.Exists(cell) Then
      Set rAppIDCells = Find_Range(cell, rAppID)
      Set rAppIDValues = rAppIDCells.Offset(0, 6)
      dAppIDTotal = WorksheetFunction.Sum(rAppIDValues)
      dTotals.Add Key:=cell.Value, Item:=dAppIDTotal
      End If
  Next cell
  </code></pre>
  
  <p>Where each cell contains a string / unique id. At the If statement, the code is returning false, even on the first iteration.</p>