基本は日本語で命名する
私が書くVBAコードは、プロシージャ名は基本日本語を利用しています。
理由は「和風スパゲティのレシピ」様の記事(変数を日本語にすればプログラミングが上達する)に影響を受けているためです。
ただし、完全に日本語にすると、Subプロシージャや変数を呼び出ししたいときに、インテリセンスがうまく働かず、不便です。
そのため、プロシージャ名の先頭(Subプロシージャなら先頭に「sb」、Functionプロシージャなら先頭に「zf」)をつけて、インテリセンスで呼び出ししやすいようにしています。
例えば、下記のようにしています。
Excel VBA
Sub sb赤枠四角図形挿入()
Application.ScreenUpdating = False
Call sb赤枠透明図形挿入(msoShapeRectangle) '図形形状:角が丸い四角
Application.ScreenUpdating = True
End Sub
Sub sb赤枠楕円図形挿入()
Application.ScreenUpdating = False
Call sb赤枠透明図形挿入(msoShapeOval) '図形形状:楕円
Application.ScreenUpdating = True
End Sub
Public Sub sb赤枠透明図形挿入(図形形状 As MsoAutoShapeType)
'マニュアル作成作業でよく使用する赤枠・背景透明の図形を挿入する(図形の種類は引数で指定)
With ActiveCell
ActiveSheet.Shapes.AddShape _
(Type:=図形形状, _
Left:=.Left, Top:=.Top, Width:=200, Height:=125).Select
End With
Selection.ShapeRange.Fill.Visible = msoFalse
With Selection.ShapeRange.line
.Visible = msoTrue
.ForeColor.RGB = RGB(255, 0, 0)
.Weight = 5 '太さ
.Transparency = 0.3 '透明度
End With
End Sub
なお、上記例にはFunctionは含まれませんが、Functionの先頭をzfとしてわざわざzをつけているのは、VBAでは、zで始まるプロパティやメソッドがないため、自分が定義したものが入力候補で絞れるためです。
(このプロシージャ名や変更の先頭に「z」をつけるのは、りゅうりゅうさんが提唱しているz会に影響を受けています。)
とはいえ、必ずしも先頭にzをつける必要はなく、Subプロシージャの先頭をsbをつけているように、「s」単体で始まるメソッドやプロパティは沢山あっても、他の文字と組合せで自分が絞りやすい記名になっていれば問題ないと思います。
同様の記事はnoteにも公開しています。