说明(2017.3.22):
1. 根据兰色幻想VBA80集视频教学,总结
2. 大部分可以用自带函数处理,不过复制文件夹需要用到FileSystemObject对象,打开文件夹用到shell
1 Public Sub test1() 2 '1. 判断文件夹是否存在,dir第二个参数为vbDirectory,不然只判断文件是否存在 3 If Dir(ThisWorkbook.path & "\1.docx", vbDirectory) = "" Then 4 MsgBox ("不存在") 5 Else 6 MsgBox ("存在") 7 End If 8 End Sub 9 10 Public Sub test2() 11 '2. 新建文件夹mkdir 12 MkDir (ThisWorkbook.path & "\233") 13 End Sub 14 15 Public Sub test3() 16 '3. 删除文件夹,rmdir,只能删除空文件夹,如果要删除所有文件要先用kill删除里面所有文件 17 RmDir (ThisWorkbook.path & "\233") 18 End Sub 19 20 Public Sub test4() 21 '4. 重命名文件夹和文件,name,这个方法不能加括号 22 Name ThisWorkbook.path & "\233" As ThisWorkbook.path & "\23333333" 23 Name ThisWorkbook.path & "\1.docx" As ThisWorkbook.path & "\2.docx" 24 End Sub 25 26 Public Sub test5() 27 '5. 移动文件夹,name,可以连里面的文件一起移动 28 Name ThisWorkbook.path & "\2" As ThisWorkbook.path & "\1\23333333" 29 End Sub 30 31 Public Sub test6() 32 '6. 复制文件,filecopy,后面的目的地要带上文件名,但是这个不能复制文件夹 33 FileCopy ThisWorkbook.path & "\1.docx", ThisWorkbook.path & "\1\1.docx" 34 35 End Sub 36 37 Public Sub test7() 38 '7. 复制文件夹和内部所有文件,用到FileSystemObject,要先引入Microsoft Scripting Runtime 39 'copyfolder复制文件夹,copyfile复制文件,只需要路径,不需要文件名,还可以顺便改名 40 Dim fso As FileSystemObject 41 Set fso = New FileSystemObject 42 ' fso.CopyFolder ThisWorkbook.path & "\2", ThisWorkbook.path & "\1\3" 43 fso.CopyFile ThisWorkbook.path & "\1.docx", ThisWorkbook.path & "\1\2.docx" 44 MsgBox "已复制" 45 End Sub 46 47 Public Sub test8() 48 '8. 打开文件夹,shell,真的就是打开文件夹,弹出来一个窗口!第二个参数,数字1是打开并显示,2是打开并最小化,3是打开最大化 49 Shell "explorer.exe " & ThisWorkbook.path & "\1", 1 50 End Sub