Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Neuen Datensatz anfügen
zurück: Pop-Up-Formular ohne Überschreiben Datensätze weiter: Check Constraint issue and Update on Inner Join Query issue Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
AndreasK007
Gast


Verfasst am:
10. Jun 2009, 11:15
Rufname:

Neuen Datensatz anfügen - Neuen Datensatz anfügen

Nach oben
       Version: Office 2003

Hallo und guten Tag liebe Forumsteilnehmer,

aktuell bin ich an der Entwicklung eines Access-Formulars bei dem sich mir folgendes Problem stellt.

Ich möchte erreichen:
Ein Formular soll nur zum Anfügen genau EINES Datensatzes benutzt werden und soll keine Datensätze anzeigen.

Meine Konfiguration:
Anfügen zulassen: JA
Daten eingeben: JA
Zyklus: aktueller Datensatz

verhalten von Access:
--- nach dem öffnen des Formulars, wird der Datensatzzeiger auf einen neuen leeren Datensatz gesetzt und angezeigt.
--- nach dem erfassen des neuen Datensatzes, springt Access wieder auf das erste Formularfeld und zeigt den eben erfassten DS an.

bis zu diesem Punkt, entspricht das auch meinen Vorstellungen.
Nach der Erfassung des neuen Datensatzes ist es aber merkwürdigerweise möglich,
mit der Tastenkombination 'Strg+BildAb' (die Navigation ist ausgeblendet) auf einen neuen leeren DS zu springen und die Erfassung fortzusetzen.

Wie kann man hier Abhilfe schaffen, sodass es lediglich möglich ist, den eben erfassten DS zu bearbeiten bzw. das Formular zu schliessen ?

vielen Dank im Voraus für Eure Mithilfe,
Gruß Andreas
Sinister
Access-Programmierer


Verfasst am:
10. Jun 2009, 12:19
Rufname:


AW: Neuen Datensatz anfügen - AW: Neuen Datensatz anfügen

Nach oben
       Version: Office 2003

Hallo,

vielleicht wäre es einfacher ein ungebundenes Formular zu benutzen. Dafür musst du aber selbst darum kümmern, dass ein neuer Datensatz angelegt wird. Ist aber kaum schwierig.
Damit Access nach der Eingabe zu dem neuen Datensatz springt, muss du nach dem Einfügen die Datensatzquelle aktualisieren (Forms("formname").Requery) und nach dem neuen Datensatz suchen (z.B. mit FindRecord).

_________________
Warum einfach, wenn es kompliziert geht!?
AndreasK007
Gast


Verfasst am:
10. Jun 2009, 14:18
Rufname:

AW: Neuen Datensatz anfügen - AW: Neuen Datensatz anfügen

Nach oben
       Version: Office 2003

Hallo und vielen Dank für Deinen Vorschlag,

allerdings müsste ich ja dann sämtliche Beschränkungen und Formatierungen, die ich auf Tabellenebene vorgenommen habe nochmal für das Formular definieren.

Nunja, da vermute ich mal, ist es fast besser dieses "komische" Verhalten von Access so zu lassen wie es ist.

Gruß AndreasK007
Sinister
Access-Programmierer


Verfasst am:
10. Jun 2009, 16:07
Rufname:

AW: Neuen Datensatz anfügen - AW: Neuen Datensatz anfügen

Nach oben
       Version: Office 2003

So komisch ist es gar nicht. Nach dem relationalen Datenbankmodel ist Tabelle die kleinste Einheit. Entweder darf man die Tabelle bearbeiten (Tabelle ansehen, Datensätze hinzufügen, Datensätze löschen), oder nicht.
Außerdem: ein seltener User kennt die Tastenkomninationen Very Happy .

_________________
Warum einfach, wenn es kompliziert geht!?
Premade
Learning by doing (mit google)


Verfasst am:
10. Jun 2009, 17:03
Rufname:

AW: Neuen Datensatz anfügen - AW: Neuen Datensatz anfügen

Nach oben
       Version: Office 2003

Ganz schlimm ist ja das Mausrad, da kannst du auch noch durch alle Datensätze scrollen ;)
Wenn das Formular nur rein zum anfügen eines Datensatzes sein soll kannst du wie bereits ein ungebundenes Formular nehmen und mittels Button den Eintrag in die Tabelle schreiben. Der Code sieht dann so aus:
Code:
    DoCmd.RunSQL "INSERT INTO Tabellenname (Spalte1, Spalte2, Spalte3) " & _
                 "VALUES ('" & Me!Textfeld1 & "', " & _
                         "'" & Me!Textfeld2 & "', '" & Me!Textfeld3 & "')"
