Create sheets from views

Hello Forum,

I am trying to copy a script that i found on internet that creates sheets from floorplans used to work for me but now is giving me a warning at the last node saying :
Warning: Sheet.ByNameNumberTitleBlockAndViews operation failed.
View 1 could not be packed on the Sheet. The sheet is 2,75590551181102 x 1,94881889763779 and the view to be added is 1,71841564603169 x 1,71861890443581
For some reason it does place Floorplan level 1 on a sheet and makes the sheets for the other levels but dont actually put them on the sheet.

A nasty node it is. There is post with many discussions and advises that you should search at forum imo.

I would recommend using a node pathway to create sheets based on the views separately, then use ‘Tool.PlaceViewsOnExistingSheets’ from Steamnodes instead - I’ve always used this node for view placement on sheets.

You would probably need to use a passthrough node to make this node wait for the sheets to be created first.


If it helps, I have a tutorial that shows how to place views on sheets using this node, however it doesn’t create sheets from views (I use excel to create sheets instead).


Hey GavC, Thanks for replying once again :D. I downloaded steamnodes and gonna make a new script to try and achieve what im trying to with the tips i got from you. I am not going to make the sheets through excel, I am trying to make it so it automaticly makes sheets for all the floorplans and then place all the floor plans on the sheets and eventually put it in the dynamo player so all my fellow workers can use this really easily.

1 Like

Understood - it’s a great workflow if you’re able to generate sheet names from views. I’d try to do the same if my users were better at naming their views or using scripts to make them!

1 Like

Hey GavC, I have been working a little bit on this and made something similar from my last script which didnt work to get all the floorplans and sort them by name. Then i will let that go through list.count to get a amount of sheets to be made. Is this correct or would u say something else and if so how can i make this work properly to eventually place the views on the sheets Dynamo made

1 Like

I usually use ‘List.Cycle’ or ‘List.OfRepeatedItem’ to create an equal length of points to the number of views. The sheets can be aligned to their respective sheet once it is generated in the script. This works under the assumption all your views are to be placed on sheets based on a view already there. Alternatively you can explicitly specify a coordinate in sheet space.

Use a passthrough node to get the views to sheets node to ‘wait’ for the sheet creation.

See below a high level summary to the coding logic;

1 Like

Im sorry for the many questions but im really new to Dynamo this will be my first ever self made script if i get it to work. I need to have a node that can create sheets but multiple so for example if i have 2 floorplans it will make 2 and if i have 5 it will make 5 and thats why i have the group to get all floorplans for it gives me a number which is the amount of floorplans if u understand

No problems, it took me a while to write my first Dynamo script. First step is always the hardest one!

Have a look at this script, it generates sheets with the same name as views, repeated item mixed with list count is the trick to get the sheet count to match the view count. Keep in mind your views and sheets are in the same order, so they can be used in the final node in these orders and will ‘line up’ in the process if that makes sense.

The key in Dynamo (and most coding languages) is to keep data in the same order and also at the same level in the list structure. From there you’re sailing!


Thank you very much ! If im right i can use this to make something that creates the sheets with the same name as the views and then use the node u showed me earlier to place the views on the sheet right?

1 Like

You got it! Have a try and if you have trouble let me know - always best to take a go first to learn along the way!

1 Like

One small thing im currently struggling with is that the Views node shows all the views i just want the floor plans because the floor and ceiling plans have the same name so u dont know which to select

Try using List.FilterbyBoolMask and getting the view type parameter of each view to isolate those views in the IN collector before you take them to the next stage of the script

1 Like

I have the script running that makes the sheets i need to but cant seem to find out how to actually place the views on the sheet i will provide a screenshot to show you how i set it up right now as of now it still only makes the sheet and place nothing on it

there are two nodes on dynamo for that, one node for multiple views per sheet , which is used in your script, and the other node for single view per sheet, the difference in name is just view & views, use the other node