Clase ModelRelationship (Excel VBA)

La clase ModelRelationship representa una relación, actualmente en el modelo de datos, entre dos tablas.

Los principales procedimientos de la clase ModelRelationship son Delete y ModelRelationships.Add

Set

Para usar una variable de clase ModelRelationship, primero debe ser instanciado, por ejemplo

Dim mrel as ModelRelationship
Set mrel = ActiveWorkbook.Model.ModelRelationships(Index:=1)

Los siguientes procedimientos se pueden usar para establecer variables de clase ModelRelationship : ModelRelationships.Item, ModelRelationships.Add y Model.ModelRelationships

For Each

A continuación, se muestra un ejemplo de cómo procesar los elementos ModelRelationship en una colección.

Dim mrel As ModelRelationship
For Each mrel In ActiveWorkbook.Model.ModelRelationships
	
Next mrel

Temas

Los siguientes procedimientos de esta clase se han agrupado y se describen en una página temática separada

Column with its procedures ForeignKeyColumn y PrimaryKeyColumn

Métodos

Los principales métodos de la clase ModelRelationship son

Delete - Elimina la relación.

ActiveWorkbook.Model.ModelRelationships(1).Delete

ModelRelationships.Add - Agrega una nueva relación al modelo.

Dim mrel As ModelRelationship
Set mrel = ActiveWorkbook.Model.ModelRelationships.Add(ForeignKeyColumn:=, PrimaryKeyColumn:=)

Otros Métodos

ModelRelationships.DetectRelationships - Detecta las relaciones del modelo en el objeto PivotTable especificado.

ModelRelationships.Item - Devuelve un único objeto del objeto método modelrelationships .

Propiedades

Active Cuando el valor es true, la relación está activa.

ActiveWorkbook.Model.ModelRelationships(1).Active = True

ForeignKeyTable Contiene el objeto modeltable que representa la tabla en el lado varios de la relación uno a varios.

Dim mdltForeignKeyTable As ModelTable
Set mdltForeignKeyTable = ActiveWorkbook.Model.ModelRelationships(1).ForeignKeyTable

Parent Devuelve un objeto Object que representa el objeto primario del objeto ModelRelationship especificado.

Dim objParent As Object
Set objParent = ActiveWorkbook.Model.ModelRelationships(1).Parent

PrimaryKeyTable Contiene el objeto modeltable que representa la tabla en el lado uno de la relación uno a varios.

Dim mdltPrimaryKeyTable As ModelTable
Set mdltPrimaryKeyTable = ActiveWorkbook.Model.ModelRelationships(1).PrimaryKeyTable

ModelRelationships.Count Devuelve un valor de tipo Long que representa el número de objetos ModelRelationship de un objeto método modelrelationships .

Dim lngCount As Long
lngCount = ActiveWorkbook.Model.ModelRelationships.Count

ModelRelationships.Parent Devuelve un objeto Object que representa el objeto primario del objeto método modelrelationships especificado.

Dim objParent As Object
Set objParent = ActiveWorkbook.Model.ModelRelationships.Parent