Introduzione alle espressioni

Importante :  Il presente articolo è stato tradotto automaticamente, vedere la dichiarazione di non responsabilità. Per visualizzare la versione inglese dell'articolo, fare clic qui.

Le espressioni possono essere utilizzate in Microsoft Office Access 2007 per un'ampia gamma di attività, ad esempio per eseguire calcoli matematici, combinare o estrarre testo o convalidare dati. In questo articolo sono contenute informazioni preliminari sulle espressioni, ovvero quando utilizzarle e da quali elementi sono composte. Vengono inoltre confrontate le espressioni di Access con le formule di Microsoft Office Excel.

Contenuto dell'articolo

Panoramica delle espressioni

Perché utilizzare le espressioni

Confronto tra espressioni di Access e formule di Excel

Componenti di un'espressione

Esempi di espressioni

Panoramica delle espressioni

Un'espressione è una combinazione di alcune o tutte le operazioni seguenti: funzioni predefinite o definiti dall'utente, gli identificatori, operatori e costanti che restituiscono un singolo valore.

Suggerimento : In Access 2010, il generatore di espressioni ha IntelliSense, in modo da visualizzare gli argomenti che richiede l'espressione.

componenti di un'espressione

L'espressione seguente contiene ad esempio tutti e quattro gli elementi:

= Somma ( [prezzo di acquisto]) * 0,08

In questo esempio, somma () è una funzione incorporata, [Prezzo acquisto] è un identificatore, * è un operatore matematico e 0,08 è una costante. Questa espressione può essere utilizzata in una casella di testo in un piè di pagina maschera o un piè di pagina report per calcolare l'importo dell'IVA per un gruppo di elementi.

Le espressioni possono essere molto più complesse o semplici rispetto a questo esempio. Questa espressione booleano, ad esempio, è composta solo da un operatore e una costante:

>0

Restituisce True quando viene confrontata a un numero maggiore di 0 e False quando viene confrontata a un numero minore di 0. Può essere utilizzata nella proprietà Valido se di un controllo o di un campo di tabella per verificare che vengano inseriti solo valori positivi.

In Access le espressioni sono utilizzate in molte situazioni per eseguire calcoli, modificare caratteri o verificare dati. Le tabelle, le query, le maschere, i report e le macro dispongono di proprietà che accettano un'espressione. È possibile ad esempio utilizzare espressioni nelle proprietà Origine controllo e Valore predefinito di un controllo, nonché nella proprietà Valido se di un campo di tabella. Quando inoltre si scrive codice Visual Basic, Applications Edition (VBA) per una routine evento o un modulo, vengono spesso utilizzate espressioni simili a quelle utilizzate in un oggetto di Access, quale una tabella o una query.

Nota : Per ulteriori informazioni sui componenti di un'espressione, vedere la sezione Componenti di un'espressione più avanti in questo articolo.

Inizio pagina

Perché utilizzare le espressioni

In Access è possibile utilizzare espressioni per eseguire le azioni seguenti:

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

  • Impostare un valore predefinito per un campo di tabella o un controllo di una maschera o un report. Questi valori predefiniti vengono visualizzati all'apertura della tabella, della maschera o del report.

  • Creare una regola di convalida. Le regole di convalida controllano i valori che un utente può immettere in un campo o in un controllo.

  • Specificare criteri per una query.

Una delle situazioni più comuni in cui in Access vengono utilizzate le funzioni è il calcolo di valori non presenti direttamente nei dati disponibili. È possibile ad esempio creare una colonna in una query per calcolare il totale di una voce e quindi utilizzare il valore in una maschera o un report. Una colonna di una query derivante da un calcolo di questo tipo viene definita campo calcolato. L'espressione seguente in una query consente ad esempio di calcolare il totale delle voci con uno sconto applicato.

PrezzoComplessivo : CCur ( [Dettagli ordine]. [ Prezzo unitario] * [Quantità] *(1-[Discount])/100) * 100

In questa espressione il nome della colonna risultante o campo calcolato è PrezzoComplessivo.

