ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Is this code error-bearable (https://www.excelbanter.com/excel-discussion-misc-queries/111104-code-error-bearable.html)

ashish128

Is this code error-bearable
 
Hello All,
following is a code to delete all contents of Two drives.But
it is not working if first drive is not found. Is there a possibility
to bypass the code if the drive is not there in system or any code to
find if there is <drive letter drive in the system.
---------------- Careful, Either change drive letter to non exixtent
ones or create virtual drives for experiment-------------------

Dim FSO As Object
Dim MyPath As String



Set FSO = CreateObject("scripting.filesystemobject")



MyPath = "i:\" '<< Change



If Right(MyPath, 1) = "\" Then
MyPath = Left(MyPath, Len(MyPath) - 1)
End If



If FSO.FolderExists(MyPath) = False Then
MsgBox MyPath & " doesn't exist"
Exit Sub
End If



On Error Resume Next
'Delete files
FSO.deletefile MyPath & "\*.*", True
'Delete subfolders
FSO.deletefolder MyPath & "\*.*", True
On Error GoTo 0


MyPath = "g:\" '<< Change



If Right(MyPath, 1) = "\" Then
MyPath = Left(MyPath, Len(MyPath) - 1)
End If



If FSO.FolderExists(MyPath) = False Then
MsgBox MyPath & " doesn't exist"
Exit Sub
End If



On Error Resume Next
'Delete files
FSO.deletefile MyPath & "\*.*", True
'Delete subfolders
FSO.deletefolder MyPath & "\*.*", True
On Error GoTo 0


Bob Phillips

Is this code error-bearable
 
Is this what you mean?

Sub FileDelete()
Dim FSO As Object

Set FSO = CreateObject("scripting.filesystemobject")

DeleteFiles FSO, "x:\" '<< Change drive to suit

DeleteFiles FSO, "g:\" '<< Change

Set FSO = Nothing

End Sub

Sub DeleteFiles(FSO As Object, MyPath As String)
If Right(MyPath, 1) = "\" Then
MyPath = Left(MyPath, Len(MyPath) - 1)
End If

If FSO.FolderExists(MyPath) Then

On Error Resume Next
'Delete files
FSO.deletefile MyPath & "\*.*", True
'Delete subfolders
FSO.deletefolder MyPath & "\*.*", True
On Error GoTo 0

Else
MsgBox MyPath & " doesn't exist"

End If

End Sub


--
HTH

Bob Phillips

(replace somewhere in email address with gmail if mailing direct)

"ashish128" wrote in message
oups.com...
Hello All,
following is a code to delete all contents of Two drives.But
it is not working if first drive is not found. Is there a possibility
to bypass the code if the drive is not there in system or any code to
find if there is <drive letter drive in the system.
---------------- Careful, Either change drive letter to non exixtent
ones or create virtual drives for experiment-------------------

Dim FSO As Object
Dim MyPath As String



Set FSO = CreateObject("scripting.filesystemobject")



MyPath = "i:\" '<< Change



If Right(MyPath, 1) = "\" Then
MyPath = Left(MyPath, Len(MyPath) - 1)
End If



If FSO.FolderExists(MyPath) = False Then
MsgBox MyPath & " doesn't exist"
Exit Sub
End If



On Error Resume Next
'Delete files
FSO.deletefile MyPath & "\*.*", True
'Delete subfolders
FSO.deletefolder MyPath & "\*.*", True
On Error GoTo 0


MyPath = "g:\" '<< Change



If Right(MyPath, 1) = "\" Then
MyPath = Left(MyPath, Len(MyPath) - 1)
End If



If FSO.FolderExists(MyPath) = False Then
MsgBox MyPath & " doesn't exist"
Exit Sub
End If



On Error Resume Next
'Delete files
FSO.deletefile MyPath & "\*.*", True
'Delete subfolders
FSO.deletefolder MyPath & "\*.*", True
On Error GoTo 0




ashish128

Is this code error-bearable
 
Thanks Bob
It worked as a charm

Bob Phillips wrote:
Is this what you mean?

Sub FileDelete()
Dim FSO As Object

Set FSO = CreateObject("scripting.filesystemobject")

DeleteFiles FSO, "x:\" '<< Change drive to suit

DeleteFiles FSO, "g:\" '<< Change

Set FSO = Nothing

End Sub

Sub DeleteFiles(FSO As Object, MyPath As String)
If Right(MyPath, 1) = "\" Then
MyPath = Left(MyPath, Len(MyPath) - 1)
End If

If FSO.FolderExists(MyPath) Then

On Error Resume Next
'Delete files
FSO.deletefile MyPath & "\*.*", True
'Delete subfolders
FSO.deletefolder MyPath & "\*.*", True
On Error GoTo 0

Else
MsgBox MyPath & " doesn't exist"

End If

End Sub


--
HTH

Bob Phillips

(replace somewhere in email address with gmail if mailing direct)

"ashish128" wrote in message
oups.com...
Hello All,
following is a code to delete all contents of Two drives.But
it is not working if first drive is not found. Is there a possibility
to bypass the code if the drive is not there in system or any code to
find if there is <drive letter drive in the system.
---------------- Careful, Either change drive letter to non exixtent
ones or create virtual drives for experiment-------------------

Dim FSO As Object
Dim MyPath As String



Set FSO = CreateObject("scripting.filesystemobject")



MyPath = "i:\" '<< Change



If Right(MyPath, 1) = "\" Then
MyPath = Left(MyPath, Len(MyPath) - 1)
End If



If FSO.FolderExists(MyPath) = False Then
MsgBox MyPath & " doesn't exist"
Exit Sub
End If



On Error Resume Next
'Delete files
FSO.deletefile MyPath & "\*.*", True
'Delete subfolders
FSO.deletefolder MyPath & "\*.*", True
On Error GoTo 0


MyPath = "g:\" '<< Change



If Right(MyPath, 1) = "\" Then
MyPath = Left(MyPath, Len(MyPath) - 1)
End If



If FSO.FolderExists(MyPath) = False Then
MsgBox MyPath & " doesn't exist"
Exit Sub
End If



On Error Resume Next
'Delete files
FSO.deletefile MyPath & "\*.*", True
'Delete subfolders
FSO.deletefolder MyPath & "\*.*", True
On Error GoTo 0




All times are GMT +1. The time now is 08:19 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com