For a complete history of the whole thing, see this discussion:
However, I didn't discover the apparent problem with WorksheetFunction.Transpose() until page 4 of that discussion.
Basically, at some point with a large array of values, .Transpose() fails to perform properly. It fails differently in Excel 2010 than in Excel 2013 also - In 2010 I got 2 or 3 different error messages, but the most prevalent was 13: Type Mismatch. In 2013 it mostly just doesn't work right - sometimes pasting the same value into all of the destination cells, sometimes pasting the first 9,464 results then #N/A! for the rest.
The processes are designed to return a specified number of unique random numbers from a designated pool: for example - return 75,000 unique, randomly generated numbers from a pool of 100,000 numbers. This scenario will cause failure when .Transpose() is used with a Dictionary object. If you change those numbers to 7,500 out of 10,000 or even 9,500 out of 10,000 - everything works as it should.
Here is a link to a workbook I prepared that can be used to demonstrate all of this:
http://www.mediafire.com/download/92wsbtuvf2e57mt/WorksheetTransposeProblem.xlsm
Am I missing something - is there perhaps information published somewhere that says there's a limit on the function as to how many values can be in an array to be transposed? Or have I misidentified the culprit and could it be a limit on the number of items in a Dictionary object?
My test system setup: Windows 7 Ultimate (64-bit), Intel i7 @ 3.6GHz, 12 GB RAM. Both versions of Office/Excel are 32-bit.
I am free because I know that I alone am morally responsible for everything I do. RAH