Benutzersuche in access

ich habe in access eine tabelle mit [applikation], [anmeldename], [benutzername], [gueltig_von], [gueltig_bis]
in einem formular ist oben ein textfeld für den suchname(der in anmeldename gesucht wird)
ich möchte dass die felder bei denen das [gueltig_bis] feld kleiner als das heutige datum ist deaktiviert werden.
ich habe das mit der bedingten formatierung des textfeldes versucht. jedoch werden nur wenige felder deaktiviert unteranderem auch welche im jahre 2079 was nicht korekt ist.

danke für eure hilfe

ich habe in access

welches? wäre schon gut zu wissen…

ich möchte dass die felder bei denen das [gueltig_bis] feld
kleiner als das heutige datum ist deaktiviert werden.

ok, also beim Ereignis: bei Fokusverlust
des Suchfeldes den VBA Code mit der Bedingung eingeben.

ich habe das mit der bedingten formatierung des textfeldes
versucht. jedoch werden nur wenige felder deaktiviert
unteranderem auch welche im jahre 2079 was nicht korekt ist.

„bedingte Formatierung“ ist eine Formatierung und keine „bedingte Bedingung“ und definitiv der falsche Weg.

Grüße aus Rostock
Wolfgang
(Netwolf)

ich habe in access

welches? wäre schon gut zu wissen…

access 2003

ich möchte dass die felder bei denen das [gueltig_bis] feld
kleiner als das heutige datum ist deaktiviert werden.

ok, also beim Ereignis: bei Fokusverlust
des Suchfeldes den VBA Code mit der Bedingung eingeben.

ich habe da noch nen button der die suchabfrage startet
hatte ich vergessen zu sagen^^
aber die suche funktioniert ja schon nur die formatierung nicht

ich habe das mit der bedingten formatierung des textfeldes
versucht. jedoch werden nur wenige felder deaktiviert
unteranderem auch welche im jahre 2079 was nicht korekt ist.

„bedingte Formatierung“ ist eine Formatierung und keine
„bedingte Bedingung“ und definitiv der falsche Weg.

das es der falsche weg ist habe ich mir schon fast gedacht…
aber welcher ist der richtige?

ich habe da noch nen button der die suchabfrage startet
hatte ich vergessen zu sagen^^

ok und du hast ein Endlosformular?

aber die suche funktioniert ja schon nur die formatierung
nicht

noch mal: das hat mit Formatierung nichts zu tun!!!

ich habe das mit der bedingten formatierung des textfeldes
versucht.

ich dachte es wäre ein Datumsfeld?

in einem Endlosformular kannst du nur zwischen an oder aus für alle Felder der Spalte wählen. D.h. das was du vorhast, funktioniert nicht.

Wenn du aber die Eingabe im Fuß anlegst, könntest du es steuern.

Grüße aus Rostock
Wolfgang
(Netwolf)

ich habe da noch nen button der die suchabfrage startet
hatte ich vergessen zu sagen^^

ok und du hast ein Endlosformular?

genau ein endlosformular

aber die suche funktioniert ja schon nur die formatierung
nicht

noch mal: das hat mit Formatierung nichts zu tun!!!

ich habe das mit der bedingten formatierung des textfeldes
versucht.

ich dachte es wäre ein Datumsfeld?

es ist ein textfeld in dem ein datum steht… manchmal steht aber auch nur aktiv oder inaktiv drin (das kann man leider nicht ändern weil ich die daten ja aus unterschiedlichen sql datenbanken hole und die unterschiedlich formatiert sind)

in einem Endlosformular kannst du nur zwischen an oder aus für
alle Felder der Spalte wählen. D.h. das was du vorhast,
funktioniert nicht.

so ganz stimmt das nicht: als ich nur eine tabelle hatte funtionierte das wunderbar…

Wenn du aber die Eingabe im Fuß anlegst, könntest du es
steuern.

was genau meinst du damit?
sorry ich kenn mich nich so ganz damit aus^^
aber torzdem danke

es ist ein textfeld in dem ein datum steht…

das ist nicht gut, wenn du gem. Datumsvergleich eine Auswahl treffen willst. D.h. du musst die Daten erst mal in ein Datumsformat umwandeln.

manchmal steht aber auch nur aktiv oder inaktiv drin (das kann man leider nicht ändern weil ich die daten ja aus unterschiedlichen sql
datenbanken hole und die unterschiedlich formatiert sind)

  • das ist nicht gut
  • erstelle dir eine Basis-Tabelle in Access mit Datumsfeld für diesen Vergleich
  • importiere dann die Fremdtabelle in diese Basis-Tabelle mit gleichzeitiger Konvertierung (per Anfügeabfrage)
  • konvertiere die Informationen in einen passenden Datumswert
    z.B. aktiv = 31.12.2099 und inaktiv = 01.01.2000
  • nutze nur deine Basistabelle im Formular

in einem Endlosformular kannst du nur zwischen an oder aus für
alle Felder der Spalte wählen. D.h. das was du vorhast,
funktioniert nicht.

so ganz stimmt das nicht: als ich nur eine tabelle hatte
funtionierte das wunderbar…

hmm, das wäre mir neu, sprichst du von einer Tabelle in z.B. Excel?
Access bietet keine solche Funktion bei den Tabellen um Felder in Abhängigkeit vom Inhalt zu sperren.

Wenn du aber die Eingabe im Fuß anlegst, könntest du es
steuern.

was genau meinst du damit?

Ein Formular besteht aus drei Bereichen:

  1. Kopf
  2. Detailbereich
  3. Fuß

Kopf und Fuß muss man extra einblenden

Du hast im Detailbereich nun Felder, die du anzeigen lässt, deine Endlosliste.
Du versuchst dort die Daten zu bearbeiten bzw. einzuschränken bei der Bearbeitung.

Verlagere die Bearbeitung in den Fuß
Wie geht das?:

  • markiere alle Felder im Detailbereich
  • Strg+C (=kopieren)
  • setze den Cursor in den Fußbereich (den du vorher eingeblendet hattest)
  • STRG-V (=einfügen)
  • nun stehen alle Felder auch im Fußbereich
  • markiere noch mal die Felder im Detailbereich
  • Rechtsklick -> Eigenschaften -> Reiter [Daten]
  • Aktiviert = NEIN
  • Gesperrt = JA
  • nun ist die Bearbeitung dort nicht mehr möglich

Die Bearbeitung der Datensätze erfolgt jetzt im Fuß
Dort kannst du auch wieder Bedingungen definieren, wann welches Feld angezeigt werden soll oder nicht, vorausgesetzt der Datentyp stimmt.

Grüße aus Rostock
Wolfgang
(Netwolf)

Danke für die Hilfe
ich werde deine Lösung gleich ausprobieren