VBA:設定區域顯示或者隱藏,顯示的單元格自動設定行高
阿新 • • 發佈:2019-02-01
Private Sub Worksheet_Activate()
Dim A As Range, RN As Range, RNS As Range, i As Integer
For Each A In [c6:c9,c12:c50]
If A = "" And A.Height <> 0 Then
k = k + 1
If k = 1 Then
Set RN = A
Else
Set RN = Union(RN, A)
'F = RN.Address
End If
End If
If A <> "" And A.Height <> 10 Then
n = n + 1
If n = 1 Then
Set RNS = A
'F = RNS.Address
Else
Set RNS = Union(RNS, A)
End If
End If
Next
i = 0
For n = 13 To 50
If Cells(n, "C") <> "" Then i = i + 1
Next n
Debug.Print i
If k <> "" Then RN.RowHeight = 0
Select Case i
Case Is < 15
RNS.RowHeight = 35
Case 15 To 20
RNS.RowHeight = 27
Case 21 To 26
RNS.RowHeight = 21
Case 27 To 32
RNS.RowHeight = 18
Case Is > 32
RNS.RowHeight = 15.5
End Select
End Sub