Willi Wipp
Moderator


Verfasst am:
11. Jun 2009, 06:14
Rufname:
Wohnort: Raum Wiesbaden


Re: Neuen Datensatz anfügen - Re: Neuen Datensatz anfügen

Nach oben
       Version: Office 2003

Hi AndreasK007,

einfachste Variante: Du erstellst den neuen DS bereits Beim Oeffnen (Open).
Dann speicherst Du ihn, merkst Dir den Primaerschluessel und filterst das Formular entsprechend.
Code:
Private Sub Form_Open(Cancel As Integer)
    Dim lngID   As Long
   
'    If Me.OpenArgs <> "NeuerDS" Then Exit Sub 'Optional ;-)
    With Me.RecordsetClone
        .AddNew
        lngID = !DeineID
        .Update
    End With
    Me.Filter = "DeineID = " & lngID
    Me.FilterOn = True
End Sub
Formular-Eigenschaften:
Bearbeitungen zulassen (AllowEdits) auf Ja (True)
Loeschen zulassen (AllowDeletions) auf Nein (False)
Anfueügen zulassen (AllowAdditions) auf Nein (False)
Daten eingeben (DataEntry) auf Nein (False)
Wenn Dir das mit dem Filtern zu unsicher sein sollte,
dann kannst Du auch die Datenherkunft (RecordSource) entsprechend anpassen.

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: unlöschbaren Datensatz erstellen 1 Vincent_Vega 899 15. Aug 2005, 21:45
stpimi unlöschbaren Datensatz erstellen
Keine neuen Beiträge Access Tabellen & Abfragen: neuen Datensatz anlegen falls wert nich vorhanden ist 1 AccessAlex 874 08. Aug 2005, 22:18
Gast neuen Datensatz anlegen falls wert nich vorhanden ist
Keine neuen Beiträge Access Tabellen & Abfragen: Listenfeld, automatisch erster Datensatz markieren 1 Gast 2958 21. Jun 2005, 11:54
rita2008 Listenfeld, automatisch erster Datensatz markieren
Keine neuen Beiträge Access Tabellen & Abfragen: Datensatz automatisch kopieren??? 0 Edelschnitt 701 11. Mai 2005, 19:41
Edelschnitt Datensatz automatisch kopieren???
Keine neuen Beiträge Access Tabellen & Abfragen: Hintergrundfarbe in Datensatz 1 Rheinbote 900 24. Feb 2005, 20:18
stpimi Hintergrundfarbe in Datensatz
Keine neuen Beiträge Access Tabellen & Abfragen: Aus 1 Datensatz mit 10 Infos mache 10 Datensätze à 1 Info 2 Steve 914 14. Jan 2005, 00:43
Steve Aus 1 Datensatz mit 10 Infos mache 10 Datensätze à 1 Info
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage soll nur jeweils ersten Datensatz liefern (Group By? 2 MichaelN 2552 28. Dez 2004, 15:06
MichaelN Abfrage soll nur jeweils ersten Datensatz liefern (Group By?
Keine neuen Beiträge Access Tabellen & Abfragen: Bei der Aktualisierung eines Tabellenwertes neuen Datensatz 6 zheng 810 07. Dez 2004, 22:35
zheng Bei der Aktualisierung eines Tabellenwertes neuen Datensatz
Keine neuen Beiträge Access Tabellen & Abfragen: Aktionsabfrage in Formular -immer nur einen Datensatz ändern 6 blauvogel 1092 08. Okt 2004, 11:43
Skogafoss Aktionsabfrage in Formular -immer nur einen Datensatz ändern
Keine neuen Beiträge Access Tabellen & Abfragen: Datensatz nach Datum suchen?? 1 Hansen 1390 04. Okt 2004, 12:16
stpimi Datensatz nach Datum suchen??
Keine neuen Beiträge Access Tabellen & Abfragen: bestimmte(n) Datensatz in abfrage ausschließen 2 Lene 3641 02. Sep 2004, 15:39
borstel bestimmte(n) Datensatz in abfrage ausschließen
Keine neuen Beiträge Access Tabellen & Abfragen: n:n Datensatz hinzufügen fehlgeschlagen 2 accesshasser 980 27. Aug 2004, 12:07
Pusteblume n:n Datensatz hinzufügen fehlgeschlagen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Access Tabellen