2016-08-18 89 views
-2

我是vb的新手,並希望在刪除特定文件夾中的所有excel文件方面提供幫助。通過VB刪除文件夾中的所有excel文件

下面,如果我的代碼,因爲我想這是不工作:

Dim fs 
Set fs = CreateObject("Scripting.FileSystemObject") 

If fs.FileExists("C:\Users\Desktop\Test\Daily_Reports\*.xlsx") Then 
    fs.Deletefile "C:\Users\Desktop\Test\Daily_Reports\*.xlsx", true 
Else 
    MsgBox "No" 
End If 
+2

這是VBA(或VB6)不是VB .NET。他們是兩個完全不同的東西 – Steve

+2

請使用實際適用於您的問題的標籤,而不是隨意抓取那些看起來很熟悉的標籤。如果你不知道你編碼的語言,你可能不應該編寫代碼來做破壞性的事情,比如刪除文件。 –

+0

謝謝@Steve它的vb6! –

回答

0

據我所知fs.FileExists只檢查是否一個文件存在,所以你不能使用通配符。

您可以使用VBA/VB6本機功能Dir實現相同的功能,並使用本機功能Kill代替DeleteFile。 (DeleteFile應付通配符,但Kill避免了需要的腳本的對象。)

If Dir("C:\Users\Desktop\Test\Daily_Reports\*.xlsx") <> "" Then 
    Kill "C:\Users\Desktop\Test\Daily_Reports\*.xlsx" 
Else 
    MsgBox "No" 
End If 

如果您正在使用VBScript,您可以只使用

Dim fs 
Set fs = CreateObject("Scripting.FileSystemObject") 
For Each File In fs.GetFolder("C:\Users\Desktop\Test\Daily_Reports").Files 
    If fs.GetExtensionName(File) = "xlsx" Then 
     fs.DeleteFile File 
    End If 
Next 
+0

感謝您的協助......我已經在VBA中做到了這一點,但需要幫助才能在vb中做同樣的事情,這是我希望看到的文件夾中是否存在任何excel文件,然後刪除所有這些文件。 –

+0

從內存(我用它以來已經有一段時間了),VB6具有'Kill'​​和'Dir'功能。 – YowE3K

+0

謝謝,但它給我follwoing錯誤,錯誤:「類型不匹配:'Dir'」代碼:800A000D Soure:Microsoft VBScript運行時錯誤 –

相關問題