Hallo,
ich muss eine Programm für unsere Stadt erstellen, für das Kindersommerferienprogramm 2015. Hier vorab was ich bisher erstellt hab: http://1drv.ms/1Kk88TC (http://1drv.ms/1Kk88TC) Ich weis nicht ob das so richtig ist.
Wer kann mir helfen um die Datenbank ordentlich zum Laufen zu bringen.
Folgendes sollte die Datenbank schlussendlich können:
- über ein Formular sollte man Teilnehmer eintragen können
- wenn man das Alter eingibt, sollten unten nur Aktivitäten erscheinen die ab diesem Alter möglich sind
- Ebenfalls sollte der Preis der Aktivitäten unten im Formular als einzeln und gesamt angezeigt werden.
- falls die Höchstteilnehmerzahl überstiegen wird sollte ein Popup-fenster mit der Meldung "Höchstteilnehmerzahl überschritten - Der Teilnehmer wird auf die Warteliste gesetzt"
so hatte ich mir das vorgestellt, ich hoffe mir kann jemand bei dieser Umsetzung helfen :)
Viele Grüße
Sebastian M.
Servus,
also irgendwie bist du lustig ... erstellst du jedes Jahr 5 Minuten vor Schulschluss eine neue Ferienprogramm-Anwendung ?
http://www.access-o-mania.de/forum/index.php?topic=19436.0
Hallo, ja und dieses Jahr muss die Anwendung funktionieren, hab das letztes Jahr nicht zum laufen gebracht, und hoffe nun hier Hilfe zu finden. Jemand der mir diese Anwendung nach den genannten Wünschen basteln kann. :)
Hallo,
ich brauch schnelle Hilfe!!! Bitte! am Mittwoch muss es fertig sein!
Danke schon mal vorab für eure Unterstützung!
Hallo,
Zitatam Mittwoch muss es fertig sein!
Schaust du mal in den von mir angegebenen Link zum Vorjahresproblem - die gleiche Geschichte.
Ich habe dir im vergangenen Jahr eine fast fertige Anwendung geschenkt - aber du hattest ja nicht mal mehr Zeit dazu verschwendet damals auf meinen letzten Post zu antworten, du bist wortlos für ein Jahr aus diesem Forum verschwunden.
ZitatHier vorab was ich bisher erstellt hab
Das ist ein Abklatsch der Beispiel-Applikation die ich dir vorjährig erstellt habe! >:(
Du hättest ein ganzes Jahr Zeit gehabt das eine oder andere Problem zu 'deinem' Ferienprogramm hier zu diskutieren, jetzt ist es wieder soweit, dass du am Montag einen Beitrag reinstellst und am Mittwoch eine fertige Lieferung erwartest.
Glaubst du wirklich dass das so geht?
Ich entschuldige mich sehr dafür - sorry - :-\
vielleicht findet sich noch einer der mir die datenbank, trotz der unannehmlichkeiten, erstellen kann.
Ich kann für die Erstellung der Datenbank ein Entgeld geben.
Hallo sebi95,
ich hab mir mal die DB angesehen, die du von database bekommen hast. Insgesamt war sie eigentlich fertig, bis auf die "Warteliste". Um sie zu aktivieren fehlte nur ein einziger String, der wohl in der Eile des Gefechts übersehen wurde.
Sei dir sicher: hier will keiner der Moderatoren sofort ein Entgeld um zu helfen, aber ein ernst gemeintes "Danke" wäre nicht unbedingt schlecht.
;)
Hallo
vielen Dank!!! :) sieht gut aus. Mir wird beim öffnen der Datei nur das Formular angezeigt. Wo finden ich die Tabellen in denen die Daten hinterlegt werden bzw. sind?
Das Geb. Datum wird bei einer Teilnehmeranmeldung nicht abgefragt nur das Alter, welches sich auf die angezeigten Aktivitäten beziehen soll. Also kann man das Geb. Datum im Formular löschen.
Hallo,
ich hab mal das Feld Geburtsdatum weggenommen und dafür das Feld Alter in die Tabelle integriert.
Die Tabellen erscheinen nur noch wenn du beim Starten die Shift-Taste drückst, somit könnten auch andere mit der DB arbeiten und nix dabei anstellen...
Zusätzlich wurde ein Button zum Verlassen der DB und ein Button für einen Bericht eingesetzt.
Ab jetzt ist das deine Sache weiter zu kommen...
;) ;) 8) ;) ;)
super ... vielen lieben Dank! :-)
Hallo,
wenn man die einzelnen Aktionen im Formular auswählt soll bei manchen ein PopUp Fenster erscheinen, wo man mit "OK" wieder wegklicken kann, ein "Hinweis: Extra Einverständniserklärung erforderlich" z.B.
Wie erstelle ich solch ein PopUp?
Hi,
das könntest mit einer simplen MsgBox (-> Access-Hilfe) erledigen.
ok, aber wie geh ich da vor? wie erstell ich sowas?
für die 1. Aktivität "Übernachtung im Club Delta" wäre das z.B. das Popup "Hinweis: Einverständniserklärung erforderlich!" welches beim Auswählen dieser Aktivität erscheinen soll. Wer kann mir das mal einrichten damit ich sehen kann wie der code aufgebaut ist. Die Datenbank findet ihr hier weiter oben. Danke.
Hi,
du brauchst in der Aktivitätentabelle ein zusätzliches Datenfeld zur Erfassung der ID für den extra Hinweis, außerdem eine zusätzliche Tabelle für die Hinweistexte. Im Formular zum Anlegen/Pflegen der Aktivitäten muss dieses Datenfeld als Kombifeld hinzugefügt werden. Falls es so ein Formular noch nicht gibt, sollte es angelegt werden.
BTW:
Die Aktivitäten im Beschreibungstext durchzunummerieren halte ich für einen Fehler, dadurch kann man nicht alphabetisch sortieren und suchen. Eine der Aktivität zugeordnete Nummer sollte separat gespeichert werden.
Das Unterformular im Anmeldeformular sollte an eine Abfrage gebunden werden, in der auch der zu zeigende Hinweis enthalten ist, dann kann bei Auswahl einer Aktivität der zugeordnete Hinweis per MsgBox ausgegeben werden. Die Syntax dieses VBA-Befehls findest du in der Access-Hilfe.
ZitatWer kann mir das mal einrichten
Einrichten solltest du das selbst, schließlich bist du für dieses Projekt verantwortlich, da solltest du dich inzwischen mit Access vertraut gemacht haben. Ich kann dir nur Vorschläge machen und Hilfestellung bei konkreten Fragen geben.
Hallo, gibt es eine leichtere Lösung kenne mich überhaupt net mit Access aus, Sorry, kannst du mir das nicht bitte einrichten?
Bräuchte nur die popups das andere funktioniert ja einwandfrei
Du musst dir aber doch wenigstens über den Ablauf Gedanken gemacht haben, ich meine wie willst du das angehen?
Die Auswahl einer Aktivität im Unterformular löst ein Ereignis aus - sagt dir das wenigstens etwas?
Dieses Ereignis kann man nutzen, um die Auswahl zu prüfen und darauf zu reagieren.
Jemandem eine DB oder auch nur eine kleine zusätzliche Funktionalität darin zu erstellen, der nicht willens oder in der Lage ist, die Lösung anschließend zu verstehen, um daraus für zukünftige Arbeiten mit Access zu lernen, macht für mich keinen Sinn. Wenn man einfach nur bedient werden und nichts dazulernen will, dann sollte man sich das auch konsequenterweise etwas kosten lassen und an eine Job-Börse wenden. Ein Forum ist dafür der falsche Ort.
Mir müsste nur einmal das eine popup erstellt werden, die anderen popups kann ich dann selbst erstellen,
Wie gesagt, das Stichwort lautet "MsgBox", Erläuterungen und Beispiele dazu findest du in der Access-Hilfe. Schon mal nachgesehen??
Zitatfür die 1. Aktivität "Übernachtung im Club Delta" wäre das z.B. das Popup "Hinweis: Einverständniserklärung erforderlich!"
If Me!AktivitaetenID = 1 Then
MsgBox "Hinweis: Einverständniserklärung erforderlich!"
End If
Hallo,
ich versucht es so einzufügen wie du es mir geschrieben, hast, leider funktioniert es nicht! Ich weis nicht warum kannst du es mir bitte einmal eintragen in die jetzt angehängte Datenbank.
Ich kann in der DB nichts entsprechendes finden. Deinen Versuch solltest du schon zeigen, damit man dir den Fehler erklären kann.
ich hab es versucht einzuüfen aber es geht nicht speichern?! wer kenn mir helfen, Der Bericht soll auch nicht wie jetzt pro Teilnehmer aufgelistet sein sondern pro Aktivität das die Veranstalter der Aktivität dann eine Teilnehmerliste (für Ihre Aktivität) mitnehmen können.
Hi,
VBA-Code lässt sich immer speichern, auch wenn er falsch ist.
Dann zeige es an einem Screenshot wie und wo du etwas eingefügt hast.
Was den Bericht betrifft, so musst du ihn nach Aktivität gruppieren und die Teilnehmer im Detailbereich anzeigen, wenn du eine Teilnehmerliste erhalten willst.
Ich weis net jetzt hat sich irgendwie alles verstellt :'(
Ich hab den Code eingestellt vielleicht kannst du mal reinschauen und auch den Fehler beheben das im Formular wieder Geldbeträge und die Löschfunktion funktioniert.
Hallo,
Geh in den VBA-Editor und kompiliere die DB. Wirf dann die angemeckerte Prozedur aus dem Modul...
Korrigiere sodann diese Code-Passage:
If IstAnzahl < MaxAnzahl Then
If Me.Parent.txtAlter < 6 Or DLookup("AktivitaetenID", "Aktivitaeten", "AktivitaetenID=" & Me.AktivitaetenID_F) = -1 Then
Me.txtPreis = 0
Else
Me.txtPreis = DLookup("PreisKind", "Aktivitaeten", "AktivitaetenID=" & Me.AktivitaetenID_F)
End If
wobei der Tabellenfeldname (blau) entspr. angepasst werden muss.
Dabei verstehe ich hier nicht den Sinn der Dlookup-Funktion...
Vielleicht willst Du nur feststellen, ob in "TeilnehmerAktivitäten" ein DS für den akt. Teilnehmer vorhanden ist. Dann wäre die Dcount-Funktion einfacher und sinnvoller.:
DCount("*","Teilnehmer_Aktivitaet", "TeilnehmerID_F=" & Me.TeilnehmerID_F) >0
Danke für die bisherige Hilfe. Dennoch bekomm ich das allein nicht hin. Ich mache dieses Programm ehrenamtlich und würde mich freuen wenn mich jemand unterstützt. Denn das Programm sollte morgen fertig sein.
Zitat von: DF6GL am Juli 16, 2015, 11:41:01
Hallo,
Geh in den VBA-Editor und kompiliere die DB. Wirf dann die angemeckerte Prozedur aus dem Modul...
Korrigiere sodann diese Code-Passage:
If IstAnzahl < MaxAnzahl Then
If Me.Parent.txtAlter < 6 Or DLookup("AktivitaetenID", "Aktivitaeten", "AktivitaetenID=" & Me.AktivitaetenID_F) = -1 Then
Me.txtPreis = 0
Else
Me.txtPreis = DLookup("PreisKind", "Aktivitaeten", "AktivitaetenID=" & Me.AktivitaetenID_F)
End If
wobei der Tabellenfeldname (blau) entspr. angepasst werden muss.
Dabei verstehe ich hier nicht den Sinn der Dlookup-Funktion...
Vielleicht willst Du nur feststellen, ob in "TeilnehmerAktivitäten" ein DS für den akt. Teilnehmer vorhanden ist. Dann wäre die Dcount-Funktion einfacher und sinnvoller.:
DCount("*","Teilnehmer_Aktivitaet", "TeilnehmerID_F=" & Me.TeilnehmerID_F) >0
Kannst du mir dies einrichten?
Hallo,
Du sagst mir ja nicht, was da eigentlich passieren soll...
Ansonsten siehe Anlage
ich hab dir geschriben was die Datenbank machen sollte.
Hi,
Zitat von: sebi95 am Juli 16, 2015, 20:20:19ich hab dir geschriben was die Datenbank machen sollte.
per PN? Dann können andere natürlich nicht mehr helfen.
Wollte die kopieren, gibt es hier keine Funktion wo man gesandte Nachrichten ansehen kann?
Zitatgibt es hier keine Funktion wo man gesandte Nachrichten ansehen kann?
Ja, aber da muss man wohl erst einen Haken setzen, dass verschickte Nachrichten gespeichert werden.
Zitat von: MaggieMay am Juli 16, 2015, 20:52:29
Zitatgibt es hier keine Funktion wo man gesandte Nachrichten ansehen kann?
Ja, aber da muss man wohl erst einen Haken setzen, dass verschickte Nachrichten gespeichert werden.
Mist, naja dann schreib ich s nochmal hier rein
Hallo nochmal ... Ich hoffe mir kann jemand schnell helfen und mir die angehängte Datenbank fertig entwickeln. Brauche sie am Samstag.
Erst einmal wofür ist diese Datenbank:
Die Datenbank soll die Anmeldung der Kinder beim städt. Kinderferienprogramm erleichtern. Durch ein Formular soll man die Daten der Kinder eintragen können (also. Vorname, Nachname, Straße, Ort, Tel. und Alter). Darunter sollen die gebuchten Aktivitäten ausgewählt werden können, (es sollen nur die Aktivitäten erscheinen, die das Kind wegen seines Alters machen darf).
Neben den ausgewählten Aktivitäten soll dann der Preis der Aktivität und weiter unten als Summe erscheinen.
Es sollte noch zur Erleichterung einen Button (wie auch schon der Berichtbutton) im Formular geben, (nach dem man die Daten und Aktivitäten eines Kindes eingegeben hat), wo man durch Klick auf dem Button in die nächste leere Datenbank kommt.
Der Bericht sollte wie folgt aufgebaut sein: Pro Aktivität eine Seite, wo dann die einzelnen Kinder samt ihrer Daten aufgelistet sind. (Also z.B. "Übernachtung im Club Delta" - dann Vorname, Nachname, Straße, Ort Tel, Alter der teilnehmenden Kinder an dieser Aktivität.)
Wenn man eine Aktivität auswählt, bei der sich aber schon bis zur Maximalteilnehmerzahl Kinder angemeldet haben sollte ein Popup "Hinweis: Höchstteilnehmerzahl ist überschritten! Bitte den Teilnehmer auf die Warteliste schreiben!" erscheinen, das man mit "OK" wegklicken kann.
Und für manche Aktivitäten soll es noch separate Popups geben die man auch mit "OK" wegklicken kann. z.B. "1. Übernachtung im Club Delta". Wenn man diese Aktivität im Formular auswählt sollte erscheinen "Hinweis: Einverständniserklärung erforderlich!"
Ich glaub das wär's - oh Gott - :'( vielleicht findet sich noch irgendjemand der mir die Datenbank fertig entwickeln kann.
Viele Grüße
Sebastian
Hi,
Zitatvielleicht findet sich noch irgendjemand der mir die Datenbank fertig entwickeln kann.
ich wiederhole es gern noch einmal, weil es scheinbar nicht angekommen ist:
Das ist hier keine Job-Börse. Ein Forum leistet Hilfe zur Selbsthilfe, "machen lassen" kostet was.
Sorry aber was soll ich machen ??? Ich werde bis morgen net allein damit fertig, und ich bin bereit für die Leistung Entgelt zu bezahlen.
Zitat von: sebi95 am Juli 16, 2015, 22:16:00
Die Datenbank soll die Anmeldung der Kinder beim städt. Kinderferienprogramm erleichtern. Durch ein Formular soll man die Daten der Kinder eintragen können (also. Vorname, Nachname, Straße, Ort, Tel. und Alter). Darunter sollen die gebuchten Aktivitäten ausgewählt werden können, (es sollen nur die Aktivitäten erscheinen, die das Kind wegen seines Alters machen darf).
Okay dann probier ich es mit eurer Hilfe, wie muss ich vorgehen das ich den oberen Punkt erfüll?
Hi,
dazu stellst du die Datensatzherkunft des Kombifeldes im Unterformular auf den folgenden Code ein:
SELECT AktivitaetenID, Aktivitaet FROM Aktivitaeten WHERE NZ(Mindestalter,1)<=NZ(Parent.Alter,0) And NZ(Hoechstalter,99)>=NZ(Parent.Alter,0);
Zitat von: MaggieMay am Juli 17, 2015, 10:02:41
Hi,
dazu stellst du die Datensatzherkunft des Kombifeldes im Unterformular auf den folgenden Code ein:
SELECT AktivitaetenID, Aktivitaet FROM Aktivitaeten WHERE NZ(Mindestalter,1)<=NZ(Parent.Alter,0) And NZ(Hoechstalter,99)>=NZ(Parent.Alter,0);
Okay das habe ich gemacht, wie gehts dann weiter?
Was wäre denn die nächste Aufgabe, die du lösen möchtest?
Preis und Summe hast du doch schon.
Zitat von: MaggieMay am Juli 17, 2015, 10:40:00
Was wäre denn die nächste Aufgabe, die du lösen möchtest?
Preis und Summe hast du doch schon.
Es sollte noch zur Erleichterung einen Button (wie auch schon der Berichtbutton) im Formular geben, (nach dem man die Daten und Aktivitäten eines Kindes eingegeben hat), wo man durch Klick auf dem Button in die nächste leere Datenbank kommt.
Das hier. Was muss ich dabei tun.
Die "nächste leere Datenbank" willst du sicherlich nicht öffnen, sondern auf einen neuen, leeren Datensatz springen.
Was hindert dich daran, diesen Button einfach einzufügen? Der Assistent hilft dir dabei.
Nachtrag:
Habe gerade gesehen, dass bei Änderung des Alters die Datensatzherkunft des Kombifeldes geändert wird, das muss raus, stattdessen kannst du mit:Me.Teilnehmer_AktivitaetUF.AktivitaetenID_F.Requerydas Kombifeld aktualisieren. (Gleiches gilt für das Ereignis "Beim Anzeigen".)
Allerdings müssten dann auch die bereits vorhandenen Aktivitäten geprüft werden, ob sie noch gültig sind.
Zitat von: MaggieMay am Juli 17, 2015, 11:05:04
Der Assistent hilft dir dabei.
wo find eich den assistent?
Formularentwurf -> Register Entwurf -> Steuerelemente: Schaltfläche.
Der Assistent kommt dann von ganz allein - jedenfalls bei mir. ;-)
Hallo,
wenn Du einen Button einfügst, kommt der Assi automatisch. Dann kannst Du die gewünschte Aktivität (für den Button) auswählen.
Hast Du noch nie einen Button erstellt ?
Zitat von: MaggieMay am Juli 17, 2015, 11:21:32
Formularentwurf -> Register Entwurf -> Steuerelemente: Schaltfläche.
Der Assistent kommt dann von ganz allein - jedenfalls bei mir. ;-)
Check das grad net mit dem Assistenten, weis net was ich da eingeben muss.
nunja des ist jetzt erstmal net so wichtig wichtiger ist dies:
Wenn man eine Aktivität auswählt, bei der sich aber schon bis zur Maximalteilnehmerzahl Kinder angemeldet haben sollte ein Popup "Hinweis: Höchstteilnehmerzahl ist überschritten! Bitte den Teilnehmer auf die Warteliste schreiben!" erscheinen, das man mit "OK" wegklicken kann.
Das ist ja schon so halb fertig drin, aber wenn ich im formular auf die schaltfläche drücke passiert nichts.
ZitatCheck das grad net mit dem Assistenten, weis net was ich da eingeben muss.
Wie sieht das denn bei dir aus, was bietet dir der Assistent an, wenn du einen Button ins Formular einfügst?
ZitatDas ist ja schon so halb fertig drin
Das Change_Ereignis ist hier nicht geeignet, nimm statt dessen das Ereignis BeforeUpdate, das lässt sich mit Hilfe der Cancel-Option abbrechen, sodass die Auswahl mit UnDo rückgängig gemacht werden kann.
Zitataber wenn ich im formular auf die schaltfläche drücke passiert nichts
Welche meinst du?
Zitat von: MaggieMay am Juli 17, 2015, 11:36:13
ZitatCheck das grad net mit dem Assistenten, weis net was ich da eingeben muss.
Wie sieht das denn bei dir aus, was bietet dir der Assistent an, wenn du einen Button ins Formular einfügst?
ZitatDas ist ja schon so halb fertig drin
Das Change_Ereignis ist hier nicht geeignet, nimm statt dessen das Ereignis BeforeUpdate, das lässt sich mit Hilfe der Cancel-Option abbrechen, sodass die Auswahl mit UnDo rückgängig gemacht werden kann.
Zitataber wenn ich im formular auf die schaltfläche drücke passiert nichts
Welche meinst du?
Sorry ich versteh nur Bahnhof .... ich kenne die ausdrücke nicht ....
meine die schaltfläche im Unterformular "Teilnehmer_Aktivitaet_UF"
Im Unterformular gibt es nur eine Schaltfläche (=Button) zum Löschen eines Eintrags - mehr nicht. Ich weiß also immer noch nicht was du gemeint hast.
Du musst konkrete Fragen stellen, mit "versteh nur Bahnhof" kommen wir nicht weiter.
Zitat von: MaggieMay am Juli 17, 2015, 11:44:33
Im Unterformular gibt es nur eine Schaltfläche (=Button) zum Löschen eines Eintrags - mehr nicht. Ich weiß also immer noch nicht was du gemeint hast.
Du musst konkrete Fragen stellen, mit "versteh nur Bahnhof" kommen wir nicht weiter.
Kenne diese Begriffe nicht: BeforeUpdate, das lässt sich mit Hilfe der Cancel-Option abbrechen, sodass die Auswahl mit UnDo
Hier mal die bisherige Datenbank, vllt, kannst du mal das was ich eingepflegt hab überprüfen.
Hallo,
ich würde mich ja auch gezielter beteiligen, aber ich habe nur A2003 (MDB) kann also die ACCDB nicht ansehen bzw. öffnen.
Mit "BeforeUpdate" ist das Ereignis "Vor Aktualisierung" des Kombifeldes im Unterformular gemeint.
Der Code dazu könnte folgendermaßen aussehen:
Private Sub AktivitaetenID_F_BeforeUpdate(Cancel As Integer)
'Wenn die Aktivität ausgebucht ist Meldung ausgeben
Dim MaxAnzahl As Long
Dim IstAnzahl As Long
'Wieviele können teilnehmen?
MaxAnzahl = Nz(DLookup("Maximalteilnehmerzahl", "Aktivitaeten", "AktivitaetenID=" & Me.AktivitaetenID_F), 0)
'wieviele sind angemeldet?
IstAnzahl = Nz(DCount("*", "Teilnehmer_Aktivitaet", "AktivitaetenID_F=" & Me.AktivitaetenID_F), 0)
If IstAnzahl < MaxAnzahl Then
If Me.Parent.txtAlter < 6 Or _
DLookup("?????", "Aktivitaeten", "AktivitaetenID=" & Me.AktivitaetenID_F) = -1 Then
Me.txtPreis = 0
Else
Me.txtPreis = DLookup("PreisKind", "Aktivitaeten", "AktivitaetenID=" & Me.AktivitaetenID_F)
End If
DoCmd.GoToRecord , , acNext
Else
MsgBox "Diese Aktivität kann nicht mehr gebucht werden," & vbCrLf & _
"da die Höchstteilnehmeranzahl erreicht ist!", vbCritical, "Teilnehmeranzahl überschritten"
Cancel = True
Me.Undo
End If
End Sub
Am Ende wird mit "Cancel=True" das Speichern verhindert und mit "UnDo" der aktuelle Eintrag zurückgesetzt.
Fragen:
- Was willst du da mit DLookUp auslesen, ein Datenfeld was es noch gar nicht gibt?
- Ist es tatsächlich so, dass wenn die Maximalanzahl fehlt, keine Anmeldung möglich sein soll?
Zitat von: MaggieMay am Juli 17, 2015, 11:56:41
Mit "BeforeUpdate" ist das Ereignis "Vor Aktualisierung" des Kombifeldes im Unterformular gemeint.
Der Code dazu könnte folgendermaßen aussehen:
Private Sub AktivitaetenID_F_BeforeUpdate(Cancel As Integer)
'Wenn die Aktivität ausgebucht ist Meldung ausgeben
Dim MaxAnzahl As Long
Dim IstAnzahl As Long
'Wieviele können teilnehmen?
MaxAnzahl = Nz(DLookup("Maximalteilnehmerzahl", "Aktivitaeten", "AktivitaetenID=" & Me.AktivitaetenID_F), 0)
'wieviele sind angemeldet?
IstAnzahl = Nz(DCount("*", "Teilnehmer_Aktivitaet", "AktivitaetenID_F=" & Me.AktivitaetenID_F), 0)
If IstAnzahl < MaxAnzahl Then
If Me.Parent.txtAlter < 6 Or _
DLookup("?????", "Aktivitaeten", "AktivitaetenID=" & Me.AktivitaetenID_F) = -1 Then
Me.txtPreis = 0
Else
Me.txtPreis = DLookup("PreisKind", "Aktivitaeten", "AktivitaetenID=" & Me.AktivitaetenID_F)
End If
DoCmd.GoToRecord , , acNext
Else
MsgBox "Diese Aktivität kann nicht mehr gebucht werden," & vbCrLf & _
"da die Höchstteilnehmeranzahl erreicht ist!", vbCritical, "Teilnehmeranzahl überschritten"
Cancel = True
Me.Undo
End If
End Sub
Am Ende wird mit "Cancel=True" das Speichern verhindert und mit "UnDo" der aktuelle Eintrag zurückgesetzt.
Frage:
Was willst du da mit DLookUp auslesen, ein Datenfeld was es noch gar nicht gibt?
Ich weis grad lebst nich was ich damit wollte. ok danke.
Zitat von: sebi95 am Juli 17, 2015, 11:51:34vllt, kannst du mal das was ich eingepflegt hab überprüfen.
Dies hast du noch nicht umgesetzt:
ZitatHabe gerade gesehen, dass bei Änderung des Alters die Datensatzherkunft des Kombifeldes geändert wird, das muss raus, stattdessen kannst du mit:
Code: [Auswählen]
Me.Teilnehmer_AktivitaetUF.AktivitaetenID_F.Requery
das Kombifeld aktualisieren. (Gleiches gilt für das Ereignis "Beim Anzeigen".)
Und auch das sollte bei Änderung des Alters noch beachtet werden:
ZitatAllerdings müssten dann auch die bereits vorhandenen Aktivitäten geprüft werden, ob sie noch gültig sind.
PS:
Dem neuen Button solltest du noch einen sinnvollen Namen geben. Dann kannst du in der Ereignisprozedur zum Klick-Ereignis folgende Codezeile einfügen:
DoCmd.GoToRecord , , acNewRecord
Zitat von: MaggieMay am Juli 17, 2015, 12:19:49
Zitat von: sebi95 am Juli 17, 2015, 11:51:34vllt, kannst du mal das was ich eingepflegt hab überprüfen.
Dies hast du noch nicht umgesetzt:
ZitatHabe gerade gesehen, dass bei Änderung des Alters die Datensatzherkunft des Kombifeldes geändert wird, das muss raus, stattdessen kannst du mit:
Code: [Auswählen]
Me.Teilnehmer_AktivitaetUF.AktivitaetenID_F.Requery
das Kombifeld aktualisieren. (Gleiches gilt für das Ereignis "Beim Anzeigen".)
Und auch das sollte bei Änderung des Alters noch beachtet werden:
ZitatAllerdings müssten dann auch die bereits vorhandenen Aktivitäten geprüft werden, ob sie noch gültig sind.
PS:
Dem neuen Button solltest du noch einen sinnvollen Namen geben. Dann kannst du in der Ereignisprozedur zum Klick-Ereignis folgende Codezeile einfügen:
DoCmd.GoToRecord , , acNewRecord
Was ist ein Kombifeld ....????
Hallo,
Kombifeld = Kombinationsfeld = DropDown = Ein Feld zum Aufklappen mit dem Pfeil.
PS:
Warum wiederholst Du komplette Beiträge als Zitat, das ist ziemlich sinnfrei und verlängert nur unnötigerweise die Themen.
sorry ok. wo henau musst das mit dem kombifeld hin? kannst du mir den gesamten code hier rein stellen?
Warum werden die Preise jetzt nicht mehr angezeigt ???, und der Button zum löschen einer aktivität funktioniert auch net?!
Hallo,
wie ich bereits in #52 schreib, kann ich keine ACCDBs öffnen. ich habe nur Access2003 (MDB).
Zitat von: MzKlMu am Juli 17, 2015, 13:13:34
Hallo,
wie ich bereits in #52 schreib, kann ich keine ACCDBs öffnen. ich habe nur Access2003 (MDB).
leider kann ich die db nicht für 2003 abspeichern, wegen des feutures
Hi,
sorry, die Access-Konstante heißt nicht "acNewRecord" sondern "acNewRec".
BTW: Du solltest den Code kompilieren vor dem Testen, zu finden im Menü "Debuggen" im VBA-Editor.
Das unvollständige DLookUp führt zu einem Fehler, das solltest du also rausnehmen.
Dann solltest du das Ereignis "Nach Aktualisierung" des Kombinationsfeldes "AktivitaetenID_F" im Unterformular nutzen (den Code dazu hatte ich dir gegeben!) und das Ereignis "Bei Änderung" löschen (inkl. Code).
Mit deiner "Verweigerungshaltung" machst du dir hier keine Freunde. Mehr als dir den Weg beschreiben oder gar ganze Code-Abschnitte auf dem Silbertablett servieren, kann man kaum machen.
sorry, aber ich kenn die wörter alle nicht die ihr hier benutzt?!
wie gesagt, kenne ich mich null aus mit access.
Und wwürde ja schon wie gesagt, ein Entgelt für die fertig entwicklung geben.
Bin schon am verzweifeln :'( , kann mir niemand helfen?