By the end of this you will have a repeatable routine for taking a formula you did not write, in a workbook you inherited from someone who left, and getting back an explanation you can act on. Not a paraphrase of the syntax. An account of what the thing does to your actual data, including the branch nobody mentions until it fires at quarter end and the numbers move by four percent.

You need a Microsoft 365 work or school account, the standalone Copilot app, the workbook, and clearance to upload it. You do not need a Copilot licence. The entire routine runs on the included tier, which is the reason it is worth writing down: explanation is the one thing the free tier is genuinely good at, and losing the Excel sidebar did not take it away. It changed how you hand the file over, not whether you can.

Why this approach

The obvious move is to paste the formula into a chat window and ask what it does. That gets you a grammar lesson. It will tell you that INDEX returns a value at a position and MATCH finds the position, which you could have got from the function reference, and it will do it with total confidence about ranges it has never seen.

Uploading the file is different in kind. The model can read what is actually in 'Rate Card'!$A$2:$A$400, so when it tells you the lookup fails for a blank client code it is describing your workbook rather than a generic one. That is the whole gap between an explanation and a description, and it costs one upload.

Step 1: Cut the workbook down to what the formula can see

// TAB 3 - CHECKLIST

The sanitising checklist, as it ships in the workbook

Seven lines, each with the reason next to it. Run the whole thing before the file leaves your machine.

// 01

Every line has a reason

A checklist without them gets skipped the second week. The Why column is what stops that.

// 02

The blanks are the interesting part

Sanitising the mess out is how you end up with a confident explanation of a workbook that does not exist.

// 03

Write the scaling factor down

On the Config tab. Without it you cannot read the answer back against the real numbers.

Make a copy. In the copy, keep the sheet the formula lives on and every sheet it references, then delete everything else. Trace the references first, because inherited formulas reach further than you expect.

Take this one, lifted from a contractor billing sheet I was handed with no documentation and a fortnight of history:

vba
=IFERROR(INDEX('Rate Card'!$D$2:$D$400,MATCH(1,($B7='Rate Card'!$A$2:$A$400)*($C7>='Rate Card'!$B$2:$B$400)*($C7<='Rate Card'!$C$2:$C$400),0)),IF($B7="","",VLOOKUP($B7,'Fallback Rates'!$A:$B,2,FALSE)*IF($E7>40,1.5,1)))

Two sheets, two lookup tables, and a multiplier. All three have to come with you or the explanation is guesswork.

Then deal with the data. Replace real client names with Client A, Client B. Scale the rates by some factor you write down. Keep the shape exactly: same number of rows, same blanks in the same places, same date formats, same stray text in the numeric column if there is one. The blanks and the stray text are the interesting part. Sanitising them out is how you get an explanation of a workbook that does not exist.

Step 2: Ask by cell address, not by pasting the formula

Upload the trimmed file, then ask about a location rather than a string:

This is a contractor billing sheet. Explain what the formula in cell F7 of the Billing sheet does, referring to the actual data in the Rate Card and Fallback Rates sheets. I did not write this and I am trying to work out whether I can trust it.

Naming the cell forces it to read the file rather than reason about text you supplied. Saying you did not write it matters more than it should: it stops the reply arriving as polite validation of your work and steers it toward the audit you actually wanted. If that sounds like a small thing, it is the same effect I wrote about in most Copilot complaints being a prompting problem, showing up in a context where the stakes are somebody else's invoice.

Step 3: Make it walk the evaluation order

The first answer will be a summary. Summaries flatten formulas, and flattening is exactly where an inherited formula hides its behaviour. Ask again:

Walk through the evaluation order for F7 using row 7's actual values. What does each part return before the next one runs?

Now you get the boolean multiplication in the MATCH resolving to an array of ones and zeros, the 1 being matched against it, the position that comes back, and the rate INDEX pulls at that position. You also get to see the moment it hits #N/A on a date outside every band, which is the thing the summary called "handles missing rates gracefully".

Step 4: Run the three questions that expose what got skipped

Explanations are optimistic. They describe the path the formula takes on a good row, because that is the path the data you uploaded mostly travels. These three questions pull the rest out, and they are the same three every time:

What does this return when the inputs are blank or malformed? For the formula above, the honest answer is that a blank client code returns an empty string via the inner IF, but a client code that exists with a date outside every band falls through to a completely different rate table. Nobody calls that graceful once they have seen it.

Which of these arguments are hardcoded, and what breaks if the data grows? $D$2:$D$400 is a bet that the rate card never exceeds 399 rows. Row 401 does not error. It is silently ignored, which is worse.

