Office: (Office 2016) VBA RS.EDIT Schreibgeschützt

Helfe beim Thema VBA RS.EDIT Schreibgeschützt in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Moin, habe in meiner Datenbank ein Problem, die RS.EDIT ist schreibgeschützt. Code: Set DB = CurrentDb SQL = "SELECT Lagerbestand.Lagerb_ArtNr,... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von tigerwood86, 18. April 2020.

  1. VBA RS.EDIT Schreibgeschützt


    Moin, habe in meiner Datenbank ein Problem, die RS.EDIT ist schreibgeschützt.

    Code:
    Weiß dabei jemand weiter

    :)
     
    tigerwood86, 18. April 2020
    #1
  2. Code:
    Bitte Code immer in Code-Tags einfügen!
     
  3. Bezeichnungen wie "SummevonLagerb_ArtAnzahl" lassen vermuten, dass die Datenquelle eine gruppierte Abfrage ist,
    in der man nicht editieren kann, da ggf. mehrere Datesnätze zu einer Zeile zusammengefasst sind.
    Auf der anderen Seite lässt der Name der Datenquelle "Lagerbestand" vermuten, dass es eine Tabelle ist, in der originär nix summiert oder gezählt wird, da solche Dinge ja eben in gruppierten Abfragen geschehen. Da beißt sich die Katze in den Schwanz, oder?
     
    werner budde, 20. April 2020
    #3
  4. VBA RS.EDIT Schreibgeschützt

    Wie ist das jetzt genau gemeint, was müsste man dort ändern
     
    tigerwood86, 20. April 2020
    #4
  5. Hallo tigerwood86,

    eine Methode ist grundsätzlich schreibgeschützt - man kann ihr nichts zuweisen!
    Kann es sein, daß du mit "schreibgeschützt" das Recordset selber meinst?

    Ein paar Dinge falllen sofort ins Auge:
    1) die RecordsetTypeEnum Enumeration enthält keinen Wert für "DB_OPEN_DYNASET". Fragt sich also, wo und wie die Konstante definiert wird.

    2) in der Zeile, "Rest = Menge":
    Wo kommt die Menge her?

    3) Was soll das bewirken, mal abgesehen davon, daß es falsch ist?
    Code:
    4) wo sind die Definitionen der Variablen?

    Ulrich
     
    knobbi38, 20. April 2020
    #5
  6. Ich vermute, Du hast eine gruppierte Abfrage, in der die Tabelle Lagerbestand die Datenquelle ist.
    Wenn aufgrund der SQL-Anweisung
    Code:
    nur ein Artikel = ein Datensatz pro Schleifendurchlauf gefiltert wird, kannst Du doch die Gruppierung in der Abfrage wieder aufheben. Aber ich fische hier ziemlich im trüben, der Gesamt-Kontext ist mir (und vermutlich auch den anderen hier) nicht klar: z.B.
    Code:
    Menge kommt woher, wird wo (außerhalb dieser Prozedur) generiert?

    Besteht die Möglichkeit, dass Du von Deiner DB eine anonymisierte Fassung mit ca. einem halben Dutzend (anonymen) Datensätzen hier uploadest? dann könnten wir uns ein besseres Bild machen und besser helfen.
    @Ulrich, da waren wir wohl zeitgleich auf der selben Schiene :-)
     
    werner budde, 20. April 2020
    #6
  7. Code:
    Wenn Rest > 0 nicht zutrifft, wird das rst.update nie ausgeführt.

    Code:
    sollte besser funktionieren.
     
    werner budde, 20. April 2020
    #7
  8. VBA RS.EDIT Schreibgeschützt

    Würde die Datei gerne Hochladen, leider ist diese zu groß
     
    tigerwood86, 20. April 2020
    #8
  9. Trotz Zippens noch zu groß?
    Und vorher nochmal Komprimieren und Reparieren.
     
    werner budde, 20. April 2020
    #9
  10. Ja immernoch sehr eng 266kb
     
    tigerwood86, 20. April 2020
    #10
  11. Hast Du eine Cloud, auf die Du hochladen kannst und teilst uns hier den Link mit?
    Ich bin mir nicht sicher, ob das hier im Forum zulässig ist?
    Frage geht an die MOF-Admins?
     
    werner budde, 20. April 2020
    #11
  12. Hallo,
    eine Beispieldate verkleinert man auf das Problem mit einigen Spieldatensätzen. Und die läd man dann hier hoch.

    Alternativ kannst Du auch Dropbox.com nutzen. Ist seriös und kostenlos.
     
    gpswanderer, 20. April 2020
    #12
  13. VBA RS.EDIT Schreibgeschützt

    Hallo Mithelfer,

    tigerwood86 hat mir 'ne PN geschickt, wir haben Emailadressen augetauscht und er hat mir sein "Baby" zugemailt.
    Es ist gezippt wirklich größer als es das Forum zulässt, es liegt nicht am Umfang der Datensätze, sondern die gesamte Applikation hat viel VBA-Coode.
    Ich hab es inzwischen analysiert und entdeckt, dass ich in meinem Beitrag #3 richtig vermutet hatte:
    es wurde ein Recordset angelegt, das mit einer gruppierten Abfrage [Lagerbstand] verknüpft ist.
    In dieser Abfrage existieren Domänenaggregate wie Summe und Anzahl.
    Diese Felder sollten nun per
    Code:
    beschreiben werden, was ja naturgemäß nicht geht!
    Bestätigt durch den Versuch, direkt im Datenblatt dieser Abfrage zu ändern, was bereits hier ebenfalls nicht gelang, wie vermutet.
    Hier meine Verschlimmbesserungsvorschläge an tigerwood86:

    Code:
     
    werner budde, 20. April 2020
    #13
  14. Hallo,
    Wobei die Zeilen 100 - 160 völlig überflüssig sind, da nach Zeile 70 und 90
    bei beiden Recordsets (wenn nicht leer) der Zeiger auf dem 1. DS steht.
    Da sollte man eher beide RS auf EOF prüfen.
    gruss ekkehard
     
    Beaker s.a., 20. April 2020
    #14
  15. \@ Ekkehard,
    das wird eigentlich an Dutzenden von anderen Baustellen so empfohlen, siehe unter anderem hier:
    https://www.ms-office-forum.net/foru...ad.php?t=42293
    Möglich, dass es hier, wie Du meinst, überflüssig ist.
    Aber wenn die Anzahl der Datensätze in einem solchen Recordset ermittelt werden soll, dann wohl zwingend notwendig, zumindest liest man es so oft.
    100%-ig sicher bin ich mir da jetzt nicht, aber so ein 2-Zeiler schadet jedenfalls auch nicht *cool.gif*
     
    werner budde, 21. April 2020
    #15
