ゆっくり開発

思いついた便利コードを気ままにアップしていきます。公開しているソースコードはすべてMITライセンスです。

【VBA】拡張子取得 ユーザー定義関数

'拡張子取得
Function GetExtension(ByRef パス As String) As String
    
    Dim str As String
    Dim fso As Object
    
    Set fso = CreateObject("Scripting.FileSystemObject")
    str = fso.GetExtensionName(パス)
    GetExtension = SplitString(str, "]", 1)
    
    If Not fso Is Nothing Then Set fso = Nothing

End Function
'ユーザー定義関数の説明登録
'ブックのオープンイベントなどで呼び出す
Sub AddUDFToCustomCategory()
    
    'オプションの設定方法は下記参照
    '   https://docs.microsoft.com/ja-jp/office/vba/api/excel.application.macrooptions

    Application.MacroOptions _
          Macro:="GetExtension" _
        , Description:="対象パスから拡張子を取得します" _
        , Category:=9 _
        , ArgumentDescriptions:=Array( _
                                      "を指定します" _
                                )
End Sub