Restituisce un valore Variant (String) contenente un'espressione formattata secondo le istruzioni contenute in un'espressione di formato.
Avviso Si è verificato un problema con l'uso di questa funzione. L'ultimo lunedì di alcuni anni di calendario può essere restituito come settimana 53 quando dovrebbe essere la settimana 1. Per altre informazioni e una soluzione alternativa, vedere Le funzioni Format o DatePart possono restituire un numero errato della settimana per il lunedì scorso in anno. |
Sintassi
Format( espressione [, formato ] [, primogiornosett ] [, primasettanno ] )
La sintassi della funzione Format ha gli argomenti seguenti:
Argomento |
Descrizione |
espressione |
Obbligatorio. Qualsiasi espressione valida. |
formato |
Facoltativo. Espressione di formato valida denominata o definita dall'utente. |
primogiornosett |
Facoltativo. Una costante che specifica il primo giorno della settimana. |
primasettanno |
Facoltativo. Una costante che specifica la prima settimana dell'anno. |
Impostazioni
L'argomento formato può usare diverse impostazioni, a seconda del tipo di dati dell'argomento espressione . Vedere gli articoli elencati nella tabella seguente per altre informazioni sulle espressioni di formato valide.
Per le espressioni che usano questo tipo di dati... |
Vedere l'articolo |
Qualsiasi tipo |
|
Data/ora |
|
Numerico |
|
Testo e memo |
|
Sì/No |
L'argomento primogiornosett ha le impostazioni seguenti:
Costante |
Valore |
Descrizione |
vbUseSystem |
0 |
Viene usata l'impostazione di NLS API. |
VbSunday |
1 |
Domenica (impostazione predefinita) |
vbMonday |
2 |
Lunedì |
vbTuesday |
3 |
Martedì |
vbWednesday |
4 |
Mercoledì |
vbThursday |
5 |
Giovedì |
vbFriday |
6 |
Venerdì |
vbSaturday |
7 |
Sabato |
L'argomento primasettanno ha le impostazioni seguenti:
Costante |
Valore |
Descrizione |
vbUseSystem |
0 |
Viene usata l'impostazione di NLS API. |
vbFirstJan1 |
1 |
La prima settimana è quella in cui cade l'1 gennaio (impostazione predefinita). |
vbFirstFourDays |
2 |
La prima settimana corrisponde alla prima che contiene almeno quattro giorni nell'anno. |
vbFirstFullWeek |
3 |
La prima settimana corrisponde alla prima settimana completa dell'anno. |
Osservazioni
Elemento da formattare |
Operazione da eseguire |
Numeri |
Usare formati numerici denominati predefiniti o creare formati numerici definiti dall'utente. |
Date e ore |
Usare formati di data/ora denominati predefiniti o creare formati di data/ora definiti dall'utente. |
Numeri seriali di data e ora |
Usare formati di data e ora o formati numerici. |
Stringhe |
Creare formati di stringa personalizzati definiti dall'utente. |
Se si prova a formattare un numero senza specificare formato, Format offre funzionalità simili a quelle della funzione Str, ma con supporto a livello internazionale. I numeri positivi formattati come stringhe usando Format non includono tuttavia uno spazio iniziale riservato per il segno del valore, mentre quelli convertiti con Str mantengono lo spazio iniziale.
Se si sta formattando una stringa numerica non localizzata, usare un formato numerico definito dall'utente per assicurarsi di ottenere l'aspetto desiderato.
Nota: Se la proprietà Calendario è impostata su Gregoriano e formato specifica la formattazione della data, il valore di espressione fornito deve essere Gregoriano. Se l'impostazione della proprietà Calendario di Visual Basic è Hijri, il valore di espressione fornito deve essere Hijri.
Se il calendario è gregoriano, il significato del formato dei simboli di espressione rimane invariato. Se il calendario è Hijri, tutti i simboli del formato data, ad esempio gggg, mmmm, aaaa, hanno lo stesso significato, ma si applicano al calendario Hijri. I simboli di formato rimangono in inglese; I simboli che determinano la visualizzazione del testo, ad esempio AM e PM, visualizzano la stringa (inglese o arabo) associata a tale simbolo. L'intervallo di determinati simboli cambia quando il calendario è Hijri.
Simbolo |
Intervallo |
d |
1-30 |
dd |
1-30 |
ww |
1-51 |
mmm |
Mostra i nomi dei mesi completi (i nomi dei mesi Hijri non hanno abbreviazioni). |
y |
1-355 |
yyyy |
100-9666 |
Esempi
Usare la funzione Format in un'espressione È possibile usare Format ovunque sia possibile usare espressioni. È ad esempio possibile usare questa funzione in una query come parte di un alias di campo o nella Origine controllo di una casella di testo in una maschera o un report. Gli esempi seguenti mostrano un'espressione che è possibile usare nella proprietà Filtro di un report per limitare l'output ai record della settimana precedente.
Format([Date],"ww")=Format(Now(),"ww")-1
In questo esempio l'origine record del report ha un campo denominato Date, che contiene la data di modifica di ogni record specifico e che viene usato nel report. Quando si esegue il report, i risultati vengono filtrati per mostrare solo i record in cui la settimana per il valore nel campo Date (Format([Date],"ww")) equivale alla settimana precedente (Format(Now(),"ww")-1).
Usare la funzione Format nel codice 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.
Questo esempio mostra diversi usi della funzione Format per formattare i valori usando sia formati denominati che formati definiti dall'utente. Per il separatore di data (/), il separatore di ora (:) e il valore letterale AM/PM, l'output formattato effettivamente visualizzato dal sistema dipende dalle impostazioni locali del computer in cui viene eseguito il codice. Quando le ore e le date vengono visualizzate nell'ambiente di sviluppo, vengono usati il formato di ora breve e il formato di data breve delle impostazioni locali del codice. Quando le ore e le date vengono visualizzate dal codice in esecuzione, vengono usati il formato di ora breve e il formato di data breve delle impostazioni locali del sistema, che possono essere diverse dalle impostazioni locali del codice. Questo esempio presuppone l'uso delle impostazioni locali Inglese (stati Uniti).
MyTime e MyDate vengono visualizzati nell'ambiente di sviluppo usando l'impostazione di ora breve e l'impostazione di data breve correnti del sistema.
Dim MyTime, MyDate, MyStr
MyTime = #17:04:23# MyDate = #January 27, 1993# ' Returns current system time in the system-defined long time format. MyStr = Format(Time, "Long Time") ' Returns current system date in the system-defined long date format. MyStr = Format(Date, "Long Date") MyStr = Format(MyTime, "h:m:s") ' Returns "17:4:23". MyStr = Format(MyTime, "hh:mm:ss AMPM") ' Returns "05:04:23 PM". MyStr = Format(MyDate, "dddd, mmm d yyyy") ' Returns "Wednesday, ' Jan 27 1993". ' If format is not supplied, a string is returned. MyStr = Format(23) ' Returns "23". ' User-defined formats. MyStr = Format(5459.4, "##,##0.00") ' Returns "5,459.40". MyStr = Format(334.9, "###0.00") ' Returns "334.90". MyStr = Format(5, "0.00%") ' Returns "500.00%". MyStr = Format("HELLO", "<") ' Returns "hello". MyStr = Format("This is it", ">") ' Returns "THIS IS IT".
Uso di Format con stringhe di lunghezza zero
In Microsoft Access versione 2.0 e versioni precedenti è possibile usare la funzione Format per restituire un valore per una stringa di lunghezza zero e un altro per un valore Null. È ad esempio possibile usare un'espressione di formato come la seguente con la funzione Format per restituire il valore di stringa appropriato dal codice:
Dim varX As Variant
Dim varStrX As Variant ' Assign some value to varStrX and pass to Format function. varX = Format(varStrX, "@;ZLS;Null")
In Microsoft Access 97 e versioni successive è necessario testare separatamente il caso Null e quindi restituire il valore appropriato in base al risultato. È ad esempio possibile usare la funzione IIf in un'espressione con la funzione Format come illustrato di seguito:
varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))
Questa modifica si applica solo quando si usa la funzione Format per formattare una stringa in base al fatto che sia una stringa di lunghezza zero o un valore Null. Altre espressioni di formato usate con la funzione Format continuano a funzionare come nelle versioni precedenti.
Se si converte un database da Microsoft Access 2.0 e versioni precedenti a Microsoft Access 2002 o versioni successive, è necessario modificare il codice per testare separatamente il caso Null.