How to create a Schedule Revision History step-by-step

, ,
Sheet Revision History

From time to time, it is necessary to check for all the revisions that a sheet has gone through. For example, when issuing drawing sets, it is quite useful to have in place a system that checks for all the revisions on sheets. Reviewing this schedule is a much easier task than going sheet by sheet and checking if a revision is missed. Revit does not have this feature out of the box, but there is an easy way to get this schedule.

Dynamo script to schedule revisions on sheets

This script is a bit longer than usual, so we are going to break it in groups to see how it works.

Group 01 – The first group, the INPUT, is related to an optional feature, it retrieves data from the sheets: number, name, and scale, and export the schedule to Excel. It will not affect the workings of the script if deleted, but it is nice to have a schedule in Excel to make it readable and pretty.

The most remarkable point here is that the scales on sheets are data that can be retrieved with a node from the package Clockwork, OOTB is not possible.

Group 02 – It selects all the sheets and filters the ones that have been set up to appear on the drawing list.

Group 03 – Automatically creates parameters to store the revisions Description (or any other revision data). If new revisions are added to the project, this group will update it accordingly.

Inside the Python script, a few lines filter new parameters to be created. If there were no this check in place, every time we run the script, duplicated parameters would be created.

Group 04 – Retrieves all revisions in the project and on sheets and uses Description as data to fill the revision history schedule.

This Python script matches the revisions on sheets with their Description and substitutes the value null, when there is no match, with “” (empty string). The value null will break or make Element.SetParameterByName behave oddly.

Group 05 – Fill the parameters created from Group 3.

After clicking Run, the schedule is ready to go, a master schedule with all the sheets with their appropriate revisions!

Here you can download the script:

9 responses to “How to create a Schedule Revision History step-by-step”

  1. Lucas Avatar

    it does create the excel export but it doesn’t create the actual Revit schedule?

    1. BIMicon Avatar

      Hi Lucas, can you let me know what Revit and Dynamo versions are you using?
      Can look into it for you if I have that info.


  2. Atilla Avatar

    Hi BIMicon,

    This is exactly what I needed, thanks a lot. But I have the same problem; it exports the excel but doesn’t create a Revit schedule.

    It’s Revit 2022 and Dynamo 2.12

    1. BIMicon Avatar

      Hi Atilla, thanks for catching up.
      Oh I see, that master schedule needs to be created manually in Revit. Duplicate or create a Sheet List in Revit with the parameters used in the script and you are good to go.
      If you have any problems, let me know.


      1. Atilla Avatar

        Hi again, yes that worked! I created shared parameters for sheets with type of parameter set to “text” and added them to a sheet list. Thank you.

        1. BIMicon Avatar

          Awesome! Glad it worked out 🙂

  3. James Avatar


    I am a beginner here and am looking to utilize this script for creating a sheet rev schedule. I have studied the Dynamo script and the instructions and unfortunately it is not clear what parameters I should be creating in Revit and where and what to list in the Dynamo script to tie these two. As noted by Atilla “creating shared parameters for sheets with type of parameter set to “text””. I am confused what parameters did they have to create and was that something they custom inputted in the Dynamo script? Right now I am just using it out of the box to understand how this script works but I am not seeing exactly what I need to create or input to tie this all together.

    1. BIMicon Avatar

      Hi James, thanks for reaching out. Well, as far as I remember, the script only required the creation of a schedule called Revision History. If that doesn’t work, an error message that you encountered would help. Cheers

  4. Nick Duggan Avatar
    Nick Duggan

    Hi Atilla. Excellent script. Thank you for posting. Can you think of a way to get the revision number to populate the field, rather than the revision description. The main archi-lab node you’ve used doesn’t provide that, but Archi-lab do provide a Sheets.GetRevisionsNumberOn node. However, this node appears to be limited to a single sheet input. Any thoughts you have would be greatly appreciated. Thanks, Nick

Leave a Reply

Your email address will not be published. Required fields are marked *