这个要你自己写个处理过程,在移动文件前
你要用fso.FileExists
判断目标路径下是否存在这个文件,如圆斗果存在用msgboxd出提示来引导下一橘宴磨步的 *** 作
比如点击yes
执行覆盖 *** 作:先用fso.DeleteFile
删除文件,然后执行移动fso.movefile,点击no
执行改名移动:fso.movefile是支持改名移动的.
要实现你的目的,你可能要用到一下fso
方法
fso.FileExists("c:\windows\文件名.html")
'判断文件是否存在
fso.DeleteFile
"c:\windows\要删除的文件所在路径",false/true
fso.MoveFile
"要移动及改名祥罩的原文件路径","移动到某路径及自定义新文件名
可以使用dir跟fsoif dir(文件路径汪缺)<>"" then 文件存差陵启在
fso,如果没有前期绑定,考虑后期绑定,案例如下:
Sub 按钮1_Click()
Application.ScreenUpdating = False
Set fso = CreateObject("Scripting.FileSystemObject")
strfile = Application.InputBox("请输入文件的完整名称:", "请输入文件的完整名称:", , , , , , 2)
If fso.fileexists(strfile) Then
MsgBox strfile &" :存在"
Else
MsgBox strfile &" :不存在"虚如
End If
Application.ScreenUpdating = True
End Sub
VBA可以通过使用函数来回避名称已存在的情况。函数NameReserved接受一个参数,此参数指定要查询的名称,并返回一个True/False值,表明该名称是否被保留。
如果函数返回True,表示名称已被保留,则此名称不可用;如果返亩凯回False,则此名称未被保留闹孝,可用。
要使用此函数,可以定义一个变量,该变量用于保存函数NameReserved的返回值,然后使用IF语句来检查变量的值,如果变量是True,则表示名称已被保留,需要液耐稿重新选择一个名称;如果变量是False,则表示名称未被保留,可用。
例如,以下代码可用于检查名称“myName”是否被保留:
Dim reserved As Boolean
reserved = NameReserved(\myName\)
If reserved = True Then
' 名称已被保留,不可用
Else
' 名称未被保留,可用
End If
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)