What operation ent vs selection filters is better or does it matter. I've seen a few online vba demo's and they seem to clearly like the ThisDrawing.Utility.GetEntity ent, pt, "Pick or whatever: " iterate thru the drawing. My question is what is better or faster. They seem to think that ent is fast enough for even robust operations. Thank you. John Coon I normally use this method Dim setOBJ As AcadSelectionSet Dim ftype(0) As Integer Dim fdata(0) As Variant Dim f_type As Variant Dim f_data As Variant Dim i As Integer Dim pt As Variant ftype(0) = 0 fdata(0) = "INSERT" f_type = ftype f_data = fdata Set setOBJ = ThisDrawing.SelectionSets.Add("TEST2") setOBJ.SelectOnScreen and sometimes use a dataValue(1) = BLOCKNAME filter I tried below but can't seem to get it to create points on anything but the first ent. but it does put points on the selected block but for all enitities in the drawing. how do I get the count for the selected ent and filter by name. I can change to it to mtext label for those without land. I guess I'm looking to select one block and have it iterate thru the drawing get the insertion point and label all of the ent.name With ent how do you fileter for a selected block onscreen or by name? Public Sub pickblock() Dim dbPref As AeccDatabasePreferences Set dbPref = AeccApplication.ActiveDocument.Preferences Dim cogoPnts As AeccCogoPoints Dim setCogoPnt As AeccCogoPoint Set cogoPnts = AeccApplication.ActiveProject.CogoPoints Dim ent As AcadEntity Dim count As Integer Dim name As String ThisDrawing.Utility.GetEntity ent, pt, "Pick Block: " pt = ent.InsertionPoint name = ent.name For Each Entity In ThisDrawing.ModelSpace If TypeOf ent Is AcadBlockReference Then 'why doesn't this count the number of blocks under enitity picked name If ent.name = name Then count = count + 1 End If Set setCogoPnt = cogoPnts.Add(pt, kCoordinateFormatXYZ) Next End Sub