Für 32Bit und 64Bit Office Versionen
Problemstellung:
Wie kann ich mit dem FileSystemObject (FSO) ein Verzeichnis löschen?
Public Function DeleteFolderFSO(strSourcePath As String, Optional boolForce As Boolean = False) '******************************************* 'Name: DeleteFolderFSO (Function) 'Purpose: Verzeichnis löschen 'Author: Tommyk 'Date: März 11, 2004, 04:06:38 'Inputs: strSourcePath= Quell Verzeichnis ' boolForce=True, es werden auch Verzeichnisse mit ReadOnly gelöscht 'Output: '******************************************* On Error GoTo Err_Handler ' Falls Quellverzeichnis einen abschließenden Backslash hat wird dieser entfernt If Right(strSourcePath, 1) = "\" Then strSourcePath = Left(strSourcePath, Len(strSourcePath) - 1) If boolForce = True Then oFSO.DeleteFolder strSourcePath, True Else oFSO.DeleteFolder strSourcePath, False End If Err_Handler_Exit: Exit Function Err_Handler: Dim strErrString As String strErrString = "Error Information..." & vbCrLf strErrString = strErrString & "Error#: " & Err.Number & vbCrLf strErrString = strErrString & "Description: " & Err.Description & vbCrLf MsgBox strErrString, vbCritical + vbOKOnly, "Error in Function: DeleteFolderFSO" Resume Err_Handler_Exit End Function
Aufruf:
DeleteFolderFSO "H:\Test"
würde das Verzeichnis "H:\Test", mit allen Unterverzeichnissen, ausser die ReadOnly sind, löschen.
DeleteFolderFSO "H:\Test", True
würde das Verzeichnis "H:\Test", mit allen Unterverzeichnissen, auch die ReadOnly sind, löschen.
Ähnliche Artikel
Weiterlesen...