VBA Offsetプロパティ ~プロパティの解説と使用例~

VBA Offsetプロパティ ~プロパティの解説と使用例~

ENGINEER.CLUB編集部

ENGINEER.CLUB編集部

Offsetプロパティは、Excelのセルを移動するために使用します。ここでは、基本的な使用方法を紹介していきます。

以降の図では、移動前のセルを黄色、移動後のセルを緑で網掛けしています。また、図に書かれている「1, 2」といった数字は、Excelのセル座標になっています。


1.Offsetプロパティについて

1-1.Offsetプロパティとは

Offsetプロパティとは、指定した範囲からオフセット(移動)した結果を返します。目に見える動作としては、指定した値だけアクティブセルが移動します。

例)アクティブセル「縦1、横1」からOffsetプロパティを使って、下に2マス右に3マス移動
結果:セル(1. 1)からセル(3, 4)へ移動

結果1

1-2.Offsetプロパティの構文

Offsetプロパティの使用方法は、主に下記の3種類があります。※ 構文例内のXYは、それぞれ移動するセル数になります。

1-2-1.アクティブなセルから移動

ActiveCell.Offset(横に移動するセルの数, 縦に移動するセルの数).select

1-2-2.セル座標を選択してから移動

Rangeを使う場合

Range("A1").Offset(横に移動するセルの数, 縦に移動するセルの数).select

Cellsを使う場合

Cells(1, 1).Offset(横に移動するセルの数, 縦に移動するセルの数).select

1-2-3.範囲を指定してから移動

Selection.Offset(横に移動するセルの数, 縦に移動するセルの数).select

2.Offsetプロパティの使用例

2-1.基本的な使用例

2-1-1.初期値設定

Sub sample01()
    'A1を選択
    Cells(1, 1).Select       '①

    'A1から下へ2、右へ3移動
    ActiveCell.Offset(2, 3).Activate       '②
End Sub

結果:①実行後

結果2

②実行後

結果3

2-2.特殊な書き方をする場合

2-2-1.基準となるセルを範囲で指定する

Sub sample02()
    'A1を選択
    Range("A1:C3").Select       '①

    'A1から下へ2、右へ1移動
    Selection.Offset(2, 1).Activate '②
End Sub

結果:①実行後

結果4

②実行後

結果5

2-2-2.offsetを複数回使用する

Sub sample03()
Dim ret As Range

    'A1を選択Offset
    Cells(1, 1).Select       '①

    'A1から下へ2、右へ1移動
    'その後下へ1、右へ3移動
    ActiveCell.Offset(2, 1).Offset(1, 3).Activate       '②
End Sub

結果:①実行後

結果6

②実行後

結果7

処理としては水色の矢印で移動していますが、連続で処理を行っているためオレンジの矢印のように移動して見えます。


3.注意点

3-1.起点セルが結合している場合

起点となるセルが結合されている場合は、結合前のセル数に関係なく1つのセルとします。

Sub sample04()

    'A1を選択
    Cells(1, 1).Select       '①

    'A1から下へ2、右へ3移動
    ActiveCell.Offset(2, 3).Activate
End Sub

結果:①実行後

結果8

②実行後

結果9

起点となるセル(1, 1)が縦2セル分結合されているため、セル(3, 4)ではなくセル(4, 4)に移動します。


4.最後に

Offsetプロパティは、使い方次第で非常に有用なプロパティです。ぜひ、使いこなしてみてください。

私たちは、全てのエンジニアに市場価値を高め自身の望む理想のキャリアを歩んでいただきたいと考えています。もし、今あなたが転職を検討しているのであればこちらの記事をご一読ください。理想のキャリアを実現するためのヒントが見つかるはずです。

『技術力』と『人間力』を高め定年まで働けるエンジニアを目指しませんか?

私たちは「技術力」だけでなく「人間力」の向上をもって、エンジニアとしてだけでなくビジネスパーソンとして高い水準を目指し、社会や顧客に必要とされることで、関わる人々に感動を与える集団であろうと思っています。

  • 定年までIT業界で働くためのスキルが身につく「感動大学」と「技術勉強会」!
  • 「給与が上がらない」を解消する6ヶ月に1度の明確な「人事評価制度」!
  • 理想のエンジニア像に近づくためのよきアドバイザー「専任コーチ制度」!
  • 稼動確認の徹底により実現できる平均残業時間17時間の働きやすい環境!

現在、株式会社ボールドでは「キャリア採用」のエントリーを受付中です。

まずは以下のボタンより弊社の紹介をご覧いただき、あなたの望むキャリアビジョンをエントリーフォームより詳しくお聞かせください。

コメント

公式アカウントLINE限定!ボールドの内定確率が分かる無料診断実施中
公式アカウントLINE限定!
ボールドの内定確率が分かる無料診断実施中