在工作表「輸入」中,我有兩個下拉列表。第一個是在收益之間進行選擇,第二個是在觀察類型之間進行選擇。從下拉選擇中隱藏的行在從第二個下拉列表中選擇時隱藏
在工作表「輸出」中,行被隱藏。
當我選擇一個支付時,指定的行被隱藏,這是很好的,但在選擇觀察類型後,支付的行是不隱藏的,這是不好的。
我用下面的代碼:
With Sheets("Output")
Sheets("Output").Rows("112:137").Hidden = False
Sheets("Output").Rows("138:151").Hidden = False
Select Case Target.Value
Case "Bonus Capped Single Index"
Sheets("Output").Rows("112:154").Hidden = True
Case "Bonus Capped Single Share"
Sheets("Output").Rows("112:154").Hidden = True
Case "Bonus Uncapped Single Index"
Sheets("Output").Rows("112:154").Hidden = True
Sheets("Output").Rows("256:257").Hidden = True
Case "Bonus Uncapped Single Share"
Sheets("Output").Rows("112:154").Hidden = True
Sheets("Output").Rows("256:257").Hidden = True
Case "Bonus Uncapped Single Index"
Sheets("Output").Rows("112:154").Hidden = True
Sheets("Output").Rows("256:257").Hidden = True
Case "Bonus Capped Worst of Indices"
Sheets("Output").Rows("112:154").Hidden = True
Case "Bonus Capped Worst of Shares"
Sheets("Output").Rows("112:154").Hidden = True
Case "Bonus Uncapped Worst of Indices"
Sheets("Output").Rows("112:154").Hidden = True
Sheets("Output").Rows("256:257").Hidden = True
Case "Bonus Uncapped Worst of Shares"
Sheets("Output").Rows("112:154").Hidden = True
Sheets("Output").Rows("256:257").Hidden = True
Case "Phoenix Single Share"
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("139").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Case "Phoenix Single Index"
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("138").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Case "Phoenix Yeti Single Index"
Sheets("Output").Rows("138").Hidden = True
Sheets("Output").Rows("116:131").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Case "Phoenix Yeti Single Share"
Sheets("Output").Rows("139").Hidden = True
Sheets("Output").Rows("116:131").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Case "Worst of Indices Phoenix"
Sheets("Output").Rows("138").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("116:131").Hidden = True
Case "Worst of Shares Phoenix"
Sheets("Output").Rows("138").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("116:131").Hidden = True
Case "Worst of Shares Phoenix Yeti"
Sheets("Output").Rows("116:131").Hidden = True
Sheets("Output").Rows("138").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Case "Worst of Indices Phoenix Yeti"
Sheets("Output").Rows("139").Hidden = True
Sheets("Output").Rows("116:131").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Case "Autocall Single Index"
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("112:131").Hidden = True
Sheets("Output").Rows("138").Hidden = True
Case "Autocall Single Share"
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("112:131").Hidden = True
Sheets("Output").Rows("139").Hidden = True
Case "Autocall Worst of Shares"
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("112:131").Hidden = True
Sheets("Output").Rows("139").Hidden = True
Case "Autocall Worst of Indices"
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("112:131").Hidden = True
Sheets("Output").Rows("138").Hidden = True
Case "Reverse Convertible Single Share"
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("138:154").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("162:164").Hidden = True
Sheets("Output").Rows("173:175").Hidden = True
Case "Reverse Convertible Single Index"
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("138:154").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("162:164").Hidden = True
Sheets("Output").Rows("173:175").Hidden = True
Case "Worst of Shares Reverse Convertible"
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("138:154").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("162:164").Hidden = True
Sheets("Output").Rows("173:175").Hidden = True
Case "Worst of Indices Reverse Convertible"
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("138:154").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("162:164").Hidden = True
Sheets("Output").Rows("173:175").Hidden = True
Case "Coupon Linker Index"
Sheets("Output").Rows("160:164").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("171:175").Hidden = True
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("138:154").Hidden = True
Case "Fix Coupon Express Single Index"
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("136:137").Hidden = True
Sheets("Output").Rows("139").Hidden = True
Case "Fix Coupon Express Single Share"
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("136:137").Hidden = True
Sheets("Output").Rows("138").Hidden = True
Case "Fix Coupon Worst of Shares"
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("136:137").Hidden = True
Sheets("Output").Rows("138").Hidden = True
Case "Fix Coupon Worst of Indices"
Sheets("Output").Rows("116:133").Hidden = True
Sheets("Output").Rows("254:257").Hidden = True
Sheets("Output").Rows("136:137").Hidden = True
Sheets("Output").Rows("138").Hidden = True
Case Else
Sheets("Output").Rows("112:137").Hidden = False
Sheets("Output").Rows("138:151").Hidden = False
End Select
End With
With Sheets("Output") 'Observation and delivery
Sheets("Output").Rows("158:212").Hidden = False
Sheets("Output").Rows("246:253").Hidden = False
Select Case Target.Value
Case "American Cash"
Sheets("Output").Rows("177:212").Hidden = True
Sheets("Output").Rows("165").Hidden = True
Sheets("Output").Rows("176").Hidden = True
Case "American Physical"
Sheets("Output").Rows("162:164").Hidden = True
Sheets("Output").Rows("177:212").Hidden = True
Sheets("Output").Rows("173:175").Hidden = True
Sheets("Output").Rows("246:253").Hidden = True
Case "European Cash"
Sheets("Output").Rows("170:172").Hidden = True
Sheets("Output").Rows("159:164").Hidden = True
Sheets("Output").Rows("165").Hidden = True
Sheets("Output").Rows("176").Hidden = True
Case "European Physical"
Sheets("Output").Rows("159:164").Hidden = True
Sheets("Output").Rows("170:175").Hidden = True
Sheets("Output").Rows("246:258").Hidden = True
Case Else
Sheets("Output").Rows("158:212").Hidden = False
Sheets("Output").Rows("246:253").Hidden = False
End Select
End With
End Sub
我猜這就是因爲當你改變觀察類型下拉列表中,在目標的值是一個觀測類型。該值與收益中的任何情況都不匹配。因此運行'case else'顯示所有行。 – nightcrawler23
快速瀏覽一下,除了解決方案之外,還可以使用'With With Sheets(「Output」)',但每次都要繼續聲明它,而不是僅僅執行'.Rows(「1:2」)。 ..'不需要不斷重複。 – BruceWayne
@excelnewbie,你已經發布了這個問題[昨天](http://stackoverflow.com/questions/41098986/unable-to-hide-rows-correctly-vba)和一個非常相似的[12月9日]( http://stackoverflow.com/questions/41056861/sheet-refresh-sheet-doesnt-accept-entered-values)。你應該嘗試跟蹤已經給你的答案/建議和/或顯示你的部分努力,而不是僅僅重複相同的代碼 – user3598756