DMin メソッド (Access)Application.DMin method (Access)

DMin関数を使用すると、指定されたレコードのセット (定義域) に含まれる最小値を調べることができます。You can use the DMin function to determine the minimum value in a specified set of records (a domain).


DMin(ExprDomainCriteria)expression.DMin (Expr, Domain, Criteria)

expression**Application** オブジェクトを 表す変数。expression A variable that represents an Application object.


名前Name 必須 / オプションRequired/Optional データ型Data type 説明Description
ExprExpr 必須Required StringString 最小値または最大値を取得するフィールドを識別する式です。An expression that identifies the field for which you want to find the minimum or maximum value. テーブルまたはクエリのフィールドを識別する文字列式、または そのフィールドのデータを使用して計算を実行する式を指定できます。It can be a string expression identifying a field in a table or query, or it can be an expression that performs calculation on data in that field. expr では、テーブルのフィールド、フォームのコントロール、定数、または関数の名前を指定できます。In expr, you can include the name of a field in a table, a control on a form, a constant, or a function. _Expr_に関数を指定する場合は、組み込み関数またはユーザー定義関数のどちらも指定できますが、他の定義域集計関数または SQL 集計関数は使用できません。If expr includes a function, it can be either built-in or user-defined, but not another domain aggregate or SQL aggregate function.
ドメインDomain 必須Required StringString 定義域を構成するレコードセットを識別する文字列式。A string expression identifying the set of records that constitutes the domain. パラメーターを必要としないクエリには、テーブル名またはクエリ名が指定できます。It can be a table name or a query name for a query that does not require a parameter.
CriteriaCriteria 省略可能Optional VariantVariant DMin 関数の対象となるデータの範囲を指定する省略可能な文字列式です。An optional string expression used to restrict the range of data on which the DMin function is performed. たとえば、 criteria は多くの場合、SQL 式の WHERE 句と同じ役割を果たします (ただし WHERE という語は使用しません)。For example, criteria is often equivalent to the WHERE clause in an SQL expression, without the word WHERE. 引数 criteria を省略すると、DMin は定義域全体に対して expr を適用します。If criteria is omitted, the DMin function evaluates expr against the entire domain. _抽出条件_に含まれているフィールドは、_ドメイン_のフィールドでもある必要があります。それ以外の場合、 DMin関数はNullを返します。Any field that is included in criteria must also be a field in domain; otherwise, the DMin function returns a Null.

戻り値Return value



たとえば、レポートの演算コントロールでDMin関数を使用して、特定の得意先の最小受注額を表示することができます。For example, you could use the DMin function in calculated controls on a report to display the smallest order amount for a particular customer. または、クエリ式でDMin関数を使用して、最小割引額を超える割引が適用されているすべての注文を表示することもできます。Or you could use the DMin function in a query expression to display all orders with a discount greater than the minimum possible discount.

DMin 関数は、criteria の範囲内の最小値を返します。The DMin function returns the minimum values that satisfy criteria. expr が数値データであるときは、DMin 関数は数値を返します。If expr identifies numeric data, the DMin function returns numeric values. expr が文字列データのときは、アルファベット順で先頭または末尾の文字列を返します。If expr identifies string data, they return the string that is first or last alphabetically.

DMin 関数は、expr で参照されるフィールドの Null 値を無視します。The DMin function ignores Null values in the field referenced by expr. ただし、レコードが_条件_を満たしていない場合や、 _domain_にレコード**** が含まれていない場合は、 Null値が返されます。However, if no record satisfies criteria, or if domain contains no records, the DMin function returns a Null.

DMin関数を使って、クエリの [抽出条件] 行、クエリの演算フィールドの式、または更新クエリの [レコードの更新] 行に抽出条件を指定できます。You can use the DMin function to specify criteria in the Criteria row of a query, in a calculated field expression in a query, or in the Update To row of an update query.


集計クエリの演算フィールドの式では、 DMin関数またはMin関数を使用できます。You can use the DMin function or the Min function in a calculated field expression of a totals query. DMin関数を使用すると、データがグループ化される前に値が評価されます。If you use the DMin function, values are evaluated before the data is grouped. Min関数を使用すると、フィールド式の値が評価される前に、データがグループ化されます。If you use the Min function, the data is grouped before values in the field expression are evaluated.

