Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


21943 / 76734 ←次へ | 前へ→

【60177】Re:オートフィルタ後の行番号の取得
発言  kanabun  - 09/2/2(月) 12:39 -

引用なし
パスワード
   ▼たかし さん:

>エラーの回避方法があれば

フィルタかけたあと、
ある列の可視行数 .SpecialCells(xlCellTypeVisible).Count
を取得して、その数に対して条件分岐すればよいのではないでしょうか?

たとえば, 提示のサンプルで B列に対して "BBB"でフィルタをかけたとすると、

  Dim n As Long
  Dim CA As Long, CE As Long
  With Worksheets("AAAA")
    .AutoFilterMode = False
    With .Range("A1").CurrentRegion.Columns(2)
      .AutoFilter 1, "BBB"
      n = .SpecialCells(xlVisible).Count
      Select Case n
       Case 1
         MsgBox "抽出なし"
       Case Else
         CE = .Cells(.Cells.Count + 1).End(xlUp).Row
         CA = .SpecialCells(xlVisible).Areas.Item(2).Row
         MsgBox CA & ", " & CE, , n - 1 & "行抽出"
      End Select
      .AutoFilter
    End With
  End With

0 hits

【60176】オートフィルタ後の行番号の取得 たかし 09/2/2(月) 12:07 質問
【60177】Re:オートフィルタ後の行番号の取得 kanabun 09/2/2(月) 12:39 発言
【60178】Re:オートフィルタ後の行番号の取得 たかし 09/2/2(月) 13:49 お礼

21943 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free