Neuigkeiten:

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

Mobiles Hauptmenü

Button sichtbar VBA

Begonnen von fsimnetz, Januar 31, 2024, 08:37:19

⏪ vorheriges - nächstes ⏩

fsimnetz

Guten Morgen,

ich stehe ein wenig auf dem Schlauch...

Ein Textfeld wird neben dem Ausdruck mit dem aktuellen Datum gefüllt:

Me.Erfasst_elektronisch = "Annahme elektronisch am " & Date

Nun möchte ich in Abhängigkeit dieses Textfeldes einen Button sichtbar machen:

Forms![frmHauptformular]!but_Posteingang_Akte.Visible = (Forms![frmHauptformular].Erfasst_elektronisch = "Annahme elektronisch am *.*")

..damit bleibt der Button aber unsichtbar..

Ich weiß, es liegt am Datum "& Date"

Ich bekomme es nicht hin und würde mich über eine Lösung freuen..

Danke.

MzKlMu

Hallo,
bitte entschuldige die harsche Ausdrucksweise, aber was Du da mit dem Datum vorhast ist maximaler Unsinn.
Mit einem solchen Feldinhalt ( "Annahme elektronisch am " & Date) lässt sich doch nichts anfangen. Da kann man weder nach einem Dateum sortieren, noch lässt sich z.B. ein Datum finden. Das Feld für das Datum sollte eine echtes Datumsfeld sein. Und im Bezeichnungsfeld für dieses Datumsfeld steht dann " "Annahme elektronisch am ".
Und die Zuweisung sieht dann einfach so aus:
Me.Erfasst_elektronisch = DateFür den Button dann:
Me.but_Posteingang_Akte.Visible = Not IsNull(Me.Erfasst_elektronisch)
Gruß
Klaus

PhilS

Zitat von: fsimnetz am Januar 31, 2024, 08:37:19Forms![frmHauptformular]!but_Posteingang_Akte.Visible = (Forms![frmHauptformular].Erfasst_elektronisch = "Annahme elektronisch am *.*")
Das Gleichheitszeichen vergleicht auf Gleicheit. - Wenig überraschend.
Ein Vergleich mit Wildcards benötigt das LIKE Schlüsselwort. Das gilt für SQL und VBA gleichermaßen.


Forms![frmHauptformular]!but_Posteingang_Akte.Visible = (Forms![frmHauptformular].Erfasst_elektronisch LIKE  "Annahme elektronisch am *.*")
Darüber hinaus stimme ich Klaus' Anmerkungen zu, dass es sinnvoller wäre hier gar nicht erst mit solchen unhandlichen Textwerten zu jonglieren.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

fsimnetz

Der Sinn des Textfeldes mit dem generierten Datums ist lediglich der temporäre visuelle Status eines elektronisch übersandten Vorgangs, der sich bei "Eingang" einer Papierakte (Eingang Druck Button) inhaltlich ändert. Das hat nichts mit Recherche, Sortierung o.ä. zu tun. Dafür sind tatsächlich weitere echte Datumsfelder vorhanden. Ein Großteil der User nutzt die betr. Formulare in der DB lediglich zum Lesen und zieht hieraus die Informationen..

...über Sinn oder Unsinn lässt sich daher sicherlich streiten...  8)

LIKE hat natürlich gepasst - danke für die Hilfe!  ;D

MzKlMu

Hallo,
so schnell gebe ich nicht auf. ;D
Zitat...über Sinn oder Unsinn lässt sich daher sicherlich streiten...
In dem Fall eher nicht.  ;D

Ich frage mich, welchen Informatiosvorteil der User aus

Annahme elektronisch am: 31.01.2024

bei deiner Version und

Und

Annahme elektronisch am: 31.01.2024

Bei meiner Version entnimmt.

Sieht doch gleich aus, oder ?

Ich versuche ja nur einen Vorgang möglichst einfach zu halten und nicht unnötig zu komplizieren.



Gruß
Klaus

fsimnetz

Ok, verstehe,

Füllung Textfeld "Annahme elektronisch am: XY-Datum" erscheint nach Erfassung des betr. Datensatzes. Irgendwann kann im frm nach Filterung der ID des vg. DS der tatsächliche Eingang der Papierakte per Button bestätigt werden, damit ändert sich auch die Füllung des Textfeldes in "Vorgang liegt vor am XXXX". = "Schreib-User"

"Lese-User" sieht u.a. immer nur den aktuellen Status des Vorgangs und kann lediglich im Formular Datensätze filtern, sonst nix.

Das Problem meiner Fragestellung: Der Button (zum Bestätigen Posteingang in Abhängigkeit Status Annahme elektr. MIT Datum) erschien in meinem DS-Filterformular nicht, weil ich = und nicht Like benutzt hatte. Ja, Ich hätte "& Date" weglassen können, fand ich aber vom Info-Gehalt nicht schön.

...ich weiß, schwer nachzuvollziehen, aber eigentlich toll gelöst ;D  ;D