VBA入門
第8回.セルに文字を入れるとは(Range,Value)

ExcelマクロVBAの基本と応用、エクセルVBAの初級・初心者向け解説
最終更新日:2019-06-29

第8回.セルに文字を入れるとは(Range,Value)


前回実行したマクロを、もう少し詳しく見てみましょう。


どうして、これでセルに値がはいるのか、
どうやってVBAを読んだらよいのか、

少しだけ詳しく解説します。

Sub 練習1()
  Range("A1") = "おはよう!"
End Sub


とにかくこれで、A1セルに、「おはよう!」と入る事がわかりました。
セルに文字を入れる場合は、
Range("セルの番地") = "入れる文字"
セル番地は、列記号+行番号です、A列1行目のセルなのでA1になります。


この「=」が少し理解しづらいかもしれませんが、
この場合の「=」は、「←」とでも考えて下さい。
「=」の右側指定した文字・数値を左側に入れると言う事です。
シートの関数と同じで、文字は"ダブルクォーテーションで囲みます。


とにかくこれで、セルに文字を入れられる訳です。
Range("B2") = "こんにちは"
なら、B2セルに、「こんにちは」と入ります。
「入ります」と書きましたが、セルにその文字が表示されると言う事です。

セルは、色々な側面を持っています。
表示する文字、文字の大きさ、文字の色、背景色、罫線等々
セルの何を、どのようにしたいのか・・・
ここでは、セルの値として文字を入れています。

値は、Valueであり、本来は、

Range("セル番地").Value = "文字"
 ↑           ↑     ↑
セル        の 値  文字を入れる。

このように書きます。
ただし、.Valueは書かなくても良いので.Valueは省略しても構いません。

Rangeオブジェクト.Valueの省略について
エクセルVBAを教えていて、これほど多く聞かれる質問はないでしょう、RangeやCellsの.Valueは省略したほうが良いか、書いた方が良いか、当然、省略出来ない場合もあれば、オブジェクトとして扱うために.Valueは書けない場合もあります。ですので、結論から言えば、書きたければ書けば良いし、書きたくなければ書かなくて良い。


値以外を扱う場合、例えば、文字の大きさを指定する時は、


Range("セルの番地").Font.Size = 11
このように、セル以降にいろいろと指定が必要です。
(これについては、今後徐々に説明します。)

ここでの、セルオブジェクトと言います。
そして、Valueプロパティと言います。

つまり、

オブジェクト   のプロパティを入れる。
 ↓           ↓     ↓
Range("セル番地").Value = "文字"
 ↑           ↑     ↑
セル       の  値  文字を入れる。

RangeオブジェクトのValueプロパティに文字を入れています。

オブジェクト.プロパティ = 値
このように、オブジェクトの次に「.」を挟んで、プロパティを指定します。
そして、「=」で、値を入れます。

このオブジェクトと呼ばれるものは、他にもたくさんあります。
ワークシートもブックもオブジェクトです。
そして、セルはRangeオブジェクトと呼びます。
Rangeオブジェクトには、沢山のプロパティがあります。

オブジェクトは対象物、プロパティはその属性になります

今、私が飲んでいる缶ビールをオブジェクトとすると(笑)
入っているビールの量がValueです。
中のビールだって、ドライにラガーといろいろ種類があります。
缶の表面にはいろいろと印刷されています。
これらが、プロパティです。

セルに文字を表示すると言う事は、
セル(Rangeオブジェクト)のValue(プロパティ)に、文字を入れると言う事なのです。
結果として、指定したセルに文字が入る事になります。

オブジェクト、プロパティと言った用語は、直ぐには理解しがたいと思いますが、
まずは、そのような言い方をするのだとだけ覚えて下さい。
これらについての詳細な解説は、今後、徐々にしていきます。



同じテーマ「マクロVBA入門」の記事

第5回.VBEのオプション設定(Option Explicit)
第6回.とにかく書いてみよう(Sub,End Sub)
第7回.マクロを実行するには(F5)
第8回.セルに文字を入れるとは(Range,Value)
第9回.Rangeでのセルの指定方法
第10回.Range以外の指定方法(Cells,Rows,Columns)
第11回.RangeとCellsの使い方
第38回.セルに計算式を設定(Formula)
第12回.変数宣言のDimとデータ型
第13回.定数宣言のConstと型宣言文字
第14回.文字の結合(&アンパサンド)と継続行(_アンダーバー)


新着記事NEW ・・・新着記事一覧を見る

多階層フォルダ(ディレクトリ)の作成|VBAサンプル集(7月31日)
VBAのインデントについて|VBA技術解説(7月16日)
「VBA Match関数の限界」についての誤解|エクセル雑感(7月15日)
省略可能なVariant引数の参照不可をラップ関数で利用|VBA技術解説(7月12日)
100桁の正の整数値の足し算|エクセル雑感(7月9日)
LSetとユーザー定義型のコピー(100桁の足し算)|VBA技術解説(7月9日)
Variant仮引数のByRefとByValの挙動違い|エクセル雑感(7月5日)
Variant仮引数にRange.Valueを配列で渡す方法|エクセル雑感(7月5日)
Variantの数値型と文字列型の比較|エクセル雑感(7月1日)
VBAのVariant型について|VBA技術解説(6月30日)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.マクロって何?VBAって何?|VBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
6.繰り返し処理(For Next)|VBA入門
7.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
8.セルに文字を入れるとは(Range,Value)|VBA入門
9.とにかく書いてみよう(Sub,End Sub)|VBA入門
10.マクロはどこに書くの(VBEの起動)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