Can AI Build Your Excel Tracker? Jen’s Step-by-Step Claude + Copilot Test

Jen's order notes used to live in WhatsApp threads, a paper pad and her memory. Then the weekend orders doubled, and one Sunday night she realised she could not say whether the birthday cake order had actually made money, or who still owed her a balance.

This is Part 2 of her story. In Part 1, we followed her as she turned weekend cooking into a small business. Here we open her Excel workbook and build it step by step with Claude and Microsoft Copilot: the sheets, the formulas, the payment tracking, the dashboard and, at the end, a one-click VBA macro. We also show where our first attempts went wrong, so you can skip those mistakes.

Illustration of a kitchen counter turning into an Excel workbook, with six stages from ingredient prices to a one-click macro

Pick Your Starting Point: Follow the Signpost

You do not have to read this guide in order. Find the sentence that sounds most like you, then follow the sign to the right tool and the right step.

"I have nothing yet. I need a workbook designed."
➔ Claude
Steps 3 and 4
"I need a calculation that updates itself."
➔ Formulas
Steps 5 to 9, with either AI tool
"My data is already in Excel. I want to ask it questions."
➔ Copilot in Excel
Step 11, if your plan includes it
"I repeat the same clicks every week on desktop Excel."
➔ VBA macro
Step 13
"I am not sure what I need yet."
➔ Start here
Step 1, then Step 2

Features and plans change often, so check your own screen and Microsoft's current documentation for what your version of Excel and Copilot can do.

The Kitchen Idea: Why a Workbook Is Easier Than It Looks

Jen already runs a kitchen, so we explained Excel in kitchen terms. A good workbook is organised like a good kitchen: everything has one home, and you never keep the same thing in two places.

陵 Pantry shelf
Ingredients sheet
One price per ingredient, updated in one place.
 Recipe cards
Recipe Costing sheet
What goes into each dish, and what it costs.
 Menu board
Menu sheet
Selling price next to cost per portion.
 Order pad
Orders and Order Items
Who ordered, and which dishes.
 Cash tin
Payments and Expenses
Money in and money out.
 Noticeboard
Dashboard
One glance on Sunday evening.

Why this matters: if butter goes up in price, Jen changes one cell on the pantry shelf and every recipe card, menu line and order that uses it can follow. That single idea drives the whole build.

Want to see how AI can turn a small food business's scattered order records into an organised Excel system? Watch the video for a practical look at building the tracker.

Step 1: Decide What One Order Should Trigger

We did not open an AI tool first. We asked Jen what should happen the moment she types in a new birthday order for 30 people. Her answer became our blueprint.

1. Enter the order
Customer code, event date, status
↓
2. Pick dishes and quantities
Prices appear on their own
↓
3. Costs calculate
Ingredients, packaging, delivery, preparation time
↓
4. Payments update the balance
Advance now, final payment later
↓
5. Dashboard refreshes
Sales, owed, costs, profit

She also had six questions she could never answer quickly: which dishes earn the most, who still owes money, what a 30-person order really costs, which ingredients are getting dearer, how this month compares with last, and which menu to promote again. Keep your own list of questions. It becomes your dashboard later.

Step 2: Meet Your Two AI Helpers (They Work Differently)

Jen assumed Claude and Copilot were interchangeable. They are not, and knowing the difference saved us a lot of confusion.

 Claude: the planner and builder
You talk to it in a chat. It designs the workbook, explains formulas, reviews your ideas and, when file creation is available on your account, produces a downloadable .xlsx file.

Mini example: "Design my workbook, but do not build it yet."
 Copilot in Excel: the in-sheet analyst
It lives inside Excel and works on the workbook you have open. It can help with formulas, charts, PivotTables and questions about your data, if your Microsoft 365 plan and workbook setup support it.

Mini example: "Which confirmed orders still have a balance?"

Our plan: Claude builds the first version, then Copilot helps Jen explore it. You do not need both. Use whichever you have, and the steps still work.

The four-part prompt we used every time

Good prompts to either tool followed the same shape. It turned out to matter more than which tool we picked.

1. Context
Table names, column names, what the business does.
2. Task
One clear thing to produce.
3. Rules
"Do not invent figures." "Do not delete anything."
4. Output
Formula plus a plain-English explanation and where to type it.

If prompting is new to you, our piece on giving AI the right information at the right moment explains why the context part does so much work.

Our Test: One Giant Prompt vs. Design First

We set up the same request twice with Claude. Both times the goal was Jen's full tracker. The results show why Step 3 exists. These observations come from one small test, not a benchmark.

ApproachWhat we askedWhat happened
Attempt 1: giant promptBuild me a complete Excel tracker for my food business with everything I need.A tidy-looking workbook, but advances were treated like extra sales, and one row held every dish in an order, so costs could not be split.
Attempt 2: design firstDesign the sheets and connections first. Do not build yet. Flag any double-counting.The plan separated Orders from Order Items, and order value from payments received, before a single formula existed.

Relative, illustrative view of how many structural problems we had to fix afterwards (our impression, not a score):

Attempt 1: giant prompt

Attempt 2: design first

This is the same trap we describe in our look at why confident AI answers still need checking: output that looks finished is not output that is correct.

Step 3: Ask Claude to Design the Workbook (Before Building It)

