Попробуйте для начала вот этот макрос в VBA в ArcMap:
----------------------------------------------------------------------------------------------------------------------------------------------------
Const AccessGDBFileName = "d:\test.mdb"
Sub CopyVisibleLayersToGDB()
'Процедура копирования видимых слоев текущей карты в персональную базу геоданных
Dim pDoc As IMxDocument
Dim pMap As IMap
Dim pLayer As ILayer
Dim pFeatureLayer As IFeatureLayer
Dim pFWS As IFeatureWorkspace
Dim pWorkspaceFactory As IWorkspaceFactory
Dim LayerCount As Long
Dim i As Long
Dim Res As Long
Set pWorkspaceFactory = New AccessWorkspaceFactory
Set pFWS = pWorkspaceFactory.OpenFromFile(AccessGDBFileName, 0)
Set pDoc = ThisDocument
Set pMap = pDoc.FocusMap
LayerCount = pMap.LayerCount
For i = 0 To LayerCount - 1
Set pLayer = pMap.Layer(i)
If TypeOf pLayer Is IFeatureLayer Then
Set pFeatureLayer = pLayer
If (pFeatureLayer.Visible) Then
CreateFeatureLayerInGDB pFWS, pFeatureLayer
End If
End If
Next
End Sub
Sub CreateFeatureLayerInGDB(pFWS As IFeatureWorkspace, pFeatureLayer As IFeatureLayer)
'Процедура создания FeatureLayer в базе геоданных и копирования в него первого элемента 'pFeatureLayer
Const strShapeFieldName As String = "Shape"
Dim pFields As IFields
Dim pFieldsEdit As IFieldsEdit
Set pFields = pFeatureLayer.FeatureClass.Fields
Dim pFeatClass As IFeatureClass
Set pFeatClass = pFWS.CreateFeatureClass(pFeatureLayer.Name, pFields, Nothing, _
Nothing, esriFTSimple, strShapeFieldName, "")
Dim pNewFeature As IFeature
Set pNewFeature = pFeatClass.CreateFeature
Set pNewFeature.Shape = pFeatureLayer.FeatureClass.GetFeature(1).Shape
pNewFeature.Store
End Sub
----------------------------------------------------------------------------------------------------------------------------------------------------
Данный макрос копирует все видимые слои карты в mdb и создает в каждом скопированном слое по одному элементу (Feature).