ESRI tiene un post de 2016 que dice que se puede hacer esto con VB. https://support.esri.com/en/technical-article/000003504
Nunca he hecho esto, pero directamente desde su sitio menciona los siguientes pasos:
- Procedimiento En ArcCatalog, cree el servicio de geocodificación que desea utilizar para volver a emparejar las direcciones no coincidentes en el archivo shapefile geocodificado o clase de característica.
- Pegue el siguiente código VBA en el editor VBA de ArcCatalog. Este código supone que ya tiene una referencia al archivo shapefile geocodificado o clase de característica y al servicio de geocodificación (en caso, un servicio de geocodificación ZIP (5 dígitos) que desea utilizar para reajustar las direcciones no coincidentes. Este código también supone que el archivo shape o la clase de característica geocodificada shapefile o clase de característica tiene un campo que contiene el código ZIP de 5 dígitos de las direcciones (en este caso, un campo denominado "ARC_Zone").
Código:
Sub AttachNewLocator(pFeatureClass As IFeatureClass, _
pLocator As ILocator)
Const FIELD_ZIP_NAME = "ARC_Zone"
Dim pLocatorAttach As ILocatorAttach
Dim pLocatorDataset As ILocatorDataset
Dim strMatchFields As String
Set pLocatorDataset = pLocator
Set pLocatorAttach = pLocatorDataset.LocatorWorkspace
strMatchFields = MatchFields(pLocator)
pLocatorAttach.AttachLocator pLocator, pFeatureClass, _
pFeatureClass, FIELD_ZIP_NAME, pFeatureClass.OIDFieldName, _
pFeatureClass, strMatchFields, pFeatureClass.OIDFieldName
End Sub
Function MatchFields(pAddressGeocoding As IAddressGeocoding) As String
Dim i As Long
Dim pMatchFields As IFields
Dim strMatchFields() As String
Set pMatchFields = pAddressGeocoding.MatchFields
ReDim strMatchFields(pMatchFields.FieldCount - 1)
For i = 0 To pMatchFields.FieldCount - 1
strMatchFields(i) = pMatchFields.Field(i).Name
Next i
MatchFields = Join(strMatchFields, ",")
End Function
- Escriba un procedimiento en VBA para obtener una referencia al archivo shape o clase de característica geocodificada y al servicio de geocodificación, y para llamar a la función procedimiento AttachNewLocator. Existen numerosos ejemplos de cómo obtener una referencia a un archivo shape o a una clase de característica en la Developer Help.
- Ejecute su procedimiento para adjuntar el nuevo servicio de geocodificación al archivo shape o clase de característica geocodificada.
- En ArcCatalog, vuelva a emparejar las direcciones no coincidentes en el shapefile geocodificado o en la clase de característica.