Тема: Как получить значения всех текстовых полей на всех открытых документах ни чего не выделяя с помощью VBA?

Как получить значения всех текстовых полей на всех открытых документах в AutoCAD ни чего не выделяя. Сделать это с помощью VBA. Выбор необходимо производить по цвету текста?
Пожалуйста кто знает помогите.

Re: Как получить значения всех текстовых полей на всех открытых документах ни чего не выделяя с помощью VBA?

Что значит текстовые поля? Строки TEXT , или MTEXT тоже?
Только в пространстве модели ,или листа тоже?
Что с ними потом делать?

Re: Как получить значения всех текстовых полей на всех открытых документах ни чего не выделяя с помощью VBA?

И Строки TEXT и MTEXT тоже в пространстве Листа.  Причём всех Листов во всех открытых документах и забрать их в динамический массив:
что то вроде этого:
dim i, countText as Long
dim ArrayText(0) as text
for i = 0 to countText 'На всех листах
redim Preserve ArrayText(i)
ArrayText(i) = Елемент(i).TextString
next i
Или всё же прийдётся копировать все листы в пространство  модели
В пространстве модели мне известно как решить эту задачу,
А вот как с разных листов забрать не знаю!
В пространстве модели примерно так:
LCountMarc = 0
For indexDocCAD = 0 To CadApl.Documents.Count - 1
             For Each Elem In CadApl.Documents(indexDocCAD).ModelSpace
            With Elem
                If ((.EntityName = "AcDbText") Or (.EntityName = "AcDbMText")) And .Color = ListBoxColor Then
                    ReDim Preserve strMarcArray(LCountMarc)
                    strMarcArray(LCountMarc) = .TextString
                    LCountMarc = LCountMarc + 1
                End If
            End With
        Next Elem
Next indexDocCAD

Re: Как получить значения всех текстовых полей на всех открытых документах ни чего не выделяя с помощью VBA?

> [b]sergey[/b]
>В пространстве модели мне известно как решить эту задачу,
>А вот как с разных листов забрать не знаю!

- Как работать с Layouts поймешь по этому примеру

Public Sub Exemple()
Dim obj As AcadEntity
Dim n&
With ThisDrawing
For n& = 0 To .Layouts.Count - 1
    If False = .Layouts.Item(n&).ModelType Then
        .ActiveLayout = .Layouts.Item(n&)
        For Each obj In .PaperSpace
            If ((obj.ObjectName = "AcDbText") Or (obj.ObjectName = "AcDbMText")) Then
            'Здесь че-то делай, например:
            obj.Color = acGreen
        End If
        Next obj
    End If
Next n&
End With
End Sub

Re: Как получить значения всех текстовых полей на всех открытых документах ни чего не выделяя с помощью VBA?

Ок!!!
Спасибо!!!!!!