Access - Alguien que me ayude con links

 
Vista:

Alguien que me ayude con links

Publicado por chart (1 intervención) el 27/09/2002 23:03:56
necesito una funcion que me refresque o repare los links de mi aplicacion automaticamente al moverla a otro lugar. lo que busco es que el usuario no tenga que utilizar el menu tableLinkManager del database utility.
de antemano...GRACIAS POR AYUDARME!!!
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

Alguien que me ayude con links

Publicado por Alejandro (4142 intervenciones) el 22/04/2023 01:07:33
Para actualizar los links de tu base de datos de Access de forma automática al moverla a otro lugar, puedes utilizar una función de VBA que busque las tablas en su nueva ubicación y las vincule nuevamente a la base de datos.

Aquí te dejo un ejemplo de código que puedes utilizar como punto de partida:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Public Sub ActualizarLinks()
    Dim db As DAO.Database
    Dim tdf As DAO.TableDef
    Dim strNewPath As String
    Dim strTableName As String
 
    'Establecer la nueva ubicación de las tablas
    strNewPath = "C:\MiNuevaRuta\"
 
    'Obtener el objeto de base de datos actual
    Set db = CurrentDb()
 
    'Recorrer todas las tablas y actualizar los links
    For Each tdf In db.TableDefs
        'Solo vincular las tablas vinculadas (no las locales)
        If tdf.Attributes And dbAttachedTable Then
            'Obtener el nombre de la tabla
            strTableName = tdf.Name
 
            'Actualizar la ruta de origen
            tdf.Connect = ";DATABASE=" & strNewPath & strTableName & ".mdb"
 
            'Refrescar la tabla
            tdf.RefreshLink
        End If
    Next tdf
 
    'Cerrar la base de datos
    db.Close
End Sub

Ten en cuenta que debes modificar la variable `strNewPath` con la ruta correcta donde se encuentran las tablas en su nueva ubicación. También asegúrate de que el nombre de las tablas sea el mismo en la nueva ubicación que en la ubicación original.

Puedes llamar a esta función desde un botón en un formulario o desde una macro en el evento de inicio de la base de datos.
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