title: Something like a Public constant populated dictionary
body: <p>In VBA what's the best way to declare a <strong>Public constant</strong> collection/dictionary of elements with multiple properties like this?</p>
  
  <pre><code>Dim fruits as new dictionary
  fruits.add "banana", array("yellow", "long", "curved")
  fruits.add "watermelon", array("red", "big", "sferic")
  fruits.add "blueberry", array("blue", "little", "sferic")
  </code></pre>
  
  <p>I could change the<br> <code>Dim fruits as new dictionary</code><br>into<br><code>Public fruits as new dictionary</code> moved on top (outside procedure)<br> but how could I populate this dictionary once for multiple sub/functions that will use it?</p>
  
  <p>I could put all the three "add" instructions in a dedicated sub called "fruits_populate()", and call this sub at the beginning in each sub/function where I use it but is there a better solution?</p>