【簡単エクセル/Excel VBA マクロ】いつのまにか型宣言の頭文字が小文字になっていたときの修復方法
アフィリエイト広告を利用しています。


いつもありがとうございます!
VBAでコードを書いていると、型宣言の頭文字がいつの間にか小文字になっていることはありませんか? 例えば、こんなケースです。
' 例
Dim 変数 As file ' f が小文字
' 本来はこうなる ↓
Dim 変数 as File ' F が大文字
これでもコードは動くのですが、気持ち悪いですよね。可読性も下がりますし、玄人感に欠けます。
原因
この現象は、VBAの予約語を小文字で変数名として使用した場合に発生するようです。例えば次のようなコードです。
' 例
Dim file As file
file
はVBAの予約語です。これを小文字の変数名として宣言すると、型宣言も小文字に引っ張られてしまいます。
解決方法
これを修復するには、以下のようにします。
- 変数名を予約語でない名前に変える
' 例
Dim file_object As file
- コードの中のどこでも良いので、大文字の予約語を変数名として宣言する。そうすると、型宣言の部分も引っ張られて大文字に戻ります。
' 例
Dim file_object As File ' As の後ろの file が File(大文字) になる
' このように宣言 ↓ (宣言する場所はコード内のどこでも良い)
Dim File as File
- 2で書いた宣言を削除する
' 例
Dim file_object As File ' As の後ろの File が大文字のまま
まとめ
こうしたちょっとした問題に、意外と時間を取られてしまうんですよね。その気持ち、とてもよくわかります。
だからこそ、こうして情報を共有し合って、みんなの手間を少しでも減らしていきたいと思っています。
この記事を書いた人
- ■人生を追求する凡人■日本一安全で、気の向くままに自分の時間を過ごせる、こだわりのキャンプ場を作るのが夢■光学・機械系エンジニア(歴20年、内マネジメント10年、特許数件権利化)/副業フリーランスエンジニア■読書・文学愛好■人生は時間そのもの。ひとりでも多くの人が「より良い人生にするために時間を使って欲しい」と願い、仕事のスキルの向上、余暇の充実、資産形成を研究。■VBAアプリ開発サービス提供中(業務委託 / VBA使用経験20年)■Python愛好(歴5年)■VBAエキスパート「Excel VBA スタンダード」(上級者向け資格)/ Python 3 エンジニア認定基礎(経済産業省「ITスキル標準(ITSS)」に掲載)