Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Merkwürdiges Verhalten eines Kombinationfeldes





Frage

Hallo Ihr. Ich habe in einem Formular ein Kombinationsfeld. An die Eigenschaft „Bei Fokuserhalt“ habe ich das Makro gebunden: [b]SetzenWert / DomLetzterWert(„Konto“,“Buchungen“)[/b] Wenn ich das Kombinationsfeld mit der Maus anklicke, ist alles roger; d.h. es wird der richtige Wert in das Feld „Konto“ eingetragen. Wenn ich jedoch vom vorherliegenden Eingabefeld durch RETURN weiterschalte, tut sich absolut nichts. Die Eingabemarke steht zwar in dem Kombinationsfeld, das Makro wird aber nicht ausgeführt. Ich habe auch versucht das Makro an die Eigenschaft „Beim Hingehen“, oder „Bei Fokusverlust“ in dem vorherliegenden Feld zu binden. Aber ohne Erfolg. Was mache ich verkehrt? mfg Grüßen Knubbel

Antwort 1 von Adik

und wenn du es direkt in den Code schreibst? Vielleicht ein Access bug...probiers mal...

Antwort 2 von Knubbel

@Adik
Ich bekomme es mit dem Code nicht hin, da ich von VB nichts verstehe. Kann es deshalb auch nicht probieren.

Kannst Du mir bitte den Code, wie er korrekt aussieht, mal schreiben?

mfg Knubbel

NS: Warum hat Deine Antwort den Vermerk löschen?


Antwort 3 von MickK

Hallo Knubbel, ehrlich gesagt verstehe ich nicht, was Du machen willst. Ein Kombinationsfeld dient der Auswahl eines Wertes aus mehreren vorgegebenen. Das Füllen dieses Feldes mit e i n e m Wert ist daher wenig sinnvoll, oder ist Dein Kombinationsfeld mit irgendwelchen Werten vorbelegt? Erklär mal genauer, was es werden soll.
Gruss
Mick

Antwort 4 von Knubbel

@Mick

Genau so ist es: Bei der Dateneingabe möchte ich das Feld "Konto" mit einem Wert mittels Auswahl durch ein Kombinationsfeldes belegen.

Da es bei mir aber häufig vorkommt, dass bei mehreren hintereinander folgenden Dateneingaben immer der gleiche Eintrag in dem Feld "Konto" (Auswahl mit dem Kombinationsfeld) steht, möchte ich die Auswahl mittels Kombinationsfeld umgehen (meine Faulheit) und den Eintrag aus dem vorhergehenden Datensatz übernehmen.

Nochmal zu meinem Problem:
Wenn ich mit der Maus das Kombinationsfeld anklicke, funktioniert dies genau so wie ich es haben will.
Aber wenn das Kombinationsfeld den Focus durch RETURN oder TAB erhält, funktioniert es eben nicht.

mfg Knubbel

Antwort 5 von 14071

Hi Knubbel,

die Lösung für dein Problem kannst du nachlesen bei www.donkarl.com Punkt 4.22

Gruß
Jürgen

Antwort 6 von Knubbel

@Jürgen

Die Lösung mit der Übernahme des Wertes als Standardwert funktioniert (donkarl,com)! Meine Eingabefaulheit wird sehr unterstützt.
Danke für den Tip.

Aber warum funzt die "Makro-Lösung" bei Fokusübergabe per Mausklick, aber nicht bei Fokusübergabe durch RETURN bzw. TAB?

mfg Knubbel

Antwort 7 von 14071

tja, darauf hab ich leider auch keine Antwort. Die Wege des Herrn (Gates) sind halt unergründlich. Ach ja ... vielleicht würde es helfen die Service-Packs einzuspielen - für 97 und 2k gibt es je zwei (meines Wissens).

Wenn du nicht zu faul dazu bist *grins*, kannst du´s ja mal damit probieren.

Gruß
Jürgen

Antwort 8 von Knubbel

@Jürgen

Ich war nicht zu faul das SP2b aufzuspielen. Es hat aber nichts gebracht.
Übrigens ich benutze WIN 98. Das von mir geschilderte "merkwürdige" Verhalten des Kombinationsfeldes ist sowohl bei Access 97 als auch bei Access 2002 festzustellen. Das von mir angegebene Makro funktioniert bei einem normalen Listenfeld übrigens einwandfrei.

@Adik
Ich habe nochmals versucht in der Ereignisprozedur einen Code gemäss der Makro-Funktion einzustellen. Aber VB meldet: Funktion (DomLetzterWert...) nicht bekannt. Wie muss der Code aussehen?

mfg Knubbel

Antwort 9 von Teddy7

Hallo Knubbel !
versuch´s mal mit dmax
Gruß
Teddy

Antwort 10 von Teddy7

oder auch so:
DFirst-, DLast-Funktionen (DomErsterWert, DomLetzterWert)

aus der Access-Hilfe:
Mit den Funktionen DFirst und DLast können Sie einen zufälligen Wert eines bestimmten Feldes in einer Tabelle oder einer Abfrage zurückgeben, wenn Sie einen beliebigen Wert aus diesem Feld benötigen. Sie können die beiden Funktionen in einem Makro, einem Modul, einem Abfrageausdruck oder berechneten Steuerelement eines Formulars oder Berichts verwenden.
Gruß
Teddy

Antwort 11 von Knubbel

@Teddy

Auch die Funktionen dmax, dmin reagieren wie dfirst. Da ich die deutsche Version installiert habe, wird bei mir nach Eingabe von z.B. DLast automatisch in DomLetzterWert transferiert.

Wie ich ja schon in AW 8 geschrieben habe, funktionieren diese Domänaggregatfunktionen bei normalen Listenfeldern einwandfrei.
Ich habe diese nun erstmals auf ein Kombinationsfeld angewandt, und dies sonderbare Verhalten festgestellt.

mfg Knubbel

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: