Instructor Guide: Verdant Grounds — Job Costing Workbook

CONFIDENTIAL — FOR INSTRUCTOR AND TA USE ONLY

Assignment Overview

This assignment develops students' proficiency with core Excel analytical techniques applied to a realistic landscaping business dataset. Students practice named ranges and array-based named formulas (Q1), conditional counting (Q2), multi-cell SUMIF aggregations with absolute references (Q3), VLOOKUP with error handling across sheets (Q4), nested IF logic for margin classification (Q5), XLOOKUP with a not-found fallback (Q6), PivotTable construction with charting and conditional formatting (Q7), and a combined INDEX/MATCH/MAX/IFERROR lookup pattern (Q8). By the end, students should be able to move fluently between sheets, construct cross-sheet references, handle lookup errors gracefully, and present data visually via PivotTables and charts.

Partial Credit Policy

In general: a correct formula in the wrong cell earns approximately 70% of available points for that question. A correct numeric value entered as a static number (hard-coded) earns 0% for formula-dependent tasks and at most 20% for tasks where the task description makes formula use explicit. A formula that uses the right function family but has one argument error (wrong column, wrong match type, missing absolute reference) earns approximately 60-70% of that question's points. A formula that is structurally correct but not filled down through the required rows earns approximately 75% of available points. For Q7 (PivotTable/Chart/Conditional Formatting), treat each of the three sub-components as independently graded so a student who nails the PivotTable and chart but skips conditional formatting does not lose credit for the first two components.

General Grading Tips

Task-by-Task Guide

Task 1

Common Student Mistakes
  • Defining the named range 'LaborCost' to point to an existing column (e.g., column K MaterialCost) instead of the computed product H*I*J.
  • Creating the named range as a single column reference rather than an array formula expression (e.g., naming only Jobs!I2:I81 instead of Jobs!H2:H81*Jobs!I2:I81*Jobs!J2:J81).
  • Misspelling the named range as 'Labor_Cost', 'laborcost', or 'Labour Cost', causing the SUM formula to break.
  • Hard-coding the total dollar value in B2 instead of writing =SUM(LaborCost).
  • Forgetting to include CrewSize (column H) in the product, effectively calculating only HoursWorked × HourlyRate.
  • Placing the SUM formula in the wrong cell (e.g., B1 or C2).
Socratic Questions
  • If a student is stuck, ask: Which three columns in the Jobs sheet together tell you the total crew cost for a single job — and what arithmetic operation connects them?
  • If a student is stuck, ask: When you open the Name Manager (Formulas tab), what exactly does the 'Refers To' field show for your named range — is it a fixed column or a calculated expression?
  • If a student is stuck, ask: If you type =LaborCost in an empty cell, does Excel return a single value, an array of values, or an error? What does that tell you about how the name is defined?
  • If a student is stuck, ask: How would you verify that your SUM formula is actually referencing the named range rather than a raw number?
Solution Walkthrough

1. Go to the Formulas tab → Name Manager → New. 2. In the 'Name' field type exactly: LaborCost. 3. In the 'Refers To' field enter: =Jobs!$H$2:$H$81*Jobs!$I$2:$I$81*Jobs!$J$2:$J$81. Click OK and close Name Manager. 4. Navigate to the Analysis sheet. 5. Click cell B2. 6. Type: =SUM(LaborCost) and press Enter. Excel evaluates the named array product and sums all 80 per-job labor costs. The resulting value should reflect the sum of (CrewSize × HoursWorked × HourlyRate) for all rows.

Grading Tips

Award full 8 points only if both the named range is correctly defined AND B2 contains =SUM(LaborCost) (or equivalent referencing the named range). If the named range is correctly defined but the formula in B2 hard-codes the numeric result, award 4/8. If the formula in B2 is correct but placed in the wrong cell (e.g., B1), award 5/8 and note cell placement. If the named range omits one column (e.g., only H*I without J), award at most 4/8. If the name is misspelled but the product formula is otherwise correct, award 3/8.

