我搜索,但无法找到答案,我认为是一个简单的解决方案。我有多行列表框(基本上是一个是/否的问卷),我想要一个宏来改变同一行中的其他单元格,这取决于列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 ...
假设它的锁定,然后你可以添加一个'If'语句到另一行,而不是使用宏,那么Excel将为你做'触发'工作。 – indofraiser
如果要为您的宏指定的单元格的值定义函数,这不是一个好的选择。这些函数的运行方式与普通的Excel函数相同,但由于它们是用VBA编写的,因此可以包含更多特定的函数。作为输入参数,您可以传递列A中的单元格的值。 – Tom
@indofraiser是指使用excel函数吗?问题在于一些值是自由文本,并且会删除该函数。 – Istha