Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Änderungen im Unterformular automatisch speichern ohne Nachfrage

Begonnen von Maro68, Mai 20, 2019, 22:49:21

⏪ vorheriges - nächstes ⏩

Maro68

Ich habe ein Navigationsformular mit mehreren Navigationsbuttons. Alle Navigationsbuttons verwenden das gleiche Unterformular. Es werden bei Klick auf die verschiedenen  Navigationsbuttons verschiedene Spalten im Unterformular ein- oder ausgeblendet. Das habe ich mit VBA im Ereignis ,,Beim Klick" des jeweiligen  Navigationsbuttons programmiert – und das funktioniert auch soweit.

Beispiel:
Klick auf Navibutton1 => Spalte A des Unterformulars wird eingeblendet, Spalte B und C ausgeblendet
Klick auf Navibutton2 => Spalte B des Unterformulars wird eingeblendet, Spalte A und C ausgeblendet
Klick auf Navibutton3 => Spalte C des Unterformulars wird eingeblendet, Spalte A und B ausgeblendet

Problem:
Bei jedem Wechsel zwischen den Navibuttons werde ich gefragt, ob die Änderungen im Entwurf des Unterformulars gespeichert werden sollen.

Lösungswunsch:
Die Frage soll unterbunden werden und die Änderungen im Unterformular bei jedem Wechsel zwischen den Navibuttons automatisch gespeichert werden.

Frage:
Wie – mit welchem VBA Code - kann ich das machen?
An welches Ereignis muss ich das binden?


Maro68

Hier der Code für den Klick auf einen der NaviButtons:

Private Sub NB_100Herren410_Click()
Forms![NavForm Statistiken 100 Schub]![NUF_100SchubHerren].Form![Erg_Gesamt].ColumnHidden = False
    Forms![NavForm Statistiken 100 Schub]![NUF_100SchubHerren].Form![Erg_GesV].ColumnHidden = True
    Forms![NavForm Statistiken 100 Schub]![NUF_100SchubHerren].Form![Erg_GesA].ColumnHidden = True
    Forms![NavForm Statistiken 100 Schub]![NUF_100SchubHerren].Form![Erg_GesF].ColumnHidden = True
End Sub


Moderatorenanmerkung: Codetags eingefügt. MzKlMu

DF6GL

Hallo,

stimmen die Namen des Navi-Forms und des Navi-UFO-Steuerelementes?

Standardmäßig wird das (einzige) UFO-Steuerelement in einem Navigationsformular als "Navigationsunterformular" benannt. Dabei ist der Name des anzuzeigenden Formulars an dieser Stelle nicht relevant.

Welchen Anzeigemodus hat das Unterformular?  ColumnHidden greift nur bei "Datenblattansicht".

Zudem würde ich "Me" als Referenz auf das Navigationsformular (in dem die Click-Prozedur abläuft) bevorzugen:

Me!NUF_100SchubHerren!Erg_Gesamt.ColumnHidden = False

bzw. wenn oben Gesagtes zutrifft:

Me!Navigationsunterformular![Erg_Gesamt].ColumnHidden = False

Maro68

Hallo Franz,
die Namen stimmen. Auch Me! habe ich verwendet. Wie gesagt, das Ein- und Ausblenden der Spalten funktioniert ja. Ich weiss auch , dass Columnhidden nur bei Datenblattansicht funktioniert. Ich will die Meldung, ob das UF gespeichert werden soll nicht mehr kriegen, sondern das Speichern per vba automatisieren.
Die Frage erscheint bei jedem Wechsel der Navibuttons.

MzKlMu

Hallo,
ich bin nicht sicher, aber ich glaube, dass diese Meldung nicht verhinderbar ist.
Zustände die man definiert haben will, legt man in einer Tabelle ab und ruft diese bei Bedarf aus der Tabelle ab.
Warum soll das überhaupt gespeichert werden ?
Solche Aktionen sind auch oftmals ein Hinweis auf ein nicht ganz optimales Datenmodell.
In einer Datenbank sollte die Entwurfssicht eines Formulars ohnehin nicht zugelassen werden.
Gruß Klaus

Maro68

Hallo Klaus,
du hast recht. Die Änderungen müssten gar nicht gespeichert werden. Aber die Meldung sollte auf jeden Fall unterbunden werden, weil das total lästig ist, bei jedem Wechsel eines Navibuttons.


DF6GL

Hallo,

bei mir tritt die Speichermeldung nicht auf.

Evtl. sind Einstellungen in den Access-Optionen anzupassen.

Maro68

Hallo,

ich habe die Speichermeldung mal als Screenshot in der beigefügten Datei. Access möchte die Änderung am Entwurf der Datensatzquelle ("Gesamtergebnisse pro Kampf und Mitglied) speichern, die dem UF zu Grunde liegt.

Evtl. verdeutlicht das meine Problematik mehr als Worte.

Gruß
Martin Rother

DF6GL

Hallo,

das verwirrt mehr als dass es hilft.


Wenn, wie es scheint, die Datenherkunft am (Unter-) Formular in der Entwurfsansicht geändert wird, ist es völlig normal, dass die Nachfrage erscheint...


Was stört daran?


PS: Auf Leer- und Sonderzeichen in Objektnamen verzichten! Auch bei Tabellen- bzw. Abfragenamen!