gpt4 book ai didi

excel - 带有数据验证的 VBA SelectionChange

转载 作者:行者123 更新时间:2023-12-04 20:36:39 24 4
gpt4 key购买 nike

我一直在做一些研究,但其他人在这方面和我没有完全一样的问题,或者一直试图达到不同的目标。

我编写了一个宏(发布在下面),最终目标是根据用户先前的选择隐藏不相关的行。目前宏将实现最终目标,但并不完全符合我的意图。

如果选择时目标单元格为空,我可以使用下拉箭头选择我的选项或手动输入。但是之后通过选择一个新单元格或按 Enter 键离开该单元格,都不会触发宏。要触发宏,我必须重新激活单元格。

这样做的问题是我想给我的用户稍后更改此单元格的选项,但是如果不突出显示多个单元格并删除所有会影响目标单元格周围其他输入的信息,我就无法更改选择。

我假设我错过了一些代码行,这些代码告诉宏在用户导航离开单元格时触发。

这是我当前的代码:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Address = "$D$3" Then


If Target = "Hide" Then
Rows("9:13").Select
Selection.EntireRow.Hidden = True

ElseIf Target = "Don't Hide" Then
Rows("9:13").Select
Selection.EntireRow.Hidden = False

End If

End If

End Sub

最佳答案

你不知道吗,写这本书给了我正确查询输入到 ol' Google 搜索的想法。

我在这个链接找到了我的答案:http://www.cpearson.com/excel/WaitFunctions.aspx

我的最终代码如下所示:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Address = "$D$3" Then
Dim B As Boolean
B = ThisWorkbook.WaitForUserInput(WaitSeconds:=10, _
WaitCell:=Worksheets(1).Range("D3"))

If Target = "Hide" Then
Rows("9:13").Select
Selection.EntireRow.Hidden = True

ElseIf Target = "Don't Hide" Then
Rows("9:13").Select
Selection.EntireRow.Hidden = False

End If

End If

End Sub

关于excel - 带有数据验证的 VBA SelectionChange,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41551336/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com