見出し画像

ExcelVBAチートシート セル・テーブル

セルを指定する

Range

  • Range("A1")
    単一セル

  • Range("A1:D6")
    セル範囲

  • Range("A1","D6")
    セル範囲

  • Range("A1,B2")
    2つのセル

  • Range("A1,B2:D6")
    単一セルとセル範囲

  • Range("テーブル名")
    テーブルのデータ部分のセル範囲

Cells

  • Cells(1,2)
    1行2列目の単一セル

  • Cells(2,"C")
    2行3列目の単一セル

  • Cells(3)
    インデックス番号3の単一セル

  • Cells
    シートのすべてのセル

  • Range("A1:H8").Cells(1)
    セル範囲内の先頭セル

  • Range("D3").CurrentRegion.Cell(2,3)
    セル範囲内の2行3列目のセル

Columns

  • Columns(1)
    1列目のセルすべて

  • Columns("B")
    2列目のセルすべて

  • Columns("3:5")
    3~5列目のセルすべて

  • Range("A1:D5").Columns(1)
    セル範囲内の1列目のセルすべて

Rows

  • Rows(1)
    1行目のセルすべて

  • Rows("2:4")
    2~4行目のセルすべて

  • Range("A1","G8").Rows(1)
    セル範囲内の1行目のセルすべて

Selection

Selection
選択されている単一セル・セル範囲

ActiveCell

ActiveCell
アクティブな単一セル(操作対象のセル)

EntireColumn

  • Selection.EntireColumn
    指定したセル範囲の列のセルすべて

EntireRow

  • Selection.EntireRow
    指定したセル範囲の行のセルすべて

CurrentRegion

  • Range("D3").CurrentRegion
    指定したセルを含むアクティブセル領域(表全体)

Offset

  • Range("A1").Offset(1,2)
    指定したセルから1行下2列右のセル

  • Range("A1").Offset(3)
    指定したセルから3行下のセル

  • Range("A1:B3").Offset(0,4)
    指定したセル範囲から4列右のセル範囲

  • Range("H5").Offset(-3,-2)
    指定したセルから3行上2列左のセル

Resize

  • Range("A1").Resize(1,2)
    指定したセルから1行下2列右に拡張したセル範囲

  • Range("A1").Resize(3)
    指定したセルから3行下に拡張したセル範囲

  • Range("A1:B3").Resize(0,4)
    指定したセル範囲から4列右に拡張したセル範囲

End

  • Range("B2").End(xlUp)
    指定したセルを基準とした上端セル

  • Range("B2").End(xlDown)
    指定したセルを基準とした下端セル

  • Range("B2").End(xlToLeft)
    指定したセルを基準とした左端セル

  • Range("B2").End(xlToRight)
    指定したセルを基準とした右端セル

Next

  • Range("D4").Next
    指定したセルの右のセル

Previous

  • Range("D4").Previous
    指定したセルの左のセル

SpecialCells

  • Range("A1:F5").SpecialCells(xlCelltypeBlanks)
    指定したセル範囲内の空白セルすべて

  • Range("A1:F5").SpecialCells(xlCelltypeFormulas)
    指定したセル範囲内の数式が入力されたセルすべて

  • Range("A1:F5").SpecialCells(xlCelltypeConstants)
    指定したセル範囲内の値が入力されたセルすべて

  • Range("A1:F5").SpecialCells(xlCelltypeConstants, xlTextValues)
    指定したセル範囲内の文字列が入力されたセルすべて

  • Range("A1:F5").SpecialCells(xlCelltypeConstants, xlNumbers)
    指定したセル範囲内の数値が入力されたセルすべて

  • Range("A1:F5").SpecialCells(xlCelltypeVisible)
    指定したセル範囲内の可視セルすべて

セルを選択する

Select

  • Range("A1:D5").Select
    指定したセル範囲を選択する

Activate

  • Range("A1").Activate
    指定したセルをアクティブな単一セル(操作対象のセル)にする

セルに値や数式を入力する

