I don't know if this is the right forum, but here goes. I have two command buttons on my form, one I want to be able to transfer a database that is located on my hard drive to another location (copy to disk) and the other I want to just transfer the database to another folder located on the same hard drive. My question is can I use the below code for each command button (coded seprately) to perform the above functions. I know it references 'a table', but can it be changed to move the whole database?
Sub sExportExternal(strDBFrom As String, strDBTo As String, strTableName As String)
' Procedure to transfer a table from one external Access database to another
' Accepts:
' strDBFrom - the name and path of the database that contains the table to be exported from
' strDBTo - the name and path of the database that the table is to be exported to
' strTableName - the name of the table that is to be exported
On Error GoTo E_Handle
Dim objAccess As New Access.Application
With objAccess
.OpenCurrentDatabase (strDBFrom)
.DoCmd.TransferDatabase acExport, "Microsoft Access", strDBTo, acTable, strTableName, strTableName
.CloseCurrentDatabase
End With
sExit:
Exit Sub
E_Handle:
Select Case Err.Number
Case 3011 ' The table does not exist in the first database
MsgBox "'" & strTableName & "' does not exist in '" & strDBFrom & "'", vbOKOnly, "Transfer cancelled"
Case 3044 ' The database that we are transferring the table to does not exist
MsgBox "'" & strDBTo & "' does not exist.", vbOKOnly, "Transfer cancelled"
Case 7866 ' The database that we are transferring the table from does not exist
MsgBox "'" & strDBFrom & "' does not exist.", vbOKOnly, "Transfer cancelled"
Case Else
MsgBox Err.Description, vbOKOnly + vbCritical, Err.Number
End Select
Resume sExit
End Sub
Sub sExportExternal(strDBFrom As String, strDBTo As String, strTableName As String)
' Procedure to transfer a table from one external Access database to another
' Accepts:
' strDBFrom - the name and path of the database that contains the table to be exported from
' strDBTo - the name and path of the database that the table is to be exported to
' strTableName - the name of the table that is to be exported
On Error GoTo E_Handle
Dim objAccess As New Access.Application
With objAccess
.OpenCurrentDatabase (strDBFrom)
.DoCmd.TransferDatabase acExport, "Microsoft Access", strDBTo, acTable, strTableName, strTableName
.CloseCurrentDatabase
End With
sExit:
Exit Sub
E_Handle:
Select Case Err.Number
Case 3011 ' The table does not exist in the first database
MsgBox "'" & strTableName & "' does not exist in '" & strDBFrom & "'", vbOKOnly, "Transfer cancelled"
Case 3044 ' The database that we are transferring the table to does not exist
MsgBox "'" & strDBTo & "' does not exist.", vbOKOnly, "Transfer cancelled"
Case 7866 ' The database that we are transferring the table from does not exist
MsgBox "'" & strDBFrom & "' does not exist.", vbOKOnly, "Transfer cancelled"
Case Else
MsgBox Err.Description, vbOKOnly + vbCritical, Err.Number
End Select
Resume sExit
End Sub