Q:

Associative array versus multi-dimensional array, VBA

I feel like I'm missing some basic understanding... hopefully this isn't considered too broad or subjective, as I'm not positive which Stack Exchange site to post to.
VBA's associative array is the Dictionary.  My extremely gross understanding is that a Dictionary is just a multi-dimensional array; to find a value in the matrix, you'd still have to iterate and find a matching value in the first row of the matrix, which would then be used to output values in the nth row of the same column within the matrix.
If the above is in any way correct, then how is Dictionary more efficient than a standard multi-dimensional array?

A:

to find a value in the matrix, you'd still have to iterate and find a matching value in the first row of the matrix, which would then be used to output values in the nth row of the same column within the matrix.

That's not how dictionaries work.
Dictionary lookups are hash lookups (keys must be unique), making them roughly O(1), whereas iterating the first row of the matrix as you describe would be O(n)... which means the more items you're looking at, the more advantageous a dictionary is vs. an array... assuming you're not iterating the keys (i.e. assuming you're retrieving items by key).

