Migrating from Excel
If you're coming from Excel, many concepts will feel familiar — cell references, functions, and formulas all work similarly. Here's what's different and how to adapt.
What's the same
| Feature | Excel | EngCanvas |
|---|---|---|
| Cell grid | ✓ | ✓ |
| Cell references | A1, $A$1 | $A1, $A$1 |
| Ranges | A1:B10 | $A1:$B10 |
| Functions | SUM(A1:A10) | SUM($A1:$A10) |
| Formulas | =A1+B1 | $A1 + $B1 |
| Cross-sheet refs | Sheet1!A1 | 'Sheet 1'!$A1 |
What's different
1. Units are first-class
In Excel, 10 is just a number. In EngCanvas, you write 10 ft and the unit travels with the value through every calculation.
// Excel: you track units mentally
A1: 20 // (you know it's feet)
A2: 1.5 // (you know it's kip/ft)
A3: =A1*A2/8 // hope you got the units right
// EngCanvas: units are explicit
L = 20 ft
w = 1.5 kip/ft
Mmax = w * L^2 / 8 // → result in kip·ft, verified
2. Named variables, not just cells
In EngCanvas you can assign variables directly:
Fy = 50 ksi
Fb = 0.66 * Fy
Variables are resolved by name. You don't need to set up named ranges for every value — just write Fy = 50 ksi in any cell.
3. Cell reference syntax
EngCanvas uses $ markers for cell references, similar to Excel's absolute references:
| Type | Excel | EngCanvas | Behavior |
|---|---|---|---|
| Relative | A1 | A1 | Variable name (not cell ref!) |
| Abs column | $A1 | $A1 | Cell reference, absolute column |
| Abs row | A$1 | A$1 | Cell reference, absolute row |
| Fully absolute | $A$1 | $A$1 | Cell reference, fully absolute |
In EngCanvas, A1 without a $ is treated as a variable name, not a cell reference. Use $A1 or $A$1 to reference cells. This allows natural variable names like L, M, b, d without conflicting with cell addresses.
4. No = prefix for formulas
In Excel, formulas start with =. In EngCanvas, you simply type the expression:
// Excel
=SUM(A1:A10)
// EngCanvas
SUM($A1:$A10)
For variable assignments, use = as the assignment operator:
total = SUM($A1:$A10)
5. LaTeX rendering
Results are rendered in mathematical notation using LaTeX. A formula like:
sigma = M * c / I
displays as a properly formatted equation: σ = M·c / I = ... ksi
6. Report canvas
EngCanvas has a visual report canvas that doesn't exist in Excel. Instead of cramming calculations, notes, and formatting into a single grid, you use dedicated boxes on a free-form canvas.
Function compatibility
Most common Excel functions work in EngCanvas:
| Category | Supported functions |
|---|---|
| Math | SQRT, ABS, ROUND, FLOOR, CEIL, MOD, SIGN, PI(), E() |
| Statistical | SUM, AVERAGE, MIN, MAX, COUNT, STDEV, MEDIAN, VAR |
| Lookup | VLOOKUP, HLOOKUP, XLOOKUP, INDEX, MATCH, CHOOSE |
| Logical | IF, AND, OR, NOT, IFS, SWITCH, XOR |
| Text | CONCAT, LEFT, RIGHT, MID, LEN, TRIM, UPPER, LOWER |
| Conditional | SUMIF, COUNTIF, AVERAGEIF, SUMIFS, COUNTIFS |
| Dynamic Array | SORT, FILTER, UNIQUE, SEQUENCE, SORTBY |
| Engineering | DELTA, GESTEP, BIN2DEC, DEC2BIN, HEX2DEC |
See the Function Reference for the complete list of all 196 functions.
Importing Excel files
Use Insert → From Excel. The dialog accepts .xlsx, .xls, and .csv, and prompts
for a password on protected workbooks.
Three toggles, all on by default:
| Option | What it does |
|---|---|
| Import formulas | Brings formulas across, rewriting cell references to EngCanvas form (A1 → $A1). Functions EngCanvas doesn't have are preserved as text so you can find and fix them. |
| Import values | Brings the computed cell values across. |
| Import formatting | Brings cell formatting across. |
Some Excel features have no equivalent and are skipped. After the import the dialog lists exactly what it dropped — charts, images, pivot tables, conditional formatting, data validation, macros/VBA, named ranges with external references, and error cells.
After import, add units to your inputs so dimensional checking can do its work.
Exporting
| Format | Where | Scope |
|---|---|---|
.xlsx | Insert → Export .xlsx | All sheets |
.csv | Insert → Export .csv | Active sheet |
| View → PDF | Active report or document | |
| JSON | View → JSON | Active report's boxes |
.calcpad | Home → Save (Ctrl+S) | The whole project |
Tips for transitioning
- Add units to every input —
20becomes20 ft,50becomes50 ksi - Use variable names — instead of referencing
$A1everywhere, defineFy = 50 ksiand referenceFy - Use the report canvas for documentation — instead of hiding notes in cell comments
- Let dimensional analysis catch errors — if a result has unexpected units, your formula likely has a mistake
- Use
$for cell references — remember that bare identifiers likeA1are variable names
Next steps
- Formula Syntax — complete formula reference
- Cell References — detailed reference guide