Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: pampel am April 18, 2016, 10:40:45

Titel: Feldnamen dynamisch erzeugen
Beitrag von: pampel am April 18, 2016, 10:40:45
Hallo zusammen,

in ein Formular möchte ich Werte per VBA eintragen. Dazu möchte ich eine FOR-NEXT-Schleife benutzen.

Da das aber mehr wie 50 Felder in dem Formular sind möchte ich nicht alle Felder nach dem Schema
Forms.Formular.Feldname01.Value = ...
Forms.Formular.Feldname02.Value = ...
Forms.Formular.Feldname03.Value = ...
...

mit Werten belegen sondern ich will die Nummer mit einer Zählvariablen der FOR-NEXT-Schleife sinngemäß wie folgt dynamisch erzeugen:

i = 1

FOR
  Forms.Formular.Feldname0>i<.Value = ...
  i = i + 1
NEXT

Wie kann ich das machen?


Danke für Hinweise.

Gruß,

Stefan
Titel: Re: Feldnamen dynamisch erzeugen
Beitrag von: DF6GL am April 18, 2016, 10:55:45
Hallo,

ohne nach dem Sinn dieser Vorgehensweise zu fragen, geht das so:


.
.
.
Dim i as Long, X as Long
i = 1
X=51
FOR i=1 to X
  Me("Feldname" & i) =   ....   'sofern der Code im selbigen Formular abläuft
NEXT
.
.
Titel: Re: Feldnamen dynamisch erzeugen
Beitrag von: pampel am April 18, 2016, 13:55:25
Hallo DF6GL,

vielen Dank für die Antwort. Bei mir ist es so, dass ich in einem Registersteuerelement ein Formular (HF/UF) habe. In dem HF ist ein Button, der mir die Datensätze im UF in einer anderen Registerkarte eintragen soll.

Geht das auch?

Danke für Hinweise.


ruß,

Stefan
Titel: Re: Feldnamen dynamisch erzeugen
Beitrag von: MaggieMay am April 18, 2016, 13:58:36
Hi,

und so bekommst du die Zahlen mit führender Null:
ZitatMe("Feldname" & Format(i, "00")) =   ....   'sofern der Code im selbigen Formular abläuft

Aber wenn du jetzt davon sprichst, Datensätze (plural!) in einem Unterformular erzeugen zu wollen, sollte man vielleicht doch zunächst einmal den Sinn des Ganzen hinterfragen...
Titel: Re: Feldnamen dynamisch erzeugen
Beitrag von: pampel am April 18, 2016, 14:10:04
Hallo,

Danke für diesen Hinweis.

Sinn: das Ganze ist eine Anwendung für eine Prüfung. Zu dieser Prüfung gibt es aus der Vergangenheit zu bestimmten Themen Fragesets. Diese werden im HF/UF der einen Registerkarte aufgelistet.

Passt nun ein Frageset zur aktuellen Prüfung sollen die Fragen des Sets in eine andere Registerkarte in die dafür vorgesehenen Fragefelder übernommen werden. Wenn es kein passendes Set gibt werden die Fragen in diese Felder von Hand eingetragen.


Gruß,

Stefan
Titel: Re: Feldnamen dynamisch erzeugen
Beitrag von: pampel am April 18, 2016, 14:56:48
Hallo zusammen,

Lösung:
Forms!Formularname!("feldname0" & j).Value


Gruß,

Stefan