Jen opened her food-business Project in Claude and pasted this. Read the last paragraph carefully, because it is the most valuable sentence in the prompt.

I run a small home-based food business: weekend orders, festive menus and party catering. I want an Excel workbook to track ingredients, recipe costing, menu prices, customer orders, the individual dishes in each order, customer payments, monthly expenses and business performance. Design separate worksheets for each. For every worksheet give me: recommended column names, what I should type in, which fields calculate automatically, which fields connect to other sheets, and the formulas. I am a beginner, so explain in simple language. Do not create the file yet. First show me the design and point out any possible double-counting or calculation problems.

Claude's design surfaced four relationships Jen had never put into words:

One order contains several dishes
One dish contains several ingredients
One order can receive several payments
Monthly expenses must stay apart from costs already given to orders

Takeaway: planning first lets you correct assumptions while they are still cheap to fix.

Step 4: Build the Workbook With Claude

After Jen approved the design, she asked for the file. Notice how many rules she packed into the prompt, especially the one about sample data.

Based on the approved design, create a downloadable workbook called Jen_Food_Business_Tracker.xlsx with eight sheets: Ingredients, Recipe Costing, Menu, Orders, Order Items, Payments, Expenses and Dashboard. Use clear headings, Excel tables with filters, suitable date and currency formats, dropdown lists for order status, payment method and expense category, formulas for calculated fields, and a few sample records clearly labelled as examples. Use structured table references so formulas grow when I add rows. Do not present invented figures as real records. Explain how to download and use the file.

Whether Claude can hand you a file depends on the features available to your account. If it cannot, ask it to give you each sheet's columns and formulas, and type them in yourself. When the file arrives, check that all eight sheets exist and that sample rows are clearly marked before real customer details go in.

A quick Excel concept: what is an Excel Table?

You will see names such as tblIngredients all through this guide, so it is worth five minutes to understand them. An Excel Table is a normal range of cells that Excel has given a defined structure: column names, filters, and the ability to grow by itself when you add records.

The difference at a glance. Both grids below hold the same four ingredients. Only one of them knows it is a list.

A plain range
IngredientUnitUnit cost
Flourkg$3.00
Sugarkg$2.00
Butterkg$5.00
Chocolatekg$8.00

Just cells and values. Add a row underneath and nothing else happens.

An Excel Table
Ingredient ▾Unit ▾Unit cost ▾
Flourkg$3.00
Sugarkg$2.00
Butterkg$5.00
Chocolatekg$8.00

Named, filterable, striped, and it grows by itself.

How to turn your list into a table. Six small moves:

1. Select
Highlight the ingredient data, headings included
2. Ctrl + T
Press the keys together
3. Check the box
Make sure "My table has headers" is ticked
4. Select OK
The grid changes colour and gets filter arrows
5. Table Design tab
It appears in the ribbon when a table cell is selected
6. Rename it
Type tblIngredients in the Table Name box

Table names cannot contain spaces. We start ours with tbl so they are easy to spot inside a formula.

Watch it grow. This is why Jen cares. She types a new ingredient directly under the last row, and Excel pulls it into the table:

Table name: tblIngredients  |  a new row was typed under Chocolate
IngredientUnitUnit cost
Flourkg$3.00
Sugarkg$2.00
Butterkg$5.00
Chocolatekg$8.00
Milk (new)litre$2.50

The table stretches to include the new row and applies its formatting. If the table also has calculated columns, Excel normally fills those formulas in for the new row too. It is still worth a quick glance to confirm.

Why formulas read better. Compare the two ways of adding up the same column:

Cell references
=SUM(C2:C500)
What is in C? How far down should it go? Who knows.
Structured reference
=SUM(tblIngredients[UnitCost])
Reads like a sentence, and follows the table as it grows.

Step 5: Build the Costing Engine (Six Small Moves)

This is the part Jen found hardest to picture, so we broke it into six substeps. In each one the goal is the same: one place to keep ingredient prices, and everything else follows it. Jen buys from different stores, prices change, and the same ingredient appears in several dishes. Follow the path below, and use the colour key to tell the cells you type from the cells Excel calculates.

5.1 Price list → 5.2 Recipe lines → 5.3 Fetch price → 5.4 Line cost → 5.5 Per portion → 5.6 Menu
Amber header: you type these Green header: Excel calculates these Yellow cell: the result of this substep

5.1 Create the Ingredients sheet (the price list)

Goal: one list of ingredients with their units and prices. These are sample prices, so replace them with your real supplier prices.

Sheet: Ingredients  |  Table name: tblIngredients
IngredientUnitUnitCost
Flourkg3.00
Sugarkg2.00
Butterkg5.00
Chocolatekg8.00
Milklitre2.50

Do this: select the data, press Ctrl + T, and name the table tblIngredients (the Step 4 mini-lesson shows how). From now on, when a supplier changes a price, this is the only place Jen edits.

5.2 Create the Recipe Costing sheet (one row per ingredient)

Goal: record what goes into one batch of a dish. Jen's homemade chocolate cake makes 10 portions per batch, so each ingredient gets its own row. Name this table tblRecipeLines.

