我在VBA中很新,并且一直在寻找可以做我想做的事情的VBA代码。我试了几次,试图调整他们,但我似乎无法让他们正确的想所以我想尝试一些帮助!根据单元格中的单词隐藏excel中的行
我有6个项目在其旁边的单元格中显示YES或NO,表示该人员是否在处理该项目。这是由另一张工作表上该项目旁边的人员名称确定的,因此生成的是公式,而不是下拉式或键入的值。
该项目下面有几行对应于它。
如果项目旁边有一个NO(在C6中),我希望该项目的相应行被隐藏(行13:29)。
我想这要反复对每一个项目,
所以C7无隐藏31:47, 一个没有在C8隐藏49:65, 一个没有在C9隐藏67:83, 一没有在C10隐藏85:101, 在C11无隐藏103:118,
我不知道这是可能的,在圈子里已经绕来绕去,真的希望有人能帮助:)
这是我尝试过的适应症之一,但我相信我做错了什么,抱歉没有发布前
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$6" Then
If Target.Value = NO Then
Rows(13:29).EntireRow.Hidden = True
Else
Rows(13:29).EntireRow.Hidden = False
If Target.Address = "$C$7" Then
If Target.Value = NO Then
Rows(31:47).EntireRow.Hidden = True
Else
Rows(31:47).EntireRow.Hidden = False
End If
End If
If Target.Address = "$C$8" Then
If Target.Value = NO Then
Rows(49:65).EntireRow.Hidden = True
Else
Rows(49:65).EntireRow.Hidden = False
End If
End If
If Target.Address = "$C$9" Then
If Target.Value = NO Then
Rows(67:83).EntireRow.Hidden = True
Else
Rows(67:83).EntireRow.Hidden = False
End If
End If
If Target.Address = "$C$10" Then
If Target.Value = NO Then
Rows(85:101).EntireRow.Hidden = True
Else
Rows(85:101).EntireRow.Hidden = False
End If
End If
If Target.Address = "$C$11" Then
If Target.Value = NO Then
Rows(103:119).EntireRow.Hidden = True
Else
Rows(103:119).EntireRow.Hidden = False
End If
End If
End Sub
请向我们展示您的这些改编。 :) – Manhattan
我已经更新了代码的帖子,对不起之前错过了 – user3171565
删除了我的downvote。在我的头顶上,没有触及你的代码,你有没有尝试将'NO'转换为''NO''? :) – Manhattan