【VBA】Excelテーブルのデータを配列で取得する
記事更新日:2022-12-01

テーブル内の全部の値を取得する
指定シートの1番目のテーブルの値を取得する
Public Function GetTblData(ByVal ws As Worksheet) As Variant
GetTblData = ws.ListObjects(1).DataBodyRange
End Function

1シート1テーブルを鉄則にする
指定シートの特定のテーブル名の値を取得する
Public Function GetTblDataByName( _
ByVal ws As Worksheet, _
ByVal tblName As String) As Variant
GetTblDataByName = ws.ListObjects(tblName).DataBodyRange
End Function

1シート内にテーブルが複数ある場合は、テーブル名を指定する
テーブル内の特定の列の値のみを取得する
n列目の値を取得する
Public Function GetTblColNumDataByName( _
ByVal ws As Worksheet, _
ByVal tblName As String, _
ByVal n As Long) As Variant
GetTblColNumDataByName = ws.ListObjects(tblName).ListColumns(n).DataBodyRange
End Function
列名を指定して取得する
Public Function GetTblColDataByName( _
ByVal ws As Worksheet, _
ByVal tblName As String, _
ByVal colName As String) As Variant
GetTblColDataByName = ws.ListObjects(tblName).ListColumns(colName).DataBodyRange
End Function
テーブルじゃない場合
関連記事
CLICK
2022-12-01
編集後記:
この記事の内容がベストではないかもしれません。
記事一覧
-
OKキャンセルのメッセージ 【VBA】OKキャンセルのメッセージボックス|MsgOKCancel -
日付を文字列に変えたい 【VBA】日付型を文字列にするCStr と format -
マクロ中断のメッセージ 【VBA】マクロ中断するときのメッセージボックス|MsgStopMacro -
Redim Preserveで要素を追加 【VBA】配列の要素を1つ追加する|ReDim Preserve -
配列の要素数を取得する 【VBA】配列の要素数を取得するElmクラス -
dictionaryをセットする 【VBA】Dictionaryのセット|CreateObject(“Scripting.Dictionary”)