domain のすべてのレコードの最小値または最大値を取得するだけの場合は、Min 関数または Max 関数を使用してください。If you simply want to find the minimum or maximum value of all records in domain, use the Min or Max function.

DMin 関数または DMax 関数を使って外部テーブルのフィールドから最小値または最大値を取得できますが、両方のテーブルの必要なフィールドが含まれるクエリを作成して、そのクエリを基にフォームまたはレポートを作成すると効率的です。Although you can use the DMin or DMax function to find the minimum or maximum value from a field in a foreign table, it may be more efficient to create a query that contains the fields that you need from both tables and base your form or report on that query.


次の例では、愛知県に出荷された貨物の運送料の最大値と最小値を返します。The following example returns the lowest and highest values from the Freight field for orders shipped to the United Kingdom. 定義域は [Orders] テーブルです。The domain is an Orders table. 引数 criteria は、[ShipCountry] が UK のレコードのセットを抽出するよう指定されています。The criteria argument restricts the resulting set of records to those for which ShipCountry equals UK.

Dim curX As Currency 
Dim curY As Currency 
curX = DMin("[Freight]", "Orders", "[ShipCountry] = 'UK'") 
curY = DMax("[Freight]", "Orders", "[ShipCountry] = 'UK'")

次の例では、criteria 式には変数がdteOrderDate含まれています。In the next example, the criteria expression includes a variable, dteOrderDate. 文字列が連結されたときに、文字列式のシャープ記号 (#) で日付を囲みます。Note that number signs (#) are included in the string expression, so that when the strings are concatenated, they will enclose the date.

Dim dteOrderDate As Date 
Dim curX As Currency 
dteOrderDate = #03/30/2000# 
curX = DMin("[Freight]", "Orders", _ 
    "[OrderDate] = #" & dteOrderDate & "#")

次の例は、DMin 関数でさまざまな種類の抽出条件を使用する方法を示しています。The following examples show how to use various types of criteria with the DMin function.

    ' ***************************
    ' Typical Use
    ' Numerical values. Replace "number" with the number to use.
    variable = DMin("[FieldName]", "TableName", "[Criteria] = number")

    ' Strings.
    ' Numerical values. Replace "string" with the string to use.
    variable = DMin("[FieldName]", "TableName", "[Criteria]= 'string'")

    ' Dates. Replace "date" with the string to use.
    variable = DMin("[FieldName]", "TableName", "[Criteria]= #date#")
    ' ***************************

    ' ***************************
    ' Referring to a control on a form
    ' Numerical values
    variable = DMin("[FieldName]", "TableName", "[Criteria] = " & Forms!FormName!ControlName)

    ' Strings
    variable = DMin("[FieldName]", "TableName", "[Criteria] = '" & Forms!FormName!ControlName & "'")

    ' Dates
    variable = DMin("[FieldName]", "TableName", "[Criteria] = #" & Forms!FormName!ControlName & "#")
    ' ***************************

    ' ***************************
    ' Combinations
    ' Multiple types of criteria
    variable = DMin("[FieldName]", "TableName", "[Criteria1] = " & Forms![FormName]![Control1] _
             & " AND [Criteria2] = '" & Forms![FormName]![Control2] & "'" _
            & " AND [Criteria3] =#" & Forms![FormName]![Control3] & "#")
    ' Use two fields from a single record.
    variable = DMin("[LastName] & ', ' & [FirstName]", "tblPeople", "[PrimaryKey] = 7")
    ' Expressions
    variable = DMin("[Field1] + [Field2]", "tableName", "[PrimaryKey] = 7")
    ' Control Structures
    variable = DMin("IIf([LastName] Like 'Smith', 'True', 'False')", "tableName", "[PrimaryKey] = 7")
    ' ***************************

サポートとフィードバックSupport and feedback

Office VBA またはこの説明書に関するご質問やフィードバックがありますか?Have questions or feedback about Office VBA or this documentation? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.