Non è possibile creare un campo di tabella che calcoli automaticamente il proprio risultato. Se necessario, è possibile utilizzare un campo di tabella per memorizzare i risultati di un calcolo eseguito in un punto diverso, ad esempio in una query o una maschera. A meno che non sia presente un motivo specifico che lo sconsigli, è più efficiente memorizzare solo i valori necessari per eseguire un calcolo e quindi calcolare i risultati nel momento in cui sono necessari.

Si supponga, ad esempio, di dover calcolare l'importo totale in euro relativo a una voce di una fattura. Anziché memorizzare il totale delle voci nel database, lo si calcola quando necessario da due altri elementi memorizzati nel database, ovvero quantità e prezzo. In un controllo casella di testo del report Fattura si utilizza l'espressione seguente per calcolare il valore:

= CCur ( [Quantity]*[Price])

In questa espressione la quantità viene moltiplicata per il prezzo e quindi viene utilizzata la funzione CCur per convertire il risultato nel tipo di dati Valuta. Per ogni ordine è inoltre possibile calcolare uno sconto.

È possibile creare un campo calcolato ogni volta che è necessario calcolare o eseguire operazioni sui dati in due o più campi di tabella. In numerose tabelle, ad esempio, i nomi e i cognomi vengono memorizzati in campi distinti. Per combinare nome e cognome e quindi visualizzarli in un campo singolo, è possibile creare un campo calcolato in una query. Come accennato in precedenza, potrebbe sembrare logico creare questo tipo di campo calcolato direttamente in una tabella, tuttavia le tabelle non supportano questo tipo di operazione. Non prevedono un campo o una proprietà in cui poter aggiungere l'espressione necessaria.

Un campo calcolato che combina i nomi e cognomi finita sarà simile alla seguente: [nome] & "" & [Cognome]. In questo caso, la e commerciale (&) combinano il valore nel campo nome , uno spazio (uno spazio racchiuso tra virgolette) e il valore nel campo Cognome .

È anche possibile usare le espressioni in Access per fornire un valore predefinito per un campo in una tabella o per un controllo. Ad esempio, per impostare il valore predefinito per un campo di data in base alla data corrente, digitare Data () nella casella della proprietà Valore predefinito per il campo.

Inoltre, è possibile utilizzare un'espressione per impostare una regola di convalida. Ad esempio, è possibile utilizzare una regola di convalida in un controllo o campo di tabella in modo da richiedere che la data che viene immesso è maggiore o uguale alla data corrente. In questo caso, impostare il valore nella casella della proprietà Regola di convalida a > = Data ().

È possibile infine utilizzare un'espressione per impostare criteri per una query. Si supponga ad esempio di avere la necessità di 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 analoga alla seguente:

Between # #1/1/2007 E # #12/31/2007

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

Inizio pagina

Confronto tra espressioni di Access e formule di Excel

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

  • Identificatori    In Excel, gli identificatori sono i nomi delle singole celle o intervalli di celle in una cartella di lavoro, ad esempio A1, B3:C6o Foglio2! C32. In Access, gli identificatori sono i nomi dei campi della tabella (ad esempio [contatti]! [Nome]), controlli nelle maschere o report (ad esempio Forms! [ Elenco di attività]! [Descrizione]), o le proprietà di tali campi o controlli (ad esempio Forms! [ Elenco di attività]! [Descrizione].ColumnWidth).

  • Operatori    Sia in Access che in Excel gli operatori vengono utilizzati per confrontare valori o eseguire calcoli semplici sui dati. Sono operatori ad esempio il segno di addizione + o di sottrazione -.

  • Funzioni e argomenti    Sia in Access che in Excel le funzioni e gli argomenti vengono utilizzati per completare azioni non eseguibili solo mediante operatori, ad esempio è possibile calcolare la media dei valori di un campo o convertire il risultato di un calcolo in un formato valuta. Sono esempi di funzioni SOMMA e DEV.ST. Gli argomenti sono valori che forniscono informazioni alle funzioni. Sia Access che Excel comprendono molte funzioni, ma il nome di funzioni simili potrebbe non essere uguale nei due programmi. La funzione MEDIA di Excel corrisponde ad esempio alla funzione AVG in Access.

  • Costanti    Sia in Access che in Excel le costanti sono valori che non cambiano, ad esempio stringhe di testo o numeri che non vengono calcolati mediante un'espressione.

