関数・メソッド

テーブルのヘッダー行を取得する方法【ListObject.HeaderRowRange】【ExcelVBA】

ヘッダー行を取得する

作成したテーブルのヘッダー行を取得したいという場面では、
ListObject.HeaderRowRangeプロパティを使うと便利です。

構文
ListObject.HeaderRowRange

ListObjectListObjectオブジェクトを表す変数です。
HeaderRowRangeテーブルのヘッダー行の範囲を表す Rangeオブジェクト を返します。

 

ヘッダー行の所在を取得/別のシートにコピペするサンプルコード

Public Sub Sample()
  'テーブルを作成する
  Dim tbl As ListObject
  Set tbl = ActiveSheet.ListObjects.Add(SourceType:=xlSrcRange, _
                                         Source:=Range("A1:D4"))

  '■テーブルを取得する
  'イミディエイトに結果を表示
  'ヘッダー行を選択
  With ThisWorkbook.Sheets("Sheet1").ListObjects(1).HeaderRowRange
    Debug.Print .Column & "行目" & .Address(False, False) & "にあります"
    .Select
  End With

  'シートを追加(Sheet2)
  Worksheets.Add
 
  '■ヘッダーのみを"Sheet2"にコピペ
  tbl.HeaderRowRange.Copy Destination:=ThisWorkbook.Sheets("Sheet2").Range("A1")


End Sub

 

注意点

  • 対象のテーブル、そしてテーブルにヘッダーが存在している必要があります。

 

関連記事

コメント

タイトルとURLをコピーしました