fisheye Geschrieben 21. August 2002 Teilen Geschrieben 21. August 2002 Guten Morgen, ich habe da leider ein Problem mt meiner Access Datenbank. Ich habe fertige Tabellen und ein fertiges Formular. Diese sind noch nicht miteinander verknüpft. In diesem Formular sind Textfelder, die vom Benutzer ausgefüllt werden müssen. Wenn dann der Benutzer fertig ist und auf einen gewissen Speicherbutton im Formular drückt, sollen die Daten der Textfelder in den einzelnen Tabellen abgespeichert werden. Wie kann ich es im Visual Basic Code schreiben, dass erst beim Drücken des Speicherbuttons die Daten in die entsprechende Tabellen geschrieben werden? Und wie kann ich dies alles verknüpfen? Muss ich für jedes Textfeld einen Code schreiben und wie funktioniert es dann, dass die Daten auch wirklich erst beim Speichern in die Tabellen geschrieben werden? Hoffe habe mich einigermaßen klar ausgedrückt Wäre für Hilfe dankbar. Ciao fishy Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
JayN Geschrieben 21. August 2002 Teilen Geschrieben 21. August 2002 Also, ich glaube, Dich verstanden zu haben. Zunächsteinmal gehe auf die Eigenschaften des "Speichern"-Buttons und wähle bei "Ereignis" beim Ereignis "Beim Klicken" die Ereignisprozedur aus. Dann drücke die ...-Taste. So ähnlich müßte der Code aussehen: Private Sub Speichern_Click Dim db as Database Dim rst as Recordset Set db = Currentdb Set rst = db.Openrecordset ("Meine Tabelle",dbOpenDynaset) If Textfeld1.Value <> "" And Not isNull (Textfeld1.Value) Then rst.Addnew rst![Feldname1] = Textfeld1.Value rst.Update Else MsgBox "Das Textfeld1 ist leer!!! Schreiben Sie was rein!!!" End if rst.Close End Sub So ähnlich müßte die Prozedur dann aussehen. Hoffe, geholfen zu haben. JayN Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
fisheye Geschrieben 21. August 2002 Autor Teilen Geschrieben 21. August 2002 Hi, erstmal danke Aber irgendwas läuft da noch nich wirklich. Also ich erklärs mal bissel genauer. Hab eine Tabelle namens "tblPersonen" und darin sind 2 Felder "Name" und "Vorname". Hab auch ein Formular "Formular1" wo zwei Textfelder drinne sind die auch als Bezeichnung "Name" und "Vorname" haben. Den Code habe ich jetzt eingegeben: ______________________________________________ Private Sub Befehl112_Click() Dim db As Database Dim rst As Recordset Set db = CurrentDb Set rst = db.OpenRecordset("tblPersonen", dbOpenDynaset) If Name.Value <> "" And Not IsNull(Name.Value) Then rst.AddNew rst![Name] = Name.Value rst.Update Else MsgBox "Das Textfeld Name ist leer!!! Schreiben Sie was rein!!!" End If rst.Close End Sub _______________________________________________ Beim Kompilieren kommt dann die Fehlermeldung "Ungültiger Bezeichner" und der folgende Teil wird makiert: If Name.Value <> "" And Not IsNull(Name.Value) Then rst.AddNew rst![Name] = Name.Value.................. ............... ............... Woher weiß die Aktion überhaupt, dass sie auf das Feld "Name" aus dem Formular zugreifen soll? *grübel* kannste nochmal versuchen mir zu helfen? :confused: Dankeeeeeeee Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
JayN Geschrieben 21. August 2002 Teilen Geschrieben 21. August 2002 Haben das Textfeld "Name" als Bezeichnung oder als Name? Wenn nur als Bezeichnung, dann klick auf das Textfeld im Entwurfsmodus, öffne die Eigenschaft, gehe auf den Reiter "Daten" und da siehst Du den Namen mit dem Du das Textfeld ansprichst! Dann kannst Du es auf "Name" ändern. JayN Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
fisheye Geschrieben 21. August 2002 Autor Teilen Geschrieben 21. August 2002 Unter dem Reiter "Andere" steht als Name: Name. Heißt die Fehlermeldung nicht, dass er keine Verbindung zum Formular hat, wo des Feld "Name" enthalten ist? trotzdem danke Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
JayN Geschrieben 21. August 2002 Teilen Geschrieben 21. August 2002 Aaaaaaaaaaaahhhhh... jetzt weiß ich, woran das liegt, glaub ich jedenfalls.... Ich glaube nämlich, dass Du "Name" nicht als Bezeichner vergeben kannst, dass es eine Eigenschaft namens "Name" gibt... versuch es mal mit was anderem. JayN Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
fisheye Geschrieben 21. August 2002 Autor Teilen Geschrieben 21. August 2002 Ahhhhhhhhhhhh, klasse, es klappt!!!!!!!!! :bimei :bimei :bimei Danke dir!!!! Suuuuuuper nett! Allerdings wenn ich (für die anderen Felder jetzt) die gleiche Prozedur mache, schreibt der z.B. den Vornamen in den nächsten Datensatz Kann man das irgendwie hinbekommen, dass alles in eine Reihe geschrieben wird? Mit ner ID oder sowas? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
JayN Geschrieben 21. August 2002 Teilen Geschrieben 21. August 2002 Original geschrieben von fisheye Ahhhhhhhhhhhh, klasse, es klappt!!!!!!!!! :bimei :bimei :bimei Danke dir!!!! Suuuuuuper nett! Allerdings wenn ich (für die anderen Felder jetzt) die gleiche Prozedur mache, schreibt der z.B. den Vornamen in den nächsten Datensatz Kann man das irgendwie hinbekommen, dass alles in eine Reihe geschrieben wird? Mit ner ID oder sowas? Private Sub Speichern_Click Dim db as Database Dim rst as Recordset Set db = Currentdb Set rst = db.Openrecordset ("Meine Tabelle",dbOpenDynaset) If Name123.Value <> "" And Not isNull (Name123.Value) Then If Vorname.Value <> "" And Not isNull (Vorname.Value) Then rst.Addnew rst![Name123] = Name123.Value rst![Vorname] = Vorname.Value rst.Update Else MsgBox "Vorname ist leer!!! Schreiben Sie was rein!!!" End if Else MsgBox "Name123 ist leer!!! Schreiben Sie was rein!!!" End if rst.Close End Sub Mit Addnew legst Du einen neuen Datensatz an, danach kannst Du alle möglichen Felder füllen.... mit Update schließt Du den neuen Datensatz ab, die Tabelle wird upgedatet. Nicht vergessen die Tabelle zu schließen -> Close!!! Sonst könnten Daten verloren gehen! JayN Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
fisheye Geschrieben 21. August 2002 Autor Teilen Geschrieben 21. August 2002 Hey, lieb von dir *freu* Und wie sieht es aus, wenn ein Feld nicht unbedingt ausgefüllt werden muss, andere aber schon!?!? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
fisheye Geschrieben 21. August 2002 Autor Teilen Geschrieben 21. August 2002 also das dann gar nix passiert (kein Wert übernommen wird)wenn da nichts drinne steht. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
JayN Geschrieben 21. August 2002 Teilen Geschrieben 21. August 2002 Original geschrieben von fisheye Hey, lieb von dir *freu* Und wie sieht es aus, wenn ein Feld nicht unbedingt ausgefüllt werden muss, andere aber schon!?!? Na ja, wenn Du die nicht ausfüllen mußt, dann kannst Du es halten, wie Du willst. Wenn Du aber ein Feld ausfüllen mußt und es nicht ausfüllst, wird er bei Update meckern, denke ich. JayN Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
fisheye Geschrieben 21. August 2002 Autor Teilen Geschrieben 21. August 2002 Bekomm das scho irgendwie hinne. Danke erstmal für die vielen Infos. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.