Sheet: Recipe Costing  |  Table name: tblRecipeLines  |  typed columns first, calculated columns still empty
DishIngredientQtyUsedBatchYieldUnitCostLineCostCostPerPortion
Chocolate CakeFlour110(next)(next)(next)
Chocolate CakeSugar0.510(next)(next)(next)
Chocolate CakeButter0.510(next)(next)(next)
Chocolate CakeChocolate0.410(next)(next)(next)
Chocolate CakeMilk0.510(next)(next)(next)

Quantities are in the same unit as the price list: kilograms for the dry goods and litres for milk. The ingredient names must be spelled exactly as in tblIngredients, because the next step matches on them.

烙 Where Jen used AI: catching spelling mismatches

Before building any formula, she pasted both ingredient lists into Claude and asked:

Here are the ingredient names from my price list and from my recipe lines. List any recipe ingredient that does not match a price-list name exactly, including extra spaces or different spellings. Do not change anything, just list them.

A two-minute check that saves a puzzling zero later.

5.3 Make Excel fetch the price automatically

Goal: fill the UnitCost column from the price list, so Jen never types a price twice. This is the first formula, and the first place she asked Claude for help.

烙 Where Jen used AI: Prompt 3, retrieve ingredient prices
My Excel workbook contains a table named tblIngredients with columns Ingredient, Unit and UnitCost. I have another table named tblRecipeLines with columns Dish, Ingredient, QtyUsed and BatchYield. I want the UnitCost column in tblRecipeLines to automatically retrieve the matching ingredient price from tblIngredients. Generate the correct Excel formula using XLOOKUP and structured table references. Explain each part of the formula and tell me exactly where to enter it.

Notice the prompt names both tables and every column. That is the "context" from our four-part prompt.

Claude's formula, with each part colour-coded:

=XLOOKUP([@Ingredient], tblIngredients[Ingredient], tblIngredients[UnitCost], 0)
Look for
the ingredient on this recipe row
Search in
the ingredient column of the price list
Bring back
the price from that same row
If not found
show 0 instead of an error

Do this: click the first cell under UnitCost in tblRecipeLines, type the formula, and press Enter. In a table, Excel normally fills the whole column. For the Butter row, it finds Butter in the price list and brings back 5.00. The result:

E2  fx  =XLOOKUP([@Ingredient],tblIngredients[Ingredient],tblIngredients[UnitCost],0)
ABCDEFG
DishIngredientQtyUsedBatchYieldUnitCostLineCostCostPerPortion
Chocolate CakeFlour1103.00(next)(next)
Chocolate CakeSugar0.5102.00(next)(next)
Chocolate CakeButter0.5105.00(next)(next)
Chocolate CakeChocolate0.4108.00(next)(next)
Chocolate CakeMilk0.5102.50(next)(next)
烙 Tip: if XLOOKUP is not available on your Excel
XLOOKUP is not in every older version of Excel, so check your own. If it shows an error such as #NAME?, ask the AI: "Rewrite this formula using INDEX and MATCH, for an older version of Excel, with the same table names."

5.4 Calculate the cost of each ingredient line

Goal: quantity used times price, row by row. Jen's request was one plain sentence.

烙 Where Jen used AI
Create an Excel formula for the LineCost column in tblRecipeLines. It should multiply QtyUsed by UnitCost for the current row.
=[@QtyUsed] * [@UnitCost]

Butter check: 0.5 kg × $5.00 = $2.50

F2  fx  =[@QtyUsed]*[@UnitCost]
IngredientQtyUsedUnitCostLineCostCostPerPortion
Flour13.003.00(next)
Sugar0.52.001.00(next)
Butter0.55.002.50(next)
Chocolate0.48.003.20(next)
Milk0.52.501.25(next)

5.5 Work out the cost per portion

Goal: how much ingredient cost goes into one slice of cake. Divide each line cost by the number of portions the batch makes. Jen added a safety request to her prompt, which is a good habit.

烙 Where Jen used AI
Create a formula to calculate CostPerPortion by dividing LineCost by BatchYield. Handle missing or zero batch yields safely.

"Handle missing or zero safely" is why the formula below has IFERROR. Without it, a blank yield would show a #DIV/0! error that spreads into every total.

=IFERROR([@LineCost] / [@BatchYield], 0)

"Divide the line cost by the portions in the batch. If that fails, show 0."

Finished recipe sheet: Chocolate Cake, 10 portions per batch
IngredientLineCostBatchYieldCostPerPortion
Flour3.00100.300
Sugar1.00100.100
Butter2.50100.250
Chocolate3.20100.320
Milk1.25100.125
Total10.95 1.095

So one portion of chocolate cake costs about $1.10 in ingredients. That is ingredients only. Packaging, labour and utilities are still to come.

5.6 Connect the recipe to the Menu sheet

Goal: put each dish's selling price right next to its ingredient cost, so Jen can see at a glance what she earns on it. Create a table named tblMenu and type the dish names and selling prices. The ingredient cost column is a formula.

烙 Where Jen used AI
In tblMenu, create a formula for IngredientCostPerPortion that adds up the CostPerPortion values in tblRecipeLines for the dish on the current row. Use SUMIFS and explain it in one sentence.
=SUMIFS(tblRecipeLines[CostPerPortion], tblRecipeLines[Dish], [@Dish])

"Add up the cost per portion, but only for recipe rows where the dish matches this menu row."

