とあるコーディング規定 アレコレ
早速だけど、以下を見て欲しい。
Public Function SetSheet() As Boolean 'ByRef ObjName As String
Dim SH As Worksheet
On Error Resume Next
Set SH = ThisWorkbook.Worksheets("無いワークシート")
SetSheet = True
Nothin:
SetSheet = False
End Function
コードそのものは、シンプルかつ利便性が高いけど。
あちらこちら、こんな感じで、On Error Resume Next が多量に使用されていて、異様な感じを覚えた…。
コードから見るにプロっぽいし…、コンパクトにまとまっていて、関心するのだけど。
独学で学んだ時、むやみに 'On Error Resume Next' 使って構成していはいけないと記憶している。
理由は簡単で あらゆるエラー をスルーしてしまう特性にある。
1.安易な理由で使うべきでは無い
2.正規の手段で検出できる
3.デバックの難度が上げってしまう
特に2はコードが多少長くなるが使用せずに済むものを、意図的に使うのは使用者に益を生むものでは無いし、コードの手入れが困難になってしまう。
おそらく、コスト・制作期限 の問題なのだろうねぇ…。
追記
案の定、改修はどえらい苦労したことを記す(笑)