我目前正在使用三张纸。第一个包括所有列表和数据。在名为Input的第二个中,您可以在列表中选择不同的变量。 根据您在输入表中选择的内容,在输出表中显示内容。
例如,我在"输入"中有一个列表。在表格中您可以选择底层证券的编号。 当选择例如2时,一切都运行良好,并在表格中输出"行被隐藏。 从2切换到例如13它将不再起作用,它仍然显示数字2的内容。
你知道我的错误在哪里吗?
我正在使用以下代码:
If Target.Address = "$F$8" Then 'Underlying numbers
If Target.Value = "1" Then
Sheets("Output").Rows("66:84").Hidden = True
Sheets("Output").Rows("183:201").Hidden = True
Sheets("Output").Rows("226:244").Hidden = True
Else
If Target.Value = "2" Then
Sheets("Output").Rows("67:84").Hidden = True
Sheets("Output").Rows("184:201").Hidden = True
Sheets("Output").Rows("227:244").Hidden = True
Else
If Target.Value = "3" Then
Sheets("Output").Rows("68:84").Hidden = True
Sheets("Output").Rows("185:201").Hidden = True
Sheets("Output").Rows("228:244").Hidden = True
Else
If Target.Value = "4" Then
Sheets("Output").Rows("69:84").Hidden = True
Sheets("Output").Rows("186:201").Hidden = True
Sheets("Output").Rows("229:244").Hidden = True
Else
If Target.Value = "5" Then
Sheets("Output").Rows("70:84").Hidden = True
Sheets("Output").Rows("187:201").Hidden = True
Sheets("Output").Rows("230:244").Hidden = True
Else
If Target.Value = "6" Then
Sheets("Output").Rows("71:84").Hidden = True
Sheets("Output").Rows("188:201").Hidden = True
Sheets("Output").Rows("231:244").Hidden = True
Else
If Target.Value = "7" Then
Sheets("Output").Rows("72:84").Hidden = True
Sheets("Output").Rows("189:201").Hidden = True
Sheets("Output").Rows("232:244").Hidden = True
Else
If Target.Value = "8" Then
Sheets("Output").Rows("73:84").Hidden = True
Sheets("Output").Rows("190:201").Hidden = True
Sheets("Output").Rows("233:244").Hidden = True
Else
If Target.Value = "9" Then
Sheets("Output").Rows("74:84").Hidden = True
Sheets("Output").Rows("191:201").Hidden = True
Sheets("Output").Rows("234:244").Hidden = True
Else
If Target.Value = "10" Then
Sheets("Output").Rows("75:84").Hidden = True
Sheets("Output").Rows("192:201").Hidden = True
Sheets("Output").Rows("235:244").Hidden = True
Else
If Target.Value = "11" Then
Sheets("Output").Rows("76:84").Hidden = True
Sheets("Output").Rows("193:201").Hidden = True
Sheets("Output").Rows("236:244").Hidden = True
Else
If Target.Value = "12" Then
Sheets("Output").Rows("77:84").Hidden = True
Sheets("Output").Rows("194:201").Hidden = True
Sheets("Output").Rows("237:244").Hidden = True
Else
If Target.Value = "13" Then
Sheets("Output").Rows("78:84").Hidden = True
Sheets("Output").Rows("195:201").Hidden = True
Sheets("Output").Rows("238:244").Hidden = True
Else
If Target.Value = "14" Then
Sheets("Output").Rows("79:84").Hidden = True
Sheets("Output").Rows("196:201").Hidden = True
Sheets("Output").Rows("239:244").Hidden = True
Else
If Target.Value = "15" Then
Sheets("Output").Rows("80:84").Hidden = True
Sheets("Output").Rows("197:201").Hidden = True
Sheets("Output").Rows("240:244").Hidden = True
Else
If Target.Value = "16" Then
Sheets("Output").Rows("81:84").Hidden = True
Sheets("Output").Rows("198:201").Hidden = True
Sheets("Output").Rows("241:244").Hidden = True
Else
If Target.Value = "17" Then
Sheets("Output").Rows("82:84").Hidden = True
Sheets("Output").Rows("199:201").Hidden = True
Sheets("Output").Rows("242:244").Hidden = True
Else
If Target.Value = "18" Then
Sheets("Output").Rows("83:84").Hidden = True
Sheets("Output").Rows("200:201").Hidden = True
Sheets("Output").Rows("243:244").Hidden = True
Else
If Target.Value = "19" Then
Sheets("Output").Rows("84").Hidden = True
Sheets("Output").Rows("201").Hidden = True
Sheets("Output").Rows("244").Hidden = True
Else
Sheets("Output").Rows("66:84").Hidden = False
Sheets("Output").Rows("183:201").Hidden = False
Sheets("Output").Rows("226:244").Hidden = False
Sheets("Output").Rows("67:84").Hidden = False
Sheets("Output").Rows("184:201").Hidden = False
Sheets("Output").Rows("227:244").Hidden = False
Sheets("Output").Rows("68:84").Hidden = False
Sheets("Output").Rows("185:201").Hidden = False
Sheets("Output").Rows("228:244").Hidden = False
Sheets("Output").Rows("69:84").Hidden = False
Sheets("Output").Rows("186:201").Hidden = False
Sheets("Output").Rows("229:244").Hidden = False
Sheets("Output").Rows("70:84").Hidden = False
Sheets("Output").Rows("187:201").Hidden = False
Sheets("Output").Rows("230:244").Hidden = False
Sheets("Output").Rows("71:84").Hidden = False
Sheets("Output").Rows("188:201").Hidden = False
Sheets("Output").Rows("231:244").Hidden = False
Sheets("Output").Rows("72:84").Hidden = False
Sheets("Output").Rows("189:201").Hidden = False
Sheets("Output").Rows("232:244").Hidden = False
Sheets("Output").Rows("73:84").Hidden = False
Sheets("Output").Rows("190:201").Hidden = False
Sheets("Output").Rows("233:244").Hidden = False
Sheets("Output").Rows("74:84").Hidden = False
Sheets("Output").Rows("191:201").Hidden = False
Sheets("Output").Rows("234:244").Hidden = False
Sheets("Output").Rows("75:84").Hidden = False
Sheets("Output").Rows("192:201").Hidden = False
Sheets("Output").Rows("235:244").Hidden = False
Sheets("Output").Rows("76:84").Hidden = False
Sheets("Output").Rows("193:201").Hidden = False
Sheets("Output").Rows("236:244").Hidden = False
Sheets("Output").Rows("77:84").Hidden = False
Sheets("Output").Rows("194:201").Hidden = False
Sheets("Output").Rows("237:244").Hidden = False
Sheets("Output").Rows("78:84").Hidden = False
Sheets("Output").Rows("195:201").Hidden = False
Sheets("Output").Rows("238:244").Hidden = False
Sheets("Output").Rows("79:84").Hidden = False
Sheets("Output").Rows("196:201").Hidden = False
Sheets("Output").Rows("239:244").Hidden = False
Sheets("Output").Rows("80:84").Hidden = False
Sheets("Output").Rows("197:201").Hidden = False
Sheets("Output").Rows("240:244").Hidden = False
Sheets("Output").Rows("81:84").Hidden = False
Sheets("Output").Rows("198:201").Hidden = False
Sheets("Output").Rows("241:244").Hidden = False
Sheets("Output").Rows("82:84").Hidden = False
Sheets("Output").Rows("199:201").Hidden = False
Sheets("Output").Rows("242:244").Hidden = False
Sheets("Output").Rows("83:84").Hidden = False
Sheets("Output").Rows("200:201").Hidden = False
Sheets("Output").Rows("243:244").Hidden = False
Sheets("Output").Rows("84").Hidden = False
Sheets("Output").Rows("201").Hidden = False
Sheets("Output").Rows("244").Hidden = False
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
答案 0 :(得分:0)
使用Select Case
简短的代码示例。如果此代码位于Worksheet_Change
内部"输出"表格,然后您不需要使用With Sheets("Output")
行。
With Sheets("Output")
' ****** Edit 1 ******
' first thing" unhide all hidden rows from previous code run
.Rows("66:84").Hidden = False
.Rows("183:201").Hidden = False
.Rows("226:244").Hidden = False
Select Case Target.Value
Case "1"
.Rows("66:84").Hidden = True
.Rows("183:201").Hidden = True
.Rows("226:244").Hidden = True
Case "2"
.Rows("67:84").Hidden = True
.Rows("184:201").Hidden = True
.Rows("227:244").Hidden = True
' rest of your cases 3 thourgh 19.....
Case Else
.Rows("66:84").Hidden = False
.Rows("183:201").Hidden = False
.Rows("226:244").Hidden = False
' the rest of your line here are redundant >> can be removed
End Select
End With
答案 1 :(得分:0)
或者,因为看起来这实际上就是你在做什么......
If Target.Address = "$F$8" Then 'Underlying numbers
Sheets("Output").Rows("66:84").Hidden = False
Sheets("Output").Rows("183:201").Hidden = False
Sheets("Output").Rows("226:244").Hidden = False
If Target >= 1 And Target <= 19 Then
Sheets("Output").Rows(65 + Target & ":84").Hidden = True
Sheets("Output").Rows(182 + Target & ":201").Hidden = True
Sheets("Output").Rows(225 + Target & ":244").Hidden = True
End If
End If
基于其他评论....这将每次重置隐藏的行,然后根据需要隐藏。