Excelで「VBA」プログラミングの基礎(変数編)

VBAの基礎

どうも!Komugiです

変数はVBAだけではなく、他のプログラミングでも利用します。

決して覚える必要はありません。

変数を書くときに確認すればいいだけです!

なんとなくそうなんだぐらいの認識で大丈夫です。

ご自分のスキルにしていただいて、転職が成功出来ますように!

変数について学習しよう!

がんばるぞ〜!

変数とは

変数とは、プログラムの中で使う「名前をつけた入れ物」のようなものです。
この入れ物は、色々な情報やデータをしまっておくことができます。

どうして「入れ物」なの?

  1. 入れ物
    • 変数(入れ物)にデータを入れることで、その変数(入れ物)に入れたデータを、後で使えるようにしています。
  2. 名前をつけて管理
    • それぞれの変数(入れ物)には名前がついているので、「何のための情報が入っているか」わかりやすくできます。
  3. いろいろなデータを保存
    • 数字、文字、日付など、いろいろな種類の情報を決めることで、変数(入れ物)にデータを入れることができます。

変数を使う理由

  1. データを変更できる
    • 変数(入れ物)の中に入れるものを変えることで、スムーズにプログラムの動きを変えられれます。
  2. 覚えておく
    • 変数(入れ物)にデータを入れることで、プログラムがどんなことを覚えておかなければならないかを確かめられます。

「入れ物」にいれるものを決めます

例えば、数字だけ、文字だけ、日付だけというように、変数(入れ物)にいれるデータを決めます。
それを「データ型」と言います。

変数(入れ物)はデータを入れる箱なんです

箱のことなんだ!

データ型の種類

たくさんのデータ型がありますが、覚える必要はありません。
変数を決定する時に、都度確認しながら書いていけば問題ありません!

データ型データ型名 保存できるもの
ブール型 BooleanTrue または False質問の答えが「はい」か「いいえ」
バイト型 Byte0から255までの数字小さな数字:例)100
整数型Integer-32,768〜32,767までの数字 普通の数字:例)1234
長整数Long-2,147,483,648~2,147,483,647の整数大きな数字:例)1234567890
通貨型 Currencyお金や小数点付きの数字 お金:例)1234.56円
単精度型Single小数点がある数字 浮動小数点数:例)3.14
倍精度型Doubleとても小さいか大きい小数精度の高い浮動小数点:例)2.718
日付型Date日付や時間 例)2023年1月1日 12:00 PM
文字列型String文字や文章例)「こんにちは」や名前
オブジェクトObject特別なExcelの要素Bookやシートやセルなど
ワークブックWorkBookExcelファイルだけExcelBook
ワークシートWorkSheetExcelのシートだけExcelSheet
バリアント Variant何でも保存できる他の型に合わないとき使う

データ型には色んな種類があるよ

データ型もバッチリ!

変数やコードの書き方を言葉から逆引きできるので、とても便利な本です!
一冊持っていると、ずっと使えます。

Excel VBA逆引き辞典パーフェクト第3版 [ 田中亨 ]

Excel VBA逆引き大全 600の極意 Microsoft365/Office2024/2021/2019/2016対応 [ E-Trainer.jp[中村峻] ]

よく使うデータ型

日付型、文字列型、整数型、オブジェクト、バリアントあたりが、よく利用する変数(入れ物)です。

変数の宣言方法

変数(入れ物)をモジュールプロシージャで利用するには、宣言する必要があります。

モジュールとは
  プロシージャを記述する場所です。
プロシージャとは
  Sub ○○()~End SubまたはFunction ○○()~End Functionなどの、
  マクロの実行単位です。

「Dim 変数名 As データ型名」

もしくは

「Dim 変数名1 As データ型名, 変数名2 As データ型名」

と複数のデータ型の変数を宣言することも可能です。

変数を利用したいモジュールやプロシージャの範囲について

どのモジュールプロシージャで変数を利用するかは、変数を宣言する場所で決まります。

モジュールとは
  プロシージャを記述する場所です。
プロシージャとは
  Sub ○○()~End SubまたはFunction ○○()~End Functionなどの、
  マクロの実行単位です。

1つのプロシージャで変数を利用したい場合

各プロシージャの中に変数を宣言すると、プロシージャの中だけで利用出来る変数になります。

2つのプロシージャで変数を利用したい場合

モジュール「Module1」の中にプロシージャが2つあったとします。
「Sub test1()」で宣言した変数「i」は、「Sub test2()」では使用できません
プロシージャの外に変数を宣言しましょう。

複数のモジュールで変数を利用したい場合

モジュール「Module1」と「Module2」があったとします。
「Module1」に変数を宣言していても、「Module2」では「i」は使えません。
DimをPublicにすることで、どのモジュールでも使えるようになります。
複数のプロシージャ、または複数のモジュール間で、変数を共有しなければならないケースで使うべきものです。

変数を宣言する場所によって、利用できる範囲がかわってきます

変数を書く場所が大事ですね!

変数編まとめ

変数への理解は進みましたでしょうか。
選択するデータ型によって、プログラムの速度やメモリ効率が影響を受けるため、適切なデータ型を選ぶことは、プログラムのパフォーマンス維持のために大変重要です。
用途にあった変数を使うことを心がけましょう。

最後まで見ていただき有難うございます。引き続きプログラミングの素晴らしさをお伝えさせていただきます!

コメント

タイトルとURLをコピーしました