Introduzione alle espressioni

In Microsoft Access è possibile usare le espressioni per una vasta gamma di attività, ad esempio eseguire calcoli matematici, combinare o estrarre testo e convalidare dati. Questo articolo fornisce informazioni generali sulle espressioni: quando usarle, da quali componenti sono costituite e in che modo possono essere confrontate con le formule di Microsoft Excel.

In questo articolo

Panoramica delle espressioni

Modalità di utilizzo delle espressioni

Esempi di espressioni

Componenti delle espressioni

Confronto tra le espressioni di Access e le formule di Excel

Panoramica delle espressioni

Se si vuole che Access esegua una determinata operazione, occorre usare un linguaggio che sia in grado di capire. Supponiamo ad esempio di volere che Access esegua una ricerca nel campo BirthDate della tabella Customers e restituisca l'anno di nascita del cliente. A questo scopo è possibile scrivere l'espressione seguente:

DatePart("yyyy",[Customers]![BirthDate])

Questa espressione è composta dalla funzione DatePart e dai due argomenti "yyyy" e [Customers]![BirthDate].

Esaminiamo l'espressione in modo più dettagliato.

Espressione di esempio

1 DatePart è una funzione che esamina una data e restituisce una parte specifica. In questo caso vengono usati i primi due argomenti.

2 L'argomento intervallo indica ad Access la parte di data da restituire. In questo caso l'argomento "yyyy" indica ad Access di restituire solo la parte della data relativa all'anno.

3 L'argomento data indica ad Access dove cercare il valore della data. In questo caso, Customers]![BirthDate] indica ad Access di cercare la data nel campo BirthDate della tabella Customers.

Modalità di utilizzo delle espressioni

È possibile usare le espressioni nei modi seguenti:

  • Calcolare valori non disponibili direttamente nei dati. È possibile calcolare valori nei campi di tabelle e query e nei controlli di maschere e report.

  • Definire un valore predefinito per un campo di tabella o per un controllo in una maschera o un report. Questi valori predefiniti vengono visualizzati quando si apre una tabella, una maschera o un report.

  • Creare una regola di convalida per controllare i valori che un utente può immettere in un campo o in un controllo.

  • Definire criteri di query per limitare i risultati a uno specifico sottoinsieme.

Calcolare valori

Una delle situazioni più comuni in cui in Access vengono usate le espressioni è il calcolo di valori non presenti direttamente nei dati disponibili. Una colonna di una tabella o una query derivante da un calcolo di questo tipo viene definita campo calcolato. È possibile creare un campo calcolato che combina due o più campi di tabella. In numerose tabelle, ad esempio, i nomi e i cognomi sono memorizzati in campi distinti. Per combinare nome e cognome e quindi visualizzarli in un campo singolo, è possibile creare un campo calcolato nella tabella o in una query:

[FirstName] & " " & [LastName].

In questo caso le e commerciali (&) combinano il valore del campo FirstName, uno spazio (racchiuso tra virgolette) e il valore del campo LastName.

Definire un valore predefinito

Le espressioni di Access possono essere usate anche per fornire un valore predefinito per un campo di una tabella o per un controllo. Per impostare ad esempio il valore predefinito per un campo di tipo Data sulla data corrente, nella casella della proprietà Valore predefinito per tale campo digitare:

Date()

Creare una regola di convalida

Un'espressione può anche essere usata per impostare una regola di convalida. Ad esempio, è possibile usare una regola di convalida in un controllo o in un campo di tabella per verificare che la data immessa sia maggiore o uguale alla data corrente. In tal caso, il valore della casella della proprietà Valido se deve essere impostato su:

>= Date()

Definire criteri di query

Infine, è possibile utilizzare un'espressione per impostare criteri per una query. Si supponga ad esempio di voler visualizzare le vendite di prodotti per gli ordini emessi in un determinato periodo di tempo. È possibile specificare criteri per definire un intervallo di date. Verranno restituite solo le righe che corrispondono ai criteri. L'espressione potrebbe ad esempio essere simile alla seguente:

Between #1/1/2017# And #12/31/2017# 

Se si aggiungono criteri alla query e quindi si esegue di nuovo la query, verranno restituiti solo i valori corrispondenti alle date specificate.

Esempi di espressioni

Nella tabella seguente sono elencate alcune espressioni di Access di esempio e il relativo utilizzo tipico:

Espressione

Scopo

