Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verwenden Sie die DMax-Funktion , um den maximalen Wert in einer bestimmten Gruppe von Datensätzen (einer Domäne) zu ermitteln.
Syntax
Ausdruck verwendet werden. DMax (Ausdr, Domäne, Kriterien)
expression Eine Variable, die ein Application-Objekt darstellt.
Parameter
| Name | Erforderlich/Optional | Datentyp | Beschreibung |
|---|---|---|---|
| Expr | Erforderlich | String | Ein Ausdruck, der das Feld kennzeichnet, von dem Sie den kleinsten oder größten Wert ermitteln möchten. Der Ausdruck kann ein Zeichenfolgenausdruck sein, der ein Feld in einer Tabelle oder Abfrage kennzeichnet, oder ein Ausdruck, der eine Berechnung mit Daten in dem Feld durchführt. In expr können Sie den Namen eines Felds in einer Tabelle, ein Steuerelement in einem Formular, eine Konstante oder eine Funktion einschließen. Wenn Ausdr eine Funktion enthält, kann sie entweder integriert oder benutzerdefiniert sein, aber keine andere Domänenaggregat- oder SQL-Aggregatfunktion. |
| Domäne | Erforderlich | String | Ein Zeichenfolgenausdruck, der die Gruppe der Datensätze angibt, die die Domäne bilden. Es kann sich dabei um einen Tabellennamen oder einen Abfragenamen für eine Abfrage handeln, die keinen Parameter benötigt. |
| Criteria | Optional | Variant | Ein Zeichenfolgenausdruck, den Sie optional angeben können, um den Datenbereich einzuschränken, für den die Funktion DMax ausgeführt wird. Beispielsweise ist criteria oft äquivalent mit der WHERE-Klausel in einem SQL-Ausdruck, ohne das Wort WHERE. Wird das Argument criteria nicht angegeben, so berechnet DMax das Argument expr für die gesamte Domäne. Jedes Feld, das in den Kriterien enthalten ist, muss auch ein Feld in der Domäne sein. Andernfalls gibt die DMax-Funktioneinen Nullwert zurück. |
Rückgabewert
Variant
Hinweise
So können Sie z. B. die DMax-Funktion in berechneten Steuerelementen in einem Bericht verwenden, um die größte Bestellmenge für einen bestimmten Kunden anzuzeigen.
Die DMax-Funktion gibt den maximalen Wert zurück, der die Kriterien erfüllt. Wenn Ausdruck numerische Daten identifiziert, gibt die DMax-Funktion numerische Werte zurück. Gibt das Argument expr Zeichenfolgendaten an, so wird die Zeichenfolge zurückgegeben, die alphabetisch an erster oder letzter Stelle steht.
Die DMax-Funktion ignoriert Nullwerte in dem Feld, auf das durch expr verwiesen wird. Wenn jedoch kein Datensatz die Kriterien erfüllt oder die Domäne keine Datensätze enthält, gibt die DMax-Funktionden Wert NULL zurück.
Verwenden Sie die DMax-Funktion , um Kriterien in der Zeile Kriterien einer Abfrage, in einem berechneten Feldausdruck in einer Abfrage oder in der Zeile "Aktualisieren nach " einer Aktualisierungsabfrage anzugeben.
Hinweis
Verwenden Sie die DMax-Funktion oder die Max-Funktion in einem berechneten Feldausdruck einer Gesamtsummenabfrage. Wenn Sie DMax verwenden, werden die Werte ausgewertet, bevor die Daten gruppiert werden. Wenn Sie Max verwenden, werden die Daten gruppiert, bevor die Werte im Feldausdruck ausgewertet werden.
Verwenden Sie die DMax-Funktion in einem berechneten Steuerelement, wenn Sie Kriterien angeben müssen, um den Datenbereich einzuschränken, in dem die Funktion ausgeführt wird. Um beispielsweise die maximale Fracht anzuzeigen, die für eine Bestellung berechnet wird, die nach Kalifornien versandt wird, legen Sie die ControlSource-Eigenschaft eines Textfelds auf den folgenden Ausdruck fest:
=DMax("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Wenn Sie einfach nur den minimalen oder maximalen Wert aller Datensätze in der Domäne ermitteln möchten, verwenden Sie die Funktion Min oder Max .
Zwar können Sie mit DMin oder DMax den kleinsten oder größten Wert in einem Feld einer Fremdtabelle berechnen, aber es kann effizienter sein, eine Abfrage zu erstellen, die die benötigten Felder aus beiden Tabellen enthält, und dann Ihrem Formular oder Bericht diese Abfrage zugrunde zu legen.
Beispiel
Dieses Beispiel gibt den kleinsten und den größten Wert aus dem Feld "Frachtkosten" für Bestellungen zurück, die nach Großbritannien versandt wurden. Als Domäne wird die Tabelle "Bestellungen" verwendet. Das Argument Kriterien schränkt die resultierende Gruppe von Datensätzen auf diejenigen ein, bei denen "Lieferland" gleich "Vereinigtes Königreich" ist.
Dim curX As Currency
Dim curY As Currency
curX = DMin("[Freight]", "Orders", "[ShipCountry] = 'UK'")
curY = DMax("[Freight]", "Orders", "[ShipCountry] = 'UK'")
Im nächsten Beispiel enthält das Argument Kriterien den aktuellen Wert eines Textfelds namens "Bestelldatum". Das Textfeld ist an ein Feld vom Typ "Bestelldatum " in der Tabelle "Bestellungen" gebunden. Der Verweis auf das Steuerelement steht nicht in den Anführungszeichen ("), die für die Zeichenfolgen verwendet werden. Dadurch wird sichergestellt, dass Microsoft Access bei jedem Aufruf von DMax den aktuellen Wert vom Steuerelement abruft.
Dim curX As Currency
curX = DMax("[Freight]", "Orders", "[OrderDate] = #" _
& Forms!Orders!OrderDate & "#")
Die folgenden Beispiele zeigen, wie Sie verschiedene Arten von Kriterien mit der Funktion DMax verwenden.
' ***************************
' Typical Use
' Numerical values. Replace "number" with the number to use.
variable = DMax("[FieldName]", "TableName", "[Criteria] = number")
' Strings.
' Numerical values. Replace "string" with the string to use.
variable = DMax("[FieldName]", "TableName", "[Criteria]= 'string'")
' Dates. Replace "date" with the string to use.
variable = DMax("[FieldName]", "TableName", "[Criteria]= #date#")
' ***************************
' ***************************
' Referring to a control on a form
' Numerical values
variable = DMax("[FieldName]", "TableName", "[Criteria] = " & Forms!FormName!ControlName)
' Strings
variable = DMax("[FieldName]", "TableName", "[Criteria] = '" & Forms!FormName!ControlName & "'")
' Dates
variable = DMax("[FieldName]", "TableName", "[Criteria] = #" & Forms!FormName!ControlName & "#")
' ***************************
' ***************************
' Combinations
' Multiple types of criteria
variable = DMax("[FieldName]", "TableName", "[Criteria1] = " & Forms![FormName]![Control1] _
& " AND [Criteria2] = '" & Forms![FormName]![Control2] & "'" _
& " AND [Criteria3] =#" & Forms![FormName]![Control3] & "#")
' Use two fields from a single record.
variable = DMax("[LastName] & ', ' & [FirstName]", "tblPeople", "[PrimaryKey] = 7")
' Expressions
variable = DMax("[Field1] + [Field2]", "tableName", "[PrimaryKey] = 7")
' Control Structures
variable = DMax("IIf([LastName] Like 'Smith', 'True', 'False')", "tableName", "[PrimaryKey] = 7")
' ***************************
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.