✕
0 / 63

Excel case: the supplier report

The buyer wants to know which supplier is late most often. Deliveries is last quarter's export; each supplier's grace days are on the Terms sheet. A delivery is late when it arrives more days after its due date than that supplier's grace days.1. In F2:F49, the days late: received minus due, 0 if it came early, and empty ("") if it hasn't arrived.2. In G2:G49, the supplier as the Terms sheet writes it. The export added stray spaces and a " Ltd" here and there.3. In J2:J6, each supplier's grace days.4. In K2:K6, how many deliveries from each supplier have arrived; in L2:L6, how many of those were late; in M2:M6, the share that were late.5. In J8, the supplier with the highest share of late deliveries.

61 Case: the supplier report Case, five steps Advanced

deliveries.xlsx
Ready

Click a cell while typing to insert it, drag to select a range, F4 adds $, Esc cancels.

Tap a cell while writing a formula to insert it, or slide across cells for a range. The strip above the keyboard has = ( ) : , $.

The Case, five steps guide

Most Excel tests for a job end with a case: a messy export, a few steps, and a question someone actually wants answered. Here it is "which supplier is late most often?", on 48 deliveries with stray spaces, a " Ltd" here and there, deliveries that haven't arrived and a grace period on a second sheet.

AdvancedAbout 3 minutesBy Updated

Read the question before the data

"Late most often" is a share: late deliveries out of the deliveries that arrived. The supplier with the most late deliveries can also be the one that delivers most, so a count gives a different, wrong answer. Decide what the final number is before you write the first formula.

Step by step

  1. Days late. =IF(D2="", "", MAX(0, D2-C2)). An empty received date means the delivery hasn't come, which is not the same as on time. MAX stops early deliveries from going negative. See days between dates.
  2. Clean names. =TRIM(SUBSTITUTE(B2, " Ltd", "")). A count on the export column misses "Kestrel Foods " with a space and "Brightline Print Ltd". See TRIM.
  3. Grace days. =XLOOKUP(I2, Terms!$A$2:$A$6, Terms!$B$2:$B$6). The Terms sheet lists the suppliers in another order, so pointing at the row next door gives someone else's grace. See another sheet.
  4. Counts and share. Arrived: =COUNTIFS($G$2:$G$49, I2, $D$2:$D$49, "<>"). Late: =COUNTIFS($G$2:$G$49, I2, $F$2:$F$49, ">"&J2). Share: =L2/K2. The ">"&J2 joins the operator to the number in J2; a delivery exactly at the grace limit isn't late.
  5. The answer. =INDEX($I$2:$I$6, MATCH(MAX($M$2:$M$6), $M$2:$M$6, 0)), or =XLOOKUP(MAX(M2:M6), M2:M6, I2:I6).

Why helper columns

One long formula could do steps 1 to 4 at once. Helper columns are easier to check: you can look at F and G row by row, filter them, and see which step is wrong when the total looks odd. Whoever opens the file after you can follow it too.

Check it by hand once

Filter the clean supplier column to one name and the days late to more than its grace, and compare the row count with your formula. On a test, that minute is worth more than the time it costs.

Where it goes wrong

FAQ

What is an Excel case study test?
A longer task at the end of many job tests: a data set with problems in it, several steps, and a question to answer from the result. It checks whether you can pick the tools and check your own work, not just write one formula.
How do I count late deliveries by supplier in Excel?
Work out days late in a helper column, then count with two conditions: =COUNTIFS(supplier_range, name, days_late_range, ">"&grace). Clean the supplier names with TRIM first.
How do I calculate the percentage of late deliveries?
Divide the late deliveries by the deliveries that arrived, not by every order, and format the result as a percentage.
How do I return the name next to the highest value?
Use =INDEX(names, MATCH(MAX(values), values, 0)), or =XLOOKUP(MAX(values), values, names).

