根据单元格值取消隐藏Excel行

时间:2013-08-05 18:47:16

标签: excel vba

我正在尝试在Excel 2011 For Mac上编写VBA脚本并且成功有限。

根据单元格A1中的值,脚本需要取消隐藏下面的行。

If A1 = 1, it needs to unhide row B.
If A1 = 2, it needs to unhide rows B and C.
If A1 = 3, it needs to unhide rows B, C and D.

......依此类推,最高A1值为8。

A1中的值使用数据验证从工作表上的其他列表中查找。

谢谢!

2 个答案:

答案 0 :(得分:2)

如果您说B, C, D,则表示您的意思是,而不是

您可以使用:

Range("B1").Resize(1, Range("A1")).EntireColumn.Hidden = False

答案 1 :(得分:0)

Select Case Range("A1").Value

   Case 1
      Range("A2").EntireRow.hidden = false      
   Case 2
      Range("A2,A3").EntireRow.hidden = false

   '...   

   Case Else
      MsgBox("Invalid number in cell A1")

End Select

在这种情况下,A2将引用第2行,A2,A3将是2和3等等

编辑:

根据你的评论,这样的事情会更好

Dim rng as Range
Dim val as Integer

val = Range("AE25").Value
if (val >= 1) then
  set rng = Range("A26:A27").Resize(val,0)
  rng.EntireRow.Hidden = false
end if