Tagastab väärtuse Long, mis sisaldab stringi märkide arvu või baitide arvu, mis on muutuja salvestamiseks vajalik.
Süntaks
Len( string | varname)
Funktsiooni Len süntaksil on järgmised argumendid.
Argument |
Kirjeldus |
string |
Mis tahes kehtiv stringavaldis. Kui string sisaldab väärtust Tühi, tagastatakse Tühi. |
varname |
Mis tahes kehtiv muutuja nimi. Kui varname sisaldab väärtust Tühi, tagastatakse Tühi. Kui varname on Variant, käsitleb funktsioon Len seda samuti nagu väärtust String ja tagastab alati selles sisalduvate märkide arvu. |
Kommentaarid
Kahest võimalikust argumendist tuleb määrata üks (ja ainus). Kasutaja määratletud tüübi korral tagastab funktsioon Len mahu, mis kirjutatakse faili.
Märkus.: Stringis sisalduvate baitandmete jaoks (nt kahebaidist märgistikku kasutavate keelte (DBCS) korral) saate kasutada funktsiooni LenB. Stringi märkide arvu tagastamise asemel tagastab funktsioon LenB stringi esitamiseks vajaliku baitide arvu. Kasutaja määratletud tüüpide korral tagastab funktsioon LenB mällu kirjutatava andmemahu koos elementide vahelise täidisega. Funktsiooni LenB kasutav näidiskood on toodud teises näites.
Märkus.: Kasutaja määratletud andmetüüpides sisalduvate muutuva pikkusega stringide korral ei pruugi funktsioon Len tegelikult talletamiseks nõutavat andmemahtu baitides õigesti määratleda.
Päringu näide
Avaldis |
Tulemid |
SELECT ProductID, Len(ProductID) AS ProductLen FROM ProductSales; |
Tagastab välja "ProductID" väärtused ja nende väärtuste pikkuse veergudes ProductLen. |
VBA näited
Märkus.: Järgmised näited kujutavad selle funktsiooni kasutamist rakenduse Visual Basic for Applications (VBA) moodulis. Lisateabe saamiseks VBA-ga töötamise kohta valige välja Otsing kõrval kuvatavast ripploendist väärtus Tootearendusmaterjal ja sisestage otsinguväljale üks või mitu sõna.
Esimeses näites tagastatakse funktsiooni Len abil stringi märkide arv või muutuja talletamiseks nõutav baitide arv. Kui plokk Type...End Type, mis määratleb tüübi CustomerRecord, paikneb klassi moodulis, peab see eelnema võtmesõnale Private. Standardmoodulis võib lause Type olla 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.
Teises näites kasutatakse baitide arvu tagastamiseks funktsiooni LenB ja kasutaja määratletud funktsiooni (LenMbcs), kui string on esitatud ANSI-standardis.
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.