OK - This one will ask if you want to delete the dimension objects in the active selection set, they will be highlighted on screen, if there is any. This is just in case the last selection set what you thought happens to me all the time. Then the select objects starts, this is the standard acad user interface for selecting objects, left for crossing etc.. It will only select the dimension objects, pressing enter will delete the selected items. Now because just as soon as I press enter, I will see 2 or 3 more that I need to delete, the select option will continue until there are no entities selected.

[vba]
Sub DelDim()
Dim ssetA As AcadSelectionSet
Dim gpCode(0) As Integer
Dim dataValue(0) As Variant
Dim groupCode As Variant
Dim dataCode As Variant
gpCode(0) = 0
dataValue(0) = "Dimension"
groupCode = gpCode
dataCode = dataValue
Set ssetA = Aset("DimDelete")
ssetA.SelectOnScreen groupCode, dataCode
While ssetA.Count
ssetA.Highlight True
ssetA.Erase
ThisDrawing.Regen acActiveViewport
ssetA.SelectOnScreen groupCode, dataCode
Wend
ssetA.Delete
End Sub
Sub DelDimSSet()
Dim oDim As AcadDimension
Dim mDelDimSset As AcadSelectionSet
Dim mI As Integer, mTmp() As AcadEntity
Dim mCntr As Long
ReDim mTmp(30)
If ThisDrawing.ActiveSelectionSet.Count Then
For mI = ThisDrawing.ActiveSelectionSet.Count - 1 To 0 Step -1
If InStr(1, ThisDrawing.ActiveSelectionSet(mI).ObjectName, "Dimension") > 0 Then
Set mTmp(mCntr) = ThisDrawing.ActiveSelectionSet.Item(mI)
mCntr = mCntr + 1
If UBound(mTmp) < mCntr Then
ReDim Preserve mTmp(mCntr)
End If
End If
Next
If mCntr Then
ReDim Preserve mTmp(mCntr - 1)
Set mDelDimSset = Aset("DimDelete")
mDelDimSset.AddItems mTmp
mDelDimSset.Highlight True
Select Case MsgBox("Please Confirm Highlighted Entities are to be deleted.", vbYesNo Or vbExclamation Or vbDefaultButton1, "Confirm Deletion!")
Case vbYes
mDelDimSset.Erase
mDelDimSset.Delete
Case vbNo
mDelDimSset.Delete
End Select
End If
End If
ThisDrawing.Regen acActiveViewport
DelDim
End Sub
Function Aset(iSSetName As String) As AcadSelectionSet
Dim ssetA As AcadSelectionSet
On Error Resume Next
Set ssetA = ThisDrawing.SelectionSets.Add(iSSetName)
If Err.Number <> 0 Then
Set ssetA = ThisDrawing.SelectionSets(iSSetName)
ssetA.Delete
Set ssetA = ThisDrawing.SelectionSets.Add(iSSetName)
Err.Clear
End If
On Error GoTo 0
Set Aset = ssetA
End Function

[/vba]

edited - found an error