Использование VB для изменения цвета строки в Excel, если установлен флажок в той же строке - PullRequest
0 голосов
/ 07 января 2011

У меня есть таблица Excel с перечнем различных курсов.У меня есть флажки в столбце F для каждого курса (не для каждой строки - есть некоторые пробелы).Когда флажок установлен, я хочу изменить цвет ячеек от B до E. в той же строке.

Был бы способ сделать это одним методом вместо копирования кода для каждого флажка?

Любая помощь ценится как всегда - спасибо!

Ответы [ 2 ]

1 голос
/ 18 января 2011

Идея с флажками будет трудно реализовать. Но если вы хотите иметь кликабельный способ установки фона ячеек в этой строке, вы можете вставить гиперссылку в заголовок вашего курса. Сделайте так, чтобы гиперссылка указывала на соседние ячейки в этом ряду. Поэтому, если заголовок находится на B3, укажите гиперссылку на C3: E3, например.

Реализуйте событие Worksheet_FollowHyperlink в коде вашего листа. Вот пример саба, с которого можно начать:

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    Dim myRange As Range
    Set myRange = Range(Application.Selection.Address)
    myRange.Interior.Color = RGB(127, 256, 256)
End Sub

Это работает в Excel 2007. Не тестировалось в других версиях.

0 голосов
/ 07 января 2011

Назначить один и тот же макрос всем флажкам. Проблема, с которой вы можете столкнуться, заключается в попытке выяснить, в какой строке стоит флажок. Элементы управления на самом деле не находятся в сетке. Они располагаются в верхней части листа и не имеют ссылок на строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...