✕
0 / 63

Bank reconciliation in Excel

Your ledger in A:B says which invoices were paid. The bank statement is in F:G, in its own order. In C2:C9, bring in the amount the bank received for each invoice, or "Not in bank" when the invoice isn't on the statement. In D2:D9, show "OK" when the bank amount equals the ledger amount, otherwise "Check".

XLOOKUP(A2, $F$2:$F$9, $G$2:$G$9, "Not in bank") looks the invoice up and shows the text when it isn't there. With VLOOKUP, add FALSE for an exact match and wrap it in IFNA(…, "Not in bank"). Then compare: IF(C2=B2, "OK", "Check").

39 Reconcile the ledger with the bank XLOOKUP or VLOOKUP + IFNA Core

reconcile.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 XLOOKUP or VLOOKUP + IFNA guide

For each invoice in the ledger, look it up on the bank statement: =XLOOKUP(A2, $F$2:$F$9, $G$2:$G$9, "Not in bank"). Then compare: =IF(C2=B2, "OK", "Check"). What's missing and what came in short are the two answers a reconciliation is for.

CoreAbout 3 minutesBy Updated

Two questions per line

  1. Is it on the statement? A lookup by invoice number. When it isn't there, the lookup fails with #N/A: that is the answer, so show it in words with XLOOKUP's fourth argument or IFNA.
  2. Is the amount right? Compare the bank amount with the ledger amount. A bank fee, a short payment or a typo shows up here.

VLOOKUP needs FALSE here

Without a fourth argument, VLOOKUP does an approximate match, which assumes the first column is sorted. A bank statement is in date order, not invoice order, so VLOOKUP jumps past the right row and returns another invoice's amount, without any error to warn you. Always =IFNA(VLOOKUP(A2, $F$2:$G$9, 2, FALSE), "Not in bank"). See VLOOKUP.

Every cent counts

Don't round before comparing: 1,249.50 against 1,250.00 is exactly what you are looking for. If the amounts come from calculations with long decimals, round both to two places, not to whole numbers.

Lock the statement range

Filled down without $, the statement range slides with the formula and its first rows drop out. The invoices that were paid early in the month then look missing.

The other direction

A line on the statement with no invoice in the ledger is the opposite problem. Look the statement refs up in the ledger the same way, or count them: =COUNTIF($A$2:$A$9, F2)=0. See compare two lists.

FAQ

How do I reconcile two lists in Excel?
Look each item of one list up in the other by its ID, with XLOOKUP or VLOOKUP and FALSE, show a message when it is missing, and compare the amounts with IF.
Why does VLOOKUP return the wrong amount?
Without FALSE as the last argument, VLOOKUP assumes the list is sorted and can return a nearby row. Add FALSE for an exact match.
How do I show "Not found" instead of #N/A?
Give XLOOKUP a fourth argument, =XLOOKUP(A2,F2:F9,G2:G9,"Not found"), or wrap VLOOKUP in IFNA(…,"Not found").
Should I round amounts before comparing them?
Only to two decimals, to remove floating-point noise. Rounding to whole numbers hides the differences a reconciliation is meant to find.

This task is in the timed accounting practice test. What Excel interview tests check

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