Office: (Office 2013) Formular zum Update mehrerer Datensätze auf einmal

Helfe beim Thema Formular zum Update mehrerer Datensätze auf einmal in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo & guten Morgen zusammen, ich hab mal wieder ein kleines Problem. Und zwar habe ich ein Formular welches bereits auf einer Abfrage basiert. In... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von schwaelbchen, 7. Juni 2016.

  1. Formular zum Update mehrerer Datensätze auf einmal


    Hallo & guten Morgen zusammen,

    ich hab mal wieder ein kleines Problem.
    Und zwar habe ich ein Formular welches bereits auf einer Abfrage basiert.

    In diesem Formular (siehe anhängendes Bild) muss man im Moment für jede einzelne Zeile das JA/NEIN Feld namens [ausgelagert] klicken, damit nach dem Aktualisieren das Feld [Status] und das Feld [Status_Datum] mit einer Information gefüllt wird.

    Aufbauend auf dieser Abfrage für dieses Formular habe ich eine zweite Abfrage erstellt, in der mir die Werte der Spalte [Kiste] gruppiert werden.

    Ab hier komme ich nun nicht mehr weiter.
    Ich benötige nun ein weiteres Formular, welches durch einen Button geöffnet werden soll, über das ich quasi NUR DIE Kistennummer per JA/NEIN Feld auswählen will und somit nach dem Aktualisieren, sprich dem Drücken des JA/NEIN Feldes, die Felder FÜR ALLE Datensätze die diese Kistennummer haben editiert werden.

    Wie stelle ich das jetzt am Dümmsten an ?

    DANKE für Deine Antwort im Voraus.
    Jens

    :)
     
    schwaelbchen, 7. Juni 2016
    #1
  2. Moin Jens.

    Ich denke mal, Du benötigst kein extra Formular.
    Wenn Du in den Kopf- oder Fußbereich des vorhandenen Formulars ein ungebundenes Kombifeld erstellst, mit der Datenquelle aller Kistennummern Code:
    Und daneben einen Button.
    Und in die Ereignisprozedur fürs Klicken des Buttons schreibst Du Code:
     
    hcscherzer, 8. Juni 2016
    #2
  3. Hallo Hans-Christian,

    vielen Dank für Deinen wertvollen Tipp !

    Ich habe das mal so wie von Dir beschrieben umgesetzt, allerdings erscheint bei mir der auf dem Bild gezeigte Laufzeitfehler '3061'.

    Im Folgenden (rot markiert) der VBA-Code für das Nach-Aktualisierungs-Ereignis beim Drücken des JA/NEIN-Buttons, der sich nur auf dem jeweiligen Datensatz bezieht.

    Kann man das nicht auf irgendwie auf Deinen Code (blau markiert) anwenden ?


    PS: Das mit dem "ungebundenen Kombifeld" wäre auch nur bedingt eine Lösung, da man ja NUR 1 Kistennummer auswählen kann.
    Ich möchte eigentlich wunschgemäß all die Datensätze von mehreren (angehakt) Kistennummern gleichzeitig aktualisieren.



    Private Sub auslagern_AfterUpdate()
    If Me.Entsorgt = True Then
    Me.[Status] = "ausgelagert"
    Me.[Status-Datum] = Now()
    Else
    Me.[Status] = ""
    Me.[Status-Datum] = ""
    End If
    End Sub


    Private Sub Befehl80_Click()
    Dim sqlc As String
    sqlc = "update Stammdaten set ausgelagert = -1 where Kiste = " & Me!Kombinationsfeld78
    CurrentDb.Execute sqlc, dbFailOnError
    End Sub
     
    schwaelbchen, 8. Juni 2016
    #3
  4. Formular zum Update mehrerer Datensätze auf einmal

    Ist das Feld Kiste numerisch? Wenn's ein Textfeld ist, müssen da noch Apostrophen rein: Code:
    Heisst das Ja/Nein Feld jetzt 'ausgelagert' oder 'entsorgt'?
     
    hcscherzer, 8. Juni 2016
    #4
  5. Hmmm ... irgendwie passiert nix beim Drücken des Buttons. *frown.gif*

    Ja das Feld [Kiste] ist ein Textfeld. Wo müssen die "Apostrophen" die Du meinst hin ?
    Das Ja/Nein Feld heisst "entsorgen".

    Bei Interesse kann ich ja auch mal die 138kb kleine DB hier anhängen.
    Weil das mit dem "ungebundenen Kombifeld" auch nur bedingt eine Lösung ist, da man ja NUR 1 Kistennummer auswählen kann.
    Ich möchte eigentlich wunschgemäß all die Datensätze von mehreren (angehakt) Kistennummern gleichzeitig aktualisieren.
     
    schwaelbchen, 9. Juni 2016
    #5
  6. Wenn du den Status von allen angehakten Kistennummern auf "ausgelagert" setzen willst, dann müsste das so klappen:
    Code:
    Wenn es nur die sind, die gerade im Ufo angezeigt werden, musst du erst per Recordset die entsprechenden Kistennummern ermitteln.
    maike
     
    maikek, 9. Juni 2016
    #6
  7. Hallo Maike,

    ich komme leider nicht klar mit dem Code für das "ungebundene Kombifeld" und hab die DB daher mal gezippt angehangen.
    Vielleicht könnt Ihr mal einen Blick reinwerfen, es wird gleich das betreffende Formular geöffnet.

    @Maike: das mit den mehreren Kistennummern kann denke ich eben nur per extra Formular gehandelt werden, da man per diesem die bereits durch die Abfrage "auslagern_nach_Kisten" gruppierten Kistennummern selektieren könnte, sofern es irgendwie noch möglich ist JA/NEIN Felder zu erstellen, mit denen man die gewünschten Kistennummern selektieren kann ... *seufz*


    PS: Im aktuellen Formular ist es nun bereits so eingestellt, das man mit mit jedem Klicken des JA-NEIN Feldes dieses und die Werte der anderen beiden betreffenden Felder ändern kann.
     
    schwaelbchen, 9. Juni 2016
    #7
  8. Formular zum Update mehrerer Datensätze auf einmal

    Das ungebundene Kombi brauchst du doch gar nicht, wenn du mehrere Kisten auslagern willst.
    Die Kistennummern könntest du auch in einem Listenfeld mit Mehrfachauswahl markieren - Abfrage als Datenherkunft.
    Diese dort markierten Kistennummern dann gesammelt in eine String-Variable schreiben und in die WHERE Klausel einfügen:
    Code:
    Deine DB kann ich leider nicht öffnen, ich hab' Access 2003 (.mdb).

    maike
     
    maikek, 9. Juni 2016
    #8
  9. \@Maike,

    ich hab die Datenbank nach mdb konvertiert, aber nicht getestet.
    Falls du damit spielen willst ? *wink.gif*

    Gruß
    Josef
     
  10. Danke Joss !

    @Maike: ist so ein Listenfeld mit Mehrfachauswahl nicht eher unpraktisch, wenn dann in der Liste ca. 300 Kisten vorhanden sind ?
    Schliesslich gibt es ja auch in meinem Formular nicht so viel Platz dieses Listenfeld größer anzuzeigen. *frown.gif*
     
    schwaelbchen, 9. Juni 2016
    #10
  11. Ja, das wäre es. Allerdings sagtest du doch:
    Diese Abfrage kannst du genausogut für ein Listenfeld verwenden wie für ein Formular. Sind es dann auch noch tausend von den Dingern?

    @Joss
    Danke dir. Falls Jens nicht so klar kommt, seh' ich mir das später mal an.

    maike
     
    maikek, 9. Juni 2016
    #11
  12. Also es können trotz des Gruppierens immer noch (nicht 1.000) ca. 200-300 Kisten in der Liste auftauchen. *frown.gif*
    Von daher wäre eben so ein separates Formular sicherlich hilfreicher und übersichtlicher.

    Es wäre total lieb von Dir wenn Du Dir die DB mal anschauen könntest (Formular "auslagern") da ich echt nicht weiterkomme.

    DANKE dafür im Voraus.
     
    schwaelbchen, 9. Juni 2016
    #12
  13. Formular zum Update mehrerer Datensätze auf einmal

    Hm. Ob ich nu dreihundert Kisten in einem Formular hab oder in einer Liste ...
    Ich seh mir die DB nachher mal an.
    maike
     
    maikek, 9. Juni 2016
    #13
  14. So ganz versteh' ich es noch nicht.
    Wenn du alle im Formular angezeigten Kisten entsorgen willst, kannst du dafür doch gleich die Abfrage "auslagern" in eine Löschabfrage umwandeln.

    Hiermit kannst du per Doppelklick auf das Feld "Kiste" alle Kisten mit der gleichen Nummer entsorgen:
    Code:
    BTW: Gewöhne dir an, Prefixe zu nutzen: tblStammdaten, qryAuslagern, frmAuslagern, usw. Im Moment heißt irgendwie alles auslagern, ausgelagert, entsorgen ... da blickt ja keiner mehr durch.

    maike
     
    maikek, 9. Juni 2016
    #14
  15. Guten Morgen !

    @ Maike: Danke für den Code-Schnipsel, ich habe diesen eingefügt und er funktioniert. Vielen Dank dafür
     
    schwaelbchen, 9. Juni 2016
    #15