Value

  • Range("A1").Value = 1
    セルに数値を入力する

  • Range("A1").Value = "文字"
    セルに文字列を入力する

  • Range("A1").Value = #5/28/2022#
    セルに日付を入力する

Formula

  • Range("A1").Formula = "=1+1"
    セルに数式を入力する

  • Range("A1").Formula = "SUM(A1:D6)"
    セルに関数を入力する

セルをコピー・切取り・貼付けする

Copy

  • Range("A1").Copy
    セルをコピーする

  • Range("A1").Copy Range("B2")
    セルA1をコピーしてセルB2に貼り付ける

Cut

  • Range("A1").Cut
    セルを切り取る

  • Range("A1").Cut Range("B2")
    セルA1を切り取ってセルB2に貼り付ける

PasteSpecial

  • Range("B2").PasteSpecial
    セルに貼り付ける

  • Range("B2").PasteSpecial xlPasteValues
    セルに値を貼り付ける

  • Range("B2").PasteSpecial xlPasteFormulas
    セルに数式を貼り付ける

  • Range("B2").PasteSpecial xlPasteFormats
    セルに書式を貼り付ける

  • Range("B2").PasteSpecial xlPasteColumnWidths
    セルに列幅を貼り付ける

Application.CutCopyMode

  • Application.CutCopyMode = False
    コピーモードを解除する

セルを挿入・削除する

Insert

  • Range("A3:C3").Insert xlShiftToRight
    指定したセル範囲の位置にセルを挿入し、右方向にシフト

  • Range("A3:C3").Insert xlShiftDown
    指定したセル範囲の位置にセルを挿入し、下方向にシフト

Delete

  • Range("B2").Delete xlShiftToLeft
    指定したセルを削除し、左方向にシフト

  • Range("B2").Delete xlShiftUp
    指定したセルを削除し、上方向にシフト

セルに罫線を設定する

Borders

  • Range("A1:D6").Borders
    セル範囲のすべての罫線

  • Range("A1:D6").Borders(xlEdgeTop)
    セル範囲の上辺の罫線

  • Range("A1:D6").Borders(xlEdgeBottom)
    セル範囲の下辺の罫線

  • Range("A1:D6").Borders(xlEdgeLeft)
    セル範囲の左辺の罫線

  • Range("A1:D6").Borders(xlEdgeRight)
    セル範囲の右辺の罫線

  • Range("A1:D6").Borders(xlInsideHorizontal)
    セル範囲の内側の行方向のすべての罫線

  • Range("A1:D6").Borders(xlInsideVertical)
    セル範囲の内側の列方向のすべての罫線

  • Range("A1:D6").Borders(xlDiagonalDown)
    セル範囲のすべてのセルの斜線(\)

  • Range("A1:D6").Borders(xlDiagonalUp)
    セル範囲のすべてのセルの斜線(/)

LineStyle

  • Range("A1","D6").Borders.LineStyle = xlContinuous
    単線を引く

  • Range("A1","D6").Borders.LineStyle = xlDouble
    二重線を引く

  • Range("A1","D6").Borders.LineStyle = xlDash
    破線を引く

  • Range("A1","D6").Borders.LineStyle = xlDot
    点線を引く

  • Range("A1","D6").Borders.LineStyle = xlLineStyleNone
    罫線を消す

Weight

  • Range("A1","D6").Borders.Weight = xlHairline
    罫線を極細線にする

  • Range("A1","D6").Borders.Weight = xlThin
    罫線を細線にする

  • Range("A1","D6").Borders.Weight = xlMedium
    罫線を普通の太さの線にする

  • Range("A1","D6").Borders.Weight = xlThick
    罫線を太線にする

BorderAround

  • Range("B2:F6").BorderAround _
    LineStyle:=xlContinuous, Weight:=xlMedium, Color:=RGB(255,14,83)
    選択したセル範囲に外枠罫線を引く

セルに背景色を設定する

Interior.Color

  • Range("A1").Interior.Color = RGB(255,14,83)
    背景色をRGB値で指定する

  • Range("A1").Interior.Color = "&H0A1A33"
    背景色をカラーコード(16進数)で指定する

