Access Docmd CopyObject Method Example
Docmd.CopyObject allows you to copy any database object.
The command syntax and command line options are explained below:
(line below is a continuation of line above)
Blue Claw Database Design is your premier source of Microsoft Access programming and database support. Both small business and department-level databases. Desktop installation as well as cloud/internet based solutions.
DestinationDatabase Optional Variant. A string expression that's the
valid path and file name for the DB you want to copy the object into. To
select the current database, leave this argument blank.
Note: In a Microsoft Access project (.adp) you must leave the destination object argument blank.
NewName Optional Variant. A string expression that's the new name for the
object you want to copy. To use the same name if you are copying into another
DB, leave this argument blank.
SourceObjectType Optional AcObjectType.
AcObjectType can be one of these AcObjectType constants.
SourceObjectName Optional Variant. A string expression that's the valid
name of an object of the type selected by the sourceobjecttype argument. If you
run Visual Basic code containing the CopyObject method in a library database,
Microsoft Access looks for the object with this name first in the library
database, then in the current database.
You must include either the destinationdatabase or newname argument or both for
the Access docmd copyobject method.
If you leave the sourceobjecttype and sourceobjectname arguments blank (the
default constant, acDefault, is assumed for sourceobjecttype), Microsoft Access
copies the object selected in the Database window. To select an object in the
Database window, you can use the SelectObject action or SelectObject method with
the In Database Window argument set to Yes (True).
If you specify the sourceobjecttype and sourceobjectname arguments but leave
either the newname argument or the destinationdatabase argument blank, you must
include the newname or destinationdatabase argument's comma. If you leave a
trailing argument blank, don't use a comma following the last argument you
The following example uses the Access DoCmd CopyObject method to copy the Employees table and
give it a new name in the current database:
DoCmd.CopyObject, "M_Employees_Copy", acTable, "M_Employees"