Discussion Prompt

Named ranges that reference computed array expressions are less common than named ranges pointing to static cells. What are the advantages and potential pitfalls of storing a business calculation (like labor cost) as a named formula rather than as a helper column on the sheet?

Edge Cases
  • Student uses =Jobs!$H$2:$H$81*Jobs!$I$2:$I$81*Jobs!$J$2:$J$81 as the named range 'Refers To' with relative references (no $): the name will still work correctly when called from Analysis!B2, so award full credit.
  • Student defines the named range correctly but writes =SUM(Jobs!H2:H81*Jobs!I2:I81*Jobs!J2:J81) directly in B2 without using the named range: the numeric result will be correct, but the named range requirement is unmet — award 5/8.
  • In older Excel versions without dynamic arrays, the named range array product may require Ctrl+Shift+Enter in the Name Manager's Refers To box; if the student's Excel version requires this and they did it, accept as correct.

Task 2

Common Student Mistakes
  • Using COUNTIFS instead of COUNTIF (acceptable if the result is correct, but flag as unnecessary complexity).
  • Referencing the wrong column (e.g., column L InvoiceAmount instead of column M PaymentStatus).
  • Typing the criteria without quotes, e.g., =COUNTIF(Jobs!M2:M81, Overdue) causing a #NAME? error.
  • Including the header row in the range (Jobs!M1:M81), which adds 1 to the count if the header text matches.
  • Hard-coding the count as a number instead of using a formula.
  • Placing the formula in B2 instead of B3.
Socratic Questions
  • If a student is stuck, ask: COUNTIF needs two pieces of information — what range should it scan, and what exact text should it look for?
  • If a student is stuck, ask: How does Excel know that 'Overdue' is a text string rather than a cell reference or a variable name?
  • If a student is stuck, ask: If you manually filter column M to show only 'Overdue' rows, how many rows do you see? Does your formula match that number?
Solution Walkthrough

1. Navigate to the Analysis sheet. 2. Click cell B3. 3. Type: =COUNTIF(Jobs!M2:M81,"Overdue") and press Enter. COUNTIF iterates over each of the 80 PaymentStatus cells and increments the count whenever the cell value equals the string 'Overdue'. Verify by filtering column M on the Jobs sheet and comparing the visible row count.

Grading Tips

Award full 7 points if B3 contains a live COUNTIF (or COUNTIFS) formula targeting M2:M81 with 'Overdue' as the criteria and the result is correct. If the correct count is typed as a static number, award 2/7. If the formula is in the wrong cell but is otherwise correct, award 5/7. If the range includes M1 and happens to not affect the count (because 'PaymentStatus' ≠ 'Overdue'), award full credit; if the header somehow matches, deduct 1 point.

Discussion Prompt

COUNTIF is one of the most frequently used functions in business reporting. When would you choose COUNTIFS over COUNTIF, and can you think of a scenario in this dataset where a multi-condition count would be more informative than a single-condition count?

Edge Cases
  • Student writes the criteria with inconsistent capitalisation, e.g., 'overdue' or 'OVERDUE': Excel's COUNTIF is case-insensitive, so the result will still be correct — award full credit.
  • Student uses a cell reference for the criteria (e.g., points to a cell containing 'Overdue') instead of a literal string: award full credit as long as the referenced cell is correct and the formula is dynamic.

Task 3

Common Student Mistakes
  • Forgetting to use absolute references ($) on the criteria range and sum range, causing the range to shift when the formula is copied down.
  • Using relative criteria (e.g., pointing to a label cell) but with mixed-up references so Q2 formula still reads Q1.
  • Hard-coding the quarter label inside the formula but still typing the wrong quarter in one of the cells (common in B8/B9).
  • Referencing column E as the sum range and column L as the criteria range (swapping the two).
  • Including the header row in one or both ranges.
  • Placing totals in the wrong rows (e.g., Q1 in B7 instead of B6).
  • Using SUMIFS instead of SUMIF with the argument order swapped (SUMIFS has sum_range first; SUMIF has criteria_range first).
