Excel VBA セルのループは r , c を使おう [自治会会計Excel技]
ループは i,j が使われることが多いですが、Excelに関しては Cells(Row,Column)で示されますので、行(Row) , 列(Column)の rとc で示したほうが 判りやすいです。 For i = 1 to 100 For j=1 to 100 Cells(i,j ) = i Next Next i,jだと、行か列かが計算途中でわからなくなることがあります。 Dim r as Long Dim c as Long For r = 1 to 100 For c=1 to 100 Cells(r,c ) = r Next Next r, c のほうが読みやすいです。 ちなみに r, c は Longで宣言しておきましょう。32,767の壁を越えられなくなります。
タグ:VBA
Exel VBA コメントのショートカットの変更 [Excel VBA]
[Excel VBA]変数命名記法 キャメル記法 [Excel VBA]
変数宣言で様々な書き方をしてきましたが、やっと巡り合った記法に決めました。
変数:キャメル記法 単語の連接時に2目の先頭を大文字にします。
定数:スネーク記法 すべて大文字で単語の連接は アンダースコア '_' を使う
例えば)
Dim row1st as Long
Dim col1st as Long
Dim rowEnd as Long
Dim colEnd as Long
Const NEW_FILENAME =”新しいファイル名"
その他に、関数で戻りがBoolean の場合、次のように決めるのが判りやすそうです。
Function isXxx 存在するかどうか
Function hasXxx, Xxxを持つかどうか
Function canXxx Xxx が実行できるかどか
変数の区切りのアンダースコアが嫌いだったので、キャメル記法で書きましょうと指定できるので、すっきりしました。
なぜ、アンダースコアが嫌いか???
101(英語)キーボードは日本語のアンダースコア(右下)のキーががなくて
打てないからです。いちいち英語モードに戻さんと打てない。。。
なので、キャメル記法はありがたい。
変数:キャメル記法 単語の連接時に2目の先頭を大文字にします。
定数:スネーク記法 すべて大文字で単語の連接は アンダースコア '_' を使う
例えば)
Dim row1st as Long
Dim col1st as Long
Dim rowEnd as Long
Dim colEnd as Long
Const NEW_FILENAME =”新しいファイル名"
その他に、関数で戻りがBoolean の場合、次のように決めるのが判りやすそうです。
Function isXxx 存在するかどうか
Function hasXxx, Xxxを持つかどうか
Function canXxx Xxx が実行できるかどか
変数の区切りのアンダースコアが嫌いだったので、キャメル記法で書きましょうと指定できるので、すっきりしました。
なぜ、アンダースコアが嫌いか???
101(英語)キーボードは日本語のアンダースコア(右下)のキーががなくて
打てないからです。いちいち英語モードに戻さんと打てない。。。
なので、キャメル記法はありがたい。
Excel VBA 関数は作るな。ありもの探せ
やりたいことを 自力で作ると、後でわからなくなる。
ありもののVBA 関数を使おう。Google するとすぐに判るのに。
例えば
Now に30分加えて 時間のところを取り出して、2桁にする。
dim a as string
a = Format (Hour(DateAdd("m",30,Now)),"00")
いずれもVBAの関数です。
Format関数は何気に便利です。
ありもののVBA 関数を使おう。Google するとすぐに判るのに。
例えば
Now に30分加えて 時間のところを取り出して、2桁にする。
dim a as string
a = Format (Hour(DateAdd("m",30,Now)),"00")
いずれもVBAの関数です。
Format関数は何気に便利です。
[Excel VBA]VBA ツール・オプションの初期設定を変更すべき [Excel VBA]
Excel VBAは必ず先頭で
Option Explicit
宣言を書いて、変数宣言を強制しよう。
この文字がないVBAはメンテする気が起きません。
中級者でもVBAの初期設定のまま、宣言せずに使っている馬鹿者がいます。勘弁してほしい。
なので、ツール・オプションの設定で
変数の宣言を強制する にチェックを入れておきます。
ついでに自動構文チェックは外しておきます。
自動構文チェックは編集途中で改行した際に、エラーメッセージのポップアップが現れ、鬱陶しい。
これが解放されます。エラーはそのまま赤文字のため、なんの問題もありません。
初級者には必ずこの設定をしてもらうとよいでしょう。
Option Explicit
宣言を書いて、変数宣言を強制しよう。
この文字がないVBAはメンテする気が起きません。
中級者でもVBAの初期設定のまま、宣言せずに使っている馬鹿者がいます。勘弁してほしい。
なので、ツール・オプションの設定で
変数の宣言を強制する にチェックを入れておきます。
ついでに自動構文チェックは外しておきます。
自動構文チェックは編集途中で改行した際に、エラーメッセージのポップアップが現れ、鬱陶しい。
これが解放されます。エラーはそのまま赤文字のため、なんの問題もありません。
初級者には必ずこの設定をしてもらうとよいでしょう。