備忘録

備忘録

商品・スマホ・パソコンのレビューや解説などをしていきたい大学生が運営するブログ。

簡単なフォームの作り方 Part2

さて、前回はフォームのベース作成と、コマンドの入力をしました。

しかし、前回のままでは毎回決まったセルへしか入力がされず

あまり使い物にはならない状態でした。

そこで、今回重要になる関数がoffset関数です。

Offset関数は、基準セルから何マス移動した先を指定する。

というものです。

通常のエクセルでは、このような使い方をします。

f:id:K6Amk2:20170602141128p:plain

=SUMは足し算をする関数ですが、

Offset関数を混ぜることでこのようなことが出来ます。

 

砕いて見てみますと、

offset(基準セル,行数,列数,高さ,幅)これらを指定します。

そうすることで、上記画像の命令を日本語に訳すと、

 

「A1セルから下へ2マス、右へ2マス移動。

 その位置から下へ2マスの範囲で足し算を行ってD6へ表示せよ」

 

といった感じになります。今回は基準セルがA1でしたが、C1や、D3など

左への移動も出来る(したい)場合は、負の値を指定することで可能です。

つまり、XY座標移動ですね。

さて、簡単にoffset関数に触れたところで本題です。

 

VBAでのoffsetは基準セルの指定がありません。

従って、前回解説した追加ボタンでの動作として、

>>1 .Offset(1, 0).Value = text1

このような使い方になります。

offset(1,0)とすることで、基準セルからひとつ行を下ろした場所になります。

こうすることで毎回基準セルをマウスで移動する手間が省けます。

 

さて、

>>1で解説したコードを追加ボタンへ入力することで、フォームの完成です。

あとは、個人の好みでアレンジするなりしてください。

 

お疲れ様でした。