Страницы: 1
RSS
Как с помощью VBA получить свойство из объекта Shape
 
Здравсвуйте,
подскажите пожалуйста как с помощью VBA получить свойство из объекта Shape, которые в обычном режиме можно просмоттреть если в на вкладке разработчик выбрать Design Mode, выделить объект и открыть Свойства.

Объект создан с помощью надстройки.
Часть свойств мне удалось получить но добраться до  RangeDescription я не могу.

Код
Sub GetShapeProperties()
    Dim sShapes As Shape, lLoop As Long
    Dim wsStart As Worksheet, WsNew As Worksheet
  
    Set wsStart = ActiveSheet
    Set WsNew = Sheets.Add

    WsNew.Range("A1:F1") = _
     Array("Shape Name", "Shape Type", "Height", "Width", "Left", "Top")

    For Each sShapes In wsStart.Shapes

        lLoop = lLoop + 1

        With sShapes

            'Add shape properties
            WsNew.Cells(lLoop + 1, 1) = .Name
            WsNew.Cells(lLoop + 1, 2) = .OLEFormat.Object.Name
            WsNew.Cells(lLoop + 1, 3) = .Height
            WsNew.Cells(lLoop + 1, 4) = .Width
            WsNew.Cells(lLoop + 1, 5) = .Left
            WsNew.Cells(lLoop + 1, 6) = .Top
          
        End With

    Next sShapes

End Sub
Изменено: vikttur - 07.06.2021 13:59:52
Страницы: 1
Наверх