Every bar list built in a spreadsheet has one column nobody wants to touch: the length column. Change a lap, change a tie spacing, add one extra bar, and the whole column has to be retyped, retotalled and checked against the drawing again.
Rebar schedules in Revit remove that retyping: the table reads the parameters of each bar in the model, so editing the model updates the table. This article walks fifteen steps in Revit 2027, from the command that creates the schedule to a file that opens cleanly in Excel. If you want the full structural modelling and documentation workflow, the Institute runs a Revit Structure course.
How a rebar schedule differs from a spreadsheet bar list
The familiar way is to measure on the CAD drawing and type into a spreadsheet, or let a lisp routine count for you, as described in the CAD bar-counting lisp. It works, but the list and the drawing are two separate files: change one and you must remember the other.
In Revit each bar already carries its diameter, shape, bend segments, developed length and mass. The schedule is only another way of looking at those same numbers.
The schedule shown groups every beam bar in the building by diameter. Ø16 has only 104 bars but weighs 1,896 kg, two thirds of the total, while Ø6 has 571 bars for 327 kg. One conclusion follows immediately: a mistake in one longitudinal bar costs more than ten mistakes in ties.
What the model needs before you schedule it
Three things. First, real reinforcement rather than drafted lines; placing it is covered in beam reinforcement in Revit. Second, being able to see the bars while checking them, covered in how to show rebar in Revit. Third, a Partition value on every member, because that is the field the schedule groups on.
Partition is also the numbering scope. Autodesk's page Rebar Numbering for Schedules and Annotation states it plainly: numbering lets identical reinforcement elements within the same partition be matched for schedules and tags.
This article is part of the Institute's Revit Structure series.
Rebar schedules in Revit: creating the schedule
Step 1 — Set Partition on every member
Select the bars of one beam and type the beam name into Partition on the Properties palette. The sample model uses DX1.1 for beams and CỘT C1 for columns. Skip this and the schedule groups randomly while the bar numbers wander.
Step 2 — Call the schedule command
Go to View › Create › Schedules. The button has a drop-down.
The six entries are Schedule/Quantities, Graphical Column Schedule, Material Takeoff, Sheet List, Note Block and View List. A bar list uses the first.
Step 3 — Pick the Structural Rebar category
New Schedule opens with a very long category list. Use the search box instead of scrolling.
Typing Structural Rebar reduces the list to two rows: Structural Rebar and Structural Rebar Couplers. Choose the first, and the Name box fills itself with Rebar Schedule; rename it and click OK.
Step 4 — Choose the columns on the Fields tab
Revit moves to Schedule Properties with five tabs: Fields, Filter, Sorting/Grouping, Formatting and Appearance.
The list on the left runs past a hundred rows. A minimum column set for a bar bending schedule needs seven fields.
| Field | What it gives you |
|---|---|
| Partition | The member name, used for grouping |
| Rebar Number | The bar mark that matches the circled number on the drawing |
| Bar Diameter | Nominal diameter |
| Total Bar Length | Developed length of one bar, hooks and bends included |
| Quantity | Number of bars in the set |
| Reinforcement Volume | Volume of steel |
| Reinforcement Mass | Mass of the bar |
Step 5 — Find fields with Parameter Name Search
Do not scroll. Type part of a name into Parameter Name Search at the top of the Fields tab and the list narrows at once.
The number beside Available fields is how many fields remain after filtering, so it changes with the string you type.
Step 6 — Add the shape column with Bending Detail
The shape column is the one every bar bending schedule needs. The field is called Bending Detail; select it and click the green arrow to move it across.
Know this before you call it a bug: inside the schedule view the column prints the words Bending Detail on rows holding one shape, and <varies> on rows that merge several shapes. The real bent figure is drawn only once the schedule sits on a sheet.
Grouping, totalling and formatting
Step 7 — Group on the Sorting/Grouping tab
Move to Sorting/Grouping. The Sort by list picks the primary field, with Ascending – Descending and the Header, Footer, Blank line boxes.
For one block per member, sort by Partition, tick Header for a group title row and Footer for a group subtotal row.
Step 8 — Turn on totals and turn off Itemize every instance
On the same tab, tick Grand totals and choose Title, count, and totals; Custom grand total title changes the wording, and the sample model uses TỔNG:. Clearing Itemize every instance merges identical bars onto one row, which is how a bar list is normally read.
Step 9 — Set headings and totals on the Formatting tab
Formatting works on one field at a time.
Heading renames the printed column. Heading orientation and Alignment rotate and align the text. Hidden field keeps a field in the schedule for calculation without printing it. The Multiple values indication group decides whether a merged row shows <varies> or a string you type.
Step 10 — Trim the table on the Filter tab
A whole-building schedule usually runs past one sheet. The Filter tab cuts it down with up to four conditions.
Filtering Partition with begins with or contains leaves the bars of one group of members. The text on a group header row is not necessarily the literal Partition value, so if a filter returns nothing, shorten the string before concluding the model is empty.
The bar bending schedule on the sheet
Step 11 — Read a schedule grouped by member
The column schedule of the sample model groups on Partition, each column getting its own block and subtotal.
Group CỘT C1 totals 119 bars, 361.20 m and 322.53 kg; group CỘT C1a totals 112 bars, 341.58 m and 309.80 kg. The shape column shows two odd values here: <None> means the bar has no shape family, <varies> means the row merges several shapes. Both are flags to check, not printing faults.
Step 12 — Drag the schedule onto a sheet
Open a sheet and drag the schedule name out of the Project Browser onto it. Only now does the shape column draw the real bent figure with its segment dimensions.
The figure scales with the column width, not with the text size. A narrow column gives a tiny figure with unreadable dimensions; select the schedule on the sheet and drag the blue triangle on the column edge to grow it. The rows grow taller in return, so the whole table gets longer.
Step 13 — Tag the bars so drawing and table agree
A rebar tag reads the parameters of the set: the 10 in 10 Ø8 a100 is Quantity, Ø8 is the Rebar Bar type name, a100 is Spacing, and the circled number is Rebar Number, which is the bar mark column of the schedule. Drawing and table can never drift apart.
The arrangement that suits a bar bending schedule best is one detail sheet per beam carrying the schedule of that beam. The quickest cross-check: the segments in the bent figure must add up to the developed length column.
Export Revit schedule to Excel without broken columns
Step 14 — Use File Export Reports Schedule
Open the schedule view you want, then go to File › Export › Reports › Schedule.
Autodesk's page Export a Schedule describes the same route. The save dialog offers Files of type CSV (delimited). Revit does not write an .xlsx file; it writes delimited text, and Excel opens that.
Step 15 — Choose the delimiter, then open in Excel
Click Save and Revit asks one more question.
The upper group decides whether the title, the column headers, the grouped headers and the group rows are exported. The lower group is where time gets lost: Field delimiter defaults to a comma.
That is the trap. A cell reading 1,476.58 uses a comma as the thousands separator, which is also the delimiter, so Excel splits that row into extra columns. Exporting the same schedule with a semicolon keeps 1,476.58 in one cell. The other cure is to switch the thousands separator off in Field Format before exporting.
What an add-in does that stock Revit makes you do by hand
Worth saying plainly, because anyone searching this topic is offered extra tools. Stock Revit does all of this: build the table, group it, total it, draw the shape column, filter by member and export delimited text.
What it makes you do by hand: build the column set your office template expects, rename every heading, split a long table across sheets, and write a spreadsheet file rather than a text file. Do it once and store it in a template and every later project is easier, as structural Revit templates explains. An add-in shortens exactly those chores; it does not compute the quantities, which come from the model either way.
When the numbers look wrong
| Symptom | Cause | Fix |
|---|---|---|
| The four Edit buttons on Properties are greyed | The schedule is locked by a View Template | Edit the View Template; the Filter button still works |
| Filtering on Partition returns an empty table | The filter string is longer than the real Partition value | Shorten it, or switch to contains |
| The shape column only prints the words Bending Detail | You are looking at the schedule view | Place the schedule on a scratch sheet and look there |
| Shape cells read varies or None | The row merges several shapes, or the bar has no shape family | Tick Itemize every instance, or assign a shape |
| Excel splits the exported file into wrong columns | The delimiter matches the thousands separator | Re-export with a semicolon, or drop the thousands separator |
| The member count column shows a less-than sign | The merged sets have different member counts | Split the rows with Itemize every instance, or filter tighter |
| New bars do not reach the table | They fall outside the filter, or sit in another Phase | Check the Filter tab and the Phase of the schedule view |
Five things people get wrong about bar lists
| What people say | What Revit 2027 actually does |
|---|---|
| Right-click the schedule and choose Export to get Excel | The route is File › Export › Reports › Schedule, and the file is delimited CSV |
| Revit writes an xlsx file directly | It does not; it writes delimited text that Excel opens and can then be saved as xlsx |
| The shape column has to be drawn or pasted as an image | The Bending Detail field draws the real developed figure of that row's bar |
| You need an add-in before you can schedule reinforcement | Stock Schedules/Quantities covers it; an add-in only shortens the template work |
| Totals should be re-added by hand to be safe | Revit multiplies and adds from the model; what needs checking is shapes and Partition values |
In short, rebar schedules in Revit follow a short chain: set Partition, create a schedule on the Structural Rebar category, choose fields, group, place on a sheet and export. Table and drawing share one source of numbers, so editing the model moves both.
The Properties palette of a template-locked schedule looks like this, the situation you meet most often in somebody else's model.
Frequently asked questions
Where does the length in a bar list come from?
From the Total Bar Length field, the developed length including hooks and bends. It is the real geometry of the bar in the model, not typed text.
How do I get one schedule per beam?
Set Partition to the beam name, duplicate the schedule and filter on Partition. Each beam detail sheet then carries the bar list of that beam.
My exported file opens with shifted columns. Where do I fix it?
In the options dialog during export, change Field delimiter from a comma to a semicolon. The cause is that the numbers use a comma as the thousands separator.
What is the difference between Rebar Number and Schedule Mark?
Rebar Number is generated by Revit and renumbered within a Partition; Schedule Mark is a value you type. Use one of them consistently in both schedule and tags.
Can I total the reinforcement for the whole building?
Yes: clear the Filter tab, group by diameter and tick Grand totals. The beam bar list of the sample model totals 805 bars, 3,200.2 m and 2,833.02 kg.