What does this do that a reader would not expect from the function names? This is the question that earns its place. Here it surfaces that IFERROR is not error handling at all, it is an undocumented second pricing method, and the workbook cannot tell you afterwards which of the two produced any given number.

Ask all three even when the first explanation seemed complete. Especially then.

Step 5: Write the answer back into the workbook

Open a sheet called Notes. Record the cell address, the date, one paragraph in plain English on what the formula does, and a separate line for each surprise from Step 4. Add the build number if you are tracking Copilot capability changes, since the model behind these answers is not fixed.

This takes four minutes and it is the only step that compounds. The alternative is that the next person inherits the same formula and repeats this entire routine from scratch, which is roughly how the workbook got into this state in the first place. If the formula turns out to be a stack of nested conditions rather than a lookup, that Notes sheet is also the beginning of the case for rewriting it rather than documenting it.

Common mistakes

Uploading the workbook with the real numbers still in it.

Copilot Chat on a work account runs under enterprise data protection, so the upload stays inside the commercial data boundary rather than a consumer service. That is a real protection and it is not a substitute for your organisation's own data-handling policy. Client names and unredacted rates are somebody else's information regardless of where the model runs. Scale and rename first. It costs two minutes and removes the entire question.

Accepting the first explanation because it is well organised.

Fluent prose reads as confidence and the formatting is always immaculate. Neither is evidence. The explanation of the formula above will describe IFERROR as error handling on the first pass every single time, because that is what the function is called, and it will keep describing it that way until you ask what happens when the error actually fires.

Asking it to explain and fix in the same message.

Combine the two and you get a rewritten formula plus a description of the rewrite, which tells you nothing about the original. You now have two formulas you do not understand. Explain first, decide second, and treat anything it writes for you as unverified until it has been through a check of its own.

Frequently Asked Questions

Can I get formula explanations without a Copilot licence?

Yes. File upload and analysis are part of the included Copilot Chat tier on a work or school account, so explaining a formula in an uploaded workbook works without the paid add-on. What the free tier will not do is reach into a file sitting in SharePoint or make the edit inside Excel for you. You hand over a copy and you get an answer back.

Why not paste the formula into the chat instead of uploading the file?

Pasting gets you a description of the functions. Uploading gets you a description of what those functions do to your ranges, which is the part you cannot get from documentation. The difference shows up immediately on any lookup whose behaviour depends on what is actually in the table, which is most of them.

Is it safe to upload a work file to Copilot Chat?

Copilot Chat with a work or school account operates under enterprise data protection, so prompts and uploads stay within the commercial data boundary and are not treated like consumer chat. That is meaningfully different from pasting the same content into a public chatbot. Your organisation's own policy sits on top of that, and tenant settings vary, so check it once rather than assuming either way.

How large a workbook can I upload?

The included tier accepts up to 20 files in a conversation at 50 MB each, covering XLSX, CSV, PDF, DOCX, PPTX and JSON. Size is rarely the binding constraint. Trimming to the sheets the formula touches is worth doing anyway, because a smaller file produces a more specific answer.

Does this work for Power Query steps as well as worksheet formulas?

Partly. You can paste M code and get a reasonable walkthrough of the transformations, but the model cannot see the query's intermediate tables the way it can see worksheet ranges, so it reasons about the code rather than the data flowing through it. Useful for understanding intent, weaker for predicting what breaks on refresh.

What if the explanation is wrong?

Assume it might be. An explanation that is fluent and incorrect is the expensive failure mode here, and it does not announce itself. Verify at least one branch against a row you can compute by hand before the explanation influences a decision, and verify every branch before you change anything.

Where to go from here

This routine explains a formula somebody else wrote. The companion problem is a formula Copilot wrote for you, which fails differently and more quietly, and I have built a verification pass for exactly that.

If the upload step surprised you, or you are still not sure which Copilot surfaces your account has, start with the map of what is left after the pane disappears and then run the five-minute audit that establishes it on your own machine, with a build number column. A capability recorded without a build number is a rumour.

Downloads

  • Formula explanation prompt sheet + Notes template

    The five prompts from the post ready to copy, with placeholders for your own cell address and sheet names, the seven-line sanitising checklist you run before the file leaves your machine, and the Notes sheet you write the answer back into.

    build-a-formula-explanation-workflow-without-the-pane-download.xlsx XLSX18.1 KB

    You will also get new posts by email. Unsubscribe any time.