EXCEL

【VBA初心者向け】良く使うセルの操作まとめ

本記事では、VBA初心者に向けて良く使うセルの操作方法をまとめてみました。是非参考にしてみてください。

セルの操作方法まとめ

セルを選択する

セルを選択
Select
Activate
Goto
セルを選択 Range("A1").Select
セルを選択 Range("A1").Activate
セルを選択 Application.Goto Reference:=Range("A1")
シートを選択 Worksheets("Sheet1").Select
シートを選択 Worksheets("Sheet1").Activate
ブックを選択 Workbooks("Book1.xlsx").Activate

 

セルのアドレスを取得する

アドレス取得
Address
Row
Column
セルの絶対座標を取得 変数 = Activecell.Address
セルの行を相対座標で取得 変数 = ActiveCell.Address(0, 1)
セルの列を相対座標で取得 変数 = ActiveCell.Address(1, 0)
セルの行列を相対座標で取得 変数 = ActiveCell.Address(0, 0)
セルのR1C1形式で取得 変数 = ActiveCell.Address(, , 0)
セルの行番号を取得 変数 = Selection.Row
セルの列番号を取得 変数 = Selection.Column

 

セルの挿入と削除する

セルを挿入・削除
Insert()
Delete()
セルを挿入(元のセルを右寄せ) ActiveCell.Insert (xlShiftToRight)
セルを挿入(元のセルを下寄せ) ActiveCell.Insert (xlShiftDown)
セルを削除(左へ詰める) ActiveCell.Delete(xlshifttoleft)
セルを削除(上へ詰める) ActiveCell.Delete (xlShiftUp)

 

セルを結合する

セルを結合
Merge()
セルを結合 range("A1:A3").Merge
セルを行単位で結合 range("A1:C3").Merge across:=True
セルを結合 range("A1:A3").MergeCells = True
セルをの結合を解除 range("A1:A3").MergeCells = false

 

セルをカット・コピー・貼付けする

セルをコピー
カット・貼付け
Copy()
Cut()
Paste()
セルをクリップボードへコピー ActiveCell.Copy
セルを指定先にコピー ActiveCell.Copy Destination:=range("A1")
セルをクリップボードへカット ActiveCell.Cut
セルを指定先にカット ActiveCell.Cut Destination:=range("A1")
セルにクリップボードから貼付け ActiveSheet.Paste
セル(指定先)に貼付け ActiveSheet.Paste Destination:=range("A1")
セルにリンク貼付け ActiveSheet.Paste link:=True

 

セルに型式指定貼付けする

セルに指定貼付
PasteSpecial()
セルに数式のみ貼付け ActiveCell.PasteSpecial Paste:=xlPasteFormulas
セルに値のみ貼付け ActiveCell.PasteSpecial Paste:=xlPasteValues
セルに書式のみ貼付け ActiveCell.PasteSpecial Paste:=xlPasteFormats
セルにコメントのみ貼付け ActiveCell.PasteSpecial Paste:=xlPasteComments
セルに入力規則のみ貼付け ActiveCell.PasteSpecial Paste:=xlPasteValidation
セルに罫線以外全て貼付け ActiveCell.PasteSpecial Paste:=xlPasteAllExceptBorders
セルに列幅を貼付け ActiveCell.PasteSpecial Paste:=xlPasteColumnWidths
セルに数式・数値の書式を貼付け ActiveCell.PasteSpecial Paste:=xlPasteFormulasAndNumberFormats
セルに値・数値の書式を貼付け ActiveCell.PasteSpecial Paste:=xlPastevaluesAndNumberFormats

 

値や型式を入力・取得する

値や数式の
入力と取得
Value
Formula
FormulaR1C1
セルの値取得 変数 = Activecell.value
セルへの数値の入力 Activecell.value=100
セルへの文字列の入力 Activecell.value="山田太郎様"
セルの数式の取得 変数 = Activecell.Formula
セルへの数式の入力 ActiveCell.Formula = "=A1+B1"
セルの数式をセルへ取得 ActiveCell.Formula = Range("A1").Formula
セルの数式の取得(R1C1形式) 変数 = Activecell.FormulaR1C1
セルへの数式の入力(R1C1形式) Activecell.FormulaR1C1="=R[1]C[1]+R[2]C[2]"

 

