Excel to Revit Key Schedule Help


I’m looking to manager all our structural general notes inside excel then push them into Key Schedules when required.

I have been trying to decipher and fix the formatting from Konrad K Sobon code http://dynamobim.com/forums/topic/the-elusive-schedule-key-where-does-it-live/

But Still getting errors. Not sure if they are the Python or the formatting in excel or what.

Index out of range I think is telling me either it’s in the loop statements in Python or the cells in excel.



Dynamo 0.8.2

See attached files




I’m wanting to do this as well but was wanting to use the ‘getallviews’ node here http://archi-lab.net/downloads/revitdynamo/ but it isn’t there when you download it. I need this node so I can write the excel to the specified schedule.

Anyone have an alternate way to accomplish this? I can’t seem to get what is causing this error.

Hi Matt,

You are getting an index out of range error because the python node you are running takes 4 input values.

keySchedule as IN[0], data as IN[1], inputParams as IN[2], upper as IN[3]

Currently it is only being supplied with 1 value for IN[0]

I have added the inputs, but GetTableData, something is not right there. I don’t know enough about the API Key Schedules to deceiver this.
Links I have read through:

See links below for the errors I'm getting and my Dynamo file.










Dynamo File


You can download an archi-lab package from package manager and it will be in it. No need to download it from my website directly.


Keith is correct in his answer. I would only add that you are feeding a schedule name into the input port instead of actual view. Use Get All Views node, and then pick one of the schedules that it outputs. Use that as an input.

Your input for parameter names is supposed to be a list. structure it like this: {“Key Name”, “NUM”, “BODY”};

Last input is a Boolean toggle. True to make all upper case and false to not change casing. I guess 1 is the same as True but if that doesn’t work then just type in true;

Please download latest Archi lab package. This functionality has been improved recently.

How do you like Bumblebee? Do you have any comments? Thoughts?

I was able to write data to the Key Schedule but not as expected. I ended up searching more and found your Key Schedule Node which I originally thought only wrote to excel.

When I run it, it only adds new rows to the Key Schedule with numbers but not the rest of the data for NUM and BODY.

What else am I missing here?

Bumblebee so far is great for writing data to Excel. Haven’t tried much else other than this Key Schedule business.








I also tried changing the Python OUT = 0 to OUT = keyNames.
This updated my output watch, but the schedule wasn’t updated.

Anyone else have any luck with Key Schedules?

I can’t even get the parameter names into revit, did you end up doing this manually? I’m on Revit 2015 and excel 2013. I can populate the revit schedule with the excel data but it seems random. Can you upload your excel spreadsheet please?


Yes, you would have to do this manually. Why? Ask Autodesk developers if/when this functionality will be exposed in Revit API. Until then, yes, this is a manual process. Also, have you even read this?:

I am pretty sure I have already explained this part in detail.

Why am I sensing a ton of attitude here? IT IS A FREE TOOL. you don’t have to use it. Please feel free to not use it.


couple of things:

  1. please don’t read in your headers: Key Name, NUM and BODY which is that first list item from your excel document. It’s not needed. and as a matter of fact it kills everything.

  2. Your first item in each sublist should be a Key Name which I am pretty sure should start at 1 and then go to 2, 3, 4, 5, etc. Please read the following:

Please notice how when you add all these new rows to key schedule they all have key name value assigned automatically and its usually a series of numbers starting at 1. You kind of have to match that in your excel spreadsheet while I am seeing in your image that you have 9 on the first list, then 10, then 15 then 15 again. It’s whats confusing the crap out of the node here.


Thank you,


What I have found out through hours of trying different things…

  2. Works for Revit 2014 and 2015 just fine.
  3. Key Numbering in excel doesn't matter. 1, 2,3 or 5, 7, 9 etc.
  4. Tested with TEXT only parameters.
  5. Using http://archi-lab.net - "Read Excel" Node, set the Origin to A2 if you want to include the Header row inside Excel only.
  6. Excel - Cell Format for Key Number can be text or Number, doesn't matter.
  7. Excel - Decimals can't be used for Key Numbers (makes sense)
  8. Excel - Ensure you have no random values in cells off to the side of your main data. (like reminder notes)
  9. You CAN use formulas inside excel, and the data comes through into the list just fine. (for those that were not already aware of this)
  10. See attached files for working versions of everything.


I took a look through the Revit 2016 API.chm, and compared it to the Python script, but I didn’t notice any methods that were removed in 2016, so I’m drawing a blank why it’s not working for Revi 2016. Maybe I missed something.









Dynamo File

Revit 2015 File

Excel 2010 File



1 Like


Yes, I never tested this on Revit 2016. I will eventually.

Key Numbering in Excel does matter, but I forgot that I already fixed the limitation that I was referring to previously. My bad on that one. It used to matter more. :slight_smile: However, yes now I am actually re-using automatically assigned numbers so if yours are out of order then they will only be used at the end to override the automatically assigned ones. In short, you are right - they don’t matter in your particular application.

TEXT only. That is correct. That was already mentioned on my post when I used big red squares to highlight parameter type.

Yes, numbers only and yes, it would be nice if they were whole numbers. Revit doesn’t particularly likes to use 2.1 as a Key Value.

You can use Extent input to constrain how much data gets read from Excel. It works just like Ranges in Excel ex. A1:C30 where A1 is origin and C30 is extent. That will ensure that anything in column D will not get transferred.

Thanks for great comments. I think I need to better handle Key Values so that they accept decimal places ex. 2.000 but not 2.100. Any ideas on how we can handle other parameter types? I am ok with just text, but I understand its quite limiting sometimes. Also 2016 support should not be too hard.



Being able to handle both text and number Parameter data vs just Text would be beneficial, Number Parameters are often used, but not a deal breaker.

Also the ability to update an existing Key Schedule would be good. I wonder if GetKeySchedule and UpdateKeySchedule Nodes would be a benefit?

This would allow General Notes to be managed inside excel, and pushed/Update the Revit Key Schedule Table.

Not sure how to handle other parameter types… Is it possible to bring the data over from excel, parse the data based key numberFormat: vs String convert to string and inside Revit convert the string back to number format?


Nice work again on archi-lab Konrad!

Konrad, no attitude implied, very grateful for your efforts.

Brilliant thanks, your downloads didn’t work but followed through your instructions and works a treat now.


The ‘Key Schedule’-node by Archi-lab works great, although I cannot update the Schedule with changed data.

Would it be possible to do (maybe in a different way), or is it not possible?


Thanks in advance.

It should be updating. Updating works just fine on my machine. Any particular errors? Issues? Can you share images? Files?

It seems the problem is in the data, which is not changed. I thought I checked the data.

Updating the ‘Key Schedule’ works.

Thanks for the answer, sorry to have bothered you!