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: Spalten auf anderen Worksheeds in der Mappe ausblenden.

    in Microsoft Excel Hilfe
    VBA: Spalten auf anderen Worksheeds in der Mappe ausblenden.: Hallo zusammen, Eine Tabelle mit 9 Worksheets, Datenblatt, Studien, Studie_1 ...Studie_7. Auf dem Deckblatt werden in Zelle B4-B10 die Namen der Studien eingetragen. Davon abhängig ob ein Name...
  3. VBA Zeilen kopieren mit Bedingung

    in Microsoft Excel Hilfe
    VBA Zeilen kopieren mit Bedingung: Hallo zusammen, Ich möchte per Makro Zeilen aus Tabelle2 in Tabelle3 kopieren, wenn eine Bedingung erfüllt ist. Bedingung: Der Wert in Spalte E (Tabelle2) kommt in Tabelle1 in Spalte E vor....
  4. VBA - Datensätze ans Ende einer anderen Tabelle kopieren

    in Microsoft Excel Hilfe
    VBA - Datensätze ans Ende einer anderen Tabelle kopieren: Hallo zusammen, ich habe gerade eine "Abrechnungs"-Datei für einen Kindergartenbasar erstellt. Es wäre klasse, wenn man per Schaltfläche die Datensätze aus der Tabelle "Kaeufer" ans Ende der...
  5. Laufzeitfehler 9 VBA

    in Microsoft Excel Hilfe
    Laufzeitfehler 9 VBA: Nschdem ich die Office Version von 2010 auf 2019 aktualisiert habe wird mir der Laufzeitfehler 9 ausgegeben. Das ist der Code Sub FiberCollect() Dim NumRows As Long 'letzte celle Dim Counter As...
  6. Excel VBA Spalten mit Ordnerinhalt vergleichen

    in Microsoft Excel Hilfe
    Excel VBA Spalten mit Ordnerinhalt vergleichen: Hallo, Bin ehr Excel VBA Neuling, Würde aber gerne in einer bestehender Tabelle die Auflistung der Ordner mit dem eigentlichen Stand in den besagten Ordner kontrollieren. Also in der Spalte Q10...
  7. VBA - letzte nicht-leere Spalte

    in Microsoft Excel Hilfe
    VBA - letzte nicht-leere Spalte: Moin, liebe VBA-Spezis, mit Cells(99, Columns.Count).End(xlToLeft).Column bestimme ich die Spaltenzahl der letzten benutzten Zelle in Zeile 99. Soweit, so klar. Nun habe ich aber Formeln in...
  8. Summieren farbiger Zahlen anhand des Farbcodes ohne VBA

    in Microsoft Excel Hilfe
    Summieren farbiger Zahlen anhand des Farbcodes ohne VBA: Hallo liebes Forum, welche Formel muss ich eingeben, wenn ich farbige Ziffern (z.B. rot = Farbcode 3; grün = 4) addieren möchte. Danke im voraus für die schnelle Antwort Gruß mfkathie
  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