こんにちは!あつもりです。
このブログでは、アレクサの使い方やエクセルVBAについての情報を発信しています。
VBA初心者が疑問に思うことで特に多いのが、
「変数の宣言をしたほうがいいのか?」
です。
変数の宣言はデータ型の宣言とも言います。
JAVAやC言語は変数の宣言をしないと、プログラムが動かない。
一方VBAは変数の宣言をしなくてもプログラムは動く。つまり変数の宣言は必須ではないのです。
でも、職場の先輩から、
「必ず変数の宣言をしなさい」
と言われたことはありませんか?
「変数の宣言をしなくてもプログラムは動くのに、なんで?」
「別に宣言しなくても動くならいいじゃん。」
今回の記事はそんな疑問を持っているかたへのアドバイスです。この記事を読んで心のモヤモヤが解消されれば嬉しいです。
VBAで変数の宣言をしたほうがいいのか?
どの変数を使って、どんなデータを入れるのかを、あらかじめ決めるのが変数の宣言。簡単に言うと、使う変数のルールを決めておくということ。
変数の宣言は、プログラムコードの一番上に書くことになっている。
赤枠で囲ったところが変数の宣言。
でも、VBAは変数のルールを決めなくても勝手に判断してくれる。
変数に数字が入ってくれば数値型になるし、文字が入ってくれば文字列型になる。全て自動でやってくれる。
わざわざ変数を宣言する必要はない、プログラム初心者にとっても優しい言語なのです。
ではなぜ変数宣言しろというのか、それは、
- 不具合を見つけやすい
- プログラムを共有しやすい
- 他のプログラム言語を習得しやすい
主にこの3つじゃないかな、と思う。
1に関しては、変数の型が宣言されていないということは、どんな型でも入るということ。
そうすると、出来上がったプログラムでユーザーが想定外の操作をしたときに、不具合の原因を見つけにくくなる。
型を宣言していると、変数にその型以外のデータが入ってきたときに、型が違うことを教えてくれる。だから不具合を見つけやすくなる。
2に関しては、プログラム業界では、変数を宣言するのが当たり前になっている。
だから、変数宣言しているプログラムは読みにくい、と言われている。
だから、あとあと、引き継ぐ人のことを考えて、基本に従って書きなさいとなる。
まあ、確かに、変数の型が明示されていたほうが、プログラムの可読性は上がる。
プログラムコードを見ただけで、データの流れがある程度イメージできるから。
3に関しては、変数宣言を必須にしているプログラム言語が多いため。
変数宣言を当たり前にしておけば、他の言語の習得がラクになる。
確かにその通りだ。
こんな感じで変数宣言するメリットは多い。だけど、変数宣言しないメリットだってある。っていうのをお伝えしたい。
それは、
「プログラミングの敷居が低くなる」
ってこと。
当たり前じゃん。って思うかもしれないけど、すごく大事なことだと思う。
なぜなら、プログラミング初期で挫折しまう人が多いから。
それは、
「チャレンジしたけどよくわからない」
「プログラムは難しい」
という理由。
もったいないと思う。せっかく第一歩を踏み出したのに。
難しいと言われてることほど、初期のハードルは低くしたほうがいい。
何でもそうだけど、やりはじめのころは、覚えることが多い。だったら覚えなくても済むことはできるだけ覚えないほうがいい。
いちいち変数宣言してるんだったら、とりあえず書いてみて、動かして、動かなかったら直せばいいじゃん。
形式にこだわりすぎず、まずは体を動かして体験していこう。
そう思う。
これって日本人が英語を話すのが苦手っていうのに似ている。
日本人は完璧を求めすぎるから話せないのだそう。
文法とかにこだわって、まず完璧にしてからじゃないと、話し出せない。
そうこうしているうちに、話したいという欲求が薄れていく。
そして英語を学ぶことをやめてしまう。
プログラムも同じなんじゃないかな。
やらなくてもいいことにこだわらない。
それよりも、まずは書いて動かしてみる。
それで、プログラムが動く喜びを感じる。
そういうことが大事だと思う。
だってつまらなくてやめてしまっては、本末転倒なんだから。
いかにモチベーションを保ちながら、楽しくできるか。
それが上達につながる。
そして上達したら、少しずつ型にこだわっていけばいい。
ゆるく楽しくプログラムできる、それがVBAの良さの一つなんだから、その良さを生かしていこう。
さいごに
変数宣言する理由を3つ書いた。
- 不具合を見つけやすい
- プログラムを共有しやすい
- 他のプログラム言語を習得しやすい
これって全部、未来のことを考えてる。
でも本当に大事なのは今。
今、プログラムを書くことに挑戦している。
だったら、今にもっと目を向けて最善をつくしたほうがいい。
未来のことはその時考えればいい。
未来のことを考えすぎて、今をなくしてしまわないようにしたい。
その使い方だと損してます!
会社員、個人事業主のかたへ。
無料で登録できるAmazonビジネスアカウントを知ってますか?
何と言っても便利なのが請求書払いによる後払いができるということ。
また、承認ルールを作成すれば、業務上必要な物だけに購入を制限することができます。
さらに多くの商品にビジネスアカウント価格が設定されており、個人アカウントより安く購入できます。
このように個人アカウントと比べてビジネスアカウントはお得な機能や特典がついています。
無料で登録できるので、会社員、個人事業主なら使ったほうが得なのは言うまでもありません。