Excelのこととか色々

Excel のこととか楽天とか いろいろ書いてみます・・・

【VBAスタンダードに挑戦!】テーブルの操作(テーブル内のデータ操作)

【VBAスタンダードに挑戦!】

f:id:tuna-kichi:20200614200940p:plain

 

本日の5分勉強の内容

 

 

********************************************************

 オートフィルタ

・テーブルにオートフィルタを付けることができる

テーブルにオートフィルタを付ける

・Range("B1").ListObject.Range.AutoFilter 1, "10"
  or
 Range("B1").ListObject.DataBodyRange.AutoFilter 1, "10"
 テーブルの1列目の「10」をフィルタリング

 

・見出しを含む/含まない どちらの記述でオートフィルタを付けても
 結果は同じになる

 

オートフィルタの結果をコピー

テーブルの1列目の「10」をフィルタリングして、
Sheet2 の Range("A1") にコピーする

見出しを含む

Range("B1").ListObject.Range.AutoFilter 1, "10"
Range("B1").ListObject.Range. Copy Sheets("Sheet2"). Range("A1")

見出しを含まない

Range("B1").ListObject.DataBodyRange.AutoFilter 1, "10"
Range("B1").ListObject.DataBodyRange. Copy Sheets("Sheet2"). Range("A1")

 

 

with を使って可読性を高める

With  Range("B1").ListObject.Range
 . AutoFilter 1, "10"
 . Copy Sheets("Sheet2"). Range("A1")

End With

 

*******************************************

やっと操作編に入りました。

Range や Cells を使ったコピーの記述方法と同じです。

シート上であってもテーブルは特殊なので、

範囲の指定方法が変わってくる ということなのですね。

 

なんか少しですが、テーブルを使うメリットが見えてきた気がします。

 

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/