2015-09-04 53 views
1

因此,我的窗體上有一個DirListBox,DriveListBox和一個FileListBox。 我也有一個刪除命令按鈕。我想要做的是刪除當我按下刪除命令按鈕時顯示在我的FileListBox上的* .docx文件。這裏是我的代碼:使用命令按鈕刪除filelistbox中的指定文件

Private Sub cmddel1_Click() 
Dim nAns As Long 
Dim strFile As String 
If flb1.ListIndex < 0 Then 
    'There is nothing selected in the listbox. 
    Exit Sub 
End If 

strFile = flb1.Path & flb1.List(flb1.ListIndex) 

'Give them a chance to not delete the file 
nAns = MsgBox("Please confirm to delete file ' " & strFile & "'?'", vbQuestion & vbYesNo) 
'If they choose Yes then delete the file. 
If nAns = vbYes Then 
    kill (flb1.path) 
    End If 
End Sub 

flb1是我的FileListBox的名稱。

這裏是我的目錄列表方塊代碼:

Private Sub Dir1_Change() 
flb1.Path = Dir1.Path 
End Sub 

這裏是列表方塊代碼:

Private Sub Drive1_Change() 
Dir.Path = Drive1.Drive 
End Sub 

發生的是,當我按下Delete命令按鈕的問題,它運行到nAns = nAns = MsgBox("Please confirm to delete file ' " & strFile & "'?'", vbQuestion & vbYesNo)當我按是時Run-Time Error '53' File Not Found和調試是在kill (flb1.path)

當我點擊「刪除」命令按鈕時,應該如何刪除Filelistbox上顯示的.docx文件?

回答

1

你只是指的是路徑而不是實際的文件本身。

您可以使用以下方法:

Kill strFile 
or 
Kill (strFile) 

代碼示例:

Sub Killfl() 
    Dim flpath As String 
    Dim flname As String 
    Dim strFile As String 
    flpath = "c:\Test\" 
    flname = "Test.txt" 
    strFile = flpath & flname 
    Kill strFile 
End Sub 

上面的代碼刪除與File Extension .txt一個FileC:\Test\

+0

嗨稱爲Test.txt,我把它改成'kill strfile',但同樣的錯誤彈出'運行時錯誤'53'文件未找到' –

+0

是'flb1.List(flb1.ListIndex)'col文件名包括文件類型?如果不是,你仍然需要將文件類型擴展名添加到字符串 – DragonSamu

+0

你能否展示你的strFile是怎樣的一個例子? – DragonSamu

相關問題