Socratic Questions
  • If a student is stuck, ask: SUMIF has three arguments — which column are you checking against the quarter label, and which column contains the dollar amounts you want to add up?
  • If a student is stuck, ask: If you copy the formula from B6 to B7, which parts of the formula need to stay the same, and which part needs to change?
  • If a student is stuck, ask: What happens to a cell reference like E2:E81 when you copy a formula one row down — how can you prevent that shift?
  • If a student is stuck, ask: How could you quickly check that your Q1 total is reasonable — what would you do on the Jobs sheet to get a manual verification number?
Solution Walkthrough

1. Navigate to the Analysis sheet. 2. Click cell B6. 3. Type: =SUMIF(Jobs!$E$2:$E$81,"Q1",Jobs!$L$2:$L$81) and press Enter. 4. Click B7 and type: =SUMIF(Jobs!$E$2:$E$81,"Q2",Jobs!$L$2:$L$81). 5. Click B8: =SUMIF(Jobs!$E$2:$E$81,"Q3",Jobs!$L$2:$L$81). 6. Click B9: =SUMIF(Jobs!$E$2:$E$81,"Q4",Jobs!$L$2:$L$81). Alternatively after entering B6, select B6, copy, select B7:B9, paste, then update only the quarter string in each cell. Verify: the four quarter totals should sum to the total of all InvoiceAmount values.

Grading Tips

Award 3 points per correctly functioning SUMIF formula (one per quarter). A formula that uses relative references and was not copied (so it accidentally works only for the entered cell) earns 2/3 for that cell. A correct value typed statically earns 0 for that cell. A formula placed in the wrong row (e.g., Q2 result in B6) earns 1/3. If all four formulas are correct but absolute references are missing, deduct 1 point total (not per cell) as a single penalty.

Discussion Prompt

SUMIF by quarter is a classic financial aggregation. How would the approach differ if you needed revenue by both Region AND Quarter simultaneously? What function would you reach for, and how would that change the layout of the Analysis sheet?

Edge Cases
  • Student uses SUMIFS with the correct argument order (sum_range first): award full credit — the result is equivalent.
  • Student references a cell on the Analysis sheet that contains 'Q1' as the criteria instead of a literal string: award full credit if the reference is correct and the cell contains the right label.
  • All four values are numerically correct but B6:B9 formulas reference different row ranges (e.g., one uses M2:M81 for the criteria range by mistake but the data happens to give the right answer due to dataset coincidence): award partial credit 2/3 per cell and note the error.

Task 4

Common Student Mistakes
  • Forgetting to lock the SiteDirectory lookup table with absolute references ($A$2:$E$81), causing the range to shift when filling down.
  • Using the wrong column index number — entering 2 (SiteName) instead of 3 (ContractTier).
  • Omitting FALSE as the fourth argument, leaving VLOOKUP in approximate-match mode which can return wrong results on unsorted data.
  • Wrapping IFERROR around the wrong part of the expression or placing the fallback text as the VLOOKUP argument instead of the IFERROR argument.
  • Referencing SiteDirectory!A1:E81 (including header row), which can cause off-by-one errors.
  • Forgetting to fill the formula down through O81, leaving many rows blank.
  • Using VLOOKUP with a relative reference to N2 that correctly adjusts when filled down — this is correct behaviour, but students sometimes lock N2 accidentally, making every row look up the same site.
Socratic Questions
  • If a student is stuck, ask: How many columns does the SiteDirectory table have, and in which position does ContractTier appear — counting from the leftmost column of your lookup range?
  • If a student is stuck, ask: What does the fourth argument of VLOOKUP control, and why does it matter whether your SiteDirectory is sorted alphabetically or not?
  • If a student is stuck, ask: If a JobSiteID in column N doesn't exist in SiteDirectory, what error will VLOOKUP return — and how does IFERROR change what appears in the cell?
  • If a student is stuck, ask: After you fill the formula down, click on O50 — does the formula bar show N50 as the lookup value, or is it still N2?
