Funzioni stringa e come usarle

Con le funzioni stringa è possibile creare espressioni in Access per modificare il testo in vari modi. Ad esempio, è possibile visualizzare solo una parte di un numero di serie in una maschera. In caso contrario, potrebbe essere necessario unire (concatenare) diverse stringhe, ad esempio un cognome e un nome. Se non si è esperti di espressioni, vedere Creare un'espressione.

Ecco un elenco di alcune delle operazioni di stringa più comuni in Access e delle funzioni che si userebbero per eseguirle:

Per…

Usare l'opzione...

Per esempio...

Risultati

Restituire i caratteri dall'inizio di una stringa

Funzione sinistrahttps://msdn.microsoft.com/en-us/library/gg251556.aspx

=Left([Num_seriale],2)

Se [Num Seriale] è "CD234", il risultato è "CD".

Caratteri restituiti dalla fine di una stringa

Funzione destrahttps://msdn.microsoft.com/en-us/library/gg278801.aspx

=Right([Num_seriale],3)

Se [Num Seriale] è "CD234", il risultato è "234".

Trovare la posizione di un carattere in una stringa

Funzione InStrhttps://msdn.microsoft.com/en-us/library/gg264811.aspx

=InStr(1,[Nome],"i")

Se [Nome] è "Colin", il risultato è 4.

Restituire i caratteri a partire dalla parte centrale di una stringa

Funzione Midhttps://msdn.microsoft.com/en-us/library/gg251677.aspx

=Mid([Num Seriale],2,2)

Se [Num Seriale] è "CD234", il risultato è "D2".

Tagliare gli spazi iniziali o finali da una stringa

Funzioni LTrim, RTrim e Trimhttps://msdn.microsoft.com/en-us/library/gg278916.aspx

=Trim([Nome])

Se [Nome] è " Colin ", il risultato è "Colin".

Unire due stringhe

Operatore segno più (+) *

=[Nome] + [Cognome]

Se [Nome] è "Colin" e [Cognome] è Wilcox, il risultato è "ColinWilcox"

Unire due stringhe con uno spazio tra di esse

Operatore segno più (+) *

=[Nome] + " " + [Cognome]

Se [Nome] è "Colin" e [Cognome] è Wilcox, il risultato è "Colin Wilcox"

Modificare la maiuscola o minuscola di una stringa

Funzione UCase o LCase

=UCase([Nome])

Se [Nome] è "Colin", il risultato è "COLIN".

Determinare la lunghezza di una stringa

Funzione Lenhttps://msdn.microsoft.com/en-us/library/gg251657.aspx

=Len([Nome])

Se [Nome] è "Colin", il risultato è 5.

* Ok, quindi non è una funzione, è un operatore. Tuttavia, è il modo più rapido per unire le stringhe. In un database desktop è anche possibile usare l'operatore e commerciale (&) per la concatentazione. In un'app Access è necessario usare il segno più (+).

In Access sono disponibili molte più funzioni correlate al testo. Per altre informazioni su questi elementi, aprire il Generatore di espressioni ed esplorare gli elenchi di funzioni. Il Generatore di espressioni è disponibile praticamente ovunque si voglia creare un'espressione, in genere c'è un piccolo pulsante Genera simile al seguente: Icona del pulsante

Per illustrare il Generatore di espressioni, è possibile aprirlo dalla proprietà Origine controllo in una maschera o in una visualizzazione. Usare una delle procedure seguenti a seconda che si usi un database desktop o un'app Web di Access.

Visualizzare il Generatore di espressioni in un database desktop

  1. Aprire un database desktop (con estensione accdb).

  2. Premere F11 per aprire il riquadro di spostamento, se non è già aperto.

  3. Se è già disponibile una maschera, fare clic con il pulsante destro del mouse su di essa nel riquadro di spostamento e scegliere Visualizzazione Layout. Se non si ha un modulo su cui lavorare, fare clic su Crea > modulo.

  4. Fare clic con il pulsante destro del mouse su una casella di testo nella maschera e scegliere Proprietà.

  5. Nella finestra delle proprietà fare clic su > origine controllo controllo e fare clic sul pulsante Genera Icona del pulsante a destra della casella della proprietà Origine controllo.

    Pulsante Genera nella finestra delle proprietà.

  6. In Elementi espressioniespandere il nodo Funzioni e fare clic su Funzioni incorporate.

  7. In Categorie espressioni fareclic su Testo.

  8. In Valori espressionifare clic su varie funzioni e leggere le brevi descrizioni nella parte inferiore del Generatore di espressioni.

    Nota:  Non tutte queste funzioni sono disponibili in tutti i contesti; Access filtra automaticamente l'elenco in base a quelli che funzionano in ogni contesto.

Visualizzare il Generatore di espressioni in un'app Web di Access

  1. Aprire la Access Web App. Se si sta visualizzando il browser, fare clic su Impostazioni > Personalizza in Access.

  2. Fare clic su una tabella nella colonna a sinistra, quindi a destra dell'elenco di tabelle fare clic sul nome di una visualizzazione.

    Selezione di una visualizzazione in Access.

  3. Fare clicsu Modifica, fare clic su una casella di testo e quindi sul pulsante Dati visualizzato accanto alla casella di testo.

    Pulsante Dati accanto a un controllo casella di testo.

  4. Fare clic sul pulsante Genera Icona del pulsante a destra dell'elenco a discesa Origine controllo.

  5. In Elementi espressioniespandere il nodo Funzioni e fare clic su Funzioni incorporate.

  6. In Categorie espressioni fareclic su Testo.

  7. In Valori espressionifare clic su varie funzioni e leggere le brevi descrizioni nella parte inferiore del Generatore di espressioni.

Combinare le funzioni di testo per una maggiore flessibilità

Alcune funzioni stringa hanno argomenti numerici che, in alcuni casi, è necessario calcolare ogni volta che si chiama la funzione. Ad esempio, la funzione Left accetta una stringa e un numero, come in =Left(SerialNumber, 2). Questa opzione è ideale se si sa che i due caratteri a sinistra sono sempre necessari, ma cosa succede se il numero di caratteri necessari varia da elemento a elemento? Invece di "codificare" il numero di caratteri, è possibile immettere un'altra funzione per il calcolo.

Ecco un esempio di numeri di serie che hanno ognuno un trattino in un punto qualsiasi della stringa. Tuttavia, la posizione del segno meno varia:

Numero Seriale

3928-29993

23-9923

333-53234

3399940-444

Se si vogliono visualizzare solo i numeri a sinistra del segno meno, è necessario eseguire un calcolo ogni volta per scoprire dove si trova il trattino. Una delle opzioni è eseguire un'operazione simile alla seguente:

=Left([Num Seriale],InStr(1,[Numero Seriale],"-")-1)

Invece di immettere un numero come secondo argomento della funzione Left, è stata collegata la funzione InStr,che restituisce la posizione del trattino nel numero di serie. Sottrarre 1 da tale valore e si ottiene il numero corretto di caratteri che la funzione Left deve restituire. All'inizio sembra un po' complicato, ma con una piccola sperimentazione è possibile combinare due o più espressioni per ottenere i risultati desiderati.

Per altre informazioni sull'uso delle funzioni stringa, vedere Uso delle funzioni stringa nelle query SQL Access.

Serve aiuto?

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

Queste informazioni sono risultate utili?

×