AcadDocument.CopyObjects() method can be used to copy an array of entities to the same drawing, or another drawing that is opened in AutoCAD.
Here is a brief sample VBA code to do what you want:
Option Explicit
Public Sub CopyEntities()
''Set the source drawing
Dim curDwg As AcadDocument
Dim d As AcadDocument
For Each d In Application.Documents
If UCase(d.Name) = "DRAWING1.DWG" Then
Set curDwg = d
Exit For
End If
Next
If curDwg Is Nothing Then
MsgBox "Cannot find source drawing ""Drawing1.dwg"""
Exit Sub
End If
''Draw something in the source drawing
Dim entities() As Object
entities = DrawSomethings(curDwg)
MsgBox "Entities count=" & UBound(entities) + 1
''Open a new drawing
Dim newDwg As AcadDocument
Set newDwg = Application.Documents.Add()
''Copy entities from source drawing to new drawing
curDwg.CopyObjects entities, newDwg.ModelSpace
End Sub
Private Function DrawSomethings(dwg As AcadDocument) As Object()
Dim ents() As Object
ReDim ents(4)
Dim ent As AcadEntity
Dim i As Integer
For i = 1 To 5
Set ent = DrawCircle(dwg, i)
ent.Update
Set ents(i - 1) = ent
Next
DrawSomethings = ents
End Function
Private Function DrawCircle(dwg As AcadDocument, i As Integer) As AcadEntity
Dim centre(0 To 2) As Double
centre(0) = CDbl(i + i): centre(1) = CDbl(i + i): centre(2) = 0#
Dim radius As Double
radius = CDbl(i * 5)
Set DrawCircle = dwg.ModelSpace.AddCircle(centre, radius)
End Function