Hi Bryco,
WOW, I can see that I am not the only one burning the midnight oil

Yes, I see your point; I use the on error resume next as easy way way to get past the key not found "if" The Selection Set doesn't exists, if it does, I delete it, otherwise move on to adding it.
Probably not the best way to handle it but it seems to work for me.
You raise a good point though; that is, that if there is another error, it may get over looked,
I am generally pretty good at running through code with the locals.
Even more so lately
When I remarked about the midpoints, I saw that you did the division, that is how I surmised that you had gotten the midpoints
You see, I think you/we identified the problem I was having; that is that there is no move method for ssets, therefore, I was trying to be creative. The whole time I was seeing that the points were getting into the variables as I was stepping through the code in the locals, but it was the move method that I was fixated on.
OK, I see....
I do loop through ssets by entity but from what you are saying, it seems that each entity will be moved at once still once we have looped through each ent and it is assigned to the sset; is that correct?
Or will they be moved one at a time?
Let me take a look.
Thanks for the patience.
Bry,
Incidentally, in the meantime, I recalled that I had some older code around.
I this this method would work also? Or, a variation of?
It looks even simpler then what we have done.
After stepping through the code, it does look like all variables are being properly set, again, it was the move method I was struggling with.
Here, do you mind taking a look?
Tell me what you think.
The variables will be different because this is older code that I pieced together but the same idea
I Will also try the code and method that you just posted
Thank you
CADR
Sub LastTry()
Dim Ent As AcadEntity
Dim Sset As AcadSelectionSet
Dim llpnt As Variant 'lower left point
Dim urpnt As Variant 'upper right point
Dim Midpnt(0 To 2) As Double
With ThisDrawing.Utility
llpnt = .GetPoint(, vbCrLf & "Select Lower Left Point: ")
urpnt = .GetCorner(llpnt, vbCrLf & "Select Upper Right Point: ")
End With
On Error Resume Next 'I know, I know :)
ThisDrawing.SelectionSets.Item("GetEnts").Delete
Set Sset = ThisDrawing.SelectionSets.Add("GetEnts")
Sset.Select acSelectionSetCrossing, llpnt, urpnt
Midpnt(0) = (llpnt(0) + urpnt(0)) / 2
Midpnt(1) = (llpnt(1) + urpnt(1)) / 2
'Bry, i will need that loop here, most likely
Dim MoveTopnt As Variant
MoveTopnt = ThisDrawing.Utility.GetPoint(, "Select Destination Point: ")
For Each Ent In Sset
Ent.Move Midpnt, MoveTopnt
Next
End Sub