我正在尝试隐藏 - 根据在特定字段中输入的值,自动隐藏Excel 2010电子表格中的某些行。我正在使用数据验证来设置0到50之间的最小和最大数。如果它是0,则隐藏接下来的3行,但如果是任何其他数字,则显示行。
下面是可以使用的VBA代码,除了我必须为每个可能的号码添加它。是否有我可以使用的IF Else声明?如果为0,则隐藏,否则显示行
If Target.Address(False, False) = "B45" Then
Select Case Target.Value
Case "0": Rows("46:48").Hidden = True
Case "1": Rows("46:48").Hidden = False
Case "2": Rows("460:48").Hidden = False
Case "3": Rows("46:48").Hidden = False
Case "4": Rows("46:48").Hidden = False
Case "5": Rows("46:48").Hidden = False
Case "6": Rows("46:48").Hidden = False
Case "7": Rows("46:48").Hidden = False
Case "8": Rows("46:48").Hidden = False
Case "9": Rows("46:48").Hidden = False
Case "10": Rows("46:48").Hidden = False
End Select
Else: Rows("46:48").Hidden = False
End If
谢谢!
答案 0 :(得分:1)
你不会只使用:
Case Else
Rows("46:48").Hidden = False
然后说任何不适合第一种情况(0)的东西都默认为这个。
对不起,如果我误解了。
答案 1 :(得分:1)
您可以尝试:
,而不是使用Select CaseIf Target.Address(False, False) = "B45" Then
If Target.Value > 0 And Target.Value <= 10 Then
Rows("46:48").Hidden = False
Else
Rows("46:48").Hidden = True
End If
Else
Rows("46:48").Hidden = False
End If