最強!Functionの引数に初期値設定

これを知って、かなり楽になりました!! 

 

最終行取得の関数ですが、

Function rowEnd(Byval wsNm as string, Optional Byval clmLeft as string = "A")

   rowEnd =Worksheets(wsNm).range(clmLeft & Rows.Count).End(xlup).Row

End Function

 

 これまでは、どこの列の最終行かの文字列が入っているかの、

if clmleft = "" then clmLeft = "A"

と一行を入れていたのが、全く不要に!

Function rowEnd(Byval wsNm as string, Optional Byval clmLeft as string)

  If clmleft = "" then clmLeft = "A"

      rowEnd =Worksheets(wsNm).range(clmLeft & Rows.Count).End(xlup).Row

End Function

 

しかも、VBEで、関数を途中まで入れている時のメンバー表示にも、

次のように、この初期値が表示されるので、入力する時も大変捗ります!!

[Optional Byval clmLeft as string = "A"]

 

 ぜひ使ってみてください(≧▽≦)