Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Access 2016 - Listbox.requery aktualisiert anders Formular gleich mit

Begonnen von Schwarzbeere, November 15, 2023, 18:20:12

⏪ vorheriges - nächstes ⏩

Schwarzbeere

Hallo,

ich habe seit einigen Wochen ein seltsames Problem.

Ich habe ein Hauptformular, darin sind (u.v.a.) ein Unterformular (endlos) und eine Listbox.
Wenn im Unterformular das Ereignis current auftritt, wird die Listbox im Hauptformular aktualisiert.

Seit einigen Wochen und evtl. zeitgleich mit der Umstellung von Access 2013 auf 2016 springt der Datensatzzeiger im Unterformular nach dem requery der Listbox wieder auf den ersten Datensatz im Unterformular.

Das ist so nicht beabsichtig und war in den letzten 10 Jahren auch nicht so.
Ich konnte den Datensatz im Unterformular wechseln, die Listbox wurde aktualisiert und der Fokus blieb im neuen Datensatz.

Das hätte ich gerne wieder, hab aber im Moment überhaupt keinen Ansatzpunkt und hoffe auf eure Hilfe.

Viele Grüße
Viele Grüße von der Schwarzbeere

MzKlMu

Gruß Klaus

Schwarzbeere

Viele Grüße von der Schwarzbeere

MzKlMu

Gruß Klaus

Schwarzbeere

Hallo Klaus,

ja, es gibt jede Menge Code im Hauptformular. Im Unterformular sind nur ein paar Schaltflächen mit Filter und Sortierung. Ich bin den Code aber schon in Einzelschritten durchgegangen. Es wird kein anderes Sub aufgerufen.

Wie gesagt, es hat ja bis vor ein paar Wochen problemlos funktioniert. Dann kam die coole "neue" Software...

Ich habe den Requery-Befehl jetzt auskommentiert und werde mir vermutlich eine Schaltfläche zulegen, mit der ich die Listbox aktualisiere, aber das hätte ich mir gerne gespart.

Viele Grüße

Viele Grüße von der Schwarzbeere

MzKlMu

Gruß Klaus

PhilS

Zitat von: Schwarzbeere am November 15, 2023, 18:20:12Seit einigen Wochen und evtl. zeitgleich mit der Umstellung von Access 2013 auf 2016 springt der Datensatzzeiger im Unterformular nach dem requery der Listbox wieder auf den ersten Datensatz im Unterformular.
Kannst du ein minimalisiertes Beispiel, das dieses Problem zeigt, erstellen und hier hochladen?
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

ebs17

Ich halte aber schon die Aktualisierung von unten nach oben für ein erstes selbstgemachtes Problem und eine eigene (zu erklärende?) Logik.
Mit freundlichem Glück Auf!

Eberhard

Schwarzbeere

Hallo,

@ Phil: Ungern, nur wenn ich keine andere Lösung finde. Es macht halt eine Menge Arbeit, obwohl ich selbst sehr gespannt bin, ob das Problem in einer abgespeckten Version überhaupt noch auftritt.

@ Ebs17: Ich lasse mit dem aktuellen DS im Endlosformular verknüpfte Ergebnisse, hier zugeordnete Dokumente, anzeigen. PS: Natürlich sind bestimmt 90% meiner Probleme selbstgemacht, aber erklär mal bitte, wo hier das Problem liegt. Danke!
Viele Grüße von der Schwarzbeere

trebuh

Hallo Schwarzbeere,

wie wäre es, wenn Du mal den ganzen Code von dem Ereignis current des Unterformulares zeigst.
Oder steht da nur "me.parent.listbox.requery " drin?
Denke doch eher nicht oder?


PhilS

Zitat von: Schwarzbeere am November 19, 2023, 20:03:44Ungern, nur wenn ich keine andere Lösung finde. Es macht halt eine Menge Arbeit, [...]
Ich meinte im ersten Schritt ein wirklich sehr minimales Beispiel. Eine Tabelle ein Formular mit Listbox, UFO und der Codezeile(n) zum Requery der Listbox; mehr nicht. - Das sollte in < 15 Minuten zu erstellen sein. - Wenn du bereits "seit einigen Wochen" mit dem Problem zu tun hast, sollte das vom Aufwand her vergleichsweise trivial sein.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

ebs17

Zitataber erklär mal bitte
Optimist. Wer Unbekanntes erklärt, ist eher als Scharlatan einzustufen (mein Zauberstab ist gerade unerreichbatr unter einen Schrank gerollt), und Deine vage Beschreibung ist alles andere als hinreichend.

Was ich aber kennengelernt habe: Ein Current ist sehr dynamisch (gefährlich und daher sparsam einzusetzen) und recht schnell folgenreich. So dürfte ein Current in einem Unterformular unmittelbar ein Current im (unbekannten) Hauptformular auslösen, und wenn letzteres ebenfalls mit einer Ereignisprozedur versehen ist, passiert dann ein wenig mehr ...
Mit freundlichem Glück Auf!

Eberhard