Страницы: 1
RSS
Расположение листа по вертикали - не по центру фигуры, а по верхней границе фигуры
 
Здравствуйте, программисты ВБА.
У меня на листе две гиперссылочные фигуры - щелчок по одной фигуре - перемещает к другой фигуре.

Как располагать  лист по фигуре -  по горизонтали так же посередине, а вот по вертикали - по самому верху (чтобы фигура располагалась в самом верху) ?
(это касается той фигуры, которая в глубине листа стоит. Та фигура, что с краю - ее понятное дело по горизонтали не выровняешь. Но вот по высоте можно выровнять)
Изменено: Snegovik2 - 23.09.2019 09:54:14
 
Цитата
Snegovik2 написал:
лист по фигуре
бр-р-р-р...мозг загнулся :) Как это - лист по фигуре? Это же фигура на листе, а не лист на фигуре. Следовательно перемещать лист относительно фигуры нельзя. Можете сформулировать как-то более корректно задачу?
Например, можно понять так: фигура всегда должна быть во второй видимой строке по центру листа. Но не уверен, что именно это имелось ввиду. Для этого можно чуть модифицировать Ваш код:
Код
Dim r&, cl&
    Application.ScreenUpdating = False
    With ActiveWorkbook.Windows(1)
        Application.Goto ActiveSheet.Shapes("Шестиугольник 16").TopLeftCell.Address(1, 1, xlR1C1, True), True
        .ScrollRow = ActiveSheet.Shapes("Шестиугольник 16").TopLeftCell.Row
        .ScrollColumn = ActiveSheet.Shapes("Шестиугольник 16").TopLeftCell.Column
        With .VisibleRange
            r = IIf(.Row - .Rows.Count / 2 < 1, 1, .Row - .Rows.Count / 2)
            cl = IIf(.Column - .Columns.Count / 2 < 1, 1, .Column - .Columns.Count / 2)
        End With
'        .ScrollRow = r
        .ScrollColumn = cl
    End With
Изменено: Дмитрий(The_Prist) Щербаков - 23.09.2019 09:59:36 (исправил кракозябры после копирования в англ.раскладке)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Я так понимаю Snegovik2 хочет просто переместить фигуру. Так что-ли ?
 
Дмитрий(The_Prist) Щербаков, спасибо. То что нужно.
Страницы: 1
Наверх