書式の入力・取得する

書式の
入力と取得
NumberFormat
セルの書式の設定と取得 変数 = Activecell.NumberFormat
セルの書式設定(標準) ActiveCell.NumberFormat = "General"
セルの書式設定(数値) ActiveCell.NumberFormat = "##.##"
セルの書式設定(数値) ActiveCell.NumberFormat = "00.00"
セルの書式設定(小数点揃え) ActiveCell.NumberFormat = "??.??"
セルの書式設定(パーセント) ActiveCell.NumberFormat = "0.0%"
セルの書式設定(西暦年月日+曜日) ActiveCell.NumberFormat = "yyyy.mm.dd(aaa)"
セルの書式設定(時分秒) ActiveCell.NumberFormat = "hh:mm:ss"
セルの書式設定(入力文字+文字) ActiveCell.NumberFormat = "@""円"""

 

セル情報をクリアする

セルの情報を消去
Clear()
セルの書式とデータを消去 ActiveCell.Clear
セルのデータを消去 ActiveCell.ClearContents
セルの書式を消去 ActiveCell.ClearFormats
セルのコメントを消去 ActiveCell.ClearComments

 

文字の配置を設定する

文字の配置
横方向
文字の横配置(標準) ActiveCell.HorizontalAlignment = xlGeneral
文字の横配置(左揃え) ActiveCell.HorizontalAlignment = xlLeft
文字の横配置(中央揃え) ActiveCell.HorizontalAlignment = xlCenter
文字の横配置(右揃え) ActiveCell.HorizontalAlignment = xlRight
文字の横配置(繰り返し) ActiveCell.HorizontalAlignment = xlFill
文字の横配置(両端揃え) ActiveCell.HorizontalAlignment = xlJustify
文字の横配置(選択範囲内で中央) ActiveCell.HorizontalAlignment = xlCenterAcrossSelection
文字の横配置(均等貼り付け) ActiveCell.HorizontalAlignment = xlDistributed
文字の配置
上下方向
文字の上下配置(上詰め) ActiveCell.VerticalAlignment = xlGeneral
文字の上下配置(中央揃え) ActiveCell.VerticalAlignment = xlCenter
文字の上下配置(下詰め) ActiveCell.VerticalAlignment = xlBottom
文字の上下配置(両端揃え) ActiveCell.VerticalAlignment = xlJustify
文字の上下配置(均等割り付け) ActiveCell.VerticalAlignment = xlDistributed

 

行と列の入力と取得

行と列の
入力と取得
行の高さを取得 変数 = ActiveCell.RowHeight
列の高さを取得 変数 = ActiveCell.ColumnWidth
行の高さを設定 ActiveCell.RowHeight = 15.75
列の高さを設定 ActiveCell.ColumnWidth = 20
行の高さを自動調整 Rows(ActiveCell.Row).AutoFit
列の高さを自動調整 Columns(ActiveCell.Column).AutoFit
行を非表示化 Rows(ActiveCell.Row).Hidden = True
列を非表示化 Columns(ActiveCell.Column).Hidden = True
セル範囲の高さを取得 変数 = Selection.Height
セル範囲の幅を取得 変数 = Selection.width

 

以下の記事で、セルなどの参照方法をまとめています。併せて参考にしてみてください。

【VBA初心者向け】セル・行・列・範囲などの参照方法のまとめ本記事では、VBA初心者に向けてセル・行・列・範囲などの参照方法をまとめてみました。是非参考にしてみてください。...

 

最後に

ということで、VBA初心者に向けて良く使うセルの操作方法をまとめてみました。僕と同じくVBAを学び始めた方のお役に立てれば幸いです。