ส่งกลับ ยาว ที่มีจํานวนอักขระในสตริงหรือจํานวนไบต์ที่จําเป็นในการเก็บ ตัวแปร
ไวยากรณ์
Len( string | varname)
ไวยากรณ์ของฟังก์ชัน Len มีอาร์กิวเมนต์ดังนี้
อาร์กิวเมนต์ |
คำอธิบาย |
สตริง |
นิพจน์สตริง ที่ถูกต้องใดๆ ถ้า สตริง มี Null จะส่ง Null กลับมา |
varname |
ชื่อ ตัวแปร ที่ถูกต้องใดๆ ถ้า varname มี Null จะส่ง Null กลับมา ถ้า varname เป็น ตัวแปร Len จะถือว่าเหมือนกับ สตริง และส่งกลับจํานวนอักขระที่มีเสมอ |
ข้อสังเกต
ต้องระบุหนึ่ง (และเพียงหนึ่งเดียว) ของอาร์กิวเมนต์ที่เป็นไปได้สองตัว ด้วยชนิดที่ผู้ใช้กําหนด Len จะส่งกลับขนาดตามที่จะถูกเขียนลงในไฟล์
หมายเหตุ: ใช้ฟังก์ชัน LenB กับข้อมูลไบต์ที่อยู่ในสตริง เช่นเดียวกับในภาษาชุดอักขระแบบไบต์คู่ (DBCS) แทนที่จะส่งกลับจํานวนอักขระในสตริง LenB จะส่งกลับจํานวนไบต์ที่ใช้แทนสตริงนั้น ด้วยชนิดที่ผู้ใช้กําหนดเอง LenB จะส่งกลับขนาดในหน่วยความจํา รวมถึงช่องว่างระหว่างองค์ประกอบ สําหรับตัวอย่างโค้ดที่ใช้ LenB ให้ดูตัวอย่างที่สองในหัวข้อตัวอย่าง
หมายเหตุ: Len อาจไม่สามารถระบุจํานวนจริงของไบต์ที่เก็บข้อมูลที่จําเป็นเมื่อใช้กับสตริงความยาวผันแปรในชนิดข้อมูลที่ผู้ใช้กําหนด
ตัวอย่างคิวรี
Expression |
ผลลัพธ์ |
SELECT ProductID, Len(ProductID) AS ProductLen FROM ProductSales; |
ส่งกลับค่าจากเขตข้อมูล "ProductID" และความยาวของค่าเหล่านั้นในคอลัมน์ ProductLen |
ตัวอย่าง VBA
หมายเหตุ: ตัวอย่างต่อไปนี้จะสาธิตการใช้ฟังก์ชันนี้ในโมดูล Visual Basic for Applications (VBA) สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการทํางานกับ VBA ให้เลือก การอ้างอิงสําหรับนักพัฒนา ในรายการดรอปดาวน์ที่อยู่ถัดจาก ค้นหา แล้วใส่คําอย่างน้อยหนึ่งคําในกล่องค้นหา
ตัวอย่างแรกใช้ Len เพื่อส่งกลับจํานวนอักขระในสตริงหรือจํานวนไบต์ที่จําเป็นในการจัดเก็บตัวแปร ชนิด... บล็อกชนิดสิ้นสุดที่กําหนด CustomerRecord ต้องนําหน้าด้วยคําสําคัญ ส่วนตัว ถ้าปรากฏในคลาสมอดูล ในโมดูลมาตรฐาน คําสั่ง 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.