Office: (Office 2007) Richtige und vollständige Dateneingabe

Helfe beim Thema Richtige und vollständige Dateneingabe in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo, welche Möglichkeiten (außer der Gültigkeitsregel im Tabellenentwurf oder Eigenschaft im Formular) gibt es, um in Formularen eine komplette und... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Ratoncito, 30. September 2014.

  1. Richtige und vollständige Dateneingabe


    Hallo,

    welche Möglichkeiten (außer der Gültigkeitsregel im Tabellenentwurf oder Eigenschaft im Formular) gibt es, um in Formularen eine komplette und vollständige Eingabe der Daten zu gewährleisten?
    Es gibt zum Beispiel Felder, die in Abhängigkeit von anderen Feldern Daten enthalten können, oder deren Berechnung dann unterschiedlich erfolgen.

    Als Lösung habe ich einmal bei den Eingabefeldern die Eigenschaft "Aktiv" und "gesperrt" im VBA so verändert, dass man nur einem vorgegebenen Weg folgen konnte.
    Das funktionierte eigentlich ganz gut, ist aber ein großer Aufwand im VBA. Gibt es einfachere Möglichkeiten?

    In der Tabelle tblIsin habe ich für das Schlüsselfeld folgende Bedingungen festgelegt:
    Eingabe erforderlich: ja
    Leere Zeichenfolge: nein
    Indiziert: Ja (Ohne Duplikate)

    Während der Dateneingabe im frmIsin habe ich folgenden Code:
    Code:
    Funktioniert so wie gewollt, aber es kommt noch zusätzlich die Fehlermeldung vom System:
    Der Wert verstößt gegen die Gültigkeitsprüfungsregel des Feldes oder Datensatzes...
    Kann man die Systemmeldung unterdrücken oder für dieses Feld durch die eigene ersetzen?

    Nach Eingabe im letzten Datenfeld möchte ich eine msgBox mit folgenden Optionen:
    1. Speichern und weitere Daten erfassen (speichern und neuen Datensatz)
    2. Speichern und Formular schließen
    3. Eingaben verwerfen und neuen Datensatz anfügen
    4. Ohne speichern abbrechen und Formular schließen

    Mit welchem Befehl kann man alle Eingaben im Formular löschen (alle Eingabefelder leeren)?
    Mit welchem Befehl wird der Datensatz gespeichert?

    Für Eure Antworten schon mal vielen Dank.

    Ich freue mich auch über Kritik zum Code, denn ich habe kaum Erfahrung.
    Ihr könnt mir gerne schreiben, dass es kompletter Murks ist, aber dann bitte auch begründen warum und ein (für einen Anfänger verständliches) Beispiel wie es richtig wäre. *wink.gif*

    PS. Am Entwurf zur neuen DB in meinem anderen Beitrag wurschtel ich noch rum. Da kommt bald (hoffentlich) ein neuer Versuch.

    :)
     
    Ratoncito, 30. September 2014
    #1
  2. Die Systemmeldung kommt, weil das Feld Isin nicht leer sein darf, vermute ich mal (Eingabe erforderlich, keine leere Zeichenfolge).

    Alle Eingaben löschen oder Eingabefelder leeren?
    Im ersten Fall: Datensatz aus Tabelle löschen (per DELETE-Statement und Requery), im zweiten Fall: neuen Datensatz im Formular anzeigen (DoCmd.GoToRecord , , acNewRec).

    Gespeichert werden die Daten bei gebundenen Formularen automatisch beim Verlassen des Forms oder beim Datensatzwechsel. Das Speichern erzwingen kannst du mit
    Code:
    in einem passenden Ereignis.

    Die Messagebox mit den Alternativen müsstest du dir programmieren, es gibt irgendwo ein Beispiel dazu ... vielleicht finde ich das wieder, dann poste ich den Link. Oder du setzt dir eine Optionsgruppe mit Schaltflächen in den Formularfuß.

    maike
     
  3. Hallo Maike,

    vielen Dank für die Antwort.
    Nein, das Feld ist nicht leer. Die Meldung kommt direkt nach der eigenen Messagebox wegen der schon vorhandenen Isin.
    Ich möchte die zusätzliche Systemmeldung unterdrücken.

    Wie heißt der Befehl genau?
    Für alle Felder, oder jedes einzeln?
    Sorry, bin Anfänger *frown.gif*


    Die Optionsgruppe wäre eine Möglichkeit. Daran hatte ich noch nicht gedacht. Irgendwo hatte ich schon die ganze Info zur Messagebox gefunden. Allerdings war die Erklärung wieder so mit Fachausdrücken gespickt, dass einem schon beim Lesen schwindelig wird.
    Kann aber auch nochmal schauen und dann versuchen die schon vorhandene so zu ändern, dass es passt. Das mache ich dann immer Schritt für Schritt, dann kann man jeden Schritt solange probieren, bis es klappt.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Ratoncito, 2. Oktober 2014
    #3
  4. Richtige und vollständige Dateneingabe

    Moin,
    für Datensätze Delete für Felder Update
    Muster für Delete: oder unter Abfragen erstellen kannst du eine Löschabfrage erstellen und hinter einem Button folgendes eingeben:
    Muster:

    If MsgBox("Soll der aktuelle Stand " & _
    "der Vertretungen gelöscht werden?", vbYesNo) = vbYes Then
    DoCmd.SetWarnings True
    DoCmd.OpenQuery "qry_Deine Löschabfrage"
    DoCmd.SetWarnings True
    End If
    Me.Requery

    Gruß
    Jens
     
  5. Die zusätzliche Fehlermeldung kannst du abfangen, hier findest du ein Beispiel:
    http://www.ms-office-forum.de/forum/showthread.php?t=163855.

    Was das Löschen oder Leeren angeht: Wenn der Datensatz noch nicht gespeichert ist, kannst du einfach per
    Code:
    die Eingaben im Formular wieder zurücksetzen.

    Wenn schon gespeichert ist, musst du den Datensatz aus der Tabelle löschen, z.B. mit einer Löschabfrage:
    Code:
    ID durch die betreffenden Feldnamen ersetzen (vermutlich Isin und txtIsin).

    Den Link für die Messagebox habe ich auch gefunden:
    http://www.ms-office-forum.net/forum...d.php?t=115501.

    maike
     
  6. Hallo,

    vielen Dank für die Antworten.

    Die beiden Links sind prima, leider wieder zeitraubend, denn da gibt es wieder viel zum Probieren *grins Wenn ich so etwas lese, dann muss ich unbedingt gleich alles mögliche ausprobieren.
    Bin also für die nächsten Tage gut beschäftigt.

    Aber eines ist mir noch aufgefallen. In der Meldung vom System gibt es keine Fehlernummer.
    Die Fehlermeldung kommt von
    Microsoft Office Access
    und erscheint nur bei der ersten Eingabe eines schon vorhandenen Wertes. Wird erneut ein schon vorhandener Wert eingetragen kommt nur noch die eigene Fehlermeldung.
    Nach der Fehlermeldung geht der Focus wieder auf das Eingabefeld, allerdings ohne die Eingabe zu löschen. Geht man mit "Enter" weiter, kann man den Datensatz bis zu Ende ausfüllen. Beim Speichern kommt dann wieder eine Fehlermeldung, diesmal von
    Microsoft Visual Basic
    und mit Fehlernummer 2105.

    Werde mich nochmal mit dem Code auseinandersetzen, sicherlich irgendwo noch ein paar Fehler von mir.

    Wenn es noch etwas zu der Fehlermeldung von Microsoft Office Access gibt...

    Ansonsten melde ich mich nochmal nachdem ich den Code aufgeräumt habe.

    Danke und ein schönes laaaaaanges Wochenende
     
    Ratoncito, 2. Oktober 2014
    #6
  7. Hallo,

    würde dir mal in deine DB diese "ist Erforderlich" einfügen, inkl. MsgBox falls gewünscht...
    Diese Fehlermeldung habe ich noch nicht bemerkt, aber auch noch nicht alles durchgetestet, nur kurz angesehen.
    Falls gewünscht... "ja" oder "nein" sagen , dass ich Bescheid weiß *Smilie
    PS: einen kl. Nachtrag würde ich noch gerne anbringen... ich bemühe mich, dass es funktioniert, aber keine Garantie dafür! *biggrin.gif*
     
    Kyron9000, 2. Oktober 2014
    #7
  8. Richtige und vollständige Dateneingabe

    Hallo,

    habe gerade, es ist schon ein wenig spät, noch mal reingeschaut.

    Im Moment verstehe ich zwar nicht was "ist Erforderlich" ist, aber anschauen werde ich es mir bestimmt. Und lernen werde ich bestimmt auch etwas dabei.

    Lass Dir ruhig Zeit, denn ich habe keine Eile

    ein schönes langes Wochenende - Wolfgang
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Ratoncito, 2. Oktober 2014
    #8
  9. Hallo Ratoncito,

    also, die BeispielDB hätte ich fertig, ob alles richtig ist, wie ich es mir gedacht habe,
    möchte ich noch anzweifeln, aber iGG wird es einigermaßen passen.
    Und... testen darfst selber, denn das ist nicht meine Lieblingsbeschäftigung *grins
     
    Kyron9000, 6. Oktober 2014
    #9
  10. Hallo Alfred,

    vielen Dank für Deine Mühe. Habe gerade erst den Beitrag gesehen, kann die Datei aber leider nicht öffnen. Nach dem runterladen und entpacken habe ich zwar eine Datei
    Depot_V15.accdb
    aber beim Öffnen kommt eine Fehlermeldung, dass es sich um ein nicht erkennbares Datenbankformat handelt.
    Ich habe die DB 2 mal runtergeladen und entpackt aber immer die Fehlermeldung.
    Könntest Du die Datei erneut hochladen? Würde mir das gerne ansehen

    Ansonsten habe ich noch vieles geändert und ausprobiert. Im Prinzip habe ich ziemlich alles so hinbekommen, wie ich mir das vorstelle, bis auf das Problem bei der Überprüfung auf schon vorhandenen Datensatz.

    Dort bekomme ich das Feld txtIsin nach der Fehlermeldung nicht leer und nicht den Focus auf dieses Feld zur Korrektur. Der Code für das Feld: Code:
    Hat jemand eine Idee zur Lösung?
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Ratoncito, 8. Oktober 2014
    #10
  11. In jedem Fall fehlt das Cancel = true (oder false), um die Aktion Update abzubrechen. Und du wirst das Feld auch nicht en- oder disablen können, solange es noch den Fokus hat.
    maike
     
  12. Hallo Maike,

    da wirst Du wohl recht haben. Aber was muss wo hin?
    Einige Sachen bekomme ich ja hin, aber wenn dann etwas nicht klappt dann stehe ich oft auf dem Schlauch...

    Im Moment wird die Fehlermeldung angezeigt, aber der Focus geht anschließend direkt auf fraArt. Alle meine Versuche das Feld txtIsin zu leeren und den Focus wieder auf das Feld zu setzen sind kläglich gescheitert *frown.gif*

    Lediglich die Option zum Abbruch klappt *wink.gif*
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Ratoncito, 8. Oktober 2014
    #12
  13. Richtige und vollständige Dateneingabe

    Hallo Ratoncito,

    ja, ist richtig, weiß nicht was da passiert ist, in der Fa. AC07 konnte ich es auch nicht öffnen!
    Na ja, egal, eine mdb Version, die sollte sich doch öffnen lassen.

    PS: man sollte immer Me.Feldname oder Me!Feldname schreiben!
     
    Kyron9000, 8. Oktober 2014
    #13
  14. Hallo Alfred,
    ich war gerade mal eine Weile unterwegs. Die mdb konnte ich öffnen.

    Jetzt muss ich mir das erst mal alles in Ruhe anschauen. Schon mal vielen Dank für Deine Mühe.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Ratoncito, 8. Oktober 2014
    #14
  15. Hallo Maike,
    auch wenn es etwas gedauert hat, jetzt habe ich das fehlende Cancel drin und es funktioniert. Danke für den Tipp *mrcool

    Allerdings kommt trotzdem noch die von Access erzeugte Fehlermeldung, da dieses Feld als Schlüsselfeld in der Tabelle indiziert ist.
    Gibt es eine Möglichkeit dass man die Access-Meldung abfängt und durch die eigene ersetzt?

    Du hattest oben schon einen Link zu einer Fehlerbehandlung angegeben, aber da werden nur die mit Fehlernummern versehenen VBA-Fehler behandelt.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Ratoncito, 8. Oktober 2014
    #15
