Excel Match to Table Header from three criteria - excel

I am trying pull a rank value (UN, NI, AE, HE, EX) from table headers, when individual score is compared to the table of goals. The Match criteria must include level and quarter, as the goals increase each quarter and goal ranges are different per individual's level.
I have tried xlookup, but I cant get it to work has #value! error
=XLOOKUP(B2&E2&D3,Goals[[ Level]]&Goals[Quarter]&Goals[[UN]:[EX]],Goals[[#Headers],[UN]:[EX]])
I have tried index match combination, but could not figure out a proper formula for the 3 criteria. I did not get it to work, and I did not get it to include a 3rd match criteria either.
=INDEX(Goals[[#Headers],[UN]:[EX]],,MATCH(D3,INDEX(B8:F11,MATCH(B2,A8:A11,0),,),-1),)
The goal is to fill in cell B4 with the equivalent ranking value which equates to the the headers in cells B7:F7. If person's score is equal to or greater than a level and quarter goal then they should get a ranking matching that column's header as long as it is not greater than the next column's goal.

You need two XLOOKUP calls, one to pick the row and then one to match the column. Try this.
=XLOOKUP(D3,XLOOKUP(B2&E2,Goals[Level]&Goals[Quarter],Goals[[UN]:[EX]]),Goals[[#Headers],[UN]:[EX]],"",-1)

Related

Index Match Formula returns a VALUE error is look up cell has several characters

I am puzzled by this problem.
I have a matrix with different criteria (shown below) which is to be used by users to access themselves, with each piece of criteria reflecting a maturity level. The criteria and the relevant maturity level is stored within a sheet called MasterSheetGrid.
The user selects the option that represents the criteria that they believe they are currently a like, in column J. Column K then performs the follow formula
=INDEX(MasterSheetGrid!$5:$5,MATCH((XLOOKUP($J8,$5:$5,8:8)),INDEX(MasterSheetGrid!$1:$50,((MATCH($C8,MasterSheetGrid!$C:$C,0))))))
This formula attempts to look at the user selection in column J, and calculates the criteria that their selection equates to. Then, using the criteria, the formula should look up the criteria within the MAsterSheetGrid and then return the corresponding level from row 5:5.
This formula works and does what i want it to, however, there are some instances where the formula does not work, when the look up/maturity criteria has a large amount of characters. I cannot work out how many characters this is, but the formula does not work if over a certain amount.
Note, i have attempted to replace the XLOOKUP with INDEXMATCH with no luck, i receive the same error. Also, the maturity criteria/user selection is calculated by the formula below
=IF($C8="","",(FILTER(INDEX(MasterSheetGrid!$D:$I,MATCH($C8,MasterSheetGrid!$C:$C,0),0),INDEX(MasterSheetGrid!$D:$I,MATCH($C8,MasterSheetGrid!$C:$C,0),0)<>"")))
MaturitySheetGrid
Formula works correctly due to a small character look up criteria
Formula does not work when the look up/selected criteria has a large amount of characters

complicated index/match with multiple columns and rows

I have a complicated lookup that has 2 criteria, the issue is that the 2nd criteria is dependent on the location of the first and I am having trouble understanding how to feed it the location from the first match.
Criteria 1 is easy it is family size and it basically reads from one column and matches the family size
Criteria 2 is income amount, the income table is 4 columns wide and 8 rows deep (C5:F12). The income amount varies depending on family size. So I need to return the value that closest matches the income for that family size without surpassing the number. IN the example below the income provided is $55,200 for a family size of 4 should return E8 ($62,950).
Once I have that I then have to write another formula to return the award amount which is on row 4. In the example provided the award amount would be cell E4 ($70,000). I have no clue what formula I would use for this; maybe a long IF statement (not sure).
I am using this formula but am getting the #N/A error which is likely because of the size of the lookup array. Every example I’ve seen on index/match has the columns to lookup the value in one row but with my data the row that needs to be looked in is dependent on the family size.
=INDEX(C5:F12,MATCH(C14,B5:B12,0),MATCH(C15,C5:F12,-1))
You do not need the intermediate step. Just use:
=INDEX($C$4:$F$4,MATCH($C$15,INDEX($C$5:$F$12,MATCH($C$14,$B$5:$B$12,0),0),-1))
If you want the other value put this formula in C17:
=INDEX($C$5:$F$12,MATCH($C$14,$B$5:$B$12,0),MATCH($C$15,INDEX($C$5:$F$12,MATCH($C$14,$B$5:$B$12,0),0),-1))
These formula work independent of each other.

How to return corresponding string values of largest numerical values in column up to certain percentage in Excel

I need to identify names of employees who have generated the top 80% of revenue. Column A is employee name, Columns B-E are revenue totals for each employee by Quarter. How can I identify these employees either by highlighting or VLOOKUP?
I started by trying to sum the largest values in the revenue a column up to a certain percentage or number.? I was trying to somehow use SUM() and SUMIF() with LARGE(), but I haven't been able to figure it out. Ideally, I would like to be able to do this without having to sort the column in descending order since this formula will be applied to multiple columns.
So ultimately I need a formula that returns the employee names, not just the sum.
To get a list of the top values use:
=IF(AND(SUM($D$1:$D1)+ AGGREGATE(14,6,$B$2:$B$16,ROW(1:1))<SUM($B$2:$B$16)*$G$1,OR(D1<>"",ROW(1:1)=1)),AGGREGATE(14,6,$B$2:$B$16,ROW(1:1)),"")
Then to get the name assciated with that value:
=IFERROR(INDEX($A$2:$A$16,AGGREGATE(15,6,ROW($1:$16)/($B$2:$B$16=D2),COUNTIF($D$2:D2,D2))),"")

Countif with dynamic headers

Good afternoon! I'm trying to get a Countifs or Index Match statement to count the number of times a value occurs in another table. The example:
On my report sheet, Column A contains 10 different statuses, such as Green, Yellow, Red etc.; Row 1 contains six dates, such as 1/31/2015, 2/28/2015, etc. These dates are calculations. The last date references my date worksheet and the five other use EOMONTH to get the month end for the five prior months.
On my data table, I have 7 descriptive columns (such as Type, Make, Model, etc) and then we begin date columns: 1/31/2010 all the way to 7/31/2015. I add a new column each month (I know, I don't like it either, but unfortunately we don't have a time series database).
What I need to do is have a Countifs or Index Match that pulls the date from my report tab, goes and finds it in the header row of my tblTrends, and then counts all those statuses that are Green, and if it's a SUV (for example).
Thoughts?
Thx!!
G
At it's most basic, you'd want something akin to:
=COUNTIFS(TypeRange,"SUV",FirstMonth,Status)
So let's say your data table starts in column L, and the first date column is O:
=COUNTIFS($L$1:$L$100,"SUV",O$1:O$100,A$2)
As you drag this formula across the different dates, it will move the date reference over one to the next month.
If you need it to dynamically determine the date column, I'd recommend OFFSET, which dynamically select a range. However, note that OFFSET is a "volatile" formula, which means it re-calculates anytime a change is made anywhere in the file, which can lead to pretty slow load times if not used sparingly.
=COUNTIFS($L$2:$L$100,"SUV",OFFSET($N$2:$N$100,,MATCH(B$1,$O$1:$Z$1,0)),$A2)
The OFFSET starts on column N, because that's the first column before the columns we want (the date columns). The MATCH tells it how many columns to OFFSET from here.
If you're going to use this over a large amount of data, then you could avoid using the OFFSET formula by creating a dynamic table. This table would only contain data for the six months you're interested in, by utilizing INDEX/MATCH, and you could run your COUNTIFS off this table, instead, using the original, basic method I first described. I can go into detail if you're unsure what I mean.

List top 5 scores AND names associated with those scores

My Numbers spreadsheet has a column of summed scores (AA) from a gymnastics meet, the All-Around scores. Each score in this column is associated with a specific gymnast name in another column (Name).
What I'm trying to do is populate a smaller spreadsheet that will parse the top 5 (or more) scores AND names associated with those scores into two columns - one for names, the other for scores.
This should be something very simple, but I haven't ever played with Excel or Numbers and am really struggling to make sense of all the syntax and formulas.
I've created a link to an image of the columns in question for reference.
https://www.dropbox.com/s/5w819hz1iyhpdde/Scores.jpg?dl=0
Create a pivot table and the set the Top 10 (you can set later to any number)
More info:
http://www.contextures.com/excel-pivot-table-filters-top10.html
This can be broken down into three steps.
Let's say you need the 5th largest element.
Use Large to get the 5th largest element. LARGE(b:b, 5)
The above returns the 5th largest value in the b:b range. But you need to know which row number this is in the B column. For that we use MATCH. Use, MATCH(lookup value, range, 0) where lookup value is the one returned in the first step, range is again B:B and 0 means exact match.
We need to find the appropriate name associated with the largest value. We use INDEX, which finds the value at a particular index value. Use, INDEX(name range, row_number) where name range is say A:A and row_number is the one returned in the previous step.
To sum it up, you need:
INDEX(A:A, MATCH(LARGE(B:B,5),B:B,0)) to get the 5th largest name. Change 5 to whatever rank you want!

Resources