Thema:

VBA RS.EDIT Schreibgeschützt

Die Seite wird geladen...
  1. VBA RS.EDIT Schreibgeschützt - Similar Threads - VBA EDIT Schreibgeschützt

  2. VBA in einer Zeile zu lang

    in Microsoft Excel Hilfe
    VBA in einer Zeile zu lang: Moin, mein VBA Code ist für eine Zeile zu lang. Kann mir einer helfen wie ich den auf 2 Zeilen aufteilen Kann? arrSchuhDaten = Array(Range("A6"), Range("F6"), Range("J6"), Range("A7"),...
  3. Listbox wird nicht breiter, Schriftgrösse ändert sich

    in Microsoft Excel Hilfe
    Listbox wird nicht breiter, Schriftgrösse ändert sich: Hallo, ich habe ein Formular dessen Breite ich mit der Maus ändern kann. Im Formular habe ich einen Rahmen und darin eine Listbox deren Breite an die Formularbreite angepasst wird....
  4. Kontrollkästchen aktivieren ohne VBA - wenn KK1 angekreuzt dann KK2 auch

    in Microsoft Excel Hilfe
    Kontrollkästchen aktivieren ohne VBA - wenn KK1 angekreuzt dann KK2 auch: Hallo zusammen, erstmal danke für all die Tipps und Kniffe, die ich ohne eigenen Thread gefunden und gelernt habe. Leider finde ich mein Thema nirgendwo... Aktuell habe ich zwei Spalten mit...
  5. Per Hyperlink ausgeblendetes Blatt einblenden

    in Microsoft Excel Hilfe
    Per Hyperlink ausgeblendetes Blatt einblenden: Hola ins Forum, ich bräuchte mal wieder eure Hilfe. Ich habe ein Tabellenblatt das mir als Register dient und wo Hyperlinks eingefügt sind um auf das dazugehörige Blatt zu springen. Diese Blätter...
  6. Bilder über VBA Größe und DPI ändern für Webshop

    in Microsoft Excel Hilfe
    Bilder über VBA Größe und DPI ändern für Webshop: Hallo Excel Spezialisten, Ich habe mir eine recht aufwendige Tabelle gebastelt, aus der ich Daten für meinen Webshop generiere und in einer .csv bereitstelle. Es werden neue Preislisten...
  7. VBA: Platzhalter ersetzen und evtl. leere Zeile einfügen

    in Microsoft Word Hilfe
    VBA: Platzhalter ersetzen und evtl. leere Zeile einfügen: Hallo zusammen, ich habe eine Word-Vorlage mit Platzhaltern, in die ich mit VBA Daten aus einer Excel-Datei einfüge (in eine Excel-Zeile schreibe ich alle Daten für ein neues Word-Dokument). So...
  8. Erstellung eines Dynamischen Kalenders (ggf. VBA)

    in Microsoft Word Hilfe
    Erstellung eines Dynamischen Kalenders (ggf. VBA): Guten Morgen an Alle, ich hoffe, es geht euch soweit gut :) Ich wende mich heute an euch, weil ich gerade vollkommen verzweifle und irgendwie so ganz und garnicht weiterkomme und irgendwie...
  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