Hallo liebe Community,
ich versuche mich krampfhaft daran, ein in meiner Tabelle "tbl_wKunden" vorhandenes Textfeld per Klick auf einen Button in meinem Formular "Kundenanmeldung" (-> Buttonname "Stop", Textfeldbezeichnung "Text1") mit dem Wort "STOP!!!" zu füllen. Dabei soll KEIN Textfeld in einem Formular ausgefüllt werden. Es soll rein durch den Klick auf den Button eingetragen werden.
Wie kann man das umsetzen? Ist das überhaupt möglich?
Vielen Dank im Voraus für die Hilfe!! :)
Hallo,
also ich hab deinen Beitrag jetzt 3x gelesen, aber ich weiss nicht wirklich was du willst.
Falls du ein ungebundenes Textfeld im Feld über den Button befüllen willst ginge das so:
Sub btnStop_Click()
Me!DeinUngebundenesTextfeld = "STOP !!!"
End Sub
Beachte, dass ich den Bezeichner des Buttons geändert habe, da Stop zu Problemen führen könnte.
Hallo,
am einfachsten ist das, wenn das Feld auch auf dem Formular ist. Das kann auch unsichtbar sein.
Dann geht es so:
Me.Text1 = "STOPP!!!"
Ansonsten muss das mit einer Aktualisierungsabfrage gemacht werden. In der Abfrage ist dann auch ein Kriterium für den Bezug zum richtigen Datensatz notwendig.
@el_gomero
Das Feld muss aber gebunden sein, sonst landet es nicht in der Tabelle.
@ Klaus
schon klar, hatte genau das (nicht in Tabelle) als Anforderung verstanden ... aber wie gesagt, der Worte Sinn hat sich mir ohnehin nicht ganz erschlossen ;)
Hallo,
Direkt in eine Tabelle schreiben würd ich'sso:
CurrentDb.Execute "UPDATE DeineTabelle SET DeinFeld = 'STOP!!!'"
gruss ekkehard
Hallo nochmal,
erstmal danke für die Antworten. Ich habe die Lösung von Beaker ausprobiert und einen Fehler erhalten:
Laufzeitfehler '3061':
1 Parameter wurden erwartet, aber es wurden zu wenig Parameter übergeben
Vielleicht sollte ich das Problem noch einmal genauer beschreiben:
Es gibt ein Formular "Kundenanmeldung" und eine Tabelle "tbl_wKunden". Von beidem habe ich einen Screenshot angehängt.
Nun möchte ich, dass ich auf dem im Formular zu sehenden Button "STOP!" klicke, und dadurch erreiche, dass in der Tabelle unter "Kundenname" das Wort "Aufnahmestop!" oder Ähnliches eingetragen wird. Der Sinn hinter der Idee ist, dass vorher nichts in die Textfelder des Formulars eingetragen werden soll.
Desweiteren sollte der Eintrag, der dadurch erzeugt wird, immer als zuletzt getätigter Eintrag stehen (in Reihenfolge ganz unten).
Ich hoffe ich konnte es ein wenig klarer gestalten...
Liebe Grüße
Hallo,
ich nehme an, das Formular ist gebunden.
Dann einfach so:
Me.KundenName = "Aufnahmestop!"
Der Sinn erschließt sich mir aber nicht wirklich. Wenn nichts eingetragen werden soll, kannst Du doch die Felder einfach sperren.
Damit der Eintrag immer unten steht, benötigst Du ein entsprechendes Kriterium zum Sortieren.
Dazu ist am besten ein Autowert geeignet, der dann gleichzeitig als Primärschlüssel dienen kann.
Mein Vorschlag: Wenn Du das Datenmodell etwas ausfeilst, kannst Du ja im Einzelnen Paxistage mit ggf. Praxisstunden u. a. und einem Maximum an Patienten in einer separaten Tabelle festlegen. Die Anmeldungen werden dann in einem Unterformular, welches in Beziehung zu einem Paxistag im Hauptformular steht, vorgenommen, so dass nur so viele Detaildatensätze je Praxistag hinzugefügt werden können, wie es im Hauptformular vermerkt ist. Dazu kann man die Eigenschaft AllowEdits des Unter-Formulars einfach bei Erreichen des Maximums abschalten oder eine Prüfung im Vor Einfügen Ereignis des Formulars vornehmen und das Einfügen-Ereignis abbrechen, falls das Maximum bereits erreicht wurde. Das Feld für das Maximum sollte natürlich als Pflichtfeld mit nur positiven Ganzzahlen ausgelegt sein.
Der Sinn hinter meinem Vorhaben ist folgender:
Ich sitze mit meinen Kollegen in einem Großraumbüro. Wir sind der erste Ansprechpartner für unsere Kunden und leiten diese ggf. an die Kollegen, für die dieser Button gedacht ist, weiter. Wenn die Geschäftszeiten dem Ende entgegen gehen, sollen diese Kollegen dann die Möglichkeit haben, ohne großen Eintrag in ein Feld oder Formular - nur per Mausklick auf den Button - zu signalisieren, dass keine Kunden mehr weitergeleitet werden sollen.
Kurz gesagt: Klick auf Button im Formular - "STOP!" steht in der Spalte Kundenname der Tabelle
Hallo,
siehe Antwort #2 mit dem unsichtbaren Feld.
Hallo,
wenn ich die Aufgabenbeschreibung richtig interpretiere, ist das Konzept (des Mitteilungssystems) eher nicht ausgereift und bedarf einiger weiterer Überlegungen.
Wobei mir nicht klar ist, wozu man das überhaupt braucht. Im Großraumbüro (und nicht nur da) ist doch jedem in der Firma bekannt, wann die Geschäftszeit(en) zu Ende gehen...
Die DB muss in FE/BE aufgeteilt sein/werden.
Jeder User erhält seine eigene Kopie des Frontends
Wenn es für jeden Kollegen unterschiedliche Arbeitsende-Zeiten gibt, muss die "Weiterleitung" der Anfragen so erfolgen, dass der "Zielkollege" mit erfasst wird. Das bedingt wiederum eine Personentabelle und eine "Weiterleitungstabelle" ("tblAuftragsSchlange"), in der die Personenid des "ZielKollegen" mitgeführt wird.
In tblPersonen ist ein Feld ("AnnahmeAktiv") vorhanden, das die Annahmebereitschaft des "Zielkollegen" darlegt.
Dieses Feld wird vom Zielkollegen auf Ja gesetzt, sobald er die (seine) Auftragsschlange abarbeiten kann und umgekehrt.
Im Erfassungs-Formular zeigt dann z. B. ein Listenfeld die aktuell "aktiven" Kollegen an, von denen einer ausgewählt werden kann und dessen PersID mit dem aktuell erfassten Auftrag in die Warteschlage abgelegt wird.
Wow... ich muss echt sagen, für das ich nur eine Lösung fürs Büro geplant habe (und damit meine ich das ganze Projekt) kommen echt viele Vorschläge, was man besser machen kann... danke dafür! Allerdings muss ich sagen das ich nicht so tief in Access drin bin um verschiedene Frontends für verschiedene User zu erstellen etc... das würde glaube ich eine never ending Story werden...
trotzdem vielen Dank für eure Hilfe :)
Hallo,
ZitatAccess drin bin um verschiedene Frontends für verschiedene User zu erstellen etc... das würde glaube ich eine never ending Story werden...
das ist aber für eine Mehrbenutzerumgebung eine unabdingbare Voraussetzung für ein sicheres Arbeiten mit Access.
DB muss geteilt werden in Backend (nur die Tabellen) und Frontend (der Rest).
Nur das Backend kommt zentral auf den Server. Das Frontend benötigt jeder User sein eigenes.
Siehe hierzu:
http://www.sql-insider.de/knowhow/hintergruende-zur-arbeitsweise-von-access.php
Das klingt auch schon mal sehr interessant.. Der Hintergrund, mit dem das alles ins Leben gerufen wurde war nur, lästigen Papierkram zu vermeiden. Wenn ich das allerdings jetzt in Angriff nehmen wollen würde, eine ausgereifte Backend-Frontend Lösung zu erstellen, wäre ich Wochen beschäftigt, denn ohne entsprechende Hilfe komme ich da nicht weit :P
Hallo,
Access ist nicht Excel, man kann nicht einfach so mal eine Datenbank machen, in einer Mehrbenutzerumgebung schon mal gar nicht.
Hallo,
das trennen von FE und BE wird ueber einen Access Assistenten erledigt und wie schon angemerkt muss dieses in deinem Vorhaben geschehen.
Du wirst die selben Formulare und Tabellen (and so on) haben als wenn die DABA nicht aufgeteilt ist.
Als ich mit Access angefangen habe wollte ich ein aehnliches Vorhaben umsetzten und nicht trennen, das Ende vom Lied war eine Katastrophe.
Also am besten die etwas mehr Arbeit investieren und gluecklich sein!