1.オブジェクト名
アマチュア
DoCmd.Close acForm, “フォーム名”, acSaveYes
プロ
DoCmd.Close acForm, Me.Name, acSaveYes
解説
プロはできるだけ汎用性を持たせるように記述する。
“フォーム名”をダイレクトに記述すると、フォーム名を変更したときに併せて変更が必要。おそらく変更を忘れてしまう。
2.論理型の判定
アマチュア
If flg = True Then
End If
If flg = False Then
End If
プロ
If flg Then
End If
If Not flg Then
End If
解説
Boolean型変数は、値そのものが論理値なので、これをさらにTrueやFalseと比較するのはナンセンス。
3.命名
アマチュア
行き当たりばったり。結果、コード量が多くメンテナンスが大変。
On Error Error_関数1
‘(ここに処理を書く)
Exit_関数1:
Error_関数1:
プロ
いい意味で手を抜く。結果、コード量が少なく、使いまわしが簡単でメンテンスしやすい。
On Error Error_Handler
‘(ここに処理を書く)
Exit_Handler:
Error_Handler:
解説
関数ごとにラベルを変えるのは一見良い習慣のように思えるが、考えてみれば何のメリットもない。関数名を変更した際にはラベルも併せて変更しなければならないがおそらく忘れる。
すべて同じラベルを使っておけば、関数名が変わっても平気。コピペも簡単。
コメント