[[20200620072030]] 『可視セルの一番上の行と一番下の行を取得したいで』(おきた) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『可視セルの一番上の行と一番下の行を取得したいです。』(おきた)

質問失礼いたします!

4行目から110行目までデータが入っており、その中で表示している行と表示していない行があります。
表示非表示の行は変動がございますが、必ず連番での表示になります。
例)1〜3行目表示 4行目非表示 5〜10行目表示 11〜110行目まで非表示 111行目〜表示

4〜110行目までの範囲の中で可視セルの1番上の行(例だと5)
4〜110行目までの範囲の中で可視セルの1番下の行(例だと10)
上記2つの数値を取得するコードを教えて頂けないでしょうか。
宜しくお願い致します。

< 使用 Excel:Excel2016、使用 OS:Windows10 >


 おはようございます ^^
いろいろ方法は有るかと思いますが。。。一案で
3行目に項目列が有ると仮定して、[なければ範囲指定を変えて下さいね。^^;]
Option Explicit
Sub OneInstanceMain()
    Dim r As Range
    With Worksheets("Sheet1")
        Set r = .Cells(3, 1).CurrentRegion
        Set r = r.Offset(1).Resize(r.Rows.Count - 1, r.Columns.Count).SpecialCells(xlCellTypeVisible)
        MsgBox r.Areas(1).Cells(1, 1) & Chr(13) & _
               r.Areas(r.Areas.Count).Cells(r.Areas(r.Areas.Count).Rows.Count, 1)
    End With
End Sub
(隠居じーさん) 2020/06/20(土) 09:19

隠居じーさんさんありがとうございます。
コード使用させて頂きます。
(おきた) 2020/06/20(土) 09:39

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.