Я искал, но не смог найти ответ на то, что, по моему мнению, является простым решением. У меня есть несколько строк списка (в основном вопрос «да/нет»), и мне нужен макрос, который изменяет другие ячейки в одной строке в зависимости от того, что выбрано из списка в столбце A. Я предполагаю, что это должно быть событие изменения и я могу делать то, что хочу для одной строки, но не могу понять, как применить ее ко всему столбцу. Это то, что я до сих пор:Один макрос для нескольких строк проверки списка
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(True, True) = "A2" Then
Select Case Target
Case "list option one"
call Macro1
Case "list option 2"
'Call Macro2
Case Else
'Do nothing
End Select
End If
End Sub
, очевидно, я не хочу жесткий код каждой строки A3, A4, A5 ...
Предполагая, что он заперт вниз, то вы можете добавить выражение «Если» в другую строку вместо использования макроса, тогда Excel выполнит «триггер» для вас. – indofraiser
Не было бы хорошей альтернативой для определения функций для значений ячеек, которые вы нацеливаете с помощью макросов. Эти функции могут работать так же, как и обычные функции Excel, но, поскольку они написаны в VBA, могут содержать более конкретные функции. В качестве входного параметра вы можете передать значение ячейки в столбце A. – Tom
@indofraiser вы имеете в виду, используя функции excel? Проблема в том, что некоторые из значений будут свободным текстом, и это приведет к удалению функции. – Istha