Application.DVarP 方法 (Access)

计算指定记录集(域)中的全体记录的方差。

语法

表达式DVarP (Expr条件)

expression:表示 Application 对象的变量。

参数

名称 必需/可选 数据类型 说明
Expr 必需 字符串 一个表达式,它标识您要从中查找方差的数值字段。 它可以是一个标识来自表或查询中的字段的字符串表达式,或者也可以是一个对该字段中的数据执行计算的表达式。 在 expr 中,可以包含表中字段、窗体控件、常量或函数的名称。 如果 expr 包含函数,它可以是内置函数或用户定义的函数,但不能是其他域聚合函数或 SQL 聚合函数。 expr 中包括的任何字段都必须是数值字段。
必需 字符串 字符串表达式,用于标识组成域的记录集。 可以是表名称或不需要参数的查询的查询名称。
Criteria 可选 Variant 一个可选的字符串表达式,它用于限制作为 DVarP 函数执行对象的数据范围。 例如,criteria通常是相当于 SQL 表达式中的 WHERE 子句位置,但是不使用 WHERE一词。 如果省略 criteriaDVarP 函数将针对整个域对 expr 求值。 条件中包含的任何字段也必须是域中的字段;否则,DVarP 函数返回 Null

返回值

Variant

备注

如果 引用的记录少于两个,或者满足 条件的记录少于两个, 则 DVarP 函数返回 Null,指示无法计算方差。

无论是在宏、模块、查询表达式还是计算控件中使用 DVarP 函数,都必须仔细构造 criteria 参数,以确保正确计算它。

使用 DVarP 函数在选择查询的 Criteria 行、查询的计算字段表达式或更新查询的 “更新到” 行中指定条件。

注意

在总计查询的计算字段表达式中使用 DVarP 函数或 VarP 函数。 如果使用 DVarP 函数,则在将数据分组之前计算各个值。 如果使用 VarP 函数,则在分组之后计算字段表达式中的值。

如果只是要查找 domain 中所有记录的标准偏差,可使用 VarVarP 函数。

示例

下面的示例返回运往英国的订单总体和总体抽样的方差估算值。 域为“Orders”表。 criteria 参数将记录集的结果限制为“ShipCountry”等于 UK 的记录。

Dim dblX As Double 
Dim dblY As Double 
 
' Sample estimate. 
dblX = DVar("[Freight]", "Orders", "[ShipCountry] = 'UK'") 
 
' Population estimate. 
dblY = DVarP("[Freight]", "Orders", "[ShipCountry] = 'UK'")

以下示例演示如何对 DVarP 函数使用各种类型的条件。

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

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

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

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

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

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

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

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。