=[RequiredDate]-[ShippedDate]

Calcola la differenza tra i valori di data in due controlli casella di testo (RequiredDate e ShippedDate) in un report.

Date()

Imposta il valore predefinito per un campo di tabella Data/ora sulla data corrente.

Between #1/1/2017# And #12/31/2017#

Specifica i criteri per un campo Data/ora in una query.

=[Orders Subform].Form!OrderSubtotal

Restituisce il valore del controllo OrderSubtotal nella sottomaschera Orders della maschera Orders.

>0

Imposta una regola di convalida per un campo numerico di una tabella, in cui gli utenti devono immettere valori maggiori di zero.

Alcune espressioni, ma non tutte, iniziano con l'operatore di uguaglianza (=). Quando si calcola un valore per un controllo in una maschera o un report, iniziare l'espressione con l'operatore =. In altri casi, ad esempio quando si digita un'espressione in una query o nella proprietà ValorePredefinito o ValidoSe di un campo o di un controllo, non usare l'operatore = a meno che l'espressione non venga aggiunta a un campo di testo di una tabella. In alcuni casi, ad esempio quando si aggiungono espressioni a query, l'operatore = viene rimosso automaticamente.

Componenti delle espressioni

Un'espressione è costituita da un certo numero di componenti consentiti che possono essere usati singolarmente o in combinazione per produrre un risultato. Questi componenti includono:

  • Identificatori    Nomi di campi di tabella o di controlli in maschere o report oppure proprietà di questi campi o controlli.

  • Operatori    Ad esempio + (più) o - (meno).

  • Funzioni    Ad esempio SUM o AVG.

  • Costanti    Valori invariabili, ad esempio stringhe di testo o numeri che non vengono calcolati da un'espressione.

  • Valori    Stringhe, ad esempio "Immettere un numero compreso tra 1 e 10", o numeri, ad esempio 1.254, usati nelle operazioni.

Le sezioni seguenti descrivono questi componenti in maggiore dettaglio.

Identificatori

Un identificatore è il nome di un campo, una proprietà o un controllo. Viene usato in un'espressione per fare riferimento al valore associato a un campo, una proprietà o un controllo. Consideriamo ad esempio l'espressione =[RequiredDate]-[ShippedDate]. In questa espressione il valore del campo o del controllo ShippedDate viene sottratto dal valore del campo o del controllo RequiredDate. Nell'espressione sia RequiredDate che ShippedDate vengono usati come identificatori.

Operatori

Access supporta diversi operatori, inclusi gli operatori aritmetici comuni, come +, -, * (moltiplicazione) e / (divisione). È anche possibile usare gli operatori di confronto come < (minore di) o > (maggiore di) per confrontare valori, operatori di testo come & e + per concatenare (combinare) testo, operatori logici come Not e And per determinare valori true o false e altri operatori specifici di Access.

Funzioni

Le funzioni sono routine predefinite che è possibile usare nelle espressioni. Consentono di eseguire numerose operazioni, ad esempio calcolare valori, modificare testo e date e riepilogare dati. Una funzione comunemente usata è, ad esempio, DATE, che restituisce la data corrente. È possibile usare la funzione DATE in vari modi, ad esempio in un'espressione che imposta il valore predefinito per un campo in una tabella. In questo esempio, ogni volta che si aggiunge un nuovo record, il valore del campo viene impostato sulla data corrente per impostazione predefinita.

Alcune funzioni richiedono l'uso di argomenti. Un argomento è un valore che fornisce l'input alla funzione. Se una funzione richiede più argomenti, separarli con una virgola. Si consideri ad esempio la funzione DATE nell'espressione seguente:

=Format(Date(),"mmmm d, yyyy")

Questo esempio usa due argomenti:

  • Il primo argomento è la funzione Date(), che restituisce la data corrente. Se non ci sono argomenti, occorre comunque aggiungere le parentesi della funzione.

  • Il secondo argomento, "mmmm d, yyyy", separato dal primo da una virgola, specifica una stringa di testo per indicare alla funzione FORMAT come formattare il valore di data restituito. Si noti che la stringa di testo deve essere racchiusa tra virgolette.

Questa espressione illustra anche la possibilità di annidare spesso il valore restituito da una funzione come argomento per un'altra funzione. In questo caso Date() viene usato come argomento.

Costanti

Una costante è un elemento il cui valore non cambia durante l'esecuzione di Access. Le costanti True, False e Null vengono usate spesso nelle espressioni.

