Option Compare Database
Option Explicit
' Funciones que reemplazan la palabra
' "Formularios!" por "Forms!" en Tablas,
' consultas, formularios e informes
' y sus controles.
' Necesita ser referenciada la librería
' Microsoft DAO (x.x) Object Library.
' Espero que os sea de utilidad.
'
' Julio 2002
' Juan M. Afan de Ribera - happy
' **************************************

'Tablas: Búsqueda en las propiedades de
'campo - Valor predeterminado - Regla de
'validación y Origen de la fila
Function ReemplazarenTablas()
Dim tdf As TableDef
Dim fld As Field
Dim prp As Property
For Each tdf In CurrentDb.TableDefs
For Each fld In tdf.Fields
For Each prp In fld.Properties
If prp.Name = "DefaultValue" Or prp.Name = "ValidationRule" Or prp.Name =
"RowSource" Then
prp.Value = Traduccion(prp.Value)
End If
Next
Next
Next
End Function
'Consultas: Búsqueda en la cadena sql
Function ReemplazarenConsultas()
Dim qdf As QueryDef
For Each qdf In CurrentDb.QueryDefs
qdf.SQL = Traduccion(qdf.SQL)
Next
End Function
'Formularios: Búsqueda en el Origen del
'Registro y Filtro. Controles: Búsqueda
'en el Origen del Control y Origen de la
'Fila
Function ReemplazarenFormularios()
Dim obj As AccessObject
Dim frm As Form
Dim ctl As control
Dim prp As Property
For Each obj In CurrentProject.AllForms
DoCmd.OpenForm obj.Name, acDesign, , , , acIcon
Set frm = Forms(obj.Name)
frm.RecordSource = Traduccion(frm.RecordSource)
frm.Filter = Traduccion(frm.Filter)
For Each ctl In frm.Controls
For Each prp In ctl.Properties
If prp.Name = "RecordSource" Or prp.Name = "RowSource" Then
prp.Value = Traduccion(prp.Value)
Debug.Print prp.Value
End If
Next
Next
Set frm = Nothing
DoCmd.Close acForm, obj.Name, acSaveYes
Next
End Function
'Informes: Búsqueda igual que en formularios
Function ReemplazarenInformes()
Dim obj As AccessObject
Dim rpt As Report
Dim ctl As control
Dim prp As Property
For Each obj In CurrentProject.AllReports
DoCmd.OpenReport obj.Name, acViewDesign
DoCmd.Minimize
Set rpt = Reports(obj.Name)
rpt.RecordSource = Traduccion(rpt.RecordSource)
rpt.Filter = Traduccion(rpt.Filter)
For Each ctl In rpt.Controls
For Each prp In ctl.Properties
If prp.Name = "ControlSource" Or prp.Name = "RowSource" Then
prp.Value = Traduccion(prp.Value)
End If
Next
Next
Set rpt = Nothing
DoCmd.Close acReport, obj.Name, acSaveYes
Next
End Function
Function Traduccion(Cadena As String)
Traduccion = Replace(Cadena, "Formularios!", "Forms!")
End Function

    Source: geocities.com/es/ensolva/Descargas/Documentos

               ( geocities.com/es/ensolva/Descargas)                   ( geocities.com/es/ensolva)                   ( geocities.com/es)