0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

エクセルマクロの変数について

Posted at

ExcelVBAを使っていていくつか気になった点があったので、メモ程度にまとめておきます。

以前マクロを見ることがあり、変数が利用されていました。
そこでは変数を宣言するのに[Dim]を使うものや[Set]を利用したもの、
あるいは何も使わずに宣言されているものが混じっていたので一通り確認しておきます。

まずはサンプルソースと実行結果から

var1 = "いきなり変数名を書いて値を代入する"

Dim var2 As String
var2 = "先に「Dim」を利用して型を宣言する"

Dim var3 As Range
Set var3 = Range("A4")

Range("A1").Select
ActiveCell.FormulaR1C1 = "hello world"
Range("A2").Select
ActiveCell.FormulaR1C1 = var1
Range("A3").Select
ActiveCell.FormulaR1C1 = var2
var3.Select
ActiveCell.FormulaR1C1 = "「set」でオブジェクト変数にオブジェクトを格納する"

実行結果
キャプチャ19.PNG

この通り簡単なvbaであればいきなり変数名の宣言・値の代入を行っても問題なく動作します。
[Dim]を利用することで任意の型を宣言することもできるので、
桁数の大きい数字や小数の計算を扱う場合は適切な型を宣言するようにしましょう。
そして疑問だった[Set]について。これはオブジェクト変数にオブジェクトを
代入するのに利用するものでした。オブジェクトを自然に扱うには少々慣れが必要ですが、
扱えればいろいろな処理がスムーズに記載できそうなので積極的に使っていきたいです。

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?