Interior.ThemeColor

  • Range("A1").Interior.ThemeColor = xlThemeColorAccent3
    背景色をテーマカラーで指定する

Interior.Pattern

  • Range("A1").Interior.Pattern = xlPatternCrissCross
    背景を網目模様にする

Interior.TintAndShade

  • Range("A1").Interior.TintAndShade = 0.8
    背景色の明るさを変更する(-1~1)

セルの書式を設定する

NumberFormatLocal

  • Range("A1").NumberFormatLocal = "#,###"
    数値の書式(3桁区切り)を指定する

  • Range("A1").NumberFormatLocal = "@""円"""
    文字列の書式(~円)を指定する

  • Range("A1").NumberFormatLocal = "yyyy/m/d"
    日付の書式設定(2022/5/28)を指定する

セルの値の表示位置を設定する

HorizontalAlignment

  • Range("A1").HorizontalAlignment = xlLeft
    セルの文字を左揃えにする

  • Range("A1").HorizontalAlignment = xlRight
    セルの文字を右揃えにする

  • Range("A1").HorizontalAlignment = xlCenter
    セルの文字を中央揃えにする

  • Range("A1").HorizontalAlignment = xlJustify
    セルの文字を両端揃えにする

  • Range("A1:A4").HorizontalAlignment = xlCenterAcrossSelection
    セル範囲の文字をその範囲内で中央揃えにする

  • Range("A1").HorizontalAlignment = xlDistributed
    セルの文字を均等割り付けにする

VerticalAlignment

  • Range("A1").VerticalAlignment = xlTop
    セルの文字を上詰めにする

  • Range("A1").VerticalAlignment = xlBottom
    セルの文字を下詰めにする

  • Range("A1").VerticalAlignment = xlCenter
    セルの文字を上下中央揃えにする

セルの値や書式をクリアする

Clear

  • Range("A1").Clear
    セルの値と書式をクリアする

ClearContents

  • Range("A1").ClearContents
    セルの値のみをクリアする

ClearFormats

  • Range("A1").ClearFormats
    セルの書式のみをクリアする

セルの値の文字を設定する

Font.Name

  • Cells.Font.Name = "Arial"
    セルの文字のフォントをArialにする

Font.Size

  • Cells.Font.Size = 12
    セルの文字のサイズを12にする

Font.Color

  • Cells.Font.Color = RGB(83,54,33)
    セルの文字色をRGB値で指定する

  • Cells.Font.Color = "&H0A1A33"
    セルの文字色をカラーコード(16進数)で指定する

Font.ThemeColor

  • Cells.Font.ThemeColor = xlThemeColorAccent4
    セルの文字色をテーマカラーで指定する

Font.TintAndShade

  • Cells.Font.TintAndShade = 0.8
    文字色の明るさを変更する(-1~1)

Font.Bold

  • Range("A1").Font.Bold = True
    セルの文字を太字にする

Font.Underline

  • Range("A1").Font.Underline = xlUnderlineStyleSingle
    セルの文字に下線(単線)を引く

  • Range("A1").Font.Underline = xlUnderlineStyleDouble
    セルの文字に下線(二重線)を引く

  • Range("A1").Font.Underline = xlUnderlineStyleNone
    セルの文字の下線を消す

セルの値を置換する

Replace

  • Range("A1:D8").Replace "箱", "ボックス"
    指定したセル範囲の値の"箱"を"ボックス"に置換する(部分一致)

  • Range("A1:D8").Replace "書籍", "本", xlWhole
    指定したセル範囲の値の"書籍"を"本"に置換する(完全一致)

セルの幅を設定する

ColumnWidth

  • Columns(1).ColumnWidth = 10
    シートの1列目のセルの列幅を10にする

RowHeight

  • Rows(1).RowHeight = 10
    シートの1行目のセルの行幅を10にする

UseStandardWidth

  • Columns(1).UseStandardWidth = True
    シートの1列目のセルの列幅をデフォルトに戻す

