Hi! I am trying to create a VBA program to iterate through dictionaries collection and print out all dictionary names. However, the return value of Dictionaries.Item is not AcadDictionary. Rather it returns IAcadObject. But IAcadObject doesn't have a way to cast its object to AcadDictionary object. So the following code doesn' work. Dim dictCol As AcadDictionaries Dim iAcadObj As IAcadObject Dim dict As AcadDictionary Dim i As Integer Set dictCol = ThisDrawing.Dictionaries For i = 0 To dictCol.Count - 1 Set iAcadObj = dictCol(i) Debug.Print vbTab & iAcadObj.ObjectName If iAcadObj.ObjectName = "AcDbDictionary" Then Set dict = iAcadObj End If Next i How can I fix it? David