È possibile usare le funzioni DVar e DVarP per stimare la varianza in un set di valori in un set di record specificato (un dominio). Usare le funzioni DVar e DVarP in un modulo di Visual Basic, Applications Edition (VBA), una macro, un'espressione di query o un controllo calcolato in una maschera o un report.
La funzione DVarP valuta la varianza in una popolazione, mentre la funzione DVar valuta la varianza in un campione di popolazione.
È ad esempio possibile usare la funzione DVar per calcolare la varianza in un set di punteggi dei test degli studenti.
Sintassi
DVar(espr, dominio [, criteri] )
DVarP(espr, dominio [, criteri] )
Le funzioni DVar e DVarP hanno gli argomenti seguenti:
| Argomento | Descrizione |
|---|---|
| espressione | Obbligatorio. Espressione che identifica il campo numerico in cui si vuole trovare la varianza. Può trattarsi di un'espressione stringa che identifica un campo di una tabella o di una query oppure di un'espressione che esegue un calcolo sui dati di tale campo. In espr è possibile includere il campo del nome in una tabella, un controllo in una maschera, una costante o una funzione. Se espr include una funzione, può essere predefinita o definita dall'utente, ma non un'altra funzione di aggregazione di dominio o di aggregazione SQL. Qualsiasi campo incluso in espr deve essere un campo numerico. |
| dominio | Obbligatorio. Un'espressione di stringa che identifica il set di record che costituisce il dominio. Può essere un nome di una tabella o di una query che non richiede un parametro. |
| criteri | Facoltativo. Espressione stringa usata per limitare l'intervallo di dati su cui viene eseguita la funzione DVar o DVarP. Ad esempio, criteri è spesso equivalente alla clausola WHERE in un'espressione SQL, senza la parola WHERE. Se criteri viene omesso, le funzioni DVar e DVarP valutano espr rispetto all'intero dominio. Qualsiasi campo incluso in criteri deve essere anche un campo in dominio; in caso contrario, le funzioni DVar e DVarP restituiscono un valore Null. |
Osservazioni
Se dominio fa riferimento a meno di due record o se meno di due record soddisfano criteri, le funzioni DVar e DVarP restituiscono un valore Null, che indica che non è possibile calcolare una varianza.
Indipendentemente dal fatto che la funzione DVar o DVarP venga usata in una macro, un modulo, un'espressione di query o un controllo calcolato, è necessario specificare con attenzione l'argomento criteri per assicurarsi che venga valutato correttamente.
È possibile usare le funzioni DVar e DVarP per specificare criteri nella riga Criteri di una query di selezione, in un'espressione con campi calcolati in una query o nella riga Aggiorna a di una query di aggiornamento.
Nota
È possibile usare le funzioni DVar e DVarP o le funzioni Var e VarP in un'espressione con campi calcolati in una query di totalizzazione. Se si usa la funzione DVar o DVarP, i valori vengono calcolati prima che i dati vengano raggruppati. Se si usa la funzione Var o VarP, i dati vengono raggruppati prima che i valori nell'espressione con campi vengano valutati.
Usare le funzioni DVar e DVarP in un controllo calcolato quando è necessario specificare criteri per limitare l'intervallo di dati su cui viene eseguita la funzione. Per visualizzare, ad esempio, una varianza per gli ordini da spedire in California, impostare la proprietà .OrigineControllo di una casella di testo sull'espressione seguente:
=DVar("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Se si vuole semplicemente trovare la deviazione standard in tutti i record in dominio, usare la funzione Var o VarP .
Nota
Le modifiche non salvate ai record in dominio non vengono incluse quando si usano queste funzioni. Se si vuole che la funzione DVar o DVarP sia basata sui valori modificati, è prima necessario salvare le modifiche facendo clic su Salva record in Record nella scheda Dati, spostando lo stato attivo su un altro record oppure usando il metodo Update.
Esempio di query
| Espressione | Risultati |
|---|---|
| SELECT DVar("prezzounitario","venditeProdotto","prezzounitario>140") AS DVar_Value, DVarP("prezzounitario","venditeprodotto","prezzounitario<140") AS DVarP_Value FROM prodottoVendite GROUP BY DVar("prezzounitario","venditeprodotto","prezzounitario>140"), DVarP("prezzounitario","productSales","prezzounitario<140"); | Calcola la varianza di "PrezzoUnitario" dalla tabella "VenditeProdotto", dove "prezzounitario" è maggiore di 140 e visualizza il risultato in DVar_Value. Calcola anche la varianza di "PrezzoUnitario" (considerando i dati dati come intera popolazione) dove "prezzounitario" è minore di 140 e visualizza i risultati in DVarP_Value. |
Esempi di VBA
Nota
Gli esempi seguenti illustrano l'uso di questa funzione in un modulo di Visual Basic, Applications Edition (VBA). Per altre informazioni sull'uso di VBA, selezionare Riferimenti per sviluppatori nell'elenco a discesa accanto a Cerca e immettere uno o più termini nella casella di ricerca.
L'esempio seguente restituisce le stime della varianza per una popolazione e un campione di popolazione per gli ordini spediti nel Regno Unito. Il dominio è una tabella degli ordini. L'argomento criteri limita il set di record risultante a quelli per cui Il PaeseSpedizione è uguale al Regno Unito.
Dim dblX As Double
Dim dblY As Double
' Sample estimate.
dblX = DVar("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
' Population estimate.
dblY = DVarP("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
L'esempio successivo restituisce le stime usando una variabile, strCountryRegion, nell'argomento criteri . Si noti che nell'espressione stringa sono incluse virgolette singole ('), quindi quando le stringhe vengono concatenate, il valore letterale UK stringa sarà racchiuso tra virgolette singole.
Dim strCountryRegion As String
Dim dblX As Double
strCountryRegion = "UK"
dblX = DVar("[Freight]", "Orders", _
"[ShipCountryRegion] = '" & strCountryRegion & "'")