Gedankenhilfe fuer MSysRelationships oder Beziehungen

15/06/2009 - 20:09 von Lupus Goebel | Report spam
Hallöschen,

ich entwerfe in Excel meine Datenbanken. Damit der Nutzer die Struktur
besser versteht. Aus diesen Exceltabellen erstelle ich per VBA dann
meine Datenbank incl. Defaultwerte, Index und Feldgröße.

Nun dachte ich, ich könnte die Beziehungen zwischen den Tabellen einfach
in die MSysRelationships reinschreiben. Pustekuchen, geht nicht. Auf
diese Tabelle habe ich keine Berechtigung. Kann man das Ändern oder
besser finger weg lassen?

Also versuche ich es eben damit erstmal:
\\\
Dim dbs As Database, rel As Relation, fld As Field
' Verweis auf aktuelle Datenbank holen.
Set dbs = CurrentDb

' Neues Relation-Objekt erstellen und Fremdtabelle angeben.
Set rel = dbs.CreateRelation("IDFuerKunde", "tbl_Kunde", "tbl_AP")

' Attribute zur Durchsetzung der referentiellen Integritàt einstellen.
rel.Attributes = dbRelationLeft Or dbRelationUpdateCascade
Or dbRelationDeleteCascade

' Feld in Relation-Objekt erstellen.
Set fld = rel.CreateField("ID")

' Feldname in Fremdtabelle festlegen.
fld.ForeignName = "ID_Kd"

' Field-Objekt an Fields-Auflistung des Relation-Objekts anfügen.
rel.Fields.Append fld

' Relation-Objekt an Relations-Auflistung anfügen.
dbs.Relations.Append rel

dbs.Relations.Refresh
Set dbs = Nothing
///

Ich will mir eben per VBA die Arbeit erleichtern und eine Datenbank fix
und Fertig per VBA aus Excel ziehen.

Verbesserungsvorschlàge büddà.

Arbeite mit A2t und einer OH die nur ab und zu geht.


MfG - Lupus Goebel
Der Sumpf- Morasthobbybastler und Anfaenger mit
Wissensdurst (http://www.lupusdw.de http://foto.lupusdw.de)
Urlaub macht man in Irland: http://www.eaglesnest-bb.com/
 

Lesen sie die antworten

#1 Jens Schilling
15/06/2009 - 21:12 | Warnen spam
Hallo, Lupus

Lupus Goebel wrote:
ich entwerfe in Excel meine Datenbanken. Damit der Nutzer die Struktur
besser versteht. Aus diesen Exceltabellen erstelle ich per VBA dann
meine Datenbank incl. Defaultwerte, Index und Feldgröße.

Nun dachte ich, ich könnte die Beziehungen zwischen den Tabellen
einfach in die MSysRelationships reinschreiben. Pustekuchen, geht
nicht. Auf diese Tabelle habe ich keine Berechtigung. Kann man das
Ändern oder besser finger weg lassen?

Also versuche ich es eben damit erstmal:
\\\


[SNIP]
///

Ich will mir eben per VBA die Arbeit erleichtern und eine Datenbank
fix und Fertig per VBA aus Excel ziehen.

Verbesserungsvorschlàge büddà.



Schau doch mal in Thomas Kesslers Demo "Anzeigen, Erstellen und Löschen von
Tabellenrelationen in externen DB's":

http://www.tksoft-online.de/Downloa...egory.html

Das ist bestimmt mancher Code-Schnipsel für Dich bei - wenn Dir nicht sogar
die DB selbst zusagt.

Tschüs
Jens

Ähnliche fragen