Solution Walkthrough

1. Navigate to the Jobs sheet. 2. Click cell O2. 3. Type: =IFERROR(VLOOKUP(N2,SiteDirectory!$A$2:$E$81,3,FALSE),"Unknown") and press Enter. The lookup value N2 is relative so it adjusts as the formula is filled down. The table array is fully absolute. Column index 3 returns ContractTier. FALSE enforces exact match. IFERROR wraps the entire VLOOKUP so any #N/A becomes 'Unknown'. 4. Click O2 again. 5. Copy the cell (Ctrl+C). 6. Select O3:O81. 7. Paste (Ctrl+V or Enter). Verify several rows by manually checking a JobSiteID against SiteDirectory.

Grading Tips

Award full 12 points if O2 contains the correct IFERROR+VLOOKUP formula, the table array is absolute, column index is 3, match type is FALSE, and the formula is filled to O81. Deduct 3 points if the formula is not filled down (only O2 is populated). Deduct 2 points if absolute references are missing on the lookup table. Deduct 2 points if column index is 2 (SiteName) instead of 3 (ContractTier). Deduct 2 points if IFERROR is missing. A correct formula placed only in O2 with no fill-down earns 9/12.

Discussion Prompt

VLOOKUP requires the lookup value to be in the leftmost column of the table array. How does XLOOKUP remove this restriction, and can you think of a scenario in this dataset where that flexibility would matter?

Edge Cases
  • Student uses XLOOKUP instead of VLOOKUP: the task explicitly says VLOOKUP — deduct 2 points for not following instructions but award credit if the result is functionally correct.
  • Student uses IFERROR(VLOOKUP(...),"") with an empty string instead of 'Unknown': deduct 2 points; the error handling exists but the specified fallback text is wrong.
  • Student's formula works for O2 but the fill-down stops at O80 (missing the last row): deduct 1 point.

Task 5

Common Student Mistakes
  • Forgetting to include CrewSize (H) in the labor cost calculation, computing only HoursWorked × HourlyRate.
  • Dividing by gross profit rather than by InvoiceAmount when computing the margin.
  • Reversing the threshold order — checking >0.20 before >0.40, which misclassifies high-margin jobs as 'Medium'.
  • Using >= instead of > for the thresholds (minor, but note it changes boundary classification).
  • Failing to wrap the labor cost computation in parentheses, causing order-of-operations errors (e.g., L2-K2-H2*I2*J2 where subtraction happens left-to-right correctly, but students often introduce parenthesis errors).
  • Hard-coding margin thresholds as percentages (40%, 20%) without converting — note that 40% and 0.40 are equivalent in Excel.
  • Not filling the formula down through P81.
Socratic Questions
  • If a student is stuck, ask: What are the two cost components you need to subtract from InvoiceAmount to get gross profit — and which columns represent each?
  • If a student is stuck, ask: If you test a job with a 50% margin, which IF branch should it hit — and does your formula currently return the right label for that case?
  • If a student is stuck, ask: In a nested IF, does the order of the conditions matter? What would happen if you checked the 20% threshold before the 40% threshold?
  • If a student is stuck, ask: How could you add a helper calculation somewhere temporarily to verify that your margin arithmetic is correct before embedding it in the IF?
Solution Walkthrough

1. Navigate to the Jobs sheet. 2. Click cell P2. 3. Build the formula in stages mentally: gross profit = L2-K2-(H2*I2*J2). Margin = (L2-K2-(H2*I2*J2))/L2. 4. Type: =IF((L2-K2-(H2*I2*J2))/L2>0.40,"High",IF((L2-K2-(H2*I2*J2))/L2>0.20,"Medium","Low")) and press Enter. 5. Verify the result for row 2 manually using the Jobs data. 6. Copy P2 and paste through P3:P81. Spot-check: find a row with very high InvoiceAmount relative to costs (should be 'High'), and a row where costs nearly equal InvoiceAmount (should be 'Low').

