Access - Crear relaciones codificando

 
Vista:

Crear relaciones codificando

Publicado por Alejandro A. Llerandi (11 intervenciones) el 18/08/2004 20:41:37
Hola, necesito crear, por medio del código de Visual Basic, una relación uno a varios entre dos tablas. ¿Cómo tengo que hacer? Ya busqué en la ayuda de Visual Basic y no logro hacer que cree la relación. ¿Me podrías ayudar?
Muchas gracias.
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

Crear relaciones codificando

Publicado por Alejandro (4142 intervenciones) el 09/05/2023 21:55:41
Para crear una relación uno a varios entre dos tablas en Access utilizando código VBA, puedes utilizar el objeto `Database` y el método `CreateRelation`. Aquí tienes un ejemplo de cómo hacerlo:

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
31
32
33
34
35
36
Sub CrearRelacion()
    Dim db As Database
    Dim rel As Relation
    Dim tdf1 As TableDef
    Dim tdf2 As TableDef
 
    ' Establecer una referencia a la base de datos actual
    Set db = CurrentDb
 
    ' Obtener las tablas que deseas relacionar
    Set tdf1 = db.TableDefs("Tabla1")
    Set tdf2 = db.TableDefs("Tabla2")
 
    ' Crear una nueva relación
    Set rel = db.CreateRelation("Relacion1")
 
    ' Establecer las propiedades de la relación
    With rel
        .Table = tdf1.Name
        .ForeignTable = tdf2.Name
        .Fields.Append .CreateField("Campo1", dbLong)
        .Fields("Campo1").ForeignName = "CampoRelacionado"
    End With
 
    ' Añadir la relación a la colección de relaciones de la base de datos
    db.Relations.Append rel
 
    ' Guardar los cambios realizados
    db.Close
    Set rel = Nothing
    Set tdf2 = Nothing
    Set tdf1 = Nothing
    Set db = Nothing
 
    MsgBox "La relación se ha creado correctamente.", vbInformation
End Sub

Asegúrate de ajustar los nombres de las tablas (`Tabla1` y `Tabla2`) y los campos (`Campo1` y `CampoRelacionado`) de acuerdo a tu estructura de base de datos.

Una vez que hayas ejecutado este código, se creará una nueva relación llamada "Relacion1" entre las dos tablas especificadas.

Recuerda que este código debe ejecutarse en un módulo de VBA en Access y puedes asociarlo a un botón o llamarlo desde un evento para que se ejecute según tus necesidades.

Espero que esto te ayude a crear la relación deseada. ¡Buena suerte!
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