thanks for the input Crank.
We don't use anything annotative but I'll check with the client and see what they are doing.
There's really nothing to do the code, it's pretty straightforward stuff
If AC.activedocument.ActiveSpace = AcModelSpace Then
Set T3blk = AC.activedocument.ModelSpace.InsertBlock(InsPt, nBlk, Xold, Yold, Zold, 0)
Else
Set T3blk = AC.activedocument.PaperSpace.InsertBlock(InsPt, nBlk, Xold, Yold, Zold, 0)
End If
Dim CurrLO As String 'AcadLayout
CurrLO = AC.activedocument.ActiveLayout.Name
AC.activedocument.Blocks.Item(T3blk.Name).Name = T3blk.Name & "-" & CurrLO & "-" & Format$(Time, "HHMMSS") & Xz
then we grab the attributes and populate the new attributes with the old attribute information. Provided the new attribute isn't empty then we then nest a block in the new block
Case "NBL"
Natts(X).TextString = NBL
If Trim(Natts(X).TextString) <> "" Then
Set ArrBlk = AC.activedocument.Blocks.Item(T3blk.Name).InsertBlock(BaseIns, ARROW & "L.dwg", 1, 1, 1, (PI / 2 * 3))
End If
The only time we interfere with the attributes is to push and pull information. There's no repositioning, no rotating or anything else.
But your suggestion is very intriguing... I have a felling that may prove fruitful... thanks again