Per le espressioni di Access vengono utilizzati operatori e costanti simili a quelli utilizzati nelle formule di Excel, ma identificatori e funzioni diverse. Una formula di Excel può essere utilizzata solo in una posizione, ovvero una cella in un foglio di lavoro. Le espressioni di Access invece possono essere utilizzate in molte posizioni per un'ampia gamma di attività, tra cui:

  • Creazione di controlli calcolati in maschere e report

  • Creazione di campi calcolati in query

  • Utilizzo come criteri in query

  • Convalida di dati immessi in un campo oppure in un controllo di una maschera

  • Raggruppamento di dati in report

Per calcolare valori numerici o di tipo Data/ora mediante operatori matematici è possibile utilizzare un'espressione di Access o una formula di Excel. Per calcolare ad esempio un prezzo scontato per un cliente, è possibile utilizzare la formula di Excel =C2*(1-D2) o l'espressione di Access = [Prezzo unitario]*(1-[Sconto]).

È possibile inoltre utilizzare un'espressione di Access o una formula di Excel per combinare, dividere o modificare in altro modo stringhe mediante operatori stringa. Per combinare ad esempio nome e cognome in una sola stringa, è possibile utilizzare la formula di Excel =D3 & " " & D4 o l'espressione di Access = [Nome] & " " & [Cognome].

Inizio pagina

Componenti di un'espressione

Le espressioni possono essere composte da identificatori, operatori, funzioni e argomenti, costanti e valori. Nelle sezioni seguenti sono descritti i componenti in dettaglio. Negli esempi di queste sezioni sono inoltre fornite brevi descrizioni della sintassi utilizzata nelle espressioni.

Identificatori

Un identificatore è il nome di un campo, proprietà o controllo. Utilizzare un identificatore in un'espressione per fare riferimento al valore associato a un campo, proprietà o controllo. Si consideri ad esempio il valore di expression = [DataRichiesta]-[DataSpedizione]. Questa espressione sottrae il valore del campo DataSpedizione o controllo rispetto al valore del campo DataRichiesta o controllo. In questa espressione DataRichiesta e DataSpedizione fungere da identificatori.

Operatori

In Access è supportata un'ampia gamma di operatori, tra cui gli operatori aritmetici comuni quali +, -, * (moltiplicazione) e / (divisione). È possibile inoltre utilizzare operatori di confronto quali < (minore di) o > (maggiore di) per confrontare valori, operatori di testo quali & e + per concatenare ovvero combinare testo, operatori logici quali Not e And per determinare valori veri o falsi e altri operatori specifici di Access.

Funzioni e argomenti

Le funzioni sono routine predefinite che è possibile utilizzare nelle espressioni. Consentono di eseguire un'ampia gamma di operazioni, ad esempio di calcolare valori, modificare testo e date e riepilogare dati. Una funzione di utilizzo comune è ad esempio Date che restituisce la data corrente e può essere utilizzata in modi diversi, ad esempio in un'espressione che imposta il valore predefinito di un campo in una tabella. In questo esempio quando viene aggiunto un nuovo record, il valore del campo verrà impostato per impostazione predefinita sulla data corrente.

Alcune funzioni richiedono l'utilizzo di argomenti. Un argomento è un valore che fornisce l'input alla funzione. Se una funzione richiede uno o più argomenti, separarli con una virgola. Ad esempio, nell'espressione seguente viene utilizzata la funzione Date.

= Formato ( date (), " mmmm d, aaaa ")

In questo esempio usa due argomenti. Il primo argomento è il Data () funzione che restituisce la data corrente. Il secondo argomento ("d mmmm yyyy"), separato dal primo argomento da una virgola, specifica una stringa di testo per indicare la funzione Format come formattare il valore di data restituita. Si noti che la stringa di testo deve essere racchiuso tra virgolette. Questa espressione illustra anche che è spesso possibile utilizzare il valore restituito da una funzione come argomento a un'altra funzione. In questo caso, Data () funge da un argomento.

Nella sezione Vedere anche sono presenti collegamenti a ulteriori informazioni sulla sintassi di funzioni ed espressioni.

Costanti

