Excel doesn't like ranges pointing to different sheets in some cases (like this one). But you can sometimes get around it by converting the ranges to internal arrays. FormR used CHOOSE to do that, I used IF. An IF statement has the basic form:
=IF(condition,TRUE result, FALSE result)
The condition part should return a TRUE/FALSE value, and based on that, the proper result is chosen. You can also use a number to return a TRUE/FALSE value. 0=FALSE, and any non-zero number=TRUE. And if you want to use multiple values, you can put them in an array using the {} braces. So this part of the formula
=IF({0,1},
is giving IF 2 values, a 0 and a 1, which are equivalent to FALSE and TRUE. So in essence, it's saying give me both the FALSE and the TRUE results. Then the 2 arrays are (more or less) intermingled, and the LARGE subfunction of AGGREGATE looks at the mingled array. The "ignore errors" option of AGGREGATE is required, since if the 2 ranges are different sizes, some elements of the arrays will be errors.
If you use CHOOSE, like FormR, you can extend his formula just by increasing the array constant like this:
=CHOOSE({1,2,3},Range1,Range2,Range3)