Grading Tips

Award full 12 points for a correct formula in P2 filled through P81. Deduct 3 points if CrewSize (H) is omitted from the labor cost. Deduct 2 points if the divisor is gross profit rather than InvoiceAmount. Deduct 3 points if the >0.40 and >0.20 conditions are in the wrong order (this produces incorrect classification). Deduct 2 points if formula is not filled to P81. A correct value typed statically earns 0. Award partial credit of 6/12 if the formula structure is correct (nested IF, correct threshold order) but the margin arithmetic has one error.

Discussion Prompt

The nested IF assigns categorical ratings to continuous data. What are the business implications of where you draw the 'High' vs 'Medium' threshold? How might you determine appropriate thresholds from actual data rather than setting them arbitrarily at 40% and 20%?

Edge Cases
  • Student uses IFS instead of nested IF: accept as functionally equivalent and award full credit.
  • Student writes 40% and 20% as percentages (>40%, >20%): Excel treats these as 0.4 and 0.2 respectively, so results are correct — award full credit.
  • A job row has InvoiceAmount = 0 (hypothetically), causing a division-by-zero error: in the actual dataset this should not occur, but if it does, the student is not penalized for not handling this edge case unless the instructions explicitly required it.
  • Student correctly computes the formula but fills only through P80, missing P81: deduct 1 point.

Task 6

Common Student Mistakes
  • Using VLOOKUP instead of XLOOKUP — the task specifically requires XLOOKUP.
  • Providing only three arguments to XLOOKUP and omitting the if-not-found argument, so unmatched lookups return #N/A instead of 'Site Not Found'.
  • Confusing the lookup array and return array order — placing SiteDirectory!B2:B81 as the lookup array and A2:A81 as the return array.
  • Hard-coding the site name text rather than using a lookup formula.
  • Typing 'SITE-42' (missing leading zero) instead of 'SITE-042' as the lookup value.
  • Referencing the entire SiteDirectory sheet without specifying the correct column ranges.
Socratic Questions
  • If a student is stuck, ask: XLOOKUP needs to know three things at minimum — where to look, what to look for, and where to retrieve the answer. Which columns in SiteDirectory serve as the search column and the result column?
  • If a student is stuck, ask: What would XLOOKUP return if 'SITE-042' genuinely did not exist in the SiteDirectory — and how does the fourth argument change that behaviour?
  • If a student is stuck, ask: How is XLOOKUP's argument order different from VLOOKUP's — specifically, how does XLOOKUP let you specify the return column directly instead of by position number?
Solution Walkthrough

1. Navigate to the Analysis sheet. 2. Click cell B12. 3. Type: =XLOOKUP("SITE-042",SiteDirectory!A2:A81,SiteDirectory!B2:B81,"Site Not Found") and press Enter. Argument breakdown: lookup_value = "SITE-042" (exact text string), lookup_array = SiteDirectory!A2:A81 (the JobSiteID column), return_array = SiteDirectory!B2:B81 (the SiteName column), if_not_found = "Site Not Found". Verify by finding SITE-042 manually in the SiteDirectory sheet and confirming the SiteName matches what B12 displays.

Grading Tips

Award full 12 points for a correct XLOOKUP formula in B12 with all four arguments correctly specified. Deduct 4 points if the if-not-found argument is missing. Deduct 4 points if the lookup and return arrays are swapped (formula returns wrong data or errors). Deduct 2 points if the student used VLOOKUP instead of XLOOKUP (the task requires XLOOKUP specifically). A hard-coded site name earns 0. A correct formula in the wrong cell (e.g., C12) earns 8/12.

Discussion Prompt

XLOOKUP was introduced in Excel 365/2019 as a modern replacement for VLOOKUP. What specific limitations of VLOOKUP does XLOOKUP solve, and in what real-world business scenario would those improvements be most valuable?

