ฟังก์ชัน Len

นำไปใช้กับ
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

ส่งกลับ ยาว ที่มีจำนวนอักขระในสตริงหรือจำนวนไบต์ที่จำเป็นในการจัดเก็บตัวแปร

ไวยากรณ์

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 เพื่อส่งกลับจํานวนอักขระในสตริงหรือจํานวนไบต์ที่จําเป็นในการจัดเก็บตัวแปร ประเภท... การกําหนดบล็อก CustomerRecord End Type จะต้องนําหน้าด้วยคําสําคัญ Private ถ้าปรากฏในคลาสมอดูล ในมอดูลมาตรฐาน คําสั่ง Type สามารถเป็น 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.

ตัวอย่างที่สองใช้ 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.

ฟังก์ชันสตริงและวิธีใช้