Una costante è un elemento il cui valore non cambia durante l'esecuzione di Access. Le costanti True, False e Null vengono spesso utilizzate nelle espressioni. È inoltre possibile definire costanti personalizzate nel codice Visual Basic, Applications Edition (VBA) che possono essere utilizzate nelle routine VBA. VBA è il linguaggio di programmazione utilizzato da Access.

Nota : Non è possibile utilizzare le costanti VBA in funzioni personalizzate utilizzate nelle espressioni. In VBA ad esempio sono disponibili costanti per ogni giorno della settimana, ovvero vbSunday rappresenta domenica, vbMonday rappresenta lunedì e così via. A ogni costante corrisponde un valore numerico: il valore numerico per vbSunday è 1, quello per vbMonday è 2 e così via. Non è possibile utilizzare queste costanti in una funzione personalizzata chiamata dall'interno di un'espressione. In questo caso è necessario utilizzare i valori numerici.

Valori

Nelle espressioni è possibile utilizzare valori letterali, ad esempio il numero 1.254 o la stringa "Immettere un numero compreso tra 1 e 10". È inoltre possibile utilizzare valori numerici che possono essere rappresentati da una serie di cifre che, se necessario, possono comprendere un segno e una virgola decimale. In assenza di un segno, si presuppone un valore positivo. Per definire un valore negativo, includere il segno meno (-). È inoltre possibile utilizzare la notazione scientifica, includendo "E" o "e" e il segno dell'esponente, ad esempio 1,0E-6.

In caso di utilizzo di stringhe di testo come costanti, racchiudere tali stringhe tra virgolette per garantirne l'interpretazione corretta in Access. In alcune situazioni le virgolette verranno 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 verranno automaticamente racchiuse tra virgolette.

Se ad esempio si digita il testo Parigi, nell'espressione visualizzata in Access verrà inserito "Parigi". Se si desidera che l'espressione restituisca una stringa racchiusa tra virgolette, racchiudere la stringa nidificata tra virgolette singole (') o all'interno di tre serie di virgolette doppie ("). Le espressioni seguenti, ad esempio, sono equivalenti:

Moduli ! [ Contatti]! [Città]. DefaultValue = '"Parigi" '

Moduli ! [ Contatti]! [Città]. DefaultValue = " " "Paris" " "

Per utilizzare valori di tipo Data/ora, racchiudere tali valori tra cancelletti (#). Ad esempio, #7-3-07#, #7-mar-07# e #Mar-7-2007# sono tutti valori di tipo Data/ora validi. Quando viene rilevato un valore di tipo Data/ora valido racchiuso tra #, tale valore viene automaticamente considerato di tipo Data/ora.

Inizio pagina

Esempi di espressioni

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

Espressione

Scopo

=[DataRichiesta]-[DataSpedizione]

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

Date( )

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

PrezzoComplessivo: CCur([Dettagli ordine].Prezzo unitario*[Quantità]*(1-[Sconto])/100)*100

Crea un campo calcolato denominato PrezzoComplessivo in una query.

Between #01/01/07# And #31/12/07#

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

=[Sottomaschera Ordini].Forms!SubtotaleOrdine

Restituisce il valore del controllo SubtotaleOrdine nella sottomaschera Ordini della maschera Ordini.

>0

Imposta una regola di convalida per un campo numerico di una tabella, dove sarà necessario immettere valori maggiori di zero.

Alcune espressioni iniziano con l'operatore di equivalenza (=), ma non tutte. In caso di calcolo di un valore di un controllo incluso in una maschera o in un report, utilizzare l'operatore = all'inizio dell'espressione. In altri casi, ad esempio quando si digita un'espressione in una query o nella proprietà ValorePredefinito o ValidoSe di un campo o un controllo, l'operatore = non viene utilizzato a meno che non si aggiunga l'espressione a un campo di testo di una tabella. In alcuni casi, ad esempio in caso di aggiunta di espressioni a query, l'operatore = viene rimosso automaticamente.

Nota : Dichiarazione di non responsabilità per la traduzione automatica: Il presente articolo è stato tradotto tramite un software di traduzione automatica e non da una persona. Microsoft offre le traduzioni automatiche per consentire a coloro che non conoscono la lingua inglese di leggere gli articoli sui prodotti, sui servizi e sulle tecnologie Microsoft. Dal momento che l'articolo è stato tradotto automaticamente, potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli.

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.

×