2017-11-14 37 views
0

私はテーブルを通り、残りのコードで使用されるCol 5から値が欲しい値( "ref")を選ぶマクロを持っています。私は必要なものフィルタリングされたテーブルからセルの値を選択する

Dim Lobj As ListObject 

Set Lobj = SourceBk.Sheets("RefSheet2_x").ListObjects("Table1") 

For x = 1 To Lobj.DataBodyRange.Rows.Count 

    Ref = Lobj.DataBodyRange(x, 5) 

Next x 

(通常はフィルター内のコル2になりますが、他のcolsのフィルタを含んでいてもよい)表を濾過されたときに、それだけで表示される行の上で動作してコードを実行できるようにすることです。私の現在のコードは、私が適用したフィルタリングを無視し、テーブル全体で動作します。

答えて

0

行全体のHiddenプロパティをチェックしたいとします。これらの行に何かがあります:

Public Sub Answer() 
    Dim Lobj As ListObject 
    Dim Ref As Variant 
    Dim x As Long 

    Set Lobj = SourceBk.Sheets("RefSheet2_x").ListObjects("Table1") 

    With Lobj 
     For x = 1 To .DataBodyRange.Rows.Count 
      If Not .DataBodyRange.Rows(x).EntireRow.Hidden Then 
       Ref = .DataBodyRange(x, 5).Value 
       '... 
      End If 
     Next 
    End With 
End Sub 
+0

こんにちは、「オブジェクトはこのプロパティまたはメソッドをサポートしていません。 – Chris

+0

私の悪い;編集されたコードを参照してください。 – Excelosaurus

+0

パーフェクト。ありがとうございました :) – Chris

関連する問題