@
BrianGGG.... A1:(A1:A3) and (A1:A3):A3 are simply the range A1:A3. If we array-enter a formula with A1:A3, we get 3 separate values.
But the ROWS() parameter is a range. If we enter ROWS(A1:A3), we get 3 because ROWS() "consumes" the entire range. If we array-enter a formula with ROWS(A1:A3), we get an array of 3s, the equivalent of an array of the formulas ROWS(A1:A3), ROWS(A1:A3), ROWS(A1:A3).
The same issue applies to AND() and OR() functions. It is the reason why we cannot use them as we might intend in an array-entered formula.
For example, we might array-enter =IF(AND(A1:A3=B1:B3),C1:C3) with the intent for that to be treated like an array of the formulas IF(A1=B1,C1), IF(A2=B2,C2), IF(A3=B3,C3). But instead, it is treated as IF(TRUE,C1:C3) or IF(FALSE,C1:C3) because AND(A1:A3=B1:B3) returns a single logical value, the equivalent of AND(A1=B1,A2=B2,A3=B3).
Bottom line: functions that expect array and range parameters cannot be used in array-entered formula with the intent of creating an array of unique values.