Spread-sheet functionality in Revit – more Revit.XT coolness.

It’s not uncommon that we can have multiple items in Revit that you want to number in sequence. We’ve all been there and we know that this can be a bit of a painful task in Revit. Excel and other spreadsheet users know that we can use the number-sequence tool inside a spreadsheet to do things like this with ease. So wouldn’t it be great to be able to get this sort of functionality in Revit?

RevitXT has wide range of powerful tools and it actually has a few methods built into it to renumber elements efficiently but in this case we’ll look at the specific case where you have a list of items that you want to add numbers to quickly in sequence and how you can use BIMQuery to make the process more efficient.

I’m going to use the Basic Project that ships with Revit to show you BIMQuery in action (the example file is in the Program Files / Autodesk / revit 20XX folder for reference). I have created a Wall Schedule and sorted it by Wall Family. I’ve included the Parameter “Mark” as this is the one that we are going to use to number each Wall. As you’ve already realised, Revit will automatically populate the Mark Parameter in some Categories of objects such as Doors and Windows but other Categories do not get this treatment. The underlying assumption in Revit is that you’ll organise things such as Walls by Type rather than scheduling / ordering each one with an individual number or code. That’s fair enough but in some circumstances or Project types (design & construct for example), having each item numbered is going to be required.

BIMQuery Tool. An overview.

The BIMQuery function in Revit.XT is a very powerful tool that allows you to draw a wide range of information from objects in your Project Model. The workflow that we use in BIMquery is to first obtain the data from the object(s) that we need. As we will see below, there are a variety of methods we can use depending on our requirements. We can then modify the Parameter values and push them into the Model. There are different ways to do this too. We can simply enter the new values inside the BIM Query tool or do a round trip from Revit into Excel and back again.

Firstly let’s look at the process of selecting the items we want to get the Parameters from:

“Arbitrary” selections:

There are a number of ways that we if we select objects arbitrarily such as by selecting lines in a Schedule or in a Viewport or by using an existing selection set. If we then run the BIMQuery tool, it will show us the Parameters of those objects only. As per the screenshot below, we I’ve just made a selection Window inside a Plan view. If I now run the BIMQuery tool, I get what looks like a Spreadsheet and the different Categories are  neatly separated into different Tabs. Furthermore, to bring a bit more organisation, these Tabs are separated into “Instance” and “Type” inside each Category. The way that the BIMQuery tools looks inside Revit will be reflected inside a Spreadsheet, should be choose to export it (more on this later!).

Selection by Category:

In other cases, we , might want to just get it to grab all the Elements from a Category in the Model. To do this we start up BIMQuery and click on the “Category” icon. We can now select the Category or Categories that we want.

To save time, we can click on the “Presets” icon and save our selection criteria. We can then go back to the Presets function and select if later.

Selection by existing Schedule:

Lastly, we can choose from a list of Schedules in the Project as a selection. There are some limitations to the Schedules that you can choose from when using this option though which is a side effect of the way that revit addins are allowed to interrogate the Project database. If your Schedule conforms to the addins requirements then you can pick it from the list:

Now that we’ve grabbed the data, we can choose how to push the new values into the Mode. For smaller operations, we can simply write a new value into any Cell inside the BIMQuery window that is not greyed out. When we’ve done that we can either hit the Apply icon to push the changes and keep BIMQuery open or hit the Apply and Close to make the changes and close BIMQuery. Note that when a change has been pushed into the Project, the Cell will change to Green / Bold text. You can also move objects using BIMQuery – in this case use the Apply with Location option.

Another method which will appeal to Excel users is the ability to “round trip” the file into Excel and back again.

To do this, click on the “Save XLS” icon. BIMQuery then asks for a file name and location and it will save an XLSX file.

Open the file and it looks like an identical copy of what we saw in BIMQuery:

So now we can make edits to anything that is not greyed out. We can also use tools such as the Number Sequence tool to make a sequence of numbers to populate the “Mark” Parameter for example

When you’re finished entering data, click the “Save” command and go back to BIMquery in Revit. This time click on “Open XLS”.

Now select all the Cells and hit the Apply Icon:

So now we have the new Parameter values pushed into the Project. We can repeat this workflow as required.

As you can see, the BIMQuery tool has a great potential to speed up workflows in pushing change into the Revit model. It is just one part of a large set of tools inside Revit.XT.

BIMQuery is part of the Revit.XT tool that is free for Cadgroup Subscription customers.