LoginSignup
1
2

More than 3 years have passed since last update.

Excel VBA ListObject

Last updated at Posted at 2021-03-06

テーブル ListObject

Excel使うなら絶対使うべき機能テーブル!

リストデータに対して、入力規則を自動適用したり
構造化参照を使って数式が管理しやすくなったりいいことたくさん。:thumbsup:
さぁ、レッツ Ctrl+T !

そのListObjectに関してのメモ書き&備忘録。

:black_large_square:テーブル特定

sample.vba
Activesheet.ListObjects(1).
Range("A1").listobject.
Range("テーブル1").listobject.

*テーブル1=tablename

:black_large_square:テーブル特定部分の指定

テーブル全体

ListObject.vba
Activesheet.ListObjects(1).Range.Select
Range("A1").listobject.Range.Select

ヘッダーのみ

ListObject.vba
Activesheet.ListObjects(1).HeaderRowRange.Select

(ヘッダー除く)データ全体

ListObject.vba
Activesheet.ListObjects(1).DataBodyRange.Select

ListObject.vba
Activesheet.ListObjects(1).ListColumns(2).Range.Select

2列目全体を選択

ListObject.vba
Activesheet.ListObjects(1).ListRows(3).Range.Select

データの3行目を選択(ヘッダーは含まれない)

集計行

ListObject.vba
Activesheet.ListObjects(1).TotalsRowRange.Select

え、集計行設定してない? ⇒
 Ctrl + Shift + T ね。

データ先頭行(Excel行)取得

ListObject.vba
debug.print Activesheet.ListObjects(1).DataBodyRange.Row

データ行数取得

ListObject.vba
debug.print Activesheet.ListObjects(1).ListRows.Count

データ最終行(Excel行)取得

ListObject.vba
debug.print Activesheet.ListObjects(1).DataBodyRange.Row + Activesheet.ListObjects(1).ListRows.Count - 1

上のデータ先頭行(Excel行)取得してデータ行数取得して、1引くとデータの最終行

おわり

テーブルって管理が楽になるよね:smile:

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2