Тема: Циклировать код
НИЖЕ ПРИВЕДЕННЫЙ КОД РАБОТАЕТ ХОРОШО, НО ОЧЕНЬ МЕДЛЕННО...В НЕМ ПОВТОРЯЕТСЯ ОДИН И ТОТ ЖЕ КОД 100 РАЗ, Т.К. В ЧЕРТЕЖЕ БОЛЕЕ 100 НАИМЕНОВАНИЙ ДЕТАЛЕЙ.
МОЖЕТ ВЫ ЗНАЕТЕ как сделать этот код менее длинным, т.е. циклировать??? Ну что-то вроде счетчика что ли...
А то этот код такой огромный получился и тормозит комп очень сильно!!!
'ПОИСК В ПРОСТРАНСТВЕ ЛИСТА ДЕТАЛЕЙ А
Dim ss As AcadSelectionSet
With ThisDrawing.SelectionSets
While .Count > 0
.Item(0).Delete
Wend
Set ss = .Add("$Blocks$")
End With
Dim ftype(2) As Integer
Dim fdata(2) As Variant
ftype(0) = 0: ftype(1) = 2: ftype(2) = 67
fdata(0) = "INSERT": fdata(1) = "DETALI_А": fdata(2) = 0
'<--"DETALI_А" это имя блока
ss.Select acSelectionSetAll, , , ftype, fdata
POISK_DETALEI.А.Caption = CStr(ss.Count)
ss.Delete
'ПОИСК В ПРОСТРАНСТВЕ ЛИСТА ДЕТАЛЕЙ Б
With ThisDrawing.SelectionSets
While .Count > 0
.Item(0).Delete
Wend
Set ss = .Add("$Blocks$")
End With
ftype(0) = 0: ftype(1) = 2: ftype(2) = 67
fdata(0) = "INSERT": fdata(1) = "DETALI_Б": fdata(2) = 0
ss.Select acSelectionSetAll, , , ftype, fdata
POISK_DETALEI.Б.Caption = CStr(ss.Count)
ss.Delete
И Т.Д. И Т.П. ЕЩЕ 98 ДЕТАЛЕЙ