Sub GetFileName()
'FileSystemObjectの設定
Dim fs As Scripting.FileSystemObject
Set fs = New Scripting.FileSystemObject
'シート設定
Dim ws As Worksheet
Set ws = Worksheets("Sheet2")
'ダイアログを開いてフォルダ選択
Dim path As String
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = True Then
path = .SelectedItems(1)
End If
End With
'選択したフォルダが存在するかどうかチェック
If fs.FolderExists(path) = False Then
MsgBox "フォルダを選択してください"
Exit Sub
End If
'フォルダを取得
Dim basefolder As Scripting.Folder
Set basefolder = fs.GetFolder(path)
'フォルダ内のファイルを取得
Dim myfiles As Scripting.Files
Set myfiles = basefolder.Files
'変数設定
Dim i As Long
Dim myfile As Scripting.File
'フォルダ内のファイルを取得
For Each myfile In myfiles
i = i + 1
ws.Range("A6").Offset(i, 0).Value = i
ws.Range("B6").Offset(i, 0).Value = fs.GetFileName(myfile)
ws.Range("C6").Offset(i, 0).Value = fs.GetExtensionName(myfile)
Debug.Print fs.GetBaseName(myfile)
Next
'オブジェクト解放
Set myfile = Nothing
Set myfiles = Nothing
Set basefolder = Nothing
Set fs = Nothing
Worksheets("Sheet2").Activate 'シート変更
End Sub
'FileSystemObjectの設定
Dim fs As Scripting.FileSystemObject
Set fs = New Scripting.FileSystemObject
'シート設定
Dim ws As Worksheet
Set ws = Worksheets("Sheet2")
'ダイアログを開いてフォルダ選択
Dim path As String
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = True Then
path = .SelectedItems(1)
End If
End With
'選択したフォルダが存在するかどうかチェック
If fs.FolderExists(path) = False Then
MsgBox "フォルダを選択してください"
Exit Sub
End If
'フォルダを取得
Dim basefolder As Scripting.Folder
Set basefolder = fs.GetFolder(path)
'フォルダ内のファイルを取得
Dim myfiles As Scripting.Files
Set myfiles = basefolder.Files
'変数設定
Dim i As Long
Dim myfile As Scripting.File
'フォルダ内のファイルを取得
For Each myfile In myfiles
i = i + 1
ws.Range("A6").Offset(i, 0).Value = i
ws.Range("B6").Offset(i, 0).Value = fs.GetFileName(myfile)
ws.Range("C6").Offset(i, 0).Value = fs.GetExtensionName(myfile)
Debug.Print fs.GetBaseName(myfile)
Next
'オブジェクト解放
Set myfile = Nothing
Set myfiles = Nothing
Set basefolder = Nothing
Set fs = Nothing
Worksheets("Sheet2").Activate 'シート変更
End Sub