Edge Cases
  • Student uses INDEX/MATCH to produce the correct result instead of XLOOKUP: the task specifies XLOOKUP — award 8/12 for correct result with incorrect function.
  • Student uses XLOOKUP with the optional match_mode or search_mode arguments explicitly set to defaults (0, 1): fully acceptable, award full credit.
  • SITE-042 happens not to exist in the student's dataset (dataset generation issue): if the formula correctly returns 'Site Not Found' and the formula structure is right, award full credit.

Task 7

Common Student Mistakes
  • Placing the PivotTable top-left corner somewhere other than Dashboard!A1 (e.g., A3 because they added a title row).
  • Using the wrong source range — selecting only visible columns or omitting the header row (should be Jobs!A1:N81).
  • Placing Region in Columns and JobType in Rows instead of the specified layout.
  • Using Count of InvoiceAmount instead of Sum of InvoiceAmount in the Values area.
  • Inserting the chart on the Jobs or Analysis sheet instead of the Dashboard sheet.
  • Choosing a Clustered Column chart instead of a Clustered Bar chart (bar = horizontal bars in Excel).
  • Applying conditional formatting to the entire Dashboard sheet rather than only the PivotTable value cells.
  • Using a color scale instead of the Top 10% rule with green fill.
Socratic Questions
  • If a student is stuck, ask: When you set up the PivotTable field list, which drop zones (Rows, Columns, Values, Filters) does each of the three required fields belong in?
  • If a student is stuck, ask: In Excel, a 'Bar' chart and a 'Column' chart look similar but differ in orientation — which one has horizontal bars?
  • If a student is stuck, ask: After selecting the PivotTable value cells, where in the Home or Conditional Formatting menu would you find a rule based on relative ranking, such as the top percentage?
Solution Walkthrough

1. Click on the Dashboard sheet tab. 2. Go to Insert → PivotTable. 3. In 'Table/Range' enter: Jobs!$A$1:$N$81. 4. Select 'Existing Worksheet' and set location to Dashboard!$A$1. Click OK. 5. In the PivotTable Field List: drag 'Region' to Rows area, drag 'JobType' to Columns area, drag 'InvoiceAmount' to Values area (confirm it says 'Sum of InvoiceAmount'; if it says Count, click the field → Value Field Settings → Sum). 6. Click inside the PivotTable. Go to PivotTable Analyze → PivotChart → select Clustered Bar (horizontal bars, first option in Bar category). Move/resize chart to remain on Dashboard sheet. 7. Select the value cells of the PivotTable (the numeric data area, not the row/column headers). Go to Home → Conditional Formatting → Top/Bottom Rules → Top 10%. In the dialog, confirm 10%, set format to custom fill with green (use Format → Fill tab → select green). Click OK.

Grading Tips

This question has three graded components — award roughly 6 points for the PivotTable, 6 points for the chart, and 5 points for conditional formatting. PivotTable: deduct 2 points if field placement is wrong (Rows/Columns swapped), deduct 2 points if Values shows Count instead of Sum, deduct 1 point if placement is not at A1. Chart: deduct 3 points if chart type is Column instead of Bar (horizontal), deduct 2 points if chart is on the wrong sheet. Conditional Formatting: deduct 2 points if applied to the wrong range, deduct 2 points if a color scale is used instead of Top 10% rule, deduct 1 point if fill color is not green. A student who completes all three perfectly earns full 17 points.

Discussion Prompt

PivotTables automatically aggregate data but have limitations — for example, they don't update when source data changes unless refreshed. How does this affect how you would use a PivotTable in a live business reporting environment, and what alternatives exist?

Edge Cases
  • Student places PivotTable at A2 instead of A1 (e.g., added a title): deduct 1 point but do not penalize the rest of the question.
  • Student uses a Bar chart that shows only Region totals (grand total column) rather than the full cross-tab: acceptable as long as it is a Clustered Bar showing InvoiceAmount by Region — award full chart points.
  • Student applies Top 10 (count) instead of Top 10% (percentage): deduct 2 points from conditional formatting score.
  • Student's Excel version does not support PivotCharts directly from the Analyze tab and instead inserts a separate chart manually linked to PivotTable data: award full chart points if the chart type and data are correct.