Valori

Nelle espressioni è possibile usare valori letterali, ad esempio il numero 1.254 o la stringa "Immettere un numero compreso tra 1 e 10". È possibile usare anche valori numerici, che possono essere costituiti da una serie di cifre e includere, se necessario, un segno e una virgola decimale.

Quando si usano valori di stringhe di testo, racchiuderli tra virgolette per assicurarne la corretta interpretazione in Access. In alcune circostanze, le virgolette vengono inserite automaticamente. Se ad esempio si digita testo in un'espressione per una regola di convalida o per i criteri di una query, le stringhe di testo vengono racchiuse automaticamente tra virgolette.

Per usare valori di data/ora, racchiuderli tra cancelletti (#). Ad esempio, #3-7-17#, #7-Mar-17# e #Mar-7-2017# sono tutti valori di data/ora validi. Quando Access rileva un valore di data/ora valido racchiuso tra caratteri #, lo considera automaticamente come un tipo di dati Data/ora.

Inizio pagina

Confronto tra le espressioni di Access e le formule di Excel

Le espressioni di Access sono analoghe alle formule di Excel, in quanto utilizzano elementi simili per produrre un risultato. Entrambe contengono uno o più degli elementi seguenti:

  • Identificatori    In Excel gli identificatori sono i nomi di singole celle o di intervalli di celle di una cartella di lavoro, ad esempio A1, B3:C6 o Foglio2!C32. In Access gli identificatori sono i nomi dei campi di tabella, ad esempio [Contacts]![First Name], i controlli di maschere o report, ad esempio Forms![Task List]![Description], o le proprietà di tali campi o controlli, ad esempio Forms![Task List]![Description].ColumnWidth.

  • Operatori    Sia in Access che in Excel gli operatori vengono usati per confrontare valori o eseguire semplici calcoli sui dati. Esempi di operatori sono + (più) o - (meno).

  • Funzioni    Sia in Access che in Excel le funzioni e gli argomenti vengono usati per completare azioni che non possono essere eseguite con i soli operatori. Ad esempio, è possibile calcolare la media dei valori di un campo o convertire il risultato di un calcolo in un formato valuta. Alcuni esempi di funzioni sono SUM/SOMMA e STDEV/DEV.ST. Gli argomenti sono valori che forniscono informazioni alle funzioni. Sia in Access che in Excel sono disponibili molte funzioni, ma i nomi di funzioni simili potrebbero non essere uguali nei due programmi. Ad esempio, la funzione MEDIA in Excel corrisponde alla funzione AVG in Access.

  • Costanti    Sia in Access che in Excel le costanti sono valori che rimangono invariati, ad esempio numeri che non vengono calcolati mediante un'espressione.

  • Valori    I valori vengono usati in modo simile in Access e in Excel.

Nelle espressioni di Access vengono utilizzati operatori e costanti simili a quelli utilizzati nelle formule di Excel, ma con identificatori e funzioni diversi. Le formule di Excel vengono usate in genere solo nelle celle dei fogli di calcolo. Le espressioni di Access invece vengono utilizzate in molti punti dell'applicazione per un'ampia gamma di operazioni, ad esempio:

  • Creazione di controlli calcolati in maschere e report.

  • Creazione di campi calcolati in tabelle e query.

  • Utilizzo come criteri nelle query.

  • Convalida dei dati immessi in un campo o in un controllo di una maschera.

  • Raggruppamento dei dati in report.

È possibile usare un'espressione di Access o una formula di Excel per il calcolo di valori numerici o di data/ora con operatori matematici. Per calcolare ad esempio un prezzo scontato per un cliente, è possibile usare la formula di Excel =C2*(1-D2) o l'espressione di Access = [Unit Price]*(1-[Discount]).

Si può anche usare un'espressione di Access o una formula di Excel per combinare, dividere o modificare in altro modo le stringhe con operatori di tipo stringa. Per combinare ad esempio un nome e un cognome in un'unica stringa, è possibile usare la formula di Excel =D3 & " " & D4 o l'espressione di Access = [First Name] & " " & [Last Name].

Inizio pagina

Vedere anche

Usare il Generatore di espressioni

Creare un'espressione

Guida alla sintassi delle espressioni

Esempi di espressioni

Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa al programma Office Insider

Queste informazioni sono risultate utili?

Grazie per i tuoi commenti e suggerimenti

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×