Тема: Конструкция For Each...Next для акадовских объектов. Что здесь неправильно?
Народ, помогите, пожалуйста! Никак не получается с этим кодом:
Sub CalculateTotalLengthOfConductors() Dim acLine as AcadLine Dim singleTotalLength as Single Dim stringLayerName as String singleTotalLength = 0 stringLayerName = InputBox("Введите слой, на котором надо посчитать длины отрезков") For Each acLine In ThisDocument.ModelSpace If acLine.Layer = stringLayername Then singleTotalLength = singleTotalLength + acLine.Length Next acLine MsgBox("Длина отрезков на слое " & stringLayername & " равна " & singleTotalLength) End Sub
Надо посчитать длины отрезков прямой (AcadLine), находящихся на определенном слое.
Это ведь можно сделать с помощью конструкции For Each...Next, перебирая объекты типа AcadLine в коллекции ThisDocument.ModelSpace. Правильно? Если да, тогда почему на строчке
Next acLine
выдается ошибка "Type mismatch" ("Несоответствие типов")? Код ошибки времени выполнения - 13.