プログラミングのメモ

プログラミングの学び直し備忘録

VBA:Excel :FSO

ファイル

存在確認

'**
'* 【 File 】
'*  存在確認:FileExists
'*
'* Function FileExists(FileSpec As String) As Boolean
'*
'* @param       {}
'* @param_ref   {}
'* @return      {}
'*
'* @note
'*
Public Function FileExists(FileSpec As String) As Boolean

    Dim bRes As Boolean

    Dim FSO As FileSystemObject
    Set FSO = New FileSystemObject
    
    bRes = FSO.FileExists(FileSpec)
    
    Set FSO = Nothing
    
    FileExists = bRes
    
End Function

移動

削除

'**
'* 【File】
'* 削除:DeleteFile
'*
'* Sub DeleteFile(
'*            FileSpec As String,
'*            [Force As Boolean = False]
'*            )
'*
'* @arg     {str}   削除するファイル名
'*                   パスの最終にワイルドカード使用可
'* @arg_opy {bln}   True:読取専用も削除
'* @arg_ref {}
'* @ret     {}
'*
'* @note
'*  存在しないファイル名を指定するとエラー
'*
Public Sub DeleteFile( _
                    sFileSpec As String, _
                    Optional bForce As Boolean = False _
                    )

    Dim FSO As FileSystemObject
    Set FSO = New FileSystemObject
    
    Call FSO.DeleteFile(sFileSpec, bForce)

    Set FSO = Nothing
    
End Sub

ファイル名 取得

'**
'* 【 File 】
'*  ファイル名を返す:GetFileName
'*
'* Function GetFileName(Path As String) As String
'*
'* @param       {}
'* @param_ref   {}
'* @return      {}
'*
'* @note
'*
Public Function GetFileName(Path As String) As String

    Dim sRes As String

    Dim FSO As FileSystemObject
    Set FSO = New FileSystemObject
    
    sRes = FSO.GetFileName(Path)
    
    Set FSO = Nothing
    
    GetFileName = sRes
    
End Function

ファイル名(拡張子なし) 取得

拡張子 取得

コピー

'**
'* 【 File 】
'*  コピー:CopyFile
'*
'* Sub CopyFile(
'*              Source As String,
'*              Destination As String,
'*              [OverWriteFiles As Boolean = True]
'*                )
'*
'* @param       {}
'* @param_ref   {}
'* @return      {}
'*
'* @note
'*  ワイルドカード使用可
'*
Public Sub CopyFile( _
                    sSource As String, _
                    sDestination As String, _
                    Optional bOverWriteFiles As Boolean = True _
                    )

    Dim FSO As FileSystemObject
    Set FSO = New FileSystemObject
    
    Call FSO.CopyFile( _
                        sSource, _
                        sDestination, _
                        bOverWriteFiles _
                        )
                    
    Set FSO = Nothing
    
End Sub

フォルダ

【 参考 】

FileSystemObject