我想知道如果任何人有这个任何想法,我觉得有些事情是会在我的头上,因为我相信这应该工作...自动隐藏行 - Excel的VBA
我有一个数据验证下拉菜单单元格A11包含(选择属性,酒店,旅馆,小屋)
我已经定义行22:52作为'RLHotel',行53:85作为'RLHostel'和行86: 115作为'RLCabin'。本质上,我试图让用户选择他们试图填写房间列表的哪种类型的房产。
如果他们在下拉菜单中选择'酒店',我想要旅馆/小屋隐藏。如果他们“宿舍”,我想酒店/小屋隐藏等
我使用VBA中为这个特定的工作表的代码是:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A11")) Is Nothing Then
With Range("$A$11")
Range("RLHotel, RLCabin").EntireRow.Hidden = .Value = "Hostel"
Range("RLHostel, RLCabin").EntireRow.Hidden = .Value = "Hotel"
Range("RLHostel, RLHotel").EntireRow.Hidden = .Value = "Cabin"
End With
End If
End Sub
目前,如果我选择“酒店” ,只有'小屋'行隐藏。如果我选择'旅馆',所有行都显示。如果我选择'小屋',旅馆和旅馆行就会隐藏。
任何人有任何想法?将不胜感激,一直在寻找这永远!谢谢!
即将发布相同的解决方案。 – L42
啊哈谢谢哈哈,我不敢相信我一直盯着那么久,没看见。 – arbitel
快速的问题,不知道这是一个简单的修复。使用上面的固定脚本,Cell A11现在不是DV下拉菜单,但链接到不同工作表上的DV下拉菜单。当我在A11指向的下拉菜单中更改选择时,它不会自动隐藏/显示范围(RLHotel,RlHostel,RLCabin)。我试过添加Application.Volatile,但没有修复。有任何想法吗? – arbitel