【EXCEL VBA | 基礎コード】セルへ値を入力する

スポンサーリンク

VBAでセルに値を入力する

EXCEL VBAの基本コードを紹介しています。初心者の方が順番に読んでくだけでVBAの基礎コードが理解出来るようになればなと思って、短めの記事で進めて行きたいと思います!

今回は、セルへの値の入力のコードについて紹介します!

値の入力

EXCELでVBEを立ち上げて、次のコードを標準モジュールに書きます。

Sub test()
    Range("A1").Value = "ひらちんの部屋"
End Sub

は?って方は先にこちらをどうぞ。

VBAのコードは、[Sub ○○()]~[End Sub]の間に書きます。※他にもありますが一旦これで。

Range("A1").Value = "ひらちんの部屋"

このコードが処理の内容になります。プログラムでは通常、「=」で結んだ場合は、右と左が一緒という意味ではなく、右側を左側に入れるみたいなイメージを持って下さい。

この場合だと、右側「"ひらちんの部屋"」というテキストを、「Range("A1").value」に入れるというような感じです。

では、「Range("A1").value」とは何じゃらほい。ということになるのですが、まずは、言葉の通りになんとなく理解して下さい。

「Range」なので、範囲ですね(英語です)そのあとの「()」の中に、「"A1"」とありますが、これはEXCELでもおなじみのセルの場所のことです。

最後に「Value」なので、値ですね(これも英語です)

ここまでのことをつなげて日本語的にしてみます。

「ひらちんの部屋」というテキストを、A1の範囲の値に入れる。

ってことになります。

実行してみましょう!

A1セルに「ひらちんの部屋」と入力されました!

実行結果

オブジェクト・メソッド・プロパティ

VBAのコードは、「オブジェクト」「メソッド」「プロパティ」というもので組みたっています。

イメージで言うと、「オブジェクト」は操作の対象の"モノ"、「メソッド」は"動き"、「プロパティ」は"状態"という感じで思ってくれて大丈夫だと思います。

今回のコードでいうと、次のようになります。

操作対象であるセルは、Rangeオブジェクトで表します。セルの状態(プロパティ)は色々な種類がありますが、「値」を表す状態(プロパティ)はValueプロパティです。

オブジェクトやプロパティやメソッドは「.」ドットでつなげます。

このRangeオブジェクトのValueプロパティに、「ひらちんの部屋」という文字列を設定したという形になっています。

おまけ

セルを操作するのは、もう一つ方法があります。以下のようなコードです。

Cells(1,1).Value = "ひらちんの部屋"

引数の「1,1」は、(行番号、列番号)となっていて、(1,1)はA1セルを表します。プログラムで使う場合は、こっちの書き方の方が便利な場合が多いので覚えておいて下さい。

ちなみに、「.Value」はRangeでもCellsでも省略できます。

Cells(1,1) = "ひらちんの部屋"
Range(1,1) = "ひらちんの部屋"

でも同じです。

まとめ

今回は、セルに値を入力する方法を紹介しました!ホントはRangeもCellsもプロパティだろ!みたいな玄人の方はちょっと目をつぶって頂けると幸いです笑