Sheet: Menu  |  Table name: tblMenu
DishSellingPriceIngredientCostPerPortion
Chocolate Cake4.001.095
Special Rice Dish6.000.00 (no recipe lines yet)
Dessert Cup3.500.00 (no recipe lines yet)

Only the cake has recipe lines so far, so the other two dishes show zero. That is a useful signal: a zero ingredient cost usually means a recipe has not been entered yet, not that the dish is free to make. For the cake, $1.095 against a $4.00 price means ingredients take about 27 percent of the selling price.

What Jen achieved: she has a reusable costing system instead of recalculating every dish from scratch. Here is the ripple, using the formulas above:

Butter price: 5.00 → 6.00
One cell changed in tblIngredients
↓
Butter line cost: 2.50 → 3.00
0.5 kg now costs more
↓
Cake cost per portion: 1.095 → 1.145
Batch of 10, so +0.05 per portion
↓
Menu and every order using cake
Cost figures update, with no copy-pasting

Tiny per portion, but across a 25-portion order it adds up, and Jen would never have spotted it by hand.

Step 6: Build the Order Pad (Two Linked Sheets)

The mistake that sank our Attempt 1 was cramming a whole order into one row. A birthday order might have 25 main dishes, 25 desserts and a cake. The fix is two sheets joined by an Order ID, like a receipt with a header and line items.

烙 Where Jen used AI: understanding the split

Jen did not see why one order needed two sheets, so she asked before she built:

Using sample rows, show me one order with three dishes stored in a single row, and then the same order split into an Orders table and an Order Items table. Explain in plain language what goes wrong with the single-row version when I want to total costs per dish.
tblOrders (the receipt header)
J001 Customer A, Birthday, Confirmed
J002 Customer B, Family dinner, Pending
J003 Customer C, Anniversary, Confirmed
↔
tblOrderItems (the line items)
J001 Chocolate Cake x 25
J001 Special Rice Dish x 25
J001 Dessert Cup x 25
J002 Chocolate Cake x 8

Same colour, same order. For privacy, Jen uses customer codes rather than full names and phone numbers in the workbook.

Four formulas that make an order calculate itself

Column in tblOrderItemsWhat Jen asked Claude forFormula
UnitPriceFetch the selling price from tblMenu for the chosen dish=XLOOKUP([@Dish],tblMenu[Dish],tblMenu[SellingPrice],0)
LineRevenueMultiply Quantity by UnitPrice=[@Quantity]*[@UnitPrice]
IngredientCostPerPortionFetch the ingredient cost per portion from tblMenu=XLOOKUP([@Dish],tblMenu[Dish],tblMenu[IngredientCostPerPortion],0)
IngredientCostQuantity times that cost per portion=[@Quantity]*[@IngredientCostPerPortion]

Here is what the J001 lines look like once the formulas are in. The rice and dessert cost-per-portion figures are sample values, assumed for the demonstration as if their recipes had been entered (Step 5 only covered the cake):

Sheet: Order Items  |  Table name: tblOrderItems  |  Order J001
Order IDDishQuantityUnitPriceLineRevenueIngredientCostPerPortionIngredientCost
J001Chocolate Cake254.00100.001.09527.38
J001Special Rice Dish256.00150.002.10 (sample)52.50
J001Dessert Cup253.5087.501.20 (sample)30.00

Then, back in tblOrders, a SUMIFS gathers every line for the order. Add an OrderRevenue column and an IngredientCost column:

OrderRevenue: =SUMIFS(tblOrderItems[LineRevenue], tblOrderItems[Order ID], [@[Order ID]])
IngredientCost: =SUMIFS(tblOrderItems[IngredientCost], tblOrderItems[Order ID], [@[Order ID]])

Jen typed three line items and one total appeared. The column names in your own tables must match the names in the formula exactly, spaces included. A mismatch is the most common reason a pasted formula fails.

烙 Where Jen used AI: a hand-check before trusting Excel
Here are the three line items for order J001: 25 chocolate cakes at 4.00, 25 special rice dishes at 6.00 and 25 dessert cups at 3.50. Work out by hand what OrderRevenue should be, showing each step, so I can compare it with what Excel shows.
Hand check
100.00 + 150.00 + 87.50 = 337.50
Excel shows
OrderRevenue = 337.50 ✅
烙 Where Jen used AI: stopping a quiet zero

Our lookups end with a fallback of 0, which keeps the sheet tidy but can hide a typo. If a dish is spelled differently from the menu, the price simply shows 0.00. So Jen asked for a safety net:

Add a CheckDish column to tblOrderItems that shows Missing when the Dish is not found in tblMenu, and OK when it is. Explain the formula.
=IF(ISNA(MATCH([@Dish],tblMenu[Dish],0)),"Missing","OK")

Pair it with conditional formatting (Step 12) so any "Missing" stands out in red.

Step 7: Separate Three Different Money Numbers

This step is where Jen had been confused for months. Suppose J001 is worth 337.50. She takes a 100.00 advance now and the remaining 237.50 after the event. How much has she sold? Not 337.50 plus 100.00 plus 237.50. She sold 337.50, once.

烙 Where Jen used AI: getting the idea straight first
Explain the difference between order value, payments received and balance due, using an order worth 337.50 where the customer pays a 100.00 advance and the rest after the event. Keep it to five short lines and avoid accounting jargon.
Order value
What the customer agreed to pay
337.50
Paid so far
Money actually received
100.00 (after advance)
Balance due
Still owed
237.50 (before final payment)

