إرجاع طويل يحتوي على عدد الأحرف في سلسلة أو عدد وحدات البايت المطلوبة لتخزين متغير.
بناء الجملة
Len( string | varname)
يحتوي بناء جملة الدالة Len على هذه الوسيطات:
الوسيطة |
الوصف |
سلسلة |
أي تعبير السلسلة صالح . إذا كانت السلسلة تحتوي على Null، يتم إرجاع Null. |
varname |
أي اسم متغير صالح. إذا كان varname يحتوي على Null، يتم إرجاع Null. إذا كان varname متغيرا، فإن Len يعامله بنفس الطريقة التي يتعامل بها مع سلسلة ويعيد دائما عدد الأحرف التي يحتوي عليها. |
ملاحظات
يجب تحديد وسيطة واحدة (وواحدة فقط) من الوسيطتين المحتملتين. مع أنواع معرفة من قبل المستخدم، يقوم Len بإرجاع الحجم حيث ستتم كتابته إلى الملف.
ملاحظة: استخدم الدالة LenB مع بيانات البايت المضمنة في سلسلة، كما هو الحال في لغات مجموعة أحرف مزدوجة البايت (DBCS). بدلا من إرجاع عدد الأحرف في سلسلة، يقوم LenB بإرجاع عدد وحدات البايت المستخدمة لتمثيل تلك السلسلة. مع الأنواع المعرفة من قبل المستخدم، يقوم LenB بإرجاع حجم الذاكرة، بما في ذلك أي ترك مساحة بين العناصر. للحصول على نموذج التعليمات البرمجية الذي يستخدم LenB، راجع المثال الثاني في موضوع المثال.
ملاحظة: قد لا يتمكن Len من تحديد العدد الفعلي لوحدات بايت التخزين المطلوبة عند استخدامه مع سلاسل ذات طول متغير في أنواع البيانات المعرفة من قبل المستخدم.
مثال على الاستعلام
تعبير |
النتائج |
SELECT ProductID, Len(ProductID) AS ProductLen FROM ProductSales; |
إرجاع القيم من الحقل "ProductID" وطول تلك القيم في الأعمدة ProductLen. |
أمثلة VBA
ملاحظة: توضح الأمثلة التالية استخدام هذه الدالة في وحدة Visual Basic for Applications (VBA). لمزيد من المعلومات حول العمل مع VBA، حدد مرجع المطور في القائمة المنسدلة بجوار البحث وأدخل مصطلحا واحدا أو أكثر في مربع البحث.
يستخدم المثال الأول Len لإرجاع عدد الأحرف في سلسلة أو عدد وحدات البايت المطلوبة لتخزين متغير. النوع... يجب أن تسبق كتلة End Type التي تحدد CustomerRecord الكلمة الأساسية Private إذا ظهرت في وحدة نمطية للفئة. في وحدة نمطية قياسية، يمكن أن تكون عبارة Typeعامة.
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.
يستخدم المثال الثاني LenB ودالة معرفة من قبل المستخدم (LenMbcs) لإرجاع عدد أحرف البايت في سلسلة إذا تم استخدام ANSI لتمثيل السلسلة.
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.