非表示の行・列があるかを判定

 

Sub test()

    If Cells.SpecialCells(xlCellTypeVisible).Areas.Count > 1 Then
    
        MsgBox "非表示の列があります。", vbInformation
        
    End If


End Sub

 

実行結果

 

 

通常、非表示の行・列がない場合、セル全体に可視セルを取得すると、セル範囲は1つだけです。

一方、非表示行・列がある時、セル全体が複数のセル範囲に分割されることとなります。

この理屈を利用して、セル範囲が2つ以上にあれば、非表示の行・列があると判定できます。

 

― ― ― ― ― ― ― ― ― ― → Excel VBA基礎入門もくじ へ戻る 

 

参考記事