Payments get their own table, tblPayments, one row per payment, each tagged with an Order ID:

Sheet: Payments  |  sample rows
PaymentIDOrder IDDateAmountMethod
P001J001Nov 2100.00Bank transfer
P002J001Nov 8237.50Cash
P003J002Nov 350.00Bank transfer

Here is the same order J001 over time. The order value never changes. Only the paid portion grows, and the balance shrinks to zero:

After the Nov 2 advance: paid 100.00 of 337.50 (about 30 percent)

After the Nov 8 final payment: paid 337.50 of 337.50 (100 percent)

Green = received, orange = still owed.

Two more columns go into tblOrders:

ColumnFormulaIn words
PaidToDate=SUMIFS(tblPayments[Amount],tblPayments[Order ID],[@[Order ID]])Add every payment for this order
BalanceDue=MAX(0,[@OrderRevenue]-[@PaidToDate])Order value minus paid, never below zero

After both J001 payments land, PaidToDate is 337.50 and BalanceDue is 0.00.

烙 Where Jen used AI: stress-testing her own formula

Notice that BalanceDue never shows a negative number. That is tidy, but it means an overpayment would quietly show as zero. Jen asked Claude to hunt for gaps like this:

My BalanceDue formula is =MAX(0,[@OrderRevenue]-[@PaidToDate]). List five unusual situations that could make it misleading, such as overpayments, refunds, cancelled orders or a payment entered against the wrong Order ID. For each one, tell me what the sheet would show and what I could add to catch it.

Then she tried each situation on a copy of the sheet. The answer is only useful once you have tested it yourself.

For refunds, cancellations and deposits, keep separate records and follow your customer agreement and local rules. These formulas are a simple tracker, not a full accounting system.

Step 8: Find the Real Profit of an Order

Revenue flatters you. A big catering order brings in more money but also eats more ingredients, packaging and hours. We used Part 1's 30-person birthday order, with sample figures, to show where the money goes:

Selling price: 360

Ingredients: 120

Packaging: 25

Delivery: 15

Jen's preparation time allowance: 60

Estimated contribution: 140

Bars are scaled to the selling price. To build this into the workbook, add new columns to tblOrders: four you type, then three Excel calculates.

烙 Where Jen used AI: all the formulas in one go
In my tblOrders table I have OrderRevenue and IngredientCost columns. I am adding PackagingCost, DeliveryCost, LaborHours and HourlyRate (typed by me). Create formulas for LaborCost, TotalOrderCost and EstimatedContribution. Show each formula on its own line and explain in one sentence what it does.
Sheet: Orders  |  sample order, shown as one record
OrderRevenueIngredientCostPackagingCostDeliveryCostLaborHoursHourlyRateLaborCostTotalOrderCostEstimatedContribution
360120251541560220140
ColumnFormulaCheck with the sample
LaborCost=[@LaborHours]*[@HourlyRate]4 × 15 = 60
TotalOrderCost=[@IngredientCost]+[@PackagingCost]+[@DeliveryCost]+[@LaborCost]120 + 25 + 15 + 60 = 220
EstimatedContribution=[@OrderRevenue]-[@TotalOrderCost]360 − 220 = 140
烙 Where Jen used AI: a pricing what-if
This order has a total cost of 220 and sells for 360, so the contribution is 140. What selling price would give a contribution of about 40 percent of the price? Show the working so I can check it.

The working is short enough to verify yourself: if 40 percent is contribution, then 60 percent of the price must cover the 220 cost, so 220 ÷ 0.60 ≈ 366.67.

ScenarioPriceCostContributionShare of price
Current360220140about 39%
Target of 40%about 367220about 147about 40%

The 140 is not final profit. Overheads, tax and other costs still sit outside it, which is the subject of the next step.

Step 9: Track Monthly Expenses (And Why the Date Rule Matters)

Some spending belongs to no single order: cleaning supplies, equipment, marketing. These go in tblExpenses, kept apart from order costs so nothing is counted twice.

烙 Where Jen used AI: choosing expense categories
Suggest seven short expense categories for a home-based food business, for a dropdown list. Do not include ingredient costs or per-order delivery, because those are already tracked on each order. Keep the names to one or two words.

The last instruction matters. Without it, ingredients can sneak into both lists and get counted twice. She then used the answer to build the dropdown (Step 12 shows how).

Sheet: Expenses  |  Table name: tblExpenses  |  sample rows
DateCategoryDescriptionAmount
Nov 1PackagingFood containers35
Nov 4MarketingPromotional material20
Nov 10SuppliesCleaning supplies15
Nov 15EquipmentBaking tools40

To total one month, the Dashboard holds a month-start date in cell B2. Jen changes that one date and every figure on the dashboard follows. She asked Claude to explain the date rule, then we drew it:

烙 Where Jen used AI: the monthly total
Create a formula that calculates the total expenses in tblExpenses for the month selected in cell B2 of my Dashboard. B2 contains the first day of the selected month. Use SUMIFS and explain the date conditions.
=SUMIFS(tblExpenses[Amount], tblExpenses[Date], ">="&B2, tblExpenses[Date], "<"&EDATE(B2,1))
Oct 31
excluded
Nov 1 to Nov 30
included
Dec 1
excluded

