Delete Files Via Vba
Delete Text File
Delete a folder and all subfolders and files
Delete files in a folder VBA
Deleting a file in VBA
How remove file
How to delete files using VBA
How to use VBA to delete files
I need to copy, rename and delete files in a folder
Macro to delete all files
Move and Delete files and folders
Remove Files
Já tentou apagar um arquivo externo a sua aplicação? Talvez uma planilha ou um arquivo texto?
Pense, como posso excluir um arquivo?
- Olhe para isto: "Poderia basicamente usar o comando Kill, mas um programador preocupado precisa permitir a possibilidade de existir um arquivo que está sendo usado somente como leitura, eis a função para você:
DeleteFile ("Bernardes_Dashboard_Results.txt")
Sub DeleteFile (ByVal FileToDelete As String)
If FileExists (FileToDelete) Then
SetAttr FileToDelete, vbNormal
Kill FileToDelete
End If
End Sub
Não se esqueça da função que checa a existência do arquivo:
Function FileExists(ByVal FileToTest As String) As Boolean
Let FileExists = (Dir(FileToTest) <> "")
End Function
Ahhh, você pode definir uma referência para a biblioteca Scripting.Runtime e depois usar o FileSystemObject, este tem dois métodos DeleteFile e FileExists.
Não vou esconder que temos outras opções:
Let nTest = Dir (filename)
If not nTest="" then
Kill (Filename)
end if
O código a seguir pode ser usado para testar a existência de um arquivo, e depois excluí-lo:
Dim aFile As String
Let nFile = "c:\Bernardes_Dashboard_Results.txt"
If Len (Dir$(nFile)) > 0 Then
Kill nFile
End If
Estava me segurando, mas preciso avisar-lhe quanto a não permitir que o código retorne uma mensagem de erro do tipo "Desculpe-me, mas não existe nenhum código para apagar", então coloque também algo como o mostrado abaixo:
On Error Resume NextKill "c:\Bernardes_Dashboard_Results.txt"
On Error Goto 0Return Len(Dir$(aFile)) > 0
As opções não param. Aqui está um método simples de apagar uma pasta e todos os arquivos e subpastas. Ele usa o File System Object (objeto sistema de arquivos).
Para usá-lo, você terá que definir uma referência para o Microsoft Scripting Runtime geralmente encontrada em C:\WINDOWS\system32\scrrun.dll.
Sub DeleteAllFolders(FolderPath As String)
Dim fso As Scripting.FileSystemObjectSet fso = New Scripting.FileSystemObjectOn Error Resume Nextfso.DeleteFolder (FolderPath)Set fso = Nothing
End Sub
O método fso.DeleteFolder não pode retirar a barra à direita ("\") do path, por isso precisamos removê-la quando aparecer.
Function CorrectPath(FolderPath As String) As String
Let FolderPath = Trim(FolderPath)
If Right(FolderPath, 1) = "\" Then
Let CorrectPath = Left(FolderPath, Len(FolderPath) - 1)
Else
Let CorrectPath = FolderPath
End If
End Function