Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Изменение параметров градиентной заливки макросом, Возможно ли это вообще?
 
Уважаемые формучане. Попытался для одного своего дашборда создать заполняемую шкалу. Для начала пошел через градиентную заливку фигуры. Показалось что это проще. Раньше никогда через макрос форматы объектов не менял (только ячейки перекрашивал). В прошлом, в подобных случаях спасал макрорекодер, хотя бы понимал, какие параметры меняются, но теперь он постоянно только записывает, что фигура видима.
Возможно ли через макрос изменять положение градиента? Вижу в свойствах, что он в процентах. В примере пытаюсь сдвинуть синий фон в фигуре направо, до 90%.  
Когда испробованы все варианты, я начинаю плясать с бубном. Как правило — помогает.
 
Добрый день.
Помочь смогу мало чем, т.к. плотно с фигурами не работал, но вот пример обращения к вашей фигуре и замена имени:
Код
With Worksheets("Лист1").Shapes("Скругленный прямоугольник 1")
.Name = "SK_1"
End With

А вот дальше... какое конкретно свойство за градиент отвечает - не подскажу. Может через справку VBA и по Object Browser потыркаться?
Чем могу, как говориться...
Кому решение нужно - тот пример и рисует.
 
Спасибо. Тоже облазил гугл, видимо особо никто в таком не нуждался. Уверен, что способ есть, но игра свеч не стоит. Просто сменю способ отображения
Когда испробованы все варианты, я начинаю плясать с бубном. Как правило — помогает.
 
через макрос изменять положение градиента
Посмотрите методы объекта FillFormat
OneColorGradient
 
в этом примере показано,как двигать слева направо  место соединения двух цветов
скрипт  работает с  выделенной фигурой
Код
Sub Macro()
    Dim shp As ShapeRange, myStop1 As GradientStop, myStop2 As GradientStop
    Set shp = Selection.ShapeRange
    Set myStop1 = shp.Fill.GradientStops(1)
    Set myStop2 = shp.Fill.GradientStops(2)
    myStop1.Position = 0.1
    myStop2.Position = 0.1
    myStop1.Position = 0.2
    myStop2.Position = 0.2
End Sub
 
Огромное спасибо Karataev. Уже реализовал по другому, но в копилку себе отложил
Когда испробованы все варианты, я начинаю плясать с бубном. Как правило — помогает.
Страницы: 1
Читают тему (гостей: 1)