"On or after the 1st, and strictly before the 1st of next month." That second half avoids accidentally counting December 1.

With B2 set to 1 November, Jen's dashboard cell returns the sum of the four sample rows above:

Sheet: Dashboard
 AB
2Selected month (first day)1 Nov (you type this)
3Operating expenses110 (35 + 20 + 15 + 40)

Jen can total completed-order sales for a month the same way:

=SUMIFS(tblOrders[OrderRevenue], tblOrders[Status], "Completed", tblOrders[EventDate], ">="&B2, tblOrders[EventDate], "<"&EDATE(B2,1))
烙 Where Jen used AI: when the total shows 0

The first time she tried it, the monthly total came back as zero. Instead of guessing, she described the problem:

My monthly expenses formula returns 0 although there are rows in November. Here is the formula and the first three rows of my table. List the most likely causes and show me how to check each one, before suggesting a fix.
Dates stored as text
They look like dates but Excel treats them as words. A real date aligns right by default.
B2 is not a real date
If B2 holds typed text instead of a date, the comparison fails.
A name does not match
A table or column name differs from the formula by one letter or space.

These are the usual suspects, and asking the AI to diagnose before it rewrites teaches you to find the cause yourself next time.

Six measures that sound alike but are not

Order value
what customers agreed to pay
Payments received
money that actually arrived
Completed-order sales
work finished in the month
Expenses
money spent
Estimated contribution
what is left after order costs
Net business profit
needs all other costs and adjustments

Step 10: Build the Sunday-Evening Dashboard

Jen did not want to open eight sheets every Sunday. She wanted one screen. We started with six tiles, each answering one question from Step 1. Here is the layout we asked Claude to build (figures below are sample values only):

Dashboard  |  Month: Nov (illustrative values)
Completed-order sales
1,240
Payments collected
1,010
Outstanding balances
230
Ingredient costs
410
Operating expenses
110
Estimated profit
720*
*Sales minus ingredients and operating expenses only, in this sample. Your own definition may also include labour and other order costs.

Below the tiles go three charts, each tied to a real question:

ChartQuestion it answers
Line: monthly sales trendIs the business growing or slipping?
Bar: best-selling dishesWhich menu should I promote again?
Pie or bar: expense categoriesWhere is the spending going?

Here is the prompt Jen used. Notice the rule that keeps the dashboard honest:

Using the existing tables in my workbook, create a Dashboard sheet with: completed-order sales for the selected month, payments received, outstanding balances, ingredient costs, operating expenses and estimated operating profit. Add a monthly sales trend chart, a best-selling dishes bar chart and an expense category chart. Use formulas or PivotTables linked to the existing data. Do not type independent sample figures into the dashboard; every value must be calculated from the workbook. Explain how each metric is calculated.

A good rule of thumb: if a chart does not answer a question you actually have, leave it off.

Step 11: Use Copilot Inside Excel

With a working workbook, Jen wanted to ask questions without writing formulas. This is where Copilot in Excel fits, if your Microsoft 365 plan includes it. Copilot's availability, required file location and exact controls vary by plan, organisation and Excel version, so confirm what you have before following along.

Get ready (checklist)

CheckWhyDone?
Workbook open in a supported Excel versionCopilot needs a supported setup☐
Saved to OneDrive or SharePoint, AutoSave onCommonly required, and protects you with version history☐
Data stored as proper Excel TablesGives Copilot clean column names to work with☐
Plan includes Copilot accessWithout it, skip to Step 12☐

Three ways to work: pick the one that matches your risk

Microsoft describes different interaction modes. Treat them like a traffic light. The more it can change, the more careful you should be.

 Chat mode
Ask questions without changing the workbook. Best for exploring.
 Plan mode
Review a proposed sequence of changes before anything happens.
 Editing mode
Copilot makes approved changes directly. Back up first, and check afterwards.

Five questions Jen asked her own data

1. Sales
"From Orders and Order Items, which five dishes had the highest completed-order sales this month? Show a sorted table."
2. Cost problems
"Which menu dishes have the highest ingredient cost as a percentage of selling price? Show the calculation."
3. Unpaid orders
"Which confirmed orders have a balance? Show Order ID, event date, order value, amount received and balance due."
4. A chart
"Create a column chart of completed-order sales by dish, using real values and clear labels."
5. Trends
"Compare the last three months of sales and expenses. Do not assume more sales means more profit."

The review habit that protects you

Whether Claude wrote it or Copilot changed it, we ran the same four checks:

1. See what changed
Which tables and cells were touched?
↓
2. Test with a known answer
Use J001: it should total 337.50
↓
3. Compare against real records
Bank statement, supplier receipts
↓
4. Undo or restore if wrong
Use undo or version history

This is the same discipline we describe in our look at when AI creates extra work: an unchecked result can cost more time than doing the task by hand.

Step 12: Make It Hard to Break

The last piece before automation is stopping messy data at the door. Three small habits did most of the work.

