从代码看未见语法错误,但你语句中的计算机机名必须是局域网存在的名称,相应目录夹必须存在。注意如果想要对一个已打开的文件使用 FileCopy 语句,有时会产生错误。Private Sub Command1_Click()
Dim SourceFile, DestinationFile
SourceFile = "\\HUAXIAN\hxmdbsjk\ccsj_cxjg.mdb" ' 指定源文件名。
DestinationFile = "\\HUAXIAN\hxmdbsjk\ccsj.mdb" ' 指定目的文件名。
FileCopy SourceFile, DestinationFile ' 将源文件的内容复制到目的文件中。
End Sub
Dim SourceFile, DestinationFile
SourceFile = "\\HUAXIAN\hxmdbsjk\ccsj_cxjg.mdb" ' 指定源文件名。
DestinationFile = "\\HUAXIAN\hxmdbsjk\ccsj.mdb" ' 指定目的文件名。
FileCopy SourceFile, DestinationFile ' 将源文件的内容复制到目的文件中。
End Sub
Dim mfile As String, mfile2 As String
On Error Resume Next
CommonDialog1.Filter = "Access文件(*.mdb)|*.mdb"
CommonDialog1.ShowSave
mfile = App.Path & "\db1.mdb" '要备份的文件为当前文件夹下的 db1.mdb
mfile2 = CommonDialog1.FileName '得到目标文件的路径
If Trim(mfile2) = "" Then Exit Sub
If Dir(mfile2) <> "" Then
If MsgBox(Dir(mfile2) & " 文件已经存在,是否替换?", vbYesNo, "警告") = vbNo Then Exit Sub
End If
Dim buff() As Byte, i As Longi = FileLen(mfile)
ReDim buff(i - 1)Open mfile For Binary As #1
Get #1, , buff
Close #1Open mfile2 For Binary As #1
Put #1, , buff
Close #1MsgBox "备份完毕!"
End Sub恢复文件是一样的原理,就是用别的地方的Access文件覆盖掉当前目录下的Access文件:Private Sub Command2_Click()
Dim mfile As String, mfile2 As String
On Error Resume Next
CommonDialog1.Filter = "Access文件(*.mdb)|*.mdb"
CommonDialog1.ShowOpen
mfile = CommonDialog1.FileName '得到别处的Access文件的路径
mfile2 = App.Path & "\db1.mdb" '要覆盖掉当前文件夹下的 db1.mdbIf Trim(mfile) = "" Then Exit SubIf MsgBox("是否恢复数据库?", vbYesNo, "警告") = vbNo Then Exit SubDim buff() As Byte, i As Longi = FileLen(mfile)
ReDim buff(i - 1)Open mfile For Binary As #1
Get #1, , buff
Close #1Open mfile2 For Binary As #1
Put #1, , buff
Close #1MsgBox "恢复完毕!"
End Sub