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

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

ด้วยฟังก์ชันสตริง คุณสามารถสร้างนิพจน์ใน Access ที่จัดการข้อความได้หลายวิธี ตัวอย่างเช่น คุณอาจต้องการแสดงเฉพาะส่วนของหมายเลขลําดับประจําสินค้าบนฟอร์ม หรือคุณอาจต้องรวม (ต่อ) หลายสตริงเข้าด้วยกัน เช่น นามสกุลและชื่อ ถ้าคุณยังไม่เข้าใจนิพจน์ ให้ดู สร้างนิพจน์

นี่คือรายการของการดําเนินการสตริงทั่วไปใน Access และฟังก์ชันที่คุณจะใช้เพื่อดําเนินการ

เมื่อต้องการ… ใช้... ตัวอย่างเช่น... ผลลัพธ์
ส่งกลับอักขระจากจุดเริ่มต้นของสตริง ฟังก์ชัน Left =Left([SerialNumber],2) ถ้า [SerialNumber] เป็น "CD234" ผลลัพธ์คือ "CD"
ส่งกลับอักขระจากจุดสิ้นสุดของสตริง ฟังก์ชัน Right =Right([SerialNumber],3) ถ้า [SerialNumber] เป็น "CD234" ผลลัพธ์คือ "234"
ค้นหาตําแหน่งของอักขระในสตริง ฟังก์ชัน InStr =InStr(1,[FirstName],"i") ถ้า [FirstName] เป็น "Colin" ผลลัพธ์คือ 4
ส่งกลับอักขระจากตรงกลางของสตริง ฟังก์ชัน Mid =Mid([SerialNumber],2,2) ถ้า [SerialNumber] เป็น "CD234" ผลลัพธ์คือ "D2"
ตัดแต่งช่องว่างนําหน้าหรือช่องว่างต่อท้ายจากสตริง ฟังก์ชัน LTrim, RTrim และ Trim =Trim([FirstName]) ถ้า [FirstName] เป็น " Colin " ผลลัพธ์คือ "Colin"
เชื่อมสองสตริงเข้าด้วยกัน ตัวดําเนินการเครื่องหมายบวก (+)* =[FirstName] + [LastName] ถ้า [FirstName] คือ "Colin" และ [LastName] คือ Wilcox ผลลัพธ์คือ "ColinWilcox"
เชื่อมสตริงสองสตริงเข้าด้วยกัน โดยมีช่องว่างคั่นระหว่างสตริงเหล่านั้น ตัวดําเนินการเครื่องหมายบวก (+)* =[ชื่อ] + " " + [นามสกุล] ถ้า [FirstName] เป็น "Colin" และ [LastName] คือ Wilcox ผลลัพธ์คือ "Colin Wilcox"
เปลี่ยนตัวพิมพ์ของสตริงเป็นตัวพิมพ์ใหญ่หรือเล็ก ฟังก์ชัน UCase หรือ ฟังก์ชัน LCase =UCase([FirstName]) ถ้า [FirstName] เป็น "Colin" ผลลัพธ์คือ "COLIN"
ระบุความยาวสตริง ฟังก์ชัน Len =Len([FirstName]) ถ้า [FirstName] เป็น "Colin" ผลลัพธ์คือ 5

* เอาล่ะ นี่ไม่ใช่ฟังก์ชัน แต่เป็นตัวดําเนินการ อย่างไรก็ตาม วิธีนี้เป็นวิธีที่เร็วที่สุดในการรวมสตริงเข้าด้วยกัน ในฐานข้อมูลบนเดสก์ท็อป คุณยังสามารถใช้ตัวดําเนินการเครื่องหมายและ (&) สําหรับการเชื่อมต่อ

มีฟังก์ชันที่เกี่ยวข้องกับข้อความอีกมากมายใน Access วิธีที่ดีในการเรียนรู้เพิ่มเติมคือเปิด ตัวสร้างนิพจน์ และเรียกดูผ่านรายการฟังก์ชัน ตัวสร้างนิพจน์จะพร้อมใช้งานเกือบทุกที่ที่คุณต้องการสร้างนิพจน์ ซึ่งโดยปกติแล้ว จะมีปุ่มสร้าง ขนาดเล็กที่มีลักษณะเช่นนี้ รูปปุ่ม

เพื่อสาธิตตัวสร้างนิพจน์ ให้เปิดจากคุณสมบัติ แหล่งตัวควบคุม บนฟอร์มหรือมุมมอง ใช้ขั้นตอนใดขั้นตอนหนึ่งด้านล่างโดยขึ้นอยู่กับว่าคุณกําลังใช้ฐานข้อมูลบนเดสก์ท็อปหรือ Access Web App

