2016-08-18 6 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

사용할 수 있습니다 .그물 . 그들은 완전히 다른 두 가지입니다. – Steve

+2

익숙한 것으로 무작위로 붙잡는 대신 실제로 질문에 적용되는 태그를 사용하십시오. 코딩하는 언어를 모를 경우 파일 삭제와 같은 파괴적인 작업을 수행하는 코드를 작성할 필요가 없습니다. –

+0

감사합니다. @Steve의 vb6! –

답변

0

내가 아는 한 fs.FileExists는 하나의 파일이 존재하는 경우 와일드 카드를 사용할 수 있도록 확인합니다.

VBA/VB6 네이티브 함수 Dir을 사용하면 같은 것을 얻을 수 있으며 DeleteFile 대신 네이티브 함수 Kill을 사용할 수 있습니다. (스크립팅 개체 필요 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를 사용하는 경우, 당신은이 VBA (또는 VB6)하지 VB이다

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에서 동일한 작업을 수행하는 데 도움이 필요합니다. 이것은 폴더에 엑셀 파일이 있는지 확인한 다음 모든 파일을 삭제하려는 도전입니다 . –

+0

VB6은 메모리를 사용하고 있기 때문에 꽤 오래되었습니다. VB6는'Kill'과'Dir' 함수를 가지고 있습니다. – YowE3K

+0

고마워,하지만 나에게 오류가 발생했습니다 : 오류 : "형식 불일치 : 'Dir'"코드 : 800A000D Soure : Microsoft VBScript 런타임 오류 –

관련 문제