Revit 2025 API
View |
Creates a note block.
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public static ViewSchedule CreateNoteBlock( Document document, ElementId familyId )
Public Shared Function CreateNoteBlock ( document As Document, familyId As ElementId ) As ViewSchedule
public: static ViewSchedule^ CreateNoteBlock( Document^ document, ElementId^ familyId )
static member CreateNoteBlock : document : Document * familyId : ElementId -> ViewSchedule
Parameters
- document Document
- The document to which the new schedule will be added.
- familyId ElementId
- The ID of the family whose elements will be included in the schedule.
Return Value
ViewScheduleThe newly created schedule.

Exception | Condition |
---|---|
ArgumentException | document is not a project document. -or- familyId is not a valid family for a note block. |
ArgumentNullException | A non-optional argument was null |
ModificationForbiddenException | The document is in failure mode: an operation has failed, and Revit requires the user to either cancel the operation or fix the problem (usually by deleting certain elements). -or- The document is being loaded, or is in the midst of another sensitive process. |
ModificationOutsideTransactionException | The document has no open transaction. |

A note block is a schedule of the Generic Annotations category
that shows elements of a single family rather than all elements
in the category.

ViewSchedule noteBlockSchedule = null; using (Transaction transaction = new Transaction(doc, "Creating Note BLock")) { //Get first ElementId of a Note Block family. ICollection<ElementId> noteblockFamilies = ViewSchedule.GetValidFamiliesForNoteBlock(doc); ElementId symbolId = noteblockFamilies.First<ElementId>(); if (!symbolId.Equals(ElementId.InvalidElementId)) { transaction.Start(); //Create a note-block view schedule. noteBlockSchedule = ViewSchedule.CreateNoteBlock(doc, symbolId); } if (null != areaSchedule) { transaction.Commit(); } else { transaction.RollBack(); } }
Dim noteBlockSchedule As ViewSchedule = Nothing Using transaction As New Transaction(doc, "Creating Note BLock") 'Get first ElementId of a Note Block family. Dim noteblockFamilies As ICollection(Of ElementId) = ViewSchedule.GetValidFamiliesForNoteBlock(doc) Dim symbolId As ElementId = noteblockFamilies.First() If Not symbolId.Equals(ElementId.InvalidElementId) Then transaction.Start() 'Create a note-block view schedule. noteBlockSchedule = ViewSchedule.CreateNoteBlock(doc, symbolId) End If If areaSchedule IsNot Nothing Then transaction.Commit() Else transaction.RollBack() End If End Using
No code example is currently available or this language may not be supported.
No code example is currently available or this language may not be supported.
See Also