ด้วยฟังก์ชันสตริง คุณสามารถสร้างนิพจน์ใน 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
การแสดงตัวสร้างนิพจน์ในฐานข้อมูลบนเดสก์ท็อป
เปิดฐานข้อมูลบนเดสก์ท็อป (.accdb)
กด F11 เพื่อเปิดบานหน้าต่างนําทาง ถ้ายังไม่ได้เปิดอยู่แล้ว
ถ้าคุณมีฟอร์มพร้อมใช้งานอยู่แล้ว ให้คลิกขวาที่ฟอร์มนั้นในบานหน้าต่างนําทาง แล้วคลิก มุมมองเค้าโครง ถ้าคุณไม่มีแบบฟอร์มให้ใช้งาน ให้คลิกสร้าง>แบบฟอร์ม
คลิกขวาที่กล่องข้อความบนฟอร์ม แล้วคลิก คุณสมบัติ
ในแผ่นคุณสมบัติ ให้คลิกแหล่งตัวควบคุมทั้งหมด> แล้วคลิกปุ่มสร้าง
ด้านขวาของกล่องคุณสมบัติแหล่งตัวควบคุม
ภายใต้ องค์ประกอบนิพจน์ ให้ขยายโหนด ฟังก์ชัน แล้วคลิก ฟังก์ชันที่มีอยู่แล้วภายใน
ภายใต้ ประเภทนิพจน์ ให้คลิก ข้อความ
ภายใต้ ค่านิพจน์ ให้คลิกฟังก์ชันต่างๆ และอ่านคําอธิบายสั้นๆ ที่ด้านล่างของตัวสร้างนิพจน์
หมายเหตุ
ฟังก์ชันเหล่านี้บางฟังก์ชันไม่พร้อมใช้งานในทุกบริบท Access จะกรองรายการโดยอัตโนมัติ โดยขึ้นอยู่กับว่ารายการใดทํางานในแต่ละบริบท
การรวมฟังก์ชันข้อความเพื่อความยืดหยุ่นที่มากขึ้น
ฟังก์ชันสตริงบางฟังก์ชันมีอาร์กิวเมนต์ตัวเลข ซึ่งในบางกรณี คุณจําเป็นต้องคํานวณทุกครั้งที่คุณเรียกใช้ฟังก์ชัน ตัวอย่างเช่น ฟังก์ชัน Left จะใช้สตริงและตัวเลข ดังใน =Left(SerialNumber, 2) วิธีการนี้มีประโยชน์ถ้าคุณทราบว่าคุณต้องการอักขระสองตัวที่เหลือเสมอ แต่ถ้าจํานวนอักขระที่คุณต้องการแตกต่างกันไปในแต่ละรายการ แทนที่จะใช้ "ตายรหัส" จํานวนอักขระ คุณสามารถใส่ฟังก์ชันอื่นที่คํานวณได้
ต่อไปนี้เป็นตัวอย่างของเลขลําดับที่แต่ละหมายเลขมียัติภังค์อยู่ที่ใดที่หนึ่งในสตริง อย่างไรก็ตาม ตําแหน่งของยัติภังค์จะแตกต่างกันไป ดังนี้
| หมายเลขลําดับประจําสินค้า |
|---|
| 3928-29993 |
| 23-9923 |
| 333-53234 |
| 3399940-444 |
ถ้าคุณต้องการแสดงเฉพาะตัวเลขทางด้านซ้ายของเครื่องหมายยัติภังค์ คุณต้องทําการคํานวณในแต่ละครั้งเพื่อค้นหาว่าเครื่องหมายยัติภังค์อยู่ที่ใด ตัวเลือกหนึ่งคือการทําบางอย่างดังนี้:
=Left([SerialNumber],InStr(1,[SerialNumber],"-")-1)
แทนที่จะใส่ตัวเลขเป็นอาร์กิวเมนต์ที่สองของฟังก์ชัน Left เราได้เสียบฟังก์ชัน InStr เข้าไป ซึ่งส่งกลับตําแหน่งของยัติภังค์ในเลขลําดับ ลบ 1 จากค่านั้น และคุณจะได้จํานวนอักขระที่ถูกต้องเพื่อให้ฟังก์ชัน Left ส่งกลับ ดูซับซ้อนเล็กน้อยในตอนแรก แต่ด้วยการทดลองเพียงเล็กน้อย คุณสามารถรวมนิพจน์อย่างน้อยสองนิพจน์เพื่อให้ได้ผลลัพธ์ที่คุณต้องการ