Pode utilizar as funções DVar e DVarP para estimar a variância num conjunto de valores num conjunto específico de registos (um domínio). Utilize as funções DVar e DVarP num módulo Visual Basic for Applications (VBA), numa macro, numa consulta de expressão ou num controlo calculado num formulário ou relatório.
Utilize a função DVarP para avaliar a variância numa população e a função DVar para avaliar a variância numa amostra de população.
Por exemplo, pode utilizar a função DVar para calcular a variância de um conjunto de resultados de testes de estudantes.
Sintaxe
DVar(expr, domínio [, critérios] )
DVarP(expr, domínio [, critérios] )
As funções DVar e DVarP têm estes argumentos:
| Argumento | Descrição |
|---|---|
| expr | Obrigatório. Uma expressão que identifica o campo numérico no qual pretende determinar a variância. Pode ser uma expressão de cadeia que identifica um campo de uma tabela ou consulta ou pode ser uma expressão que executa um cálculo em dados nesse campo. Em expr, pode incluir o campo de nome numa tabela, um controlo num formulário, uma constante ou uma função. Se expr inclui uma função, pode ser incorporada ou definida pelo utilizador, mas não pode ser outra agregação de domínio ou função de agregação SQL. Qualquer campo incluído no expr tem de ser um campo numérico. |
| domínio | Obrigatório. Uma expressão de cadeia que identifica o conjunto de registos que constituem o domínio. Pode ser um nome de tabela ou um nome de consulta de uma consulta que não necessita de um parâmetro. |
| critérios | Opcional. Uma expressão de cadeia utilizada para restringir o intervalo de dados no qual a função DVar ou DVarP é executada. Por exemplo, criteria é muitas vezes equivalente à cláusula WHERE numa expressão SQL, sem a palavra WHERE. Se os critérios forem omitidos, as funções DVar e DVarP avaliam o expr em comparação com o domínio inteiro. Qualquer campo incluído nos critérios também deve ser um campo no domínio; caso contrário, as funções DVar e DVarP retornam um Null. |
Comentários
Se domínio se referir a menos de dois registos ou se menos de dois registos satisfizerem os critérios, as funções DVar e DVarP devolvem um resultado Nulo, indicando que não é possível calcular uma variância.
Quer utilize a função DVar ou DVarP numa macro, módulo, expressão de consulta ou controlo calculado, tem de construir cuidadosamente o argumento critérios para se certificar de que será avaliado corretamente.
Pode utilizar as funções DVar e DVarP para especificar critérios na linha Critérios de uma consulta selecionar, numa expressão de campo calculado numa consulta ou na linha Atualizar Para de uma consulta atualização.
Nota
Pode utilizar as funções DVar e DVarP ou as funções Var e VarP numa expressão de campo calculado numa consulta de totais. Se utilizar a função DVar ou DVarP , os valores são calculados antes de os dados serem agrupados. Se utilizar a função Var ou VarP , os dados são agrupados antes de os valores no campo de expressão serem avaliados.
Utilize as funções DVar e DVarP num controlo calculado quando precisa de especificar critérios para restringir o intervalo de dados no qual a função é executada. Por exemplo, para exibir uma variação de pedidos a serem enviados para a Califórnia, defina a propriedade ControlSource de uma caixa de texto com a seguinte expressão:
=DVar("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Se você quiser simplesmente encontrar o desvio padrão em todos os registros no domínio, use a função Var ou VarP .
Nota
As alterações não guardadas aos registos no domínio não são incluídas quando utiliza estas funções. Se quiser que a função DVar ou DVarP seja baseada nos valores alterados, primeiro tem de guardar as alterações ao clicar em Guardar Registo em Registos no separador Dados , mover o foco para outro registo ou utilizar o método Update .
Exemplo de consulta
| Expressão | Resultados |
|---|---|
| SELECT DVar("preçounitário","productSales","unitprice>140") COMO DVar_Value, DVarP("preçounitário","productSales","unitprice<140") COMO DVarP_Value FROM productSales GROUP BY DVar("preçounitário","productSales","unitprice>140"), DVarP("preçounitário","productSales","unitprice<140"); | Calcula a Variância de "PreçoUnitário" a partir da tabela "VendasDeProdutos", em que "PreçoUnitário" é maior que 140 e apresenta o resultado em DVar_Value. Também calcula a Variância de "PreçoUnitário" (considerando os dados fornecidos como a população total) em que "PreçoUnitário" é inferior a 140 e apresenta os resultados em DVarP_Value. |
Exemplos de VBA
Nota
Os exemplos seguintes demonstram a utilização desta função no módulo VBA (Visual Basic for Applications). Para obter mais informações sobre como trabalhar com o VBA, selecione Referência para Programadores na lista pendente junto a Procurar e introduza um ou mais termos na caixa de pesquisa.
O exemplo seguinte devolve estimativas da variância para uma população e uma amostra de população para encomendas enviadas para o Reino Unido. O domínio é uma tabela Encomendas. O argumento critérios restringe o conjunto de registos resultante àqueles em que EnviarPaísRegião é igual a Reino Unido.
Dim dblX As Double
Dim dblY As Double
' Sample estimate.
dblX = DVar("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
' Population estimate.
dblY = DVarP("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
O exemplo seguinte devolve estimativas utilizando uma variável, strCountryRegion, no argumento criteria . Tenha em atenção que plicas (') estão incluídas na expressão da cadeia, para que quando as cadeias forem concatenadas, a cadeia literal UK seja colocada entre aspas simples.
Dim strCountryRegion As String
Dim dblX As Double
strCountryRegion = "UK"
dblX = DVar("[Freight]", "Orders", _
"[ShipCountryRegion] = '" & strCountryRegion & "'")