WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Software (http://www.wcm.at/forum/forumdisplay.php?f=5)
-   -   Access - wie krieg ich sowas hin? (http://www.wcm.at/forum/showthread.php?t=159871)

jay_R 28.02.2005 07:24

puh.. das wird dann wahrscheinlich nur der programmierer wissen...

ich habs bei meinen progs so gemacht, dass ich einen versteckten button eingebaut hab mit dem ich das programm "freischalten" kann... aber wie gsagt, des wird nur da programmierer selbst wissen

pirate man 28.02.2005 07:42

puuuuh, glück ghabt - mit shift funktionierts :cool:

pirate man 01.04.2005 11:10

so, ich hock grad an dem programm und häng grad ein bissl beim aktivieren/deaktivieren von steuerelementen
ich hab an diesen post einen screenie mit ist/soll angehängt fürs bessere verständnis meines probs

die textfelder sollen erst aktiv werden wenn die checkbox links davon aktiviert ist
eigentlich funktionierts ja, aber nur wenn ich die checkbox zuerst anhackl und dann das hackal wieder weggieb - ich hätts aber gern dass das die felder schon beim öffnen des formulars inaktiv sind (wenn die checkboxen nicht angehacklt ist)

hier mal der code im visual basic ("MO" ist die Checkbox MO, "ZeitMO" das Feld daneben):

Code:

Private Sub MO_Click()
If Me.MO.Value = True Then
Me.ZeitMO.Enabled = True
Else
Me.ZeitMO.Enabled = False
End If
End Sub

ich hoff ihr könnts mir da weiter helfen
danke schon mal

pirate man 01.04.2005 11:11

soll

bully 01.04.2005 23:07

Das Formular in der Entwurfsansicht öffnen, das Eigenschaftsfenster aufmachen, das jeweilige Steuerelement markieren und die Eigenschaft enabled auf false setzen, ist standardmäßig immer true.

lg
bully

pirate man 04.04.2005 22:35

na da sag ich danke, hat gefunzt :)
aber 1x bräucht ich noch hilfe von euch, dann sollte das programm fertig sein

pro datensatz gibt es 3 datums-angaben, die die daten von verordnungscheinen sind
jeder verordnungsschein gilt 28 tage und das programm soll alle datensätze ausgeben deren verordnungsscheine in 5 tage ablaufen

bespiel:
verordnung1 3.1.05, verordnung2 5.2.05, verordnung3 4.3.05
die verordnung3 gilt bis zum 1.4.05

von der theorie her soll access den letzten eintrag hernehmen, dann werden 23 tage hinzugezählt (23 deshalb weil alle datensätze angezeigt werden sollen deren verordnungsscheine in <6 tagen ablaufen und die scheine nur 28 tage gültig sind)

es soll immer nur der letzte eintrag hergenommen werden - wenn in verordnung3 nix steht dann sollen zu verordnung2 23 tage hinzugezählt werden, steht nur in verordnung1 was drinnen dann muss dieser eintrag genommen werden und sind alle 3 felder ausgefüllt dann muss verordnung3 genommen werden

ich hoffe ich habe das ganze halbwegs verständlich formuliert und dass ihr mir noch einmal helfen könnt
ich hab nämlich wirklich keine ahnung wie ich das realisieren könnte

danke schon mal

bully 05.04.2005 08:44

Ich geh einmal davon aus, dass du die drei Felder als Datumsfelder definiert hast, auch ein Feld Gültigkeitsdatum sollte als Datumsfeld existieren. Dann könnte eine Prozedur, die deinen Wünschen entspricht ganz einfach so aussehen:

Private Sub Zuweisen_Click()
If Not IsNull(verordnung3) Then
gueltig = verordnung3 + 23
Else
If Not IsNull(verordnung2) Then
gueltig = verordnung2 + 23
Else
gueltig = verordnung1 + 23
End If
End If
End Sub

Ich habe in dem Beispiel die Sache so gelöst, dass mittels Befehlsschaltfläche Zuweisen das Datum in das Feld gueltig übernommen wird. Wichtig ist die Definition als Datumsfeld. Access rechnet jedes Datum intern in einen Integer-Wert um, damit funktioniert die Zuweisung mittels Addition von 23. Die If-Struktur erklärt sich hoffentlich von selbst.

lg
bully

pirate man 17.04.2005 16:08

ich meld mich erst jetzt wieder zu wort da ich die knappen letzten 2 wochen leider nicht zum bearbeiten des programms gekommen bin

zuerst nochmal ein dankeschön @bully, dein geposteter "code" hat gepasst - allerdings mit 23 statt 28 da jeder verordnungsschein 28 tage gilt und das datum des letzten tages der gültigkeit eingetragen werden soll (hab mich da bei meinem vorherigen post wohl schlecht ausgedrückt)

jetzt fehlt noch die ausgabe:
es sollen alle datensätze angezeigt werden die bis heute+5 gültig sind
beispiel: heute ist der 17.4. - somit sollen alle datensätze ausgegeben werden deren gültigkeitsdatum der 17.4., 18.4., 19.4., 20.4., 21.4. oder 22.4. ist

die ausgabe soll als formular erfolgen da sie als liste in einem register anzeigt werden soll
ein beispiel für die ausgabe hab ich als screenshot angehängt (ist eine andere liste)

ich kann mir vorstellen dass ich schon etwas nerve aber hoffe trotzdem dass ihr mir helfen könnt

schon mal vielen dank

bully 17.04.2005 22:07

Zitat:

Original geschrieben von pirate man
allerdings mit 23 statt 28
Und mein Code:
Zitat:

gueltig = verordnung1 + 23
Also ich hab es dir mit 23 Tagen geschrieben, weil du das so wolltest.

Zu deinem nächsten Problem: Erstelle eine Abfrage und trage als Kriterium bei dem Datumsfeld >=Datum() UND <=Datum()+5 ein. Dann erstellst du das Formular auf Basis der Abfrage und das wars.

Dazu ist nun wirklich keine Zeile VBA-Code nötig.

lg
bully

pirate man 18.04.2005 10:23

bzgl. den 23 oder 28 tagen
vergiss es, hab einen blödsinn geschrieben, hat eh so gepasst ;)

hab mir evtl. gedacht dass es auch mit vba geht weil ich nicht gewusst hab wie ich die abfrage in die registerseite einfüge
habs jetzt aber geschafft
zwar leider nicht so in formularform wie auf dem vorherigen screenshot sondern in tabellenform, aber hauptsache es is mal da

wieder ein großes dankeschön
aber ich befürchte das war leider nicht meine letzte frage :(


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:18 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag