KeyGlanceAll guides

Importing a spreadsheet into TaxCycle

TaxCycle takes a two-column spreadsheet of field codes and values through Data → Excel Import → Import Excel Worksheet. The step that catches almost everybody is that a form import resolves its field codes against whatever form is open, so opening the right form first is not tidiness: it decides whether the file lands or every row is refused.

Verified live in TaxCycle, 2026-08-25 · Updated September 10, 2026

The menu path

With the return open, go to the Data tab, then Excel Import, then Import Excel Worksheet. TaxCycle opens a file dialog titled “Import from an Excel spreadsheet.” Choose your file and it runs, then shows a report of what it took and what it refused.

The spreadsheet itself is simple: a column of field codes, and a column of values beside them. If you built it from TaxCycle’s own template export it will also carry Line#, Description and Data Type columns, and those are fine to leave in place.

The part that catches everybody: the open form decides

A form import resolves its field codes against the form that is currently open. Import a medical expenses file while a T5 is on screen and TaxCycle refuses it line by line — not a valid field code, on every row — even though every code in the file is correct.

We watched this happen on 25 August 2026. The same file, unchanged, imported perfectly the moment the Medical Expenses worksheet was the form in front of us. Nothing about the spreadsheet was wrong. TaxCycle’s own documentation tells you to open the form first; what it does not tell you is that the failure looks exactly like a bad file, which is why people spend an hour checking their codes.

If every row is refused, suspect the form before you suspect the file. A handful of refused rows in an otherwise successful import is a codes problem. All of them at once is almost always the wrong form being open.

Slip files behave differently and more forgivingly. A transposed slip worksheet carries a prefix in its first cell — T4Slips.T4, for instance — which anchors its codes absolutely rather than relative to what is on screen.

Getting to the right form quickly

F4 opens Fast Find. Type a keyword, and if the form you want is the first result press Enter. Choosing a keyword specific enough that your form comes first is worth doing deliberately: TaxCycle reorders Fast Find results between versions, so a habit built on “it is the third one down” quietly breaks on an update.

These are the keywords we have confirmed on a live TaxCycle, each landing on the named form as the first result:

What you are importingFast Find keywordThe form it opens
Medical expensesMedicalMedical Expenses worksheet
DonationsDonationsDonations worksheet, feeding Schedule 9
Child careT778T778, Child Care Expenses
RentalT776T776, Statement of Real Estate Rentals
Moving expensesT1MT1-M, Moving Expenses Deduction
Self-employmentT2125T2125, Business or Professional Activities
RRSP contributionsRRSP contributionsRRSP Contributions worksheet
Student loan interestStudent loanStudent Loan Interest worksheet
Support paymentsSupport paymentsSupport Payments worksheet
Carrying chargesCarrying chargesThe Schedule 4 carrying charges area

One of those is worth calling out on its own. The moving expenses form is found as T1M, not T1-M. Fast Find returns nothing at all for the hyphenated spelling, which is the spelling on the CRA’s own form. The tab, the title and the search all read T1M.

When the report comes back with refusals

TaxCycle names the codes it would not take. Read them rather than re-running: a code refused on the correct form is usually one of three things.

If you need the codes themselves rather than a guess at them, TaxCycle will export them for you.

Where this came from

The menu path and the template format are documented by TaxCycle: Excel Import Forms and Excel Import Slips. The open-form behaviour, the refusal it produces and the Fast Find keywords above come from running real imports on real returns through August 2026, and the dates are on them because that is the only thing that makes a guide like this worth anything.

What we do about it

KeyGlance reads a client’s dropoff, builds the field-code spreadsheet, opens the right form and runs this import on your own Windows machine. Every value stays linked to the spot on the page it was read from, so you check it against the document instead of retyping it. It never files anything with the CRA.

What KeyGlance does · The same job in ProFile

Questions we get asked about this

Why does TaxCycle say “not a valid field code” for every row?

Almost always because the form those codes belong to is not the form on screen. A form import resolves field codes against the open form, so a medical worksheet file imported with a T5 in front of you is refused row by row even though every code in it is correct. Open the form first, then import.

Does the open form matter for slips too?

Less. A transposed slip file carries its own prefix in the first cell, such as T4Slips.T4, which anchors the codes absolutely rather than against whatever is open. It is still worth navigating to the slip, but a slip file is far more forgiving than a form worksheet.

What does the import file itself have to look like?

Two columns are enough: the field code, and the value. TaxCycle's own exported template gives you more than that — FieldCode, Data, Line#, Description and a Data Type column for dropdowns and checkboxes — and it will import back with the extra columns still in place.

Can I import into an expandable table, like a list of medical expenses?

Yes, but the rows have to exist before the codes do. TaxCycle will not export field codes for an expandable table unless you have created at least one blank row in it first, and there is no code to import into a row that was never made.