vb.net使用控件folderbrowserdialog1,在程序中:
我們提供的服務有:網(wǎng)站建設、成都網(wǎng)站制作、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、酒泉ssl等。為1000多家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的酒泉網(wǎng)站制作公司
'設置對話框中在樹視圖控件上顯示的說明文本
me.folderbrowserdialog1.description
=
"請選擇輸出報表所在路徑:"
'設置從其開始瀏覽的根文件夾
me.folderbrowserdialog1.selectedpath
=
"c:\"
if
me.folderbrowserdialog1.showdialog()
=
dialogresult.ok
then
'取得全路徑(包含文件名)
reportpath1
=
system.io.path.getfullpath(me.folderbrowserdialog1.selectedpath)
'設定text顯示文件名
txtreport1.text
=
reportpath1
setreportlist()
end
if
在setreportlist()中針對你所需要的文件進行操作等
這段代碼的問題是:
首先for each循環(huán)在files里查找文件對象,但是f變量聲明為string了,無法讓它獲取對象;
然后file.copy的變量file沒有任何聲明,也沒有初始化賦值等;
最后,整個for each循環(huán)里查找集合files的文件,由于初始化的循環(huán)計數(shù)器仍然按照最初設定的文件數(shù)目向后遞增(文件地址),但是實際文件刪除一部分,后續(xù)的文件位置就不能跟循環(huán)計數(shù)指針匹配了,所以默認為查找不到文件,將會報錯。一般的做法時把復制和刪除分別放在2次循環(huán)里,第一次只復制文件,第二次才去刪除。
看看這個,有刪除的
Public strPath As String '要導出的文件夾路徑
Public NewFile As String '文件保存用
'創(chuàng)建文件夾
Public Sub CreatemyFolder(str As String)
Dim Mybook As Workbook
Dim f
Dim mypath As String
'Dim NewFile As String
Dim strPathFolder$
Dim abc As Object
NewFile = str
'強制覆蓋保存時,不讓確認框彈出?
Application.DisplayAlerts = False
Set Mybook = ThisWorkbook '把當前工作簿定義為變量Mybook
mypath = ThisWorkbook.Path "\"
strPathFolder = mypath NewFile
strPath = strPathFolder "\"
On Error Resume Next
Set abc = CreateObject("Scripting.FileSystemObject")
If abc.FolderExists(strPathFolder) = True Then
'===刪除文件夾==========
Set f = abc.GetFolder(strPathFolder)
f.Delete
abc.CreateFolder (strPathFolder)
'===刪除文件夾==========
Exit Sub
Else
abc.CreateFolder (strPathFolder)
End If
Set abc = Nothing
End Sub