効率化からプライベートの時間を創る







VBAの変数とは?使い方と代表的な型の解説

WRITER
 
VBA_変数
この記事を書いている人 - WRITER -
Excel歴15年。基本操作から関数、マクロ、VBAまで仕事で便利だったことを中心に書いています。お仕事の時間短縮にお役に立てれば幸いです。
詳しいプロフィールはこちら

ExcelのVBAを使う上で、知っているとプログラミングの幅が広くなるものがあります。

それが今回紹介する「変数」です。

変数を使用すると複雑な指示を実現することができるのですが、意味を理解していないとネットでコードをコピペしても全く意味の分からにものになってしまいます。
そこでこの記事ではVBAの変数の使い方と型の種類を紹介します。

私がVBAを使い始めて最初につまずいてしまった『変数の型』についても紹介していきますので、この記事を読んで是非知識を高めていきましょう。

VBAの変数の意味

VBA_変数2

変数とは、プログラムの中で使う値を入れておく箱のようなものです。

 

また、変数の中の値はプログラムの中で変更することも出来ます。

例えば『10』と設定していたものを、各計算を行うことで100に増え、それをメッセージで表示したいというように数や文字を変化させることができます。

文字だけで見るとうまくイメージがしにくいため、使い方の例を説明します。

 

VBAの変数の使い方

まずは変数がどの型なのか指定するため、変数を宣言します。

変数の宣言を指定する場合は以下の流れで記述します。

 

変数の宣言

Dim 変数名 As データ型

 

VBA_変数3

型を指定した後は変数を使ったコードを記述します。

VBA_変数4

上記の画像では、メッセージボックスでA1のセルに入力されている文字が表示されます。

VBA_変数5

 

変数の型を使用するメリット

実は以下の画像のように変数の型を宣言しなくても動作することもよくあります。

VBA_変数6

型を指定しなくてもうまく動作することもありますが、型を指定することで以下のメリットがあります。

  • データの使用メモリを減らすことができる
  • 予期せぬエラーを防ぐ
  • メンテンナンスがしやすい

 

データの使用メモリ削減

変数の宣言をしない場合は、通常バリアント型(Variant)と呼ばれる全ての値に対応する型が自動で適用されます。

何にでも適用されるというのは便利な反面、桁数の多い数字や日付、文字など何にでも応用できるよう使用するメモリが大きくなるデメリットがあります。

予期せぬエラー

私が実際に変数を使用しない場合に困ったのは「数値」と「文字」を自動でExcelが判別したため、思い通り計算式が当てはまらなかったことです。

変数で文字列や数値など指定しておくことで解決するのですが、Variant型が適用されることでマクロがうまく動作しませんでした。

 

メンテナンスがしやすい

変数の宣言は基本的にコードの最初に記述します。

これにより、VBAでコードを作成した以外の人が修正する場合や、数年後などにコードを編集する場合に「あれ?これは何の変数だった?」という問題を減らすことができます。

 

VBAの変数の型の代表的な種類

VBAには様々な変数の方が用意されていますが、ここでは代表的な型を紹介します。

今は全てを覚える必要はありませんので、まずはこういう種類があるんだなという程度に見て頂ければいいと思います。

データの型 使用メモリ 格納できる値
ブール型(Boolean) 2バイト TrueまたはFalseのデータ
バイト型(Byte) 1バイト 0~255の整数
整数型(Integer) 2バイト -32768~32767の整数
長整数型(Long) 4バイト -2147483648~2147483647の整数
通貨型(Currency) 8バイト -922337203685477.5808~

922337203685477.5807

単精度浮動小数点数型(Single) 4バイト -3.402823E38~-1.401298E-45(負の値)

1.401298E-45~3.402823E38(正の値)

倍精度浮動小数点数型(Double) 8バイト -1.79769313486232E308~-4.94065645841247E-324(負の値)

4.94065645841247E-324~1.79769313486232E308(正の値)

日付型(Date) 8バイト 西暦100年1月1日~西暦9999年12月31日の日付、時刻
文字列型(String) 10バイト+文字数 文字のデータ
オブジェクト型(オブジェクト) 4バイト オブジェクトを参照するデータ
バリアント型(Variant) 数値:16バイト

文字:22バイト+文字数

全ての値

 

まとめ

今回はVBAの変数の使い方と型の種類について紹介しました。

VBAを使いだして最初は変数が分かりにくいと思いますが、何度も使っていると何となく意味が分かってきます。

 

私の場合は「変数とは?」の意味を復習することと実際にコードを書くことを繰り返しながら行うことで、ある時「変数とはこういうことか」と点と点が繋がりました。

Excelの機能を使いこなすと、仕事の効率化から大きな時間短縮に繋がります。

仕事術のスキルが増えるとプライベートの時間を時間を増やすことができますので、当サイトで得た知識を是非活用していきましょう。

以下のExcel記事もおすすめです。

この記事を書いている人 - WRITER -
Excel歴15年。基本操作から関数、マクロ、VBAまで仕事で便利だったことを中心に書いています。お仕事の時間短縮にお役に立てれば幸いです。
詳しいプロフィールはこちら









- Comments -

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Copyright© Excel仕事術ブログ , 2024 All Rights Reserved.