Thema:

Richtige und vollständige Dateneingabe

Die Seite wird geladen...
  1. Richtige und vollständige Dateneingabe - Similar Threads - Richtige vollständige Dateneingabe

  2. Formeln funktionieren nicht richtig

    in Microsoft Excel Hilfe
    Formeln funktionieren nicht richtig: Hallo zusammen, ich habe eine Excel mit einem ganz merkwürdigen Verhalten. Darin ist eine externe Datenverbindung. Wenn ich diese aktualisiere, dann liefern plötzlich alle Formeln den Fehler...
  3. STRG+Pos 1 in Zelle funktioniert nicht mehr richtig

    in Microsoft Excel Hilfe
    STRG+Pos 1 in Zelle funktioniert nicht mehr richtig: Hallo liebes Forum, da ich in meinen Projekten die Action-Items v.a. über Excel-Listen tracke und zT viel Text pro Zelle anfällt, war der Shortcut "STRG+Pos1" immer extrem nützlich, um...
  4. Zellen auf die richtigen Spalten verteilen

    in Microsoft Excel Hilfe
    Zellen auf die richtigen Spalten verteilen: Liebes Forum, ich benötige Hilfe bei einem (für mich) komplizierten Fall von Daten sortieren: Ich habe 18 Spalten mit Überschriften 1-18. Es handelt sich um die Auswertung einer Mehrfachantwort,...
  5. Richtigen Preis aus Tabelle "ziehen"

    in Microsoft Excel Hilfe
    Richtigen Preis aus Tabelle "ziehen": Hallo und einen guten Start ins neue Jahr! Frisch aus dem Urlaub habe ich mich an eine neue Aufgabe begeben: Im einer Preistabelle gibt es pro Artikel einen Standardpreis und (theoretisch) n...
  6. Tabellen und Beziehung richtig realisieren

    in Microsoft Access Hilfe
    Tabellen und Beziehung richtig realisieren: Grundlegend weiß ich mittlerweile wie Beziehungen zu verknüpfen sind und wie sie so arbeiten. Was mir allerdings immer Probleme macht sind die Grundgedanken, wo man welche Tabelle mit welcher...
  7. Möchte Daten aus der richtigen Zeile wählen

    in Microsoft Excel Hilfe
    Möchte Daten aus der richtigen Zeile wählen: Hallo zusammen, ich habe folgendes Problem als Anfänger... Ich habe Daten der Fussball Bundesliga als Excel-Datei, nun möchte ich für die kommenden Spieltage, immer automatisch die erwarteten Tore...
  8. Jede Änderung nach dem speichern in die Info-tabelle schreiben

    in Microsoft Excel Hilfe
    Jede Änderung nach dem speichern in die Info-tabelle schreiben: Guten Tag, ich suche eine Möglichkeit eine Änderung / Neuaufnahme eines Datensatzes nachdem ich die Übergabe / Beendigung der Speicherung abgeschlossen habe, erst dann in die Tabelle "Info" zu...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden