【VBA】Excelにテーブルを設定する
作成日:2022-12-01
更新日:2022-12-04

テーブル設定
Public sub test( _
ByVal wb As Workbook, _
ByVal ws As Worksheet, _
ByVal IsBlack As Boolean, _
Optional ByVal row As Variant)
With wb
With ws
On Error Resume Next
'念のため既存のテーブル解除
.ListObjects(1).Unlist
Dim tbl As ListObject
If IsMissing(row) Then
Set tbl = .ListObjects.Add(xlSrcRange, .Cells(1, 1).CurrentRegion, , xlYes)
Else
Set tbl = .ListObjects.Add(xlSrcRange, .Cells(row, 1).CurrentRegion, , xlYes)
End If
With tbl
If IsBlack Then
.TableStyle = "TableStyleLight8" '黒
Else
.TableStyle = "" 'テーブルスタイル無し
End If
End With
On Error GoTo 0
End With
End With
End subデータに合わせてテーブルサイズを変更する
With ws
'データ貼り付け
.Cells(1, 1).Resize(1, UBound(ary) + 1).value = ary
'テーブルサイズ変更
.ListObjects("テーブル名").Resize Range("A1").CurrentRegion
End With関連記事
CLICK
2022-12-01
編集後記:
この記事の内容がベストではないかもしれません。
記事一覧
-

Excelテーブル最終行に値を追加 【VBA】Excelのテーブルの最終行に値を追加する -

[VBA]日付を文字列に 【VBA】日付型を文字列にする|Format -

[VBA]get fso objectfrom path 【VBA】パスからfsoオブジェクトを取得する|fso.GetFolder/.GetFile -

テーブルをソートする 【VBA】Excelテーブルを昇順で並び替える|ソート -

[VBA]Resizerows and columns 【VBA】Resize changes the size of a cell range|範囲のリサイズ -

CurrentRegionのデータを配列で取得 【VBA】シートにあるデータを配列に格納する(空白含まない)|CurrentRegion