UseStandardHeight

  • Rows(1).UseStandardHeight = True
    シートの1行目のセルの行幅をデフォルトに戻す

AutoFit

  • Range("A1").AutoFit
    入力されている値に合わせてセルの列幅を自動調整する

セル範囲の行数や列数、セル数を取得する

Rows.Count

  • Range("A1:D5").Rows.Count
    セル範囲の行数を取得する

  • Range("D3").CurrentRegion.Rows.Count
    セル範囲の行数を取得する

Columns.Count

  • Range("A1:D5").Columns.Count
    セル範囲の列数を取得する

  • Range("D3").CurrentRegion.Columns.Count
    セル範囲の列数を取得する

Count

  • Range("A1:D5").Count
    セル範囲のセル数を取得する

  • Range("D3").CurrentRegion.Count
    セル範囲のセル数を取得する

セルにジャンプする

Application.Goto

  • Application.Goto Worksheets(2).Range("A1")
    指定したセルにジャンプする

  • Application.Goto
    ジャンプ元に戻る

セル範囲を並び替える

Sort

  • Range("C2").CurrentRegion.Sort _
    Key1:=Range("D2"), Order1:=xlAscending, Header:=xlYes
    指定したセル範囲をD2項目の列を基準に昇順に並べ替える

セル範囲にフィルターをかける

AutoFilter

  • Range("A1:F8").AutoFilter 2, "OK"
    指定したセル範囲の2列目が"OK"の行を抽出する

  • Range("A1:F8").AutoFilter 3, ">=2", xlAnd, "<=8"
    指定したセル範囲の3列目が2以上8以下の行を抽出する

AutoFilterMode

  • Worksheets(1).AutoFilterMode = False
    指定したワークシートのフィルターを解除する

セルを検索する

Find

  • Cells.Find(What:=10, LookIn:=xlValues, LookAt:=xlWhole)
    値が10であるセルを検索して指定する

  • Cells.Find(What:=8, LookIn:=xlFormulas, LookAt:=xlPart)
    数式に8が含まれるセルを検索して指定する

  • Cells.Find(What:="文字列", LookIn:=Values, LookAt:=xlPart)
    値に文字列が含まれるセルを検索して指定する

セル範囲を集約する

Union

  • Dim rng As Range
    Set rng = Union(Range("A1"), Range("B2"))
    変数rngにA1セルとB2セルを集約して代入する

テーブル及びテーブル内のセルを指定する

ListObjects

  • ActiveSheet.ListObjects("テーブル名")
    指定したテーブル名のテーブル

  • Range("D3").ListObject
    指定したセルを含むテーブル

ListObjects.Range

  • ActiveSheet.ListObjects("テーブル名").Range
    テーブル全体のセル範囲

ListObjects.HeaderRowRange

  • ActiveSheet.ListObjects("テーブル名").HeaderRowRange
    テーブルの見出し部分のセル範囲

ListObjects.DataBodyRange

  • ActiveSheet.ListObjects("テーブル名").DataBodyRange
    テーブルのデータ部分のセル範囲

ListObjects.ListRows

  • ActiveSheet.ListObjects("テーブル名").ListRows(3)
    テーブルのデータ部分の3行目のセルすべて

ListObjects.ListColumns

  • ActiveSheet.ListObjects("テーブル名").ListColumns(2)
    テーブルの2列目のセルすべて

  • ActiveSheet.ListObjects("テーブル名").ListColumns("見出し名")
    テーブルの見出し名の列のセルすべて

テーブルに行を追加・削除する

ListRows.Add

  • ActiveSheet.ListObjects("テーブル名").ListRows.Add
    テーブルの最後尾に行を追加する

  • ActiveSheet.ListObjects("テーブル名").ListRows.Add.Range
    テーブルの最後尾に行を追加し、その行のセル範囲を指定する

ListRows.Delete

  • ActiveSheet.ListObjects("テーブル名").ListRows(2).Delete
    テーブルの2行目の行を削除する

いいなと思ったら応援しよう!