Task 8

Common Student Mistakes
  • Using MIN instead of MAX, finding the InvoiceAmount for the lowest-cost job instead of the highest.
  • Using MATCH with match_type 1 or -1 (approximate) instead of 0 (exact), which can return an incorrect row position on unsorted data.
  • Applying INDEX to the wrong column — returning MaterialCost (K) instead of InvoiceAmount (L).
  • Nesting MAX inside INDEX directly instead of inside MATCH, misunderstanding the role of each function.
  • Forgetting IFERROR entirely, leaving potential errors unhandled.
  • Using a helper column to first identify the max row and then referencing it from B15 — the task explicitly prohibits helper columns.
  • Hard-coding the row number after manually finding the max MaterialCost row.
  • Placing the formula in B16 or another cell instead of B15.
Socratic Questions
  • If a student is stuck, ask: What does MATCH return — a value or a position number — and how does INDEX use that position number?
  • If a student is stuck, ask: If you were doing this in two steps, what would you write in one cell to find the maximum MaterialCost, and in another cell to find which row that maximum is in?
  • If a student is stuck, ask: Once you know the row number of the highest MaterialCost, which function can retrieve the value from a different column in that same row?
  • If a student is stuck, ask: What happens if you wrap the entire INDEX/MATCH/MAX expression in IFERROR — what two arguments does IFERROR need?
Solution Walkthrough

1. Navigate to the Analysis sheet. 2. Click cell B15. 3. Build the formula from the inside out: Step A — MAX(Jobs!K2:K81) finds the maximum MaterialCost value. Step B — MATCH(MAX(Jobs!K2:K81),Jobs!K2:K81,0) returns the relative row position of that maximum within K2:K81. Step C — INDEX(Jobs!L2:L81, MATCH(MAX(Jobs!K2:K81),Jobs!K2:K81,0)) returns the InvoiceAmount from the same relative row position within L2:L81. Step D — Wrap in IFERROR: =IFERROR(INDEX(Jobs!L2:L81,MATCH(MAX(Jobs!K2:K81),Jobs!K2:K81,0)),"N/A"). 4. Press Enter. 5. Verify: manually use AutoFilter on the Jobs sheet to sort by MaterialCost descending, note the top row's InvoiceAmount, and confirm it matches B15.

Grading Tips

Award full 20 points if B15 contains a single formula using INDEX, MATCH, MAX, and IFERROR that produces the correct result with no helper columns. Deduct 5 points if IFERROR is missing. Deduct 5 points if MAX is missing (e.g., the student hard-codes the max value or the row number). Deduct 5 points if INDEX returns the wrong column (K instead of L). Deduct 4 points if MATCH uses approximate match (1 or -1) rather than exact (0). A correct answer achieved with a helper column earns at most 12/20. A hard-coded correct value earns 0. A formula placed in the wrong cell earns 14/20 maximum.

Discussion Prompt

The INDEX/MATCH pattern is often described as superior to VLOOKUP for certain tasks. Based on what you just built, can you articulate at least two scenarios where INDEX/MATCH can do something VLOOKUP cannot? How does adding MAX inside MATCH demonstrate one of those advantages?

Edge Cases
  • Two jobs tie for the maximum MaterialCost: MATCH returns the position of the first occurrence, so the formula returns the InvoiceAmount of the first tied job. This is acceptable behaviour — do not penalize the student.
  • Student uses XLOOKUP with MAX as the lookup value instead of INDEX/MATCH: =IFERROR(XLOOKUP(MAX(Jobs!K2:K81),Jobs!K2:K81,Jobs!L2:L81),"N/A") — this is functionally equivalent and elegant; award full credit.
  • Student correctly builds the formula but omits the outer IFERROR and the dataset has no errors so the value is still correct: deduct 3 points for missing IFERROR as the task requires it.