Restituisce un valore Long contenente il numero di caratteri in una stringa o il numero di byte necessari per archiviare un variabile.
Sintassi
Lunghezza( stringa | nomevar)
Gli argomenti della sintassi della funzione Lunghezza sono i seguenti:
Argomento |
Descrizione |
stringa |
Qualsiasi espressione stringa valido. Se stringa contiene un valore Null, verrà restituito un valore Null. |
nomevariabile |
Qualsiasi nome variabile valido. Se varname contiene un valore Null, verrà restituito un valore Null. Se varname è un valore Variant, Len lo considera come un valore String e restituisce sempre il numero di caratteri che contiene. |
Osservazioni
È necessario specificare uno (e solo uno) dei due argomenti possibili. Con i tipi definiti dall'utente, Len restituisce le dimensioni che verranno scritte nel file.
Nota: Usare la funzione LenB con i dati dei byte contenuti in una stringa, come nelle lingue dei set di caratteri a byte doppio (DBCS). Invece di restituire il numero di caratteri in una stringa, LenB restituisce il numero di byte usati per rappresentare la stringa. Con i tipi definiti dall'utente, LenB restituisce le dimensioni in memoria, incluse eventuali spaziatura interna tra gli elementi. Per un codice di esempio che usa LenB, vedere il secondo esempio nell'argomento di esempio.
Nota: Len potrebbe non essere in grado di determinare il numero effettivo di byte di archiviazione necessari se utilizzato con stringhe di lunghezza variabile nei tipi di dati definiti dall'utente.
Esempio di query
Espressione |
Risultati |
SELECT ProductID, Len(ProductID) AS ProductLen FROM ProductSales; |
Restituisce i valori dal campo "IDProdotto" e la lunghezza di tali valori nelle colonne ProductLen. |
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.
Il primo esempio usa Len per restituire il numero di caratteri in una stringa o il numero di byte necessari per archiviare una variabile. Tipo... Blocco End Type che definisce CustomerRecord deve essere preceduto dalla parola chiave Private se viene visualizzato in un modulo di classe. In un modulo standard, un'istruzione Type può essere Public.
Type CustomerRecord ' Define user-defined type.
ID As Integer ' Place this definition in a Name As String * 10 ' standard module. Address As String * 30 End Type Dim Customer As CustomerRecord ' Declare variables. Dim MyInt As Integer, MyCur As Currency Dim MyString, MyLen MyString = "Hello World" ' Initialize variable. MyLen = Len(MyInt) ' Returns 2. MyLen = Len(Customer) ' Returns 42. MyLen = Len(MyString) ' Returns 11. MyLen = Len(MyCur) ' Returns 8.
Il secondo esempio usa LenB e una funzione definita dall'utente (LenMbcs) per restituire il numero di caratteri di byte in una stringa se si usa ANSI per rappresentare la stringa.
Function LenMbcs (ByVal str as String)
LenMbcs = LenB(StrConv(str, vbFromUnicode)) End Function Dim MyString, MyLen MyString = "ABc" ' Where "A" and "B" are DBCS and "c" is SBCS. MyLen = Len(MyString) ' Returns 3 - 3 characters in the string. MyLen = LenB(MyString) ' Returns 6 - 6 bytes used for Unicode. MyLen = LenMbcs(MyString) ' Returns 5 - 5 bytes used for ANSI.