Dropdown for Status
Without it, Jen typed Completed, complete, Done and Delivered. Excel sees four different words. Data > Data Validation > List, with Inquiry, Pending, Confirmed, Completed, Cancelled.
Highlight unpaid balances
Ask Claude: "Give me exact steps for conditional formatting on BalanceDue in tblOrders so any positive balance is highlighted."
Let tables fill formulas
New rows normally inherit calculated columns. Still glance at each new row to confirm the formulas arrived.

Jen's reusable Sunday review prompt

Review this month's business workbook. Summarise completed orders, revenue, payments collected, outstanding balances, ingredient costs, operating expenses and estimated profit. Identify the best-selling dishes, the highest ingredient-cost items, orders with unpaid balances, any unusual expense increases, and three practical improvements for next week. Keep actual figures separate from recommendations. Do not invent missing information.

Step 13: When Clicking Repeats, Ask for a Macro

Formulas calculate. They do not clean, rearrange or print. Every Monday, Jen still got a messy export, and fixing it ate an hour. That is VBA territory: a multi-step routine on desktop Excel. A macro is just a recipe card for Excel: the same steps, the same result, every time.

The messy sheet (sample rows)

 ABCD
1OrderIDCustomerDishQty
2J001" Customer A "Chocolate Cake25
3J001Customer ASpecial Rice Dish"25" (text)
4J002(blank)Dessert Cup8
5J002Customer BDessert Cup8
Red: extra spaces or missing customer Orange: number stored as text Yellow: possible duplicate

A person spots these by eye. A macro will not, unless told. Also, a duplicate may be a typing error or a genuine second order, and only Jen can tell which. So the rule we gave Claude was: flag, never delete.

The staged conversation

StagePromptResult
1. DescribeHere are sample rows from my weekly orders sheet. List what is wrong and ask what you need to know. No code yet.Found the spaces, text-numbers and duplicates, and asked about blank customers.
2. DecideNever delete. Highlight blank customers red and possible duplicates (same OrderID and Dish) yellow. Fix spaces and text-numbers.Rules became explicit.
3. BuildNow write the VBA. Detect the last row, add error handling, comment each section.The macro below.
4. TestGive me five test cases, including an empty sheet and a missing sheet.The empty-sheet case exposed a gap, now handled.

Install it in six moves

1. Save a copy as .xlsm
File > Save As > Excel Macro-Enabled Workbook
↓
2. Show the Developer tab
File > Options > Customize Ribbon > tick Developer
↓
3. Open the editor
Press Alt + F11, then Insert > Module
↓
4. Paste the code
Review it first, and ask AI to explain anything unclear
↓
5. Run on a copy
Click inside the code and press F5, or use Developer > Macros
↓
6. Add a button
Developer > Insert > Button, then assign the macro

It assumes a sheet named WeeklyOrders with headers in row 1, OrderID in column A, Customer in B, Dish in C and Qty in D. Change the names and letters if yours differ.

Sub CleanWeeklyOrders()
    Dim ws As Worksheet
    Dim lastRow As Long, r As Long
    Dim flagged As Long

    On Error GoTo ErrHandler
    Set ws = ThisWorkbook.Worksheets("WeeklyOrders")
    lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row

    If lastRow < 2 Then
        MsgBox "No data rows found.", vbInformation
        Exit Sub
    End If

    Application.ScreenUpdating = False

    For r = 2 To lastRow
        ' 1. Remove extra spaces in Customer
        ws.Cells(r, "B").Value = Trim(CStr(ws.Cells(r, "B").Value))

        ' 2. Convert text-numbers in Qty to real numbers
        If VarType(ws.Cells(r, "D").Value) = vbString Then
            If IsNumeric(Trim(ws.Cells(r, "D").Value)) Then
                ws.Cells(r, "D").Value = CDbl(Trim(ws.Cells(r, "D").Value))
            End If
        End If

        ' 3. Flag blank customers in red (never delete)
        If Len(ws.Cells(r, "B").Value) = 0 Then
            ws.Cells(r, "B").Interior.Color = RGB(255, 199, 206)
            flagged = flagged + 1
        End If

        ' 4. Flag possible duplicates (same OrderID and Dish) in yellow
        If Application.WorksheetFunction.CountIfs( _
            ws.Range("A2:A" & lastRow), ws.Cells(r, "A").Value, _
            ws.Range("C2:C" & lastRow), ws.Cells(r, "C").Value) > 1 Then
            ws.Cells(r, "C").Interior.Color = RGB(255, 235, 156)
            flagged = flagged + 1
        End If
    Next r

    MsgBox "Done. Rows checked: " & (lastRow - 1) & ". Flags raised: " & flagged, vbInformation

CleanUp:
    Application.ScreenUpdating = True
    Exit Sub

ErrHandler:
    MsgBox "Cleanup stopped: " & Err.Description, vbExclamation
    Resume CleanUp
End Sub

After one click, spaces are gone, both text-quantities are real numbers, and the blank customer and the possible duplicate are highlighted. Nothing is removed. Jen checks with the customer, then deletes the extra row herself if it really was a double entry.

Test it before you trust it

Test caseExpectedPass?
Normal weekFlags only where expected☐
Header row onlyFriendly message, no changes☐
Sheet renamed or missingClear error message, no crash☐
500 rows instead of 5All rows checked in reasonable time☐
Run it twiceSame result, no damage☐

Simplest tool first

