分かりやすく、使いやすく。

拡張子無しのファイル名を取得する方法

スポンサーリンク

Excel VBA で拡張子無しのファイル名を取得するには、 FileSystemObject の GetBaseName を使用します。

サンプルコードは次の通りです。

VBA(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Option Explicit
 
Sub test()
    Dim objFileSys As Object
    Dim fileName As String
    
    'ファイルシステムを扱うオブジェクトを作成
    Set objFileSys = CreateObject("Scripting.FileSystemObject")
     
    '拡張子無しのファイル名を取得
    fileName = objFileSys.GetBaseName("c:\temp\data\商品リスト.xlsx")
    
    Debug.Print fileName
    
    Set objFileSys = Nothing
End Sub 

上記の実行結果は次の通りです。

実行結果
1
商品リスト 

getBaseName は絶対パス(フルパス)ではなくても動作します。次のサンプルコードではフォルダのパスは指定しないで、ファイル名だけを指定しています。

VBA(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Option Explicit
 
Sub test()
    Dim objFileSys As Object
    Dim fileName As String
    
    'ファイルシステムを扱うオブジェクトを作成
    Set objFileSys = CreateObject("Scripting.FileSystemObject")
     
    '拡張子無しのファイル名を取得
    fileName = objFileSys.GetBaseName("昨日の写真.jpg")
    
    Debug.Print fileName
    
    Set objFileSys = Nothing
End Sub 

上記の実行結果は次の通りです。

実行結果
1
昨日の写真 
スポンサーリンク
スポンサーリンク