collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 58
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 0

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 14070
  • stats Beiträge insgesamt: 67529
  • stats Themen insgesamt: 9099
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Ein Formular öffnen und Kombofeld auswählen  (Gelesen 1033 mal)

Offline Micharius

  • Access-User
  • *
  • Beiträge: 82
Ein Formular öffnen und Kombofeld auswählen
« am: Oktober 20, 2017, 08:41:25 »
Hallo zusammen

Aus einem Formular möchte ich per Button ein weiteres Formular frmParDos öffnen.

In erfolgt die Datenauswahl über das Kombofeld LstParDropdown , weshalb es schön wäre, wenn darin beim Öffnen des Formulars gleich der richtige Datensatz ausgewählt wurde.

Das Ausgangsformular benutzt als Referenz das Steuerelement KunParIDRef und sollte im neuen Formular auf ParID verweisen.

Den folgenden Code habe ich ausprobiert. Er öffnet zwar ohne Error das Formular frmParDos, wählt aber keinen Datensatz im Kombofeld LstParDropdown[/i aus.

DoCmd.OpenForm "frmParDos", , , "LstParDropdown =" & Me!KunParIDRef
Vielleicht kann mir jemand helfen, den Code zu verbessern, damit es funktioniert?

Beste Grüsse

Micharius
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7424
Re: Ein Formular öffnen und Kombofeld auswählen
« Antwort #1 am: Oktober 20, 2017, 08:58:00 »
Hallo,
genau habe ich die Zusammenhänge nicht verstanden.
Im Kriterium kann nur ein Tabellenfeld verwendet werden, das es in der Datenherkunft des zu öffnenden Formulars auch gibt. Versuche es daher mal so:
DoCmd.OpenForm "frmParDos", , , "ParID = " & Me.LstParDropdown
Gruß
Klaus
 

Offline Micharius

  • Access-User
  • *
  • Beiträge: 82
Re: Ein Formular öffnen und Listenfeld auswählen
« Antwort #2 am: Oktober 20, 2017, 16:10:39 »
Hallo Klaus & andere

Auszuschreiben ist es schwierig, ich versuche es mal inkl. Screenshots und habe diese angefügt. Beim ersten Post habe ich noch Kombinationfeld geschrieben, das war falsch - es handelt sich um ein Listenfeld.

In einem anderen Fall habe ich mit diesem Code erfolgt gehabt, aber da ging es eben nicht darum, einen Eintrag in einem Listenfeld auszuwählen:

DoCmd.OpenForm "frmParDos", , , "[ParID] =" & Me!KunParIDRef
Beste Grüsse

Micharius
« Letzte Änderung: Oktober 20, 2017, 16:16:16 von Micharius »
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7424
Re: Ein Formular öffnen und Kombofeld auswählen
« Antwort #3 am: Oktober 20, 2017, 16:35:00 »
Hallo,
mir fehlt trotz der Bilder die Vorstellungskraft zu erkennen, was Du hier machst bzw. machen willst.
Gruß
Klaus
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1336
Re: Ein Formular öffnen und Kombofeld auswählen
« Antwort #4 am: Oktober 20, 2017, 16:38:04 »
Öffne das Formular ohne WhereCondition und setze nach dem Öffnen des Formulars den Wert im Listenfeld. Hat das Listenfeld ein Nach Aktualisierung Ereignis (hat es vermutlich), so wird dieses dabei nicht ausgelöst. Abhilfe: Du legst eine Public Sub BlaBla im Formular mit dem Code aus dem Ereignis an und rufst im Ereignis die neue Sub auf. Da diese Public ist, kann sie auch extern angesteuert werden.

Ein sinnvoller Namen für die Prozedur fällt Dir bestimmt selbst ein.
'-- im aufrufenden Formular

Private Sub DeinKnopf_Click()
   DoCmd.OpenForm "DeinFormularname"
   With Forms("DeinFormularname")
      .Listenfeldname.Value = Me.KunParIDRef
      .NameDerProzedur
   End With
End Sub



'-- in DeinFormularname

Private Sub Listenfeldname_AfterUpdate()
   NameDerProzedur
End Sub

Public Sub NameDerProzedur()
   ' Aktionen mit dem Listenfeld aufführen
End Sub

PS: meine Meinung zum PDF-Anhang lasse ich Dich wohl besser nicht wissen ...
Grüße von der (⌒▽⌒)
 

Offline Micharius

  • Access-User
  • *
  • Beiträge: 82
Re: Ein Formular öffnen und Kombofeld auswählen
« Antwort #5 am: Oktober 23, 2017, 08:45:27 »
Hallo Lachtaube

Bin untröstlich  :'(. Ich hatte mir solche Mühe gegeben, das Problem im PDF zu beschreiben.

Spass beiseite, hast ja recht: War ein Pfusch!  ;)

ABER: Nun funktioniert, was ich wollte. Und zwar schon mit dem Code im Ausgangsformular, im Zielformular brauchte ich gar nichts zu hinterlegen.

Herzlichen Dank also für den Lösungsansatz, und einen guten Start in die Woche.

Micharius

P.S. Wenn ich sozusagen keine Ahnung von VBA und Programmierung im Allgemeinen habe, wo fange ich am besten an? :-\