I am trying to use dynamo to change the preliminary drawing date for multiple sheets through excel, but I cannot find how to list the preliminary drawing date in dynamo. The label is nested into the sheet family. Any ideas of how to get information of the date/text attached to this label from the project listed to an excel-file to then change dates for multiple sheets and read the data back in dynamo/revit.
All help is appreciated.
If the label is inside the sheet family is reading a parameter from the sheet. So you can use Element.GetParameterValueByName and retrieve all the info inside that label. Later you can export it to excel. After you have the new data, you can use Element.SetParameterByName to write that info to the sheets.
Thank you for your reply. I believe I have tried that (see attached screenshot), but from what I see dynamo can read the “sheet Number” as asked, but does not return any data for the parameter “Preliminary Drw Date”. In the sheet family this parameter is part of a family that is nested into the sheet family - is that the reason why dynamo cannot return this data? I am sorry if I am misunderstanding your reply.
Ok! Is the nested family shared? If not there is no chance, as far as I know, of getting that parameter in the project.
Can you upload the family or stripped project so we can check it?
Thank you for your fast reply. The nested family is set to “shared” from what I can see (attached picture from the nested family’s properties.
I can upload the nested family if needed; it’s only text and a label; the label has assigned the mentioned parameter.
And have you nested the parameter in the titleblock? I mean, is a parameter in the titleblock that controls that one?
Yes, it should be. I have not created these families, but from what I see the nested family is connected to the same parameter in the host family.
Ok, silly question, have you filled the parameter?
Will have a go and tell you if it works.
Thank you. Yes, the date is set on multiple sheets in the project, but this data will not show in Dynamo; looking for a quick way to change this date on several sheets without needing to open each sheet and do them one by one.
Sorry mate, didn´t check thoroughly your graph.
You´re selecting sheets instead of titleblocks. as you told me, the parameter is in the titleblock, not in the sheet. Change that and it will work.
My bad, thank you for your help. Now I seem to be able to read the data from the parameters and write it to excel. I can also read back from excel (my lists show the correct information, but when trying to write to the parameter in the project I get warnings for both parameters;
- that the parameter “sheet number” does not want a number (this is correct as I believe it wants text; but where do I control this? The format of the column is set to text in the excel-file)
- that there is no parameter “Preliminary Drw Date” (weird as it found the parameter when writing to excel, but maybe I am missing something here)
I have attached the read from excel dynamo script below. Thank you again for all your help.
String from object did the trick.
For the second point not all have the parameter, no. Do I need to use a function to sort the ones that does not out?
Yes, the reason you get the second error is because you are trying to set a parameter that doesn’t exist. Use something like this:
Thank you, now it works both to excel and from