Access - Recorrer los objetos de una BD

 
Vista:

Recorrer los objetos de una BD

Publicado por Carlos Andrés (18 intervenciones) el 31/03/2005 20:55:42
Algunas consultas, formularios e informes tienen sufijos Old, los cuales son objetos viejos pero no los borro para cualquier eventualidad. El renombrar la bd, sí debo borrarlos. Pero son muchos y hacerlo manual se ha vuelto engorroso. El algoritmo podría ser:

BorrarViejos()
Para cada objeto de la bd haga
NombreObjeto <- objeto(i).nombre
Si NombreObjeto = "*Old"
eliminar objeto(i)
Fin si
Fin para

Cómo puedo hacer esto en Access?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Eliminación automática de objetos viejos en una base de datos

Publicado por Alejandro (4142 intervenciones) el 30/05/2023 19:39:41
Una forma de automatizar la eliminación de objetos viejos en una base de datos de Access es mediante el uso de macros o código VBA. Aquí te presento una posible solución utilizando código VBA:

1. Abre tu base de datos de Access.
2. Ve al Editor de Visual Basic presionando Alt + F11.
3. En el Editor de Visual Basic, ve al menú Insertar y selecciona "Módulo" para crear un nuevo módulo.
4. En el nuevo módulo, escribe el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub BorrarViejos()
    Dim db As Database
    Dim obj As Object
 
    Set db = CurrentDb
 
    For Each obj In db.Containers("Databases").Documents
        If InStr(obj.Name, "Old") > 0 Then
            db.Containers("Databases").Documents.Delete obj.Name
        End If
    Next obj
 
    Set obj = Nothing
    Set db = Nothing
 
    MsgBox "Objetos viejos eliminados correctamente.", vbInformation
End Sub

5. Guarda el módulo con un nombre descriptivo, por ejemplo, "EliminarObjetosViejos".
6. Cierra el Editor de Visual Basic.

Ahora puedes ejecutar la macro "BorrarViejos" para eliminar automáticamente todos los objetos que tengan el sufijo "Old" en su nombre. Ten en cuenta que esta acción no se puede deshacer, así que asegúrate de tener una copia de respaldo de tu base de datos antes de ejecutarla.

Recuerda que es importante tener precaución al realizar modificaciones en una base de datos, por lo que se recomienda realizar pruebas y asegurarse de entender completamente el código antes de ejecutarlo en una base de datos en producción.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar