VBA Access: Formular-Steuerelemente zur Laufzeit

Hallo zusammen,

bei folgendem Problem komme ich nicht weiter:

Ich möchte in MS Access ein Formular erstellen, auf dem Steuerelemente erst zur Laufzeit erstellt werden. Genauer gesagt möchte ich die Daten einer Tabelle dazu benutzen, um für jeden Datensatz ein Textfeldsteuerelement zu erzeugen. Vielleicht besser ein Beispiel: In der Tabelle, die nur aus dem Feld „Bezeichnung“ besteht, seien etwa die Datensätze „Name“, „Vorname“, „Adresse“ gespeichert. Dann soll in dem Formular ein Eingabefeld mit Label „Name“, eines mit Label „Vorname“ und eines mit Label „Adresse“ entstehen.

Wenn ich die Daten in dieser Tabelle ändere sollen diese Änderungen sich natürlich beim nächsten Öffnen des Formulars auf dieses auswirken.

Meine Frage ist, ob dies überhaupt möglich ist, und wenn ja, wie?

Vielen Dank schon mal,

Matthias

Hallo

bin der Meinung dass das mit VBA nicht möglich ist.
(Mit VB kann man zur Laufzeit Controls erstellen…)

gruss, Giuseppe

Hallo.
Ist doch möglich, und zwar mit der CreateControl-Methode. Formular zur Laufzeit im Entwurfsmodus öffnen!

Dann :

Sub HauMichTot()
Dim EinLabel As Control
Set EinLabel=CreateControl(„formularname“,100, …)

etc. pp. Entscheidend ist der zweite Parameter im CreateControl-Aufruf. Die 100 steht für Label, also Bezeichnungsfeld.

Für detailliertere Auskunft bitte Mehl an [email protected].

Gruß kw

Das ist zwar möglich - mit der CreateControl-Methode, wie Heinerich schon schreibt.

Aber i.d.R. ist das weder wünschenswert (man muss dazu das Formular im Entwurfsmodus öffnen, was z.B. in der Runtime-Version von Access nicht geht und auch andere Nachteile hat) noch erforderlich. Normalerweise reicht es aus, eine ausreichende Anzahl von Steuerelementen auf dem Formular anzulegen und nach Bedarf sichtbar zu machen und zu platzieren.

Reinhard