Neuigkeiten:

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

Mobiles Hauptmenü

Datenblattansicht: Ereignis bei Änderung der Spaltenreihenfolge

Begonnen von Doming, Heute um 14:03:44

⏪ vorheriges - nächstes ⏩

Doming

Hallo,

ich habe hier ein Formular, welches in der Datenblattansicht dargestellt wird (historisch gewachsen).
Man kann ja die Reihenfolge der Spalten frei tauschen, das soll eigentlich auch so bleiben. Allerdings hätte ich gerne, dass die ersten drei Spalten fest belegt sind. Dementsprechend würde ich die Tauscherei gerne überwachen, um sowas wie ein Undo anzustoßen, wenn jemand z.B. Spalte 5 nach ganz links zieht.

Gibt es ein Event, welches den Tausch überwacht oder muss ich zyklisch die Reihenfolge der Spalten überprüfen, was ich lieber vermeiden würde.

Gruß
 Doming

Knobbi38

#1
Hallo Doming,

nein, so ein Event gibt es nicht und zyklisch etwas zu überprüfen, würde ich jetzt auch nicht machen. Stattdessen könntest du die LostFocus-Events der Controls auswerten. 

Alternativer Vorschlag: Spalten fixieren (Kontextmenü).
Hinweis: die Aktion aus dem Kontextmenü kann unter VBA auch mit "DoCmd.RunCommand acCmdFreezeColumn" ausgeführt werden  ;)

Alternativer Vorschlag 2:
Form_MouseUp Events überwachen und die ColumnOrders wiederherstellen.


Andere Lösungen siehe hier:
https://isladogs.co.uk/freeze-columns-continuous-form/index.html