ToolGood forWatch out for
Formulas and TablesCalculations that update themselvesVery long nested formulas
Power QueryRepeatable import and cleanupInitial learning curve
PivotTableSummaries and groupingNeeds a refresh after data changes
VBA macroMulti-step desktop routines and buttonsDesktop only, security and upkeep
Copilot in ExcelPlain-language questions about your dataPlan-dependent, results need checking

For a wider look at which Excel jobs AI handles well, see our guide to Excel problems AI can solve in minutes.

15 Jobs AI Can Do for Your Macros (Quick Menu)

Cleanup was one use. Here are fifteen, grouped by what you are trying to do. Each is a good first prompt.

CREATE
Turn clicks into a macro Interview you for requirements Clean imported data Format weekly reports One sheet per customer Button-driven workflow Custom function
UNDERSTAND AND FIX
Explain inherited code Debug an error Add error handling Make it reusable Speed it up Document it
PROTECT AND DECIDE
Review code for risk (first look only) Decide whether you need VBA at all

If we had to start with one, it would be the last: ask "what is the simplest safe way to automate this?" before "write me a macro." It is also a handy partner to our guide to automating repetitive work without losing control.

Mistakes We Made (So You Can Skip Them)

 Never do
Count an advance as extra sales. Put a whole order in one row. Enable macros in a file from someone you do not trust.
⚠ Be careful
Invented sample prices left in place. Too many charts. Pasting formulas you cannot explain. Sharing customer details with an AI tool unnecessarily.
✅ Do this
Design first, build in stages. Test with a known answer. Keep a backup. Use customer codes. Settle a manual routine before automating it.

Limitations: When Not to Use This

  • Looks right is not right. AI can write a formula that points at the wrong column or the wrong rows. Always test with a small example where you already know the answer.
  • Not an accounting system. Refunds, deposits, taxes and cancellations need proper records and local rules. Our workbook is a tracker.
  • Desktop only for VBA. Excel for the web cannot create, run or edit macros. Browser-based teams may do better with Office Scripts or Power Query, subject to plan availability.
  • Plan-dependent features. File creation in Claude and Copilot in Excel depend on your account and subscription. Check your own screen.
  • Privacy. Customer details do not belong in an AI chat by default. Use codes or sample data, and follow your organisation's data policy.
  • Our macro has limits. The duplicate check rescans the column for every row, which is fine for hundreds of rows but slow for very large sheets, and it does not fix mixed date formats. Those would be our next prompts.

Your First Seven Days

Do not try to enter every business record on day one. Start small and prove the formulas.

Day 1
List what you need to track and your six questions
Day 2
Ask Claude for the design, then the workbook
Day 3
Enter real ingredient prices and one recipe
Day 4
Add orders and order items
Day 5
Add payments and expenses
Day 6
Build the dashboard and try Copilot
Day 7
Test against figures you know by hand

The same blueprint adapts well beyond food. A tutor can swap dishes for sessions, a photographer can swap them for packages, and a freelance designer can swap them for projects. The structure (list, line items, payments, expenses, dashboard) stays the same. If you are choosing which Claude model to use for planning and formulas, our model tiers guide helps match the model to the task.

Final Thoughts

Jen never became an Excel expert. She learned to explain what her business needed, ask AI to plan before building, and check every result against something she already knew. Claude helped her design and build. Copilot, where available, helped her explore. A macro took care of the Monday cleanup.

The part AI cannot do for you is decide what counts as a real order, what counts as profit, and which numbers to trust. Get those rules right, and the formulas, charts and macros become surprisingly easy. If you have not yet read how Jen's business began, start with Part 1, then come back and build your own tracker.

Frequently Asked Questions

1. Can Claude create an Excel workbook with formulas and charts?

Often, yes, depending on the features available to your account. Ask for the workbook in stages and test the formulas before using real data. If file creation is not available, ask for column lists and formulas and enter them yourself.

2. Is Copilot better than Claude for Excel?

They suit different jobs. Claude is handy for designing, explaining and generating. Copilot works inside a supported workbook. The better choice depends on your plan and task.

3. Do I need to know Excel formulas first?

No. Describe the calculation in plain words and ask for the formula and an explanation. You should still understand what it does and check the result.

4. Why use Excel Tables instead of normal ranges?

Tables have names, filters and automatic expansion, and structured references such as tblOrders[OrderRevenue] are easier to read than cell ranges.

5. How do I avoid counting an advance twice?

Keep order value and payments in separate tables, linked by Order ID. Total the order once and add up payments separately.

6. Can I use Copilot in Excel without a paid plan?

Availability depends on your Microsoft 365 subscription, organisation and Excel version. Check Microsoft's current documentation and your account before following the Copilot steps.

7. Is AI-generated VBA safe to run?

Treat it like code from a stranger. Read it, ask AI to explain it, test it on a copy, and be wary of anything that touches files, networks or sensitive data.

8. Is it safe to upload my business workbook to an AI tool?

Review the provider's data policy and your organisation's rules first. Remove customer names, phone numbers, addresses and payment details, and never share passwords or financial credentials.

Comments

Popular posts from this blog

Gemini 4 Argon, GPT-6 Astra, Claude Fable 5.1 and More: Which Latest AI Model Fits You?

Don't Trust the Trillion: A 5-Test Kit to Judge Mistral Large 4 on Your Own Work