All challenges

  1. 01Starter, 3 min Add it upSUM
  2. 02Starter, 3 min Find the averageAVERAGE
  3. 03Starter, 3 min Smallest and largestMIN, MAX
  4. 04Starter, 3 min Count what's thereCOUNT, COUNTA, COUNTBLANK
  5. 05Starter, 3 min Write once, fill downRelative references
  6. 06Core, 3 min Lock it with $Absolute references
  7. 07Starter, 3 min Percent of a totalPercentages
  8. 08Starter, 3 min Make the numbers readableNumber formats
  9. 09Core, 3 min Up or down by how much?Percent change
  10. 10Core, 3 min What you see vs what's storedROUND
  11. 11Core, 3 min The typical valueMEDIAN
  12. 12Core, 3 min Select to the end in one moveCtrl + Shift + arrow
  13. 13Starter, 3 min Sort without breaking rowsSort
  14. 14Starter, 3 min Filter to what mattersFilter
  15. 15Starter, 3 min Copy and paste a formulaCtrl+C, Ctrl+V
  16. 16Core, 3 min Paste values onlyPaste Special → Values
  17. 17Core, 3 min Highlight what's over targetConditional formatting
  18. 18Core, 3 min Spot the duplicatesDuplicate Values rule
  19. 19Core, 3 min Pass or fail?IF
  20. 20Core, 3 min Both or either?AND, OR
  21. 21Core, 3 min Exactly one of the twoXOR
  22. 22Core, 3 min Grade bands with nested IFNested IF
  23. 23Core, 3 min Count the ones that matchCOUNTIF
  24. 24Core, 3 min Add up the ones that matchSUMIF
  25. 25Core, 3 min Use a cell as the conditionCriteria in a cell
  26. 26Core, 3 min Partial matches with * and ?SUMIF, COUNTIF with wildcards
  27. 27Core, 3 min Count with two conditionsCOUNTIFS
  28. 28Core, 3 min Add up with two conditionsSUMIFS
  29. 29Core, 3 min Look it upVLOOKUP
  30. 30Core, 3 min Find the right bracketVLOOKUP approximate match
  31. 31Core, 3 min XLOOKUP, the modern wayXLOOKUP
  32. 32Core, 3 min Where is it in the list?MATCH
  33. 33Advanced, 3 min INDEX and MATCH togetherINDEX + MATCH
  34. 34Advanced, 3 min Lock just the row or the columnMixed references
  35. 35Advanced, 3 min Growth per year (CAGR)CAGR with ^
  36. 36Core, 3 min Use a rate from another sheetReferences to other sheets
  37. 37Core, 3 min Catch the error, not the bugIFERROR
  38. 38Core, 3 min Which invoices are missing?Compare two lists
  39. 39Core, 3 min Reconcile the ledger with the bankXLOOKUP or VLOOKUP + IFNA
  40. 40Core, 3 min Join text together&, CONCAT, PROPER
  41. 41Core, 3 min Split first and last namesLEFT, MID + FIND
  42. 42Core, 3 min Stray spaces that break a countTRIM
  43. 43Core, 3 min Flag the bad entriesTRIM, LEN, EXACT
  44. 44Advanced, 3 min Clean a bank descriptionTEXTBEFORE, TEXTAFTER, PROPER
  45. 45Core, 3 min Mistake hunt: #N/A everywhereFixing #N/A
  46. 46Core, 3 min Mistake hunt: hard-coded numbersReferences instead of typed numbers
  47. 47Core, 3 min Mistake hunt: numbers stored as textNumbers stored as text
  48. 48Core, 3 min One of each, then the totalsUNIQUE
  49. 49Core, 3 min Your first pivot tablePivot tables
  50. 50Advanced, 3 min Which category went up most?SUMIFS, change, lookup
  51. 51Core, 3 min How many days late?Date arithmetic
  52. 52Core, 3 min Turn text into real datesDATEVALUE
  53. 53Advanced, 3 min Month ends and working daysEOMONTH, NETWORKDAYS
  54. 54Core, 3 min Renewal datesEDATE
  55. 55Core, 3 min Days overdue and aging bandsDate difference, aging bands
  56. 56Core, 3 min How many late orders?Pick the tool
  57. 57Core, 3 min Sales per repPick the tool
  58. 58Core, 3 min Whose part is it?Pick the tool
  59. 59Core, 3 min Who gets the bonus?Pick the tool
  60. 60Core, 3 min Each region's sharePick the tool
  61. 61Advanced, 3 min Case: the supplier reportCase, five steps
  62. 62Advanced, 3 min Case: the monthly budgetCase, five steps
  63. 63Advanced, 3 min Case: the reorder listCase, five steps

The whole course, in order.

The challenges teach one move each. The course puts them in order and makes you do each one twice, the second time on data you haven't seen.

$29 One time. No subscription. Early-access price. Get Pro for $29

Secure checkout on Stripe.

  • CourseAll 63 ready lessons in order, plus every one we add. The first 5 are free. Each formula lesson ends with a second round on new data, no hints.
  • TestsYour score on the interview practice tests is free. Pro adds the full report: what went wrong on each task, and the lesson for it.
  • 14 daysNot what you hoped for? Full refund within 14 days, no questions. Refunds

Pro isn't open right now

Checkout is closed for the moment, so nothing was charged. Leave your email and we'll write once when it opens. The price is $29, one time.

One email when Pro opens. Unsubscribe in one click. Privacy

Continue

Sign in or create an account

No password. Your solved challenges then follow you to any device.

Signing in sets one cookie that keeps you signed in. Privacy