Office: (Office 2003) Maximum einer Spalte im Recordset ermitteln

Helfe beim Thema Maximum einer Spalte im Recordset ermitteln in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo allerseits, ich habe wiedermal ein kleines Problem, auf das ich auch nach längerem Suchen keine Antwort gefunden habe: Gibt es eine Möglichkeit... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Sayus, 17. September 2008.

  1. Maximum einer Spalte im Recordset ermitteln


    Hallo allerseits,

    ich habe wiedermal ein kleines Problem, auf das ich auch nach längerem Suchen keine Antwort gefunden habe:

    Gibt es eine Möglichkeit aus einem Recordset das Maximum einer Spalte zu ermitteln? Mir ist eigentlich egal wie, ich brauche nur den höchsten in der Spalte vorkommenden Wert um die Größe eines Berichts zu errechnen. Zu welchem Datensatz der Wert gehört ist egal.

    (Falls ich das nur mit Sortieren des Recordsets machen kann, bitte schreibt mir dazu wie ich sortiere und den Wert auslese.
    Ich bin Neuling :-/ )

    :)
     
  2. es gibt mal wieder mehrere Möglichkeiten, hier einige davon:
    mit DMax kann der maximalWert eines Feldes der Tabelle oder Abfrage ermittelt werden
    mit rst.sort kann der DAO Recordset sortiert werden, wobei rst der Recordset ist, dadurch bekommt man den Maximalwert,
    je nach Sortierung ist es dann der erste oder letzte Wert in einer Schleife über die Datensätze
    in einer bzw. der Abfrage kann die Funktion max() benutzt werden für den Maximalwert
    ...
     
    Großer Meister, 19. September 2008
    #2
  3. FW
    FW
    ...
    die eine ist DMax einer Tabelle und die andere DMax einer Abfrage?*wink.gif*

    Nachtrag: Ok, jetzt ist es richtig...
     
  4. Maximum einer Spalte im Recordset ermitteln

    Wie geb ich das dann ein?
    max("Spaltenname", "recordsetname")?

    Weil ich brauche das Maximum des RS.
    Grund: Ich filtere mir mit dem RS Daten aus der Abrage heraus, von denen ich den Maximalwert ermitteln möchte.
     
  5. FW
    FW
    ... schau doch einfach mal in die Hilfe, unter DMAX und MAX...
     
  6. Hallo, zeig doch mal was du hast.

    Arbeitest du mit einem Recordset-Objekt oder sprichst du von einem Formular / Bericht? Wie filterst du das Recordset, per VBA???
     
    Anne Berg, 19. September 2008
    #6
  7. Das hab ich schon gemacht, bevor ich den Thread gestartet habe. Leider funktioniert das bei mir nicht so ganz, weswegen ich hier noch einmal sichergehen wollte, ob ichs richtig gemacht habe.
    *wink.gif*

    Vorweg:
    Die Datenbank hat jemand anderes erstellt. Ich habe nur die ehrenvolle Aufgabe bekommen (d.h. ich MUSS das machen) sie zu verbessern. Leider kann ich nicht wirklich VBA und so muss ich mich da durchbeissen.

    Das hier ist der Filter
    Set rs = db.OpenRecordset("Select * from [abfrage] where (bedingung für das suchen aller datensätze eines eintrags))
    Ich filtere das Recordset also mit VBA.

    Ich habe hier einen Bericht, je nach Eintrag eine bestimmte Anzahl von Balken untereinander gezeichnet werden. Je nachdem wieviele Balken ich habe, muss ich der Bericht verändert werden. Die Balken sind durchnummeriert (="Ebene"), wobei es aber vorkommen kann, dass mehrere Balken sich eine Nummer teilen. Dann werden sie auf die selbe Höhe (Ebene) gezeichnet.
    In der Abfrage liegen alle Balken getrennt vor und daher kann ich die Ebene nicht aus der Abfrage ermitteln (außer vielleicht mit einer Methode, die mir das Maximum eines Eintrags wiedergibt).
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  8. Maximum einer Spalte im Recordset ermitteln

    Warum erweiterst du die Abfrage nicht einfach? Code:
     
    Anne Berg, 19. September 2008
    #8
  9. Das könnte ich evtl mit einem zweiten recordset machen, wenn das geht.
    Mit dem Ersten kann ich es nicht machen, weil ja später alle Balken (auch die einer kleineren Ebene) gezeichnet werden müssen und die Daten hierfür dann nicht mehr im Recordset wären.

    Edit:
    Set srs = db.OpenRecordset("Select *, Max("Ebene") from [Abfrage] where [...] = " & Me.[...].Value & " and " & Me.OpenArgs)
    Das mit dem Max("Ebene") funktioniert leider nicht so ganz *frown.gif*
     
  10. Ok, so einfach geht das dann doch nicht, aber der Vorschlag mit dem Sortieren ist doch brauchbar: Code:
     
    Anne Berg, 19. September 2008
    #10
  11. Jetzt muss ich nochmal ganz dumm fragen:
    Kann ich das auch andersrum sortieren? Weil beim Zeichnen der Balken wird Datensatz für Datensatz durchgegangen, bis der letzte erreicht ist. Wenn der Zeiger aber gleich auf den letzten springt, wird nichts mehr gezeichnet.
    Ich kann das dann sicher mit
    Code:
    machen, oder? Dann sollte doch die Variable Ebene den Maximalwert darstellen, oder?

    Ah, aber ich könnte doch auch folgendes machen:
    Code:
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  12. Genau! *biggrin.gif*
    Natürlich kann man auch absteigend sortieren, dann sollte der erste Datensatz das Ergebnis liefern. U.U. musst du die Sortierung anschließend aber auch wieder ändern, damit deine Verarbeitungsfolge nicht durcheinander kommt...

    Oder du ermittelst den Maxwert mit der DMax-Funktion: Code:
    Das muss sich dann aber auf eine gespeicherte Abfrage beziehen, SQL-Code geht da nicht.
     
    Anne Berg, 19. September 2008
    #12
  13. Maximum einer Spalte im Recordset ermitteln

    Okay, ich probier das mal aus.
    Aber das wird ein Weilchen dauern.
    Das ist für einen Anfänger gar nicht so leicht.
    Und die Original-Datenbank muss von einem Profi stammen...
     
  14. So, ich hab das jetzt mal eingegeben und ausprobiert und es hat nicht geklappt. Ich hab auch schon den Fehler gefunden:
    Das Sortieren hat nicht geklappt.

    Mein Code sieht folgendermaßen aus:

    Code:
    Das Blaue ist so, wie es eigentlich sein sollte. Eine Zeile darunter habe ich die größte in der Abfrage vorkommende Ebene mal manuell eingesetzt, dann hat es funktioniert. Allerdings sind so manche Felder viel zu groß.
    Was könnte ich nun anders machen?
     
  15. setzt mal ans Ende der Abfrage ein
    Code:
    dann wird auf jeden Fall absteigend sortiert, wenn das Feld ebene vorhanden ist.
     
    Großer Meister, 19. September 2008
    #15
Thema:

Maximum einer Spalte im Recordset ermitteln

Die Seite wird geladen...
  1. Maximum einer Spalte im Recordset ermitteln - Similar Threads - Maximum Spalte Recordset

  2. Balkendiagramm mit Lieferzeiten und Datumswerte in der Grössenachse.

    in Microsoft Excel Hilfe
    Balkendiagramm mit Lieferzeiten und Datumswerte in der Grössenachse.: Guten Tag Ich möchte Liefertermine bzw. Lieferzeiten in einem Balkendiagramm darstellen. Das funktioniert im angehängten Beispiel auch recht gut. Nur die Beschriftung der (horizontalen)...
  3. Maximum suchen. Eventuell mit indirekt?

    in Microsoft Excel Hilfe
    Maximum suchen. Eventuell mit indirekt?: Guten Tag, zur besseren Veranschaulichung habe ich ein xls angehängt. Die Werte in D habe ich eingetragen, eine Formel dafür suche ich. Was ich versuche ist folgendes: In Spalte A habe ich...
  4. Maximum VBA

    in Microsoft Excel Hilfe
    Maximum VBA: Ihr lieben ich brauche noch einmal eure Hilfe. Ich möchte in Excel einen Max Wert finden per VBA. Ich habe da auch schon etwas gefunden, allerdings sieht es bei mir so aus das ich in Spalte A...
  5. Maximum bei nicht Zahlen

    in Microsoft Excel Hilfe
    Maximum bei nicht Zahlen: Hallo liebes Forum, ich will in der unten gezeigten Tablle das Maximum (C1,C2,C3,... ) für den User "Lukas" finden. Die Liste ist nicht sortiert und die Werte sind leider keine reine Zahl....
  6. Globales Maximum berechnen mit Solver

    in Microsoft Excel Hilfe
    Globales Maximum berechnen mit Solver: Hi, Ich möchte mir ganz gerne das globale Maximum ( bzw. möglichst nahe dran ) von beigefügter Datei berechnen lassen. Ich habe jetzt einige Versuche durch mit Solver, aber die Ergebnisse...
  7. Maximum Wenn Daten zwischen zwei Datumsangaben liegen

    in Microsoft Excel Hilfe
    Maximum Wenn Daten zwischen zwei Datumsangaben liegen: Hallo Zusammen, Ich versuche gerade vergebens eine Abfrage zu kreieren welche mir das Maximum einer endlos langen Liste (Erste Spalte steht ein Datum zweite Zeile ein Wert) Raussucht wobei hierbei...
  8. Maximum in drei Spalten ermitteln

    in Microsoft Excel Hilfe
    Maximum in drei Spalten ermitteln: Hallo, ich habe 3 Spalten mit verschiedenen Werten. Nun möchte ich für jede Zeile ermitteln, in welcher Spalte der höchste Wert steht. Es soll allerdings nicht der Wert sonder einfach nur die 1...
  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