Страницы: 1
RSS
Изменение цвета фигуры в зависимости от выпадающего списка
 
Добрый день, всю голову сломал, помоги пожалуйста.
Есть выпадающий список с цветами, каждое название имеет свой определенный цвет.
Нужно что бы при выборе нужного цвета, прямоугольник закрашивался в данный цвет.
Файл прикладываю.

Макросы не использовать!
 
Цитата
Goligrovda написал: Макросы не использовать!
Не повезло фигуре, будет белой )
Или используйте 5 фигур -  Выбор фото из выпадающего списка, изучайте
 
Как выпадающий список сделать с фотками это я знаю. Мне именно нужно закрасить фигуру.
В архивах лежит тема где карту закрашивали по регионам, что то похожее, но не подходит.

Вот что то похожее обсуждалось
https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=8&TID=41075
Юрим М: выкладывал карту с 2 районами.  

Нужно что то подобное, только с выпадающим списком.  
Изменено: Goligrovda - 11.11.2019 16:03:59
 
Не ужели не кто не может помочь решить проблему? +( логика простая, но вот как обратиться в VBA к выпадающему списку не пойму, если использовать код про изменение цвета карты.  
 
Цитата
Goligrovda написал:
Не ужели не кто не может помочь решить
задача элементарно решается макросом, но с учетом
Цитата
Goligrovda написал:
Макросы не использовать!
видимо никому не интересно морочить себе голову чтобы придумать как ее закрасить, возможно способ найдется, но он далеко не у поверхности, а копать - лень
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Обязательно фигуру заливать, может просто ячейки?
 
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("F4")) Is Nothing Then
        If WorksheetFunction.CountIfs(Columns("H:H"), Range("F4").Value) Then
            Dim y As Long
            y = WorksheetFunction.Match(Range("F4").Value, Columns("H:H"), 0)
            Shapes("Rectangle 1").Fill.ForeColor.RGB = Cells(y, Range("I1").Column).Interior.Color
        End If
    End If
End Sub
В модуль листа.
Страницы: 1
Наверх