Import your BoQ from a spreadsheet
Bring a Bill of Quantities workbook into VEXORS: the quick single-sheet importer, the AI full-workbook import from the BoQ step or the AI drafter, and the rules that guarantee nothing is ever guessed.
What you'll learn
- Choose between the quick section importer and the AI full-workbook import
- Read the import preview: complete rows, rows needing completion, adjustments, and workbook questions
- Understand quantity bases: firm, provisional, and rate-only
- Trust what arrived: every value is copied from your file, never invented
Real Bills of Quantities arrive as workbooks: a title block, merged headers, a sheet per trade, sub-totals in odd places, and a column layout the estimator invented years ago. Retyping five thousand lines is not an option, and neither is an importer that quietly "fixes" your quantities.
VEXORS gives you two importers and one guarantee. The guarantee first, because everything else follows from it.
Why this matters
Every number on your BoQ is a number you will eventually bill or be billed for. So the import rule is absolute: values are copied from your file exactly as written, and anything the file does not contain is imported empty and flagged for you to complete. No quantity is estimated, no missing rate defaulted. A row with a description is never silently skipped either; if it cannot import cleanly, you are told why, row by row. The one place the importer fills a blank, a file with no unit column at all, it tells you so on every affected row.
Which importer to use
| Your file | Use | Why |
|---|---|---|
| One clean sheet with header columns (name, quantity, unit) | Import Spreadsheet (quick importer), inside a BoQ section | Fastest path and free. Reads the first sheet, maps standard columns, imports into the section you are in. |
| A full workbook: multiple sheets, title blocks, merged cells, quantity grids, non-standard layouts | Import full BoQ workbook (AI), from the BoQ step or the AI drafter | The AI reads the workbook's structure, proposes how sheets and groups map to sections, and shows you everything for review before a single line is created. |
| No file at all | Build by hand in the wizard | The BoQ step covers sections, sub-sections, line items, and units. See Build your Bill of Quantities. |
The quick importer, step by step
Open it from a BoQ section
In the wizard's BoQ step, choose Import Spreadsheet in the section you want to fill. The Import BoQ from Spreadsheet dialog shows the expected Spreadsheet format and a downloadable Template if you would rather start from a known-good file.
Drop the file and read the summary
Drop your file. The importer finds the header row on its own; if your file opens with a title block, it tells you which row it treated as headers ("Column headers found on row 4"). You get three counts before anything is imported:
- Complete rows: rows with a name, a valid quantity, and a recognized unit. These import ready to publish.
- Needs completion: rows missing a quantity or unit, or carrying one that is not a number, not above zero, or not recognized. These import too, with the missing field left empty and flagged, so you complete them in the grid. They are never guessed and never dropped.
- Blank rows: rows with no content, skipped.
Rows imported with adjustments lists exactly what was changed and what the file said: a truncated over-long code, an unrecognized importance level reset to None, an invalid estimated rate ignored. If the file has no unit column at all, the rows import as "each" and each one says so, so you can change the unit in the grid if the bill uses another.
Import and complete
Select Import N rows, and the rows land in your section. Anything flagged as needing completion is visible in the grid with the gap it needs filled. Nothing you must fix is hidden below a fold: the counts cover every row in the file.
The AI full-workbook import
There are two doors to the same importer. On the BoQ step, Import full BoQ workbook (AI) opens it directly. In the AI drafter that starts a new request, Upload BoQ spreadsheet runs the same import as part of drafting. Either way, the AI's job is to read the workbook's STRUCTURE, never its values. Scale
Upload and confirm the cost
Drop an Excel or CSV file (Excel (.xlsx) or CSV, up to 50 MB). Large workbooks are parsed in the background, which can take a few minutes; a file saved in another spreadsheet format and renamed, or a CSV that is not UTF-8, is refused with a message that tells you how to save it correctly. Once the file is read, a confirmation screen states the cost, AI mapping uses 6 credits from your balance, and your balance. Nothing is spent by picking a file; the charge applies when the mapping succeeds, and a run that fails or that you cancel is never charged. Reviewing the proposal and applying it are free.
Read the proposal
The AI works out where each sheet's data starts, which columns are which, how title rows and merged cells nest, and how sub-groups are organized. It then proposes a mapping: which sheets become which sections, which sub-groups become sub-sections, and what each column feeds. The preview header tells you how many lines are ready and how many sections, sub-sections, and sheets they span.
Each sheet has its own review, grouped into Choices for this sheet, Needs attention, and Structure, with How this sheet was read disclosing what the AI did. Sheets with open questions are listed in a Questions waiting strip so none is missed. The kinds of question you will meet:
- A summary tab. When a workbook has a summary sheet that only totals the working sheets, importing both would double-count. The working sheets are selected by default; you can Import the summary instead if you only need totals.
- A quantity grid. A sheet whose rows are item sizes and whose columns are buildings imports as one line per building, grouped under that building, and the sheet's own totals are checked against what was imported. A checkbox collapses it to one line per size instead.
- Three-row entries. Bills that spread one item across a code row, a title row, and a description row can be stitched into single lines with Stitch these into single lines. Leave it unticked to import the rows as they are.
- A rate-only schedule. A sheet with no rate or amount columns triggers a banner offering to mark it rate-only. It is a checkbox you confirm, not a silent decision.
- Structure the AI set aside. Fix structure lets you merge, split, or promote sections and accept structure the AI left out, with one-click undo. Rows with no description stay blocked rather than imported as mystery lines.
Apply
On Apply, the values themselves (descriptions, quantities, units, codes, rates) are copied from the cells deterministically. The AI never rewrites, rounds, or fills in a value, and the preview cross-checks every imported quantity against its source cell before applying. If your request already has line items, Replace your current bill? asks you to confirm with Replace and import, because the imported bill replaces what is there and that cannot be undone.
Applying a full-workbook import turns on construction BoQ features for the request (sub-sections, item codes, line types, quantity bases). See Run a construction project for what construction mode adds. A trade package cannot be re-imported over: its bill comes from the project split, so updated workbooks are uploaded on the master instead.
If an import comes out wrong, Something wrong with this import? opens a report. It shares the workbook's parsed content (not the file itself) with VEXORS, with your consent, so bills laid out like yours import correctly next time.
Quantity basis: when a quantity is not a quantity
Construction bills contain lines that deliberately have no firm quantity. VEXORS models them as a first-class Quantity basis instead of forcing a fake number:
- Firm quantity: the normal case. A quantity you stand behind; suppliers price rate times quantity.
- Provisional quantity: the quantity is an estimate you may adjust before award. Suppliers see it marked as provisional.
- Rate only: no quantity at all; the work is measured on site. Suppliers quote a unit rate, the unit is still required, and the line is excluded from bid totals (with the exclusion disclosed) because there is no quantity to multiply. On the client bill, a rate-only line shows the marked-up rate and "measured on completion" instead of a fabricated amount.
Line type (Measured, Provisional Sum, PC Sum, Preliminaries, Daywork) imports from a line-type column too; the construction pricing reference explains what each means. Where a bill carries structured dimensions (penetrations, openings, linear runs), those import as dimension fields on the line rather than being flattened into the description.
If a supplier or a spreadsheet later needs the quantity for a rate-only line, resist the urge to type "1". The whole point of the basis is that the honest quantity does not exist yet; a placeholder of 1 would flow into totals as if it were real. VEXORS refuses to fabricate it anywhere, including on exports.
What suppliers see
Suppliers see the imported bill exactly as structured: sections, sub-sections, item codes, descriptions, units, and quantities, with provisional and rate-only lines labeled so there is no ambiguity about what they are pricing. Notes like "Rate only, quantity measured on site" appear on the line itself. Your internal estimates and budgets are never visible.
What good looks like
- The workbook is imported once, whole, through the AI import, rather than sheet by sheet through the quick importer.
- Zero rows silently missing: the counts in the preview reconcile against the workbook, and every sheet's questions are answered, before you apply.
- Flagged rows are completed in the grid before publishing, from the source document, not from memory.
- Rate-only and provisional lines keep their true basis instead of carrying invented quantities.
Next steps
Related guides