การแสดงตัวสร้างนิพจน์ในฐานข้อมูลบนเดสก์ท็อป

  1. เปิดฐานข้อมูลบนเดสก์ท็อป (.accdb)

  2. กด F11 เพื่อเปิดบานหน้าต่างนําทาง ถ้ายังไม่ได้เปิดอยู่แล้ว

  3. ถ้าคุณมีฟอร์มพร้อมใช้งานอยู่แล้ว ให้คลิกขวาที่ฟอร์มนั้นในบานหน้าต่างนําทาง แล้วคลิก มุมมองเค้าโครง ถ้าคุณไม่มีแบบฟอร์มให้ใช้งาน ให้คลิกสร้าง>แบบฟอร์ม

  4. คลิกขวาที่กล่องข้อความบนฟอร์ม แล้วคลิก คุณสมบัติ

  5. ในแผ่นคุณสมบัติ ให้คลิกแหล่งตัวควบคุมทั้งหมด> แล้วคลิกปุ่มสร้างรูปปุ่มทางด้านขวาของกล่องคุณสมบัติแหล่งตัวควบคุม

    ปุ่มตัวสร้างในแผ่นคุณสมบัติ

  6. ภายใต้ องค์ประกอบนิพจน์ ให้ขยายโหนด ฟังก์ชัน แล้วคลิก ฟังก์ชันที่มีอยู่แล้วภายใน

  7. ภายใต้ ประเภทนิพจน์ ให้คลิก ข้อความ

  8. ภายใต้ ค่านิพจน์ ให้คลิกฟังก์ชันต่างๆ และอ่านคําอธิบายสั้นๆ ที่ด้านล่างของตัวสร้างนิพจน์

    หมายเหตุ

    ฟังก์ชันเหล่านี้บางฟังก์ชันไม่พร้อมใช้งานในทุกบริบท Access จะกรองรายการโดยอัตโนมัติ โดยขึ้นอยู่กับว่ารายการใดทํางานในแต่ละบริบท

การรวมฟังก์ชันข้อความเพื่อความยืดหยุ่นที่มากขึ้น

ฟังก์ชันสตริงบางฟังก์ชันมีอาร์กิวเมนต์ตัวเลข ซึ่งในบางกรณี คุณจําเป็นต้องคํานวณทุกครั้งที่คุณเรียกใช้ฟังก์ชัน ตัวอย่างเช่น ฟังก์ชัน Left จะใช้สตริงและตัวเลข ดังใน =Left(SerialNumber, 2) วิธีการนี้มีประโยชน์ถ้าคุณทราบว่าคุณต้องการอักขระสองตัวที่เหลือเสมอ แต่ถ้าจํานวนอักขระที่คุณต้องการแตกต่างกันไปในแต่ละรายการ แทนที่จะใช้ "ตายรหัส" จํานวนอักขระ คุณสามารถใส่ฟังก์ชันอื่นที่คํานวณได้

ต่อไปนี้เป็นตัวอย่างของเลขลําดับที่แต่ละหมายเลขมียัติภังค์อยู่ที่ใดที่หนึ่งในสตริง อย่างไรก็ตาม ตําแหน่งของยัติภังค์จะแตกต่างกันไป ดังนี้

หมายเลขลําดับประจําสินค้า
3928-29993
23-9923
333-53234
3399940-444

ถ้าคุณต้องการแสดงเฉพาะตัวเลขทางด้านซ้ายของเครื่องหมายยัติภังค์ คุณต้องทําการคํานวณในแต่ละครั้งเพื่อค้นหาว่าเครื่องหมายยัติภังค์อยู่ที่ใด ตัวเลือกหนึ่งคือการทําบางอย่างดังนี้:

=Left([SerialNumber],InStr(1,[SerialNumber],"-")-1)

แทนที่จะใส่ตัวเลขเป็นอาร์กิวเมนต์ที่สองของฟังก์ชัน Left เราได้เสียบฟังก์ชัน InStr เข้าไป ซึ่งส่งกลับตําแหน่งของยัติภังค์ในเลขลําดับ ลบ 1 จากค่านั้น และคุณจะได้จํานวนอักขระที่ถูกต้องเพื่อให้ฟังก์ชัน Left ส่งกลับ ดูซับซ้อนเล็กน้อยในตอนแรก แต่ด้วยการทดลองเพียงเล็กน้อย คุณสามารถรวมนิพจน์อย่างน้อยสองนิพจน์เพื่อให้ได้ผลลัพธ์ที่คุณต้องการ