I hope I can explain my problem in a way that makes sense, so here goes:
I have a list of Text Strings that I have numerically ranked in another column based on a certain value that corresponds to this data. Let's call this sheet Tab 1:
Column A Column B Column C
Text String Value Rank
ABC 10 4
DEF 15 3
GHI 10 4
JKL 5 6
MNO 20 1
PQR 20 1
I simplified it here, but in reality the list comprises thousands of rows and I change the values monthly (ranks are formulaic and change based upon the values).
On a separate tab (tab 2), I want to create a table that shows the top 10 "text strings" (based on ranking) which updates automatically every month when I input the new values. I think I'm almost there, but I'm getting stuck on an issue. I'm using a small() function nested with an if() statement to pull the ranks into a column, let's call this column A in a new tab (tab 2). The formula looks something like:
{=small(if(('Tab 1'!$C$2:$C$7>='Tab 2'!A1)*not('Tab 1'!$A$2:$A$7=transpose('Tab 2'$B$1:B1)),'Tab 1'!$C$2:$C$7),1)}
I am dragging this formula down from 'Tab2'A1 to 'Tab2'A6. I need the formula to look into the output produced from this formula (in the rows above) and make sure it isn't listing the same text string more than once. This is why I included the not() statement in the formula. However, the transpose() function within the not() statement is messing everything up. The transpose function effectively increases the size of that array which doesnt match up with the other arrays within the if statement. In the end, I would want the output in the column to look like:
Tab2
Column A
1
1
3
4
4
6
Hope this made sense, let me know if it didn't. Thanks in advance!
Bookmarks