VBAで指定したセルに値を入れる方法
VBAでセルに値を入力する方法は複数あります。
VBAに限らず、通常のExcelでも「今選択しているセルに入力したい」「B5のセルに入力したい」などと指定したいことってよくありますよね?
VBAでプログラミングを行えば、このようなセルの操作が簡単にできます。
そこでこの記事ではVBAで指定したセルに値を入れる方法を紹介します。
指定する方法は複数の方法で紹介しますので、この記事を見たらまずはご自身のExcelで実践して覚えていきましょう。
Rangeで指定したセルに値を入れる
前回の記事でも紹介しましたが、Rangeを使うと簡単にセルを指定して値を入れることができます。
Range(“A1”).Value = “値を入力”
End Sub
上記のようにRangeのあとにセルの名前を直接することもできますし、範囲指定や名前を定義した方法もあります。
詳しくは以下の記事を参考にしましょう。
Cellで指定したセルに値を入れる
続いて、「Cells」を使用した方法を紹介します。Rangeと違って行数や列について数字で表記しますが、慣れると簡単です。
使い方はCells(行,列)になり、以下のように表記します。
Cells(4, 2).Value = “値を入力”
End Sub
上記のコードの場合、B2のセルに入力されます。
Cellsは変数を使用するときに便利なのですが、詳しくは別記事で紹介していきたいと思います。
アクティブなセルを指定する方法
アクティブなセル、つまり今選択しているセルに入力する場合は「ActiveCell」を使用します。
ActiveCell.Value = “値を入力”
End Sub
もしアクティブなセルのデータを削除する場合は以下のようになります。
ActiveCell.ClearContents
End Sub
指定した数をズラして値を入れる
〇〇のセルの隣のセルに値を入れたい、というように何かのセルを基準から指定してセルに入力したい場合もありますよね。
その場合は「Offset」を使うと便利です。
使用例は以下となります。
Range(“A1”).Offset(3, 2).Value = “練習”
End Sub
上記の場合、A1から3つ下、2つ右にズレたセル、つまりC4のセルに入力されます。
Offset(行,列)で指定できる。行は正の値で下、負の値で上にズレる。列は正の値で右、負の値で左にズレる
行と列を指定する方法
基準から位置を指定する方法は、セル以外にも行や列も行えます。
行の場合は行は「Row Offset」列は「ColumnOffset」を使用します。使用例は以下となります。
Range(“A1”).Offset(RowOffset:=3, ColumnOffset:=2).Value = “行3列2”
End Sub
まとめ
今回はVBAで指定したセルに値を入れる方法について紹介しました。
RangeやCells、Offsetなど、最初はどう使うか悩むかもしれません。
まずはコードを入力して正しく操作するか確認し、何度も練習してみましょう。
使っていくと、どういうときにどのコードが必要かイメージがついてきます。
Excelの機能を使いこなすと、仕事の効率化から大きな時間短縮に繋がります。
仕事術のスキルが増えるとプライベートの時間を時間を増やすことができますので、当サイトで得た知識を是非活用していきましょう。
以下のExcel記事もおすすめです。