aximand
Goto Top

Access-Formular über Checkbox neu sortieren

Hallo,

ich tätige meine ersten Anfänge in Access und brauche mal den ein oder anderen Denkanstoß, da ich im Web nicht so wirklich Hilfe finde.

Ich habe in Access eine MS-SQL-Server Sicht verknüpft.
Zu dieser verknüpften Tabelle gibt es 2 Abfragen, die unterschiedlich sortieren: einmal nach Artikel & Ausprägung , einmal nach Vorgangsnummer. Ob ich die benötige weiß ich gerade noch nicht.

Ich erstelle nun von dem verbundenen View über den Formular-Assi ein Formular.
Jetzt werden korrekter Weise 3 Test-Datensätze angezeigt. Diese 3 Testdatensätze setzen sich zusammen aus 1 Vorgang mit einer Position A und einem 2. Vorgang mit Position A und 2. Vorgang Position B.

Ich möchte nun über z.B. eine Checkbox im Kopf erreichen, dass der angezeigte View neu sortiert wird, zB. nach Artikelnummer oder eben nach Vorgangsnummer.

Kann mir da jemand helfen?
view

Content-ID: 384014

Url: https://administrator.de/contentid/384014

Ausgedruckt am: 22.11.2024 um 07:11 Uhr

eisbein
eisbein 21.08.2018 aktualisiert um 15:16:37 Uhr
Goto Top
Hallo!

Zu dieser verknüpften Tabelle gibt es 2 Abfragen, die unterschiedlich sortieren: einmal nach Artikel & Ausprägung

Das benötigst du nicht. Eine Tabelle mit den benötigten Daten reicht, das Sortieren erledigt dann Access mit "OrderBy".

Somit ist die OrderBy-Option deines Formulars dein Freund und Stichwort.
Mach dich mal schlau und melde dich ggf. wenn du konkrete Probleme hast.

Gruß
eisbein

Edit:
Auf die Schnelle mal ein paar Links:
https://docs.microsoft.com/en-us/office/vba/api/Access.DoCmd.SetOrderBy
https://access-programmers.co.uk/forums/showthread.php?t=126404
Aximand
Aximand 21.08.2018 um 15:26:01 Uhr
Goto Top
Die Frage ist ja, wie ich das OrderBy über eine Checkbox mit NeuAufbau/Aktualisierung des Formulars hinbekomme.
Irgendwie wohl über das Makrotool - aber wie?
haken
eisbein
Lösung eisbein 21.08.2018 aktualisiert um 16:03:31 Uhr
Goto Top
Warum muss es eine Checkbox sein?

Nimm eine Umschaltfläche bzw. mehrere und beschrifte sie entsprechend "Sortieren nach Beleg" etc.

Unter "Ereignis" nicht Makro sondern Code-Generator auswählen und direkt den VBA-Code (wie beim 2. Link) einfügen.

Edit:
Zum Beispiel:
Sub Umschaltfläche_Click()
Me.OrderBy="[Artikel] ASC"  
Me.OrderByOn=True
End Sub
Artikel ist die Bezeichnung der Spalte die Sortiert werden soll.
ASC steht für aufsteigend, DESK für absteigend
Aximand
Aximand 21.08.2018 um 16:05:44 Uhr
Goto Top
Danke, hätte das ganz gerne auch mal mit dem Makrotool hin bekommen.
Mit der Checkbox geht das natürlich indem ich einfach nur true/false abfrage.

Kannst Du mir ggf. auch sagen wie oder ob ich eine Zeile komplett einfärben kann, falls z.b. Tagesdatum - Lieferdatum > x