Thema:

Formular zum Update mehrerer Datensätze auf einmal

Die Seite wird geladen...
  1. Formular zum Update mehrerer Datensätze auf einmal - Similar Threads - Formular Update mehrerer

  2. Suchfeld in Formular

    in Microsoft Access Hilfe
    Suchfeld in Formular: Hallo zusammen Ich bin eine Datenbank am erstellen, wo ich Mitarbeiter und Kurse erfassen kann und schlussendlich den Mitarbeitern die besuchten Kurse zuteilen. Nun habe ich ein Formular...
  3. Formularsteuerelement Textfeld: Selbe Formatierung wie verlinkte Zelle?

    in Microsoft Excel Hilfe
    Formularsteuerelement Textfeld: Selbe Formatierung wie verlinkte Zelle?: Hallo, ich bin ja gerade dabei ein Bestellformular mit Excel zu realisieren. Das ganze sieht soweit auch schon sehr gut aus und funktioniert weitgehendst. Die Textfelder sind nun alle verlinkt...
  4. Word Steuerelemente/Formular erstellen

    in Microsoft Word Hilfe
    Word Steuerelemente/Formular erstellen: Hallo, ich möchte ein Formular mit 20 kleinen Textfeldern erstellen, die auf einer Seite an vordefinierten Stellen sind. Das fertige Formular soll so angewendet werden, dass ich in die 20...
  5. Aktuelles Datum und Uhrzeit in Formular

    in Microsoft Word Hilfe
    Aktuelles Datum und Uhrzeit in Formular: Hallo, zunächst ein herzlichen Dank für die Aufnahme in diesem Forum und hoffe, dass mir jemand bei meinem Problem behilflich sein kann. Ich bin aktuell dabei ein Formular zu erstellen. Das...
  6. Access Neuer Datensatz im Formular

    in Microsoft Access Hilfe
    Access Neuer Datensatz im Formular: Hallo - ich bin neu hier und Anfängerin im VBA Programmieren. Ich habe eine Frage zu VBA: In meinem Formular kann ich Daten eingeben, wenn ich das Formular wieder öffne, wird der letzte...
  7. mit String aus Formular Übereinstimmung in Abfrage prüfen

    in Microsoft Access Hilfe
    mit String aus Formular Übereinstimmung in Abfrage prüfen: Hallo liebe Mitglieder Ich verzweifle wieder einmal fast und wende mich an Euch. Ich möchte gern aus einem Formular heraus (Click) prüfen, ob übereinstimmende Datensätze in einer Abfrage vorhanden...
  8. Formular zum Updaten

    in Microsoft Excel Hilfe
    Formular zum Updaten: Hallo Leute! Ich brauche Hilfe von Euch Experten. Ich will ein Formular erzeugen, das die nächste freie Sachnummer angibt für ein neues Projekt. Ein Beispiel hab ich schnell gemacht und dabei...
  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