選択フォルダ内のファイル一覧をテーブルに格納

共通
Sub prc選択フォルダ内のファイル一覧をテーブルに格納()
    
    Dim fdlg As FileDialog           ' ファイルダイアログ
    Dim strFolderPath As String      ' 選択されたフォルダのパス
    Dim objFSO As FileSystemObject   ' ファイルシステム操作
    Dim fld選択フォルダ As Folder    ' 選択されたフォルダ
    Dim filファイル As File          ' フォルダ内の各ファイル
    Dim strSQL As String             ' SQLクエリ
    Dim db As DAO.Database           ' Accessデータベース
    Dim rst As DAO.Recordset         ' レコードセット
    
    ' FileDialogオブジェクトを作成
    Set fdlg = Application.FileDialog(msoFileDialogFolderPicker)
    
    ' ダイアログのタイトルを設定
    fdlg.Title = "フォルダを選択してください"
    
    ' ダイアログを表示し、キャンセルが選択された場合はCancelSelectedラベルへスキップ
    If fdlg.Show <> -1 Then GoTo CancelSelected
    
    ' 選択されたフォルダのパスを取得
    strFolderPath = fdlg.SelectedItems(1)
    
    ' FileSystemObjectを作成
    Set objFSO = New FileSystemObject
    
    ' Folderオブジェクトを取得
    Set fld選択フォルダ = objFSO.GetFolder(strFolderPath)
    
    ' データベースオブジェクトを取得
    Set db = CurrentDb()
    
    ' テーブルAの全レコードをクリア
    strSQL = "DELETE * FROM TableA"
    db.Execute strSQL, dbFailOnError
    
    ' レコードセットを開く
    Set rst = db.OpenRecordset("TableA", dbOpenDynaset)
    
    ' フォルダ内の各ファイルに対して処理
    For Each filファイル In fld選択フォルダ.Files
        ' レコードを新規追加
        rst.AddNew
        rst("FileName") = filファイル.Name
        rst("FolderName") = fld選択フォルダ.Name
        rst.Update
    Next filファイル
    
    ' レコードセットとデータベースオブジェクトを閉じる
    rst.Close
    Set rst = Nothing
    Set db = Nothing
    
CancelSelected:
    ' オブジェクトを解放
    Set fdlg = Nothing
    Set fld選択フォルダ = Nothing
    Set objFSO = Nothing
End Sub