Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Datensätze werden nicht gelöscht
zurück: Dateneingabe im Unterformular vom Hauptformular klappt nich! weiter: datensuche via kombinationsfeld in unterformular 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
diary
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Aug 2012, 14:48
Rufname:

Datensätze werden nicht gelöscht - Datensätze werden nicht gelöscht

Nach oben
       Version: Office 2003

Hallo! Ich brauche wieder mal eure Hilfe!!
Ich ein Problem mit meinem „Daten-Löschen-Button“ Im Formular bei DS-Eingabe kommt eine „ja / nein“ Abrage. Bei „ja“ wird für die weitere Eingabe ein neues Formular geöffnet. Bei Nein soll der zuletzt eingegebene DS gelöscht werden. Das Problem ist, bei Nein-Auswahl kommt eine Access Meldung „Sie beabsichtigen einen DS zu löschen….Löschen ja oder nein“ Wenn der user aber aus Versehn in Access Meldung auf „nein“ klickt, sind die Datenfelder weiter mit Daten ausgefüllt, und wenn ich nochmals meine „ja / nein- Abfrage“ starte und auf nein klicke, tut sich nichts, d.h. Datensatz steht schön sauber in der Tabelle geschrieben. Die ja/ nein Schleife läuft irgendwie nur ein mal durch. Wie kann ich so einrichten, dass bei wiederholten „Nein“ Antwort, der Datensatz gelöscht wird. Danke im voraus!!
Habe Button mit folgendem Code versehn:
Code:
Private Sub Btn_Geräterfassen222_Click()
    Dim Auswahl As Integer
    Dim Meldung As String
    Dim strSQL As String
   
    Me!BISNummer = GeräteCodeDarstellen(Me!InventarNr)
    Me!Bezeichnung = GeräteBezeichnungDarstellen()
    DoCmd.RunCommand acCmdSaveRecord
    Me.Refresh
    Meldung = "Weitere Daten für das Gerät eintragen? "
    Auswahl = MsgBox(Meldung, vbQuestion + vbYesNo, "Geräterfassen")
    If Auswahl = vbYes Then
        Select Case Me!OFeld_Gerätecode
          'Daten vom Formular in Formular schreiben
          Case 1 To 16
            DoCmd.OpenForm "F_Geräte_Allgemein", acNormal
            DoCmd.GoToRecord , , acNewRec
            Forms!F_Geräte_Allgemein!T_Geräte_Allgemein_BISNr = Me!BISNummer
            Forms!F_Geräte_Allgemein!Bezeichnung = Me!Bezeichnung
            Forms!F_Geräte_Allgemein!T_Geräte_Allgemein_Typ = Me!Typ
            Forms!F_Geräte_Allgemein!INVENT_NR = Me!InventarNr
          Case 17
            DoCmd.OpenForm "F_Geräte_Allgemein_17", acNormal
            DoCmd.GoToRecord , , acNewRec
            Forms!F_Geräte_Allgemein_17!T_Geräte_Allgemein_BISNr = Me!BISNummer
            Forms!F_Geräte_Allgemein_17!Bezeichnung = Me!Bezeichnung
            Forms!F_Geräte_Allgemein_17!T_Geräte_Allgemein_Typ = Me!Typ
            Forms!F_Geräte_Allgemein_17!INVENT_NR = Me!InventarNr
            ' =>
            ' =>
            ' =>
          Case Else
            MsgBox "Bitte ein Gerät aussuchen", vbCritical + vbOKOnly
        End Select
      Else
        Auswahl = vbNo
        DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo, , acMenuVer70
        Me!InventarNr.Requery   ' dies funktieaniert nur beim ersten
        Me!Bezeichnung.Requery ' Klicken auf "Nein"
        Me!BISNummer.Requery
        Me!Typ.Requery
    End If
End Sub
Ich denke hier ist ein Fehler in der Schleife, aber wie ist es richtig ??
Marmeladenglas
komme zurecht


Verfasst am:
23. Aug 2012, 21:20
Rufname:


AW: Datensätze werden nicht gelöscht - AW: Datensätze werden nicht gelöscht

Nach oben
       Version: Office 2003

Hi,
welche Schleife denn ? Es gibt keine Schleife im Code ?!

Hast du tatsächlich für jedes Gerät ein eigenes Formular ??? Wozu ? Warum ?

Selbst wenn das sinnvoll ist, was ich stark bezweifle, kann man das sehr einfach über einen Einzeiler abarbeiten und muss nicht 16 x den gleichen Code schreiben ...


Zuletzt bearbeitet von Marmeladenglas am 24. Aug 2012, 06:49, insgesamt einmal bearbeitet
Beaker s.a.
fortgeschrittener Anfänger


Verfasst am:
24. Aug 2012, 01:00
Rufname: ede
Wohnort: Bremen

AW: Datensätze werden nicht gelöscht - AW: Datensätze werden nicht gelöscht

Nach oben
       Version: Office 2003

Hallo Diary,
Nur noch so auf die Schnelle (und nicht getestet), da ich jetzt ins Bett muss.
Verlagere Deinen Code nach
Code:
    DoCmd.RunCommand acCmdSaveRecord
in das Ereignis Form_BeforeUpdate.
Dieses Ereignis wird durch o.a. Codezeile gefeuert,
und da kannst Du das Speichern mit Cancel=True
einfach abbrechen. Da brauchst Du hinterher nicht
wieder zu löschen.
Code:
    '...
      Else    'Auswahl ist vbNo
        Cancel = True
    End If
    '...

hth
gruss ekkehard
und gute Nacht

Gerade noch eingefallen; - .DoMenuItem ist out.
Kannst Du alles sicherer über über die Methode
.RunCommand des DoCmd-Objektes ausführen.

_________________
geklaut aus d.c.d.m.a. oder m.p.d.a.
Mit Access arbeite ich nicht, das ist doch nur ein abgespecktes Excel Wink
S.M.I.²L.E.
diary
Im Profil kannst Du frei den Rang ändern


Verfasst am:
24. Aug 2012, 09:17
Rufname:

AW: Datensätze werden nicht gelöscht - AW: Datensätze werden nicht gelöscht

Nach oben
       Version: Office 2003

Hey! Danke für deine Antwort. Natürlich macht es keinen Sinn für je Geräteart ein eigenes Formular zu erstellen. Daher habe ich 5 unterschiedliche Formularvorlagen gemacht, die dann per Optionfeld aufgerufen werden. Was die Code anbetrifft, ich bin ein Access-Neuling und habe nicht so ganz verstanden was ich genau machen muss. Welchen Teil von dem Gode soll ich in das Ereignis Form_BeforeUpdate kopieren. Kannst Du mir das genauer erklären?
Beaker s.a.
fortgeschrittener Anfänger


Verfasst am:
25. Aug 2012, 00:22
Rufname: ede
Wohnort: Bremen


AW: Datensätze werden nicht gelöscht - AW: Datensätze werden nicht gelöscht

Nach oben
       Version: Office 2003

Hallo diary,
Code:
Private Sub Btn_Geräterfassen222_Click()
    Me!BISNummer = GeräteCodeDarstellen(Me!InventarNr)
    Me!Bezeichnung = GeräteBezeichnungDarstellen()
    'zum Speichern reicht
    Me.Dirty = False
    'diese Zeile feuert das untenstehende Ereignis
End Sub
und
Code:
Private Sub Form_BeforeUpdate(Cancel As Integer)
    Dim Auswahl As Integer
    Dim Meldung As String
    Dim strSQL As String

    Meldung = "Weitere Daten für das Gerät eintragen? "
    Auswahl = MsgBox(Meldung, vbQuestion + vbYesNo, "Geräterfassen")
    If Auswahl = vbYes Then
        Select Case Me!OFeld_Gerätecode
          'Daten vom Formular in Formular schreiben
          Case 1 To 16
            DoCmd.OpenForm "F_Geräte_Allgemein", acNormal
            DoCmd.GoToRecord , , acNewRec
            Forms!F_Geräte_Allgemein!T_Geräte_Allgemein_BISNr = Me!BISNummer
            Forms!F_Geräte_Allgemein!Bezeichnung = Me!Bezeichnung
            Forms!F_Geräte_Allgemein!T_Geräte_Allgemein_Typ = Me!Typ
            Forms!F_Geräte_Allgemein!INVENT_NR = Me!InventarNr
          Case 17
            DoCmd.OpenForm "F_Geräte_Allgemein_17", acNormal
            DoCmd.GoToRecord , , acNewRec
            Forms!F_Geräte_Allgemein_17!T_Geräte_Allgemein_BISNr = Me!BISNummer
            Forms!F_Geräte_Allgemein_17!Bezeichnung = Me!Bezeichnung
            Forms!F_Geräte_Allgemein_17!T_Geräte_Allgemein_Typ = Me!Typ
            Forms!F_Geräte_Allgemein_17!INVENT_NR = Me!InventarNr
            ' =>
            ' =>       
            ' =>
          Case Else
            MsgBox "Bitte ein Gerät aussuchen", vbCritical + vbOKOnly
         End Select
      Else                    'Auswahl ist vbNo
        'hier wird das Speichern des DS abgebrochen
        Cancel = True
    End If
End Sub
Getestet habe ich das nicht Embarassed .
hth
gruss ekkehard

_________________
geklaut aus d.c.d.m.a. oder m.p.d.a.
Mit Access arbeite ich nicht, das ist doch nur ein abgespecktes Excel Wink
S.M.I.²L.E.
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: Reduzierung mehrerer Datensätze auf einen Datensatz 2 Pulldown 819 03. Jun 2005, 09:32
Pulldown Reduzierung mehrerer Datensätze auf einen Datensatz
Keine neuen Beiträge Access Tabellen & Abfragen: Filtere alle Datensätze ab der 3 Stelle die nicht PC heißen? 7 centerguide 1302 18. Mai 2005, 11:39
centerguide Filtere alle Datensätze ab der 3 Stelle die nicht PC heißen?
Keine neuen Beiträge Access Tabellen & Abfragen: Datensätze zusammenfassen 1 Tatanka 1121 29. Apr 2005, 14:52
jens05 Datensätze zusammenfassen
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: multiplizieren zweier verschiedener Datensätze 3 Stara 913 13. Jan 2005, 20:36
Skogafoss multiplizieren zweier verschiedener Datensätze
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage: Datensätze älter als.... 4 KarlK 929 01. Nov 2004, 19:07
KarlK Abfrage: Datensätze älter als....
Keine neuen Beiträge Access Tabellen & Abfragen: Anzahl der Datensätze anzeigen? 3 MichaelB 1122 19. Okt 2004, 12:45
lothi Anzahl der Datensätze anzeigen?
Keine neuen Beiträge Access Tabellen & Abfragen: Einmalige Datensätze löschen 18 frankkugler 1614 18. Okt 2004, 15:33
frankkugler Einmalige Datensätze löschen
Keine neuen Beiträge Access Tabellen & Abfragen: leere Datensätze löschen 3 umbroboy 2666 07. Okt 2004, 16:51
Skogafoss leere Datensätze löschen
Keine neuen Beiträge Access Tabellen & Abfragen: datensätze suchen 13 mr@ 1514 13. Sep 2004, 10:21
meyster datensätze suchen
Keine neuen Beiträge Access Tabellen & Abfragen: 24 felder aus 1 DS in 24 versch. Datensätze kopieren. 3 Mirko 593 30. Jul 2004, 13:55
Willi Wipp 24 felder aus 1 DS in 24 versch. Datensätze kopieren.
Keine neuen Beiträge Access Tabellen & Abfragen: Suche Formel zur Abfrage doppelte Datensätze 2 sklein2405 2827 24. Jun 2004, 09:22
Willi Wipp Suche Formel zur Abfrage doppelte Datensätze
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: HTML Forum