คุณสามารถใช้นิพจน์สําหรับงานต่างๆ ใน Microsoft Access เช่น การคํานวณทางคณิตศาสตร์ การรวมหรือการแยกข้อความ หรือการตรวจสอบความถูกต้องของข้อมูล บทความนี้จะให้ข้อมูลภาพรวมเกี่ยวกับนิพจน์ — เมื่อใดควรใช้ส่วนต่างๆ ของคอมโพเนนต์ และเปรียบเทียบกับสูตร Microsoft Excel
ในบทความนี้
- ภาพรวมของนิพจน์
- วิธีการใช้นิพจน์
- ตัวอย่างนิพจน์
- องค์ประกอบของนิพจน์
- การเปรียบเทียบนิพจน์ Access และสูตร Excel
ภาพรวมของนิพจน์
ลองคิดดูด้วยวิธีนี้: เมื่อคุณต้องการให้ Access ทําอะไรบางอย่าง คุณต้องพูดภาษาของ Access ตัวอย่างเช่น สมมติว่าคุณต้องการบอก Access ว่า "ดูที่เขตข้อมูล BirthDate ในตาราง Customers และแจ้งปีเกิดของลูกค้าให้ฉันทราบ" คุณสามารถเขียนนิพจน์นี้เป็น:
DatePart("yyyy",[Customers]![BirthDate])
นิพจน์นี้ประกอบด้วยฟังก์ชัน DatePart และค่าอาร์กิวเมนต์สองค่า คือ "yyyy" และ[Customers]![BirthDate]
มาดูรายละเอียดเพิ่มเติมในนิพจน์นี้
1 DatePart คือฟังก์ชันที่ตรวจสอบวันที่และส่งกลับส่วนที่ระบุ ในกรณีนี้ จะใช้สองอาร์กิวเมนต์แรก
2 อาร์กิวเมนต์ช่วงเวลาจะบอกให้ Access ทราบถึงส่วนของวันที่ที่จะส่งกลับ ในกรณีนี้ "yyyy" จะบอก Access ว่าคุณต้องการให้ส่งกลับเฉพาะส่วนปีของวันที่
3 อาร์กิวเมนต์วันที่จะบอกตําแหน่งที่จะให้ Access ค้นหาค่าวันที่ ซึ่งในกรณีนี้ [Customers]![BirthDate] จะบอกให้ Access ค้นหาวันที่ในเขตข้อมูล BirthDate ของตาราง Customers
วิธีการใช้นิพจน์
คุณสามารถใช้นิพจน์ด้วยวิธีต่อไปนี้:
- คํานวณค่า ที่ไม่มีอยู่โดยตรงในข้อมูลของคุณ คุณสามารถคํานวณค่าในเขตข้อมูลในตารางและคิวรี และคุณยังสามารถคํานวณค่าในตัวควบคุมบนฟอร์มและรายงานได้ด้วย
- กําหนดค่าเริ่มต้น สําหรับเขตข้อมูลตารางหรือสําหรับตัวควบคุมบนฟอร์มหรือรายงาน ค่าเริ่มต้นเหล่านี้จะปรากฏขึ้นทุกครั้งที่คุณเปิดตาราง ฟอร์ม หรือรายงาน
- สร้างกฎการตรวจสอบ เพื่อควบคุมว่าค่าใดที่ผู้ใช้สามารถใส่ลงในเขตข้อมูลหรือตัวควบคุมได้
- กำหนดเกณฑ์คิวรี เพื่อจำกัดผลลัพธ์ให้กับชุดย่อยที่ต้องการ
คำนวณค่า
หนึ่งในวิธีทั่วไปในการใช้นิพจน์ใน Access คือการคํานวณค่าที่ไม่มีอยู่โดยตรงในข้อมูลของคุณ คอลัมน์ในตารางหรือคิวรีที่เป็นผลลัพธ์จากการคํานวณดังกล่าวจะเรียกว่าเขตข้อมูลจากการคํานวณ คุณสามารถสร้างเขตข้อมูลจากการคํานวณที่รวมเขตข้อมูลตารางอย่างน้อยสองเขตข้อมูล ตัวอย่างเช่น ตารางจํานวนมากจะเก็บชื่อและนามสกุลไว้ในเขตข้อมูลที่แยกกัน ถ้าคุณต้องการรวมชื่อและนามสกุลเหล่านั้น แล้วแสดงในเขตข้อมูลเดียว คุณสามารถสร้างเขตข้อมูลจากการคํานวณในตารางหรือในคิวรีได้
[FirstName] & " " & [LastName].
ในกรณีนี้ เครื่องหมายและ (&) จะรวมค่าใน FirstName เขตข้อมูล อักขระช่องว่าง (ช่องว่างที่อยู่ในเครื่องหมายอัญประกาศ) และค่าใน LastName เขตข้อมูล
กำหนดค่าเริ่มต้น
คุณยังสามารถใช้นิพจน์ใน Access เพื่อใส่ค่าเริ่มต้นสําหรับเขตข้อมูลในตารางหรือสําหรับตัวควบคุม ตัวอย่างเช่น เมื่อต้องการตั้งค่าเริ่มต้นสําหรับเขตข้อมูลวันที่ให้เป็นวันที่ปัจจุบัน ในกล่องคุณสมบัติ ค่าเริ่มต้น สําหรับเขตข้อมูลนั้น ให้คุณพิมพ์:
Date()
สร้างกฎการตรวจสอบ
นอกจากนี้ คุณยังสามารถใช้นิพจน์เพื่อตั้งค่ากฎการตรวจสอบได้อีกด้วย ตัวอย่างเช่น คุณสามารถใช้กฎการตรวจสอบในตัวควบคุมหรือเขตข้อมูลตารางเพื่อกําหนดให้วันที่ที่ใส่มีค่ามากกว่าหรือเท่ากับวันที่ปัจจุบัน ในกรณีดังกล่าว คุณตั้งค่าในกล่องคุณสมบัติ กฎการตรวจสอบ เป็น:
>= Date()
กำหนดเกณฑ์คิวรี
สุดท้าย คุณสามารถใช้นิพจน์เพื่อตั้งค่าเกณฑ์สําหรับคิวรีได้ ตัวอย่างเช่น สมมติว่าคุณต้องการดูยอดขายผลิตภัณฑ์สําหรับใบสั่งที่ถูกจัดส่งภายในกรอบเวลาที่กําหนด คุณสามารถใส่เกณฑ์เพื่อกําหนดช่วงวันที่ และ Access จะส่งกลับเฉพาะแถวที่ตรงกับเกณฑ์ ตัวอย่างเช่น นิพจน์ของคุณอาจมีลักษณะดังนี้
Between #1/1/2017# And #12/31/2017#
เมื่อคุณเพิ่มเกณฑ์ในคิวรีแล้วเรียกใช้ คิวรีจะส่งกลับเฉพาะค่าที่ตรงกับวันที่ที่ระบุเท่านั้น
ตัวอย่างนิพจน์
ตารางต่อไปนี้แสดงรายการตัวอย่างนิพจน์ Access และวิธีใช้โดยทั่วไป
| นิพจน์ | วัตถุประสงค์ |
|---|---|
=[RequiredDate]-[ShippedDate] |
คำนวณผลต่างระหว่างค่าวันที่ในตัวควบคุมกล่องข้อความ 2 ตัว (ชื่อว่าวันที่กำหนดส่งและวันที่ส่งสินค้า) บนรายงาน |
Date() |
ตั้งค่าเริ่มต้นของเขตข้อมูลตารางชนิด วันที่/เวลา ให้เป็นวันที่ปัจจุบัน |
Between #1/1/2017# And #12/31/2017# |
ระบุเกณฑ์สำหรับเขตข้อมูลวันที่/เวลาในคิวรี |
=[Orders Subform].Form!OrderSubtotal |
ส่งกลับค่าของตัวควบคุมผลรวมย่อยของใบสั่งซื้อบนฟอร์มย่อยใบสั่งซื้อที่อยู่บนฟอร์มใบสั่งซื้อ |
>0 |
ตั้งกฎการตรวจสอบสำหรับเขตข้อมูลแบบตัวเลขในตาราง โดยผู้ใช้ต้องใส่ค่าที่มากกว่าศูนย์ |
บางนิพจน์เริ่มต้นด้วยตัวดําเนินการเท่ากับ (=) และบางนิพจน์ไม่มี เมื่อคุณคํานวณค่าสําหรับตัวควบคุมบนฟอร์มหรือรายงาน ให้คุณใช้ตัว = ดําเนินการเพื่อเริ่มต้นนิพจน์ ในกรณีอื่นๆ เช่น เมื่อคุณพิมพ์นิพจน์ในคิวรีหรือในคุณสมบัติ DefaultValue หรือ ValidationRule ของเขตข้อมูลหรือตัวควบคุม คุณไม่ได้ใช้ตัว = ดําเนินการเว้นแต่คุณจะเพิ่มนิพจน์ลงในเขตข้อมูลข้อความในตาราง ในบางกรณี เช่น เมื่อคุณเพิ่มนิพจน์ลงในคิวรี Access จะเอาตัว = ดําเนินการออกโดยอัตโนมัติ
องค์ประกอบของนิพจน์
นิพจน์ประกอบด้วยคอมโพเนนต์ที่เป็นไปได้หลายรายการที่คุณสามารถใช้ โดยจะเลือกอย่างเดียวหรือผสมกันเพื่อสร้างผลลัพธ์ก็ได้ ส่วนประกอบเหล่านี้ประกอบด้วย:
- ตัวระบุ ชื่อของเขตข้อมูลตารางหรือตัวควบคุมบนแบบฟอร์มหรือรายงาน หรือคุณสมบัติของเขตข้อมูลหรือตัวควบคุมเหล่านั้น
-
ผู้ ประกอบการ ตัวอย่างเช่น
+(บวก) หรือ-(ลบ) - ฟังก์ชัน ตัวอย่างเช่น SUM หรือ AVG
- ค่าคงที่ ค่าที่ไม่เปลี่ยนแปลง — เช่น สตริงข้อความ หรือตัวเลขที่ไม่ถูกคำนวณโดยนิพจน์
- ค่า สตริง เช่น "ใส่ตัวเลขระหว่าง 1 และ 10" หรือตัวเลข เช่น 1,254 ที่ใช้ในการดําเนินการ
ส่วนต่อไปนี้จะอธิบายคอมโพเนนต์เหล่านี้ในรายละเอียดเพิ่มเติม
ตัวระบุ
ตัวระบุคือชื่อของเขตข้อมูล คุณสมบัติ หรือตัวควบคุม คุณต้องใช้ตัวระบุในนิพจน์เพื่ออ้างถึงค่าที่เชื่อมโยงกับเขตข้อมูล คุณสมบัติ หรือตัวควบคุม ตัวอย่างเช่น ให้พิจารณานิพจน์=[RequiredDate]-[ShippedDate] นิพจน์นี้จะลบค่าของ ShippedDate เขตข้อมูลหรือตัวควบคุมออกจากค่าของ RequiredDate เขตข้อมูลหรือตัวควบคุม ในนิพจน์นี้ ทั้ง RequiredDate ทําหน้าที่ ShippedDate เป็นตัวระบุ
ตัวดำเนินการ
Access สนับสนุนตัวดําเนินการต่างๆ รวมถึงตัวดําเนินการทางคณิตศาสตร์ทั่วไป เช่น +, , -* (คูณ) และ / (หาร) คุณยังสามารถใช้ตัวดําเนินการเปรียบเทียบ เช่น < (น้อยกว่า) หรือ > (มากกว่า) สําหรับการเปรียบเทียบค่า ตัวดําเนินการข้อความ เช่น & และ + สําหรับการรวม (การรวม) ข้อความ ตัวดําเนินการทางตรรกะ เช่น Not และ And เพื่อกําหนดค่าจริงหรือเท็จ และตัวดําเนินการอื่นๆ ที่มีเฉพาะใน Access
ฟังก์ชัน
ฟังก์ชันคือขั้นตอนที่มีอยู่แล้วภายในที่คุณสามารถใช้ในนิพจน์ของคุณได้ คุณสามารถใช้ฟังก์ชันสําหรับการดําเนินการที่หลากหลาย เช่น การคํานวณค่า การจัดการข้อความและวันที่ และการสรุปข้อมูล ตัวอย่างเช่น หนึ่งฟังก์ชันที่ใช้กันทั่วไปคือ DATE ซึ่งส่งกลับวันที่ปัจจุบัน คุณสามารถใช้ฟังก์ชัน DATE ได้หลายวิธี เช่น ในนิพจน์ที่ตั้งค่าเริ่มต้นสําหรับเขตข้อมูลในตาราง ในตัวอย่างนี้ เมื่อใดก็ตามที่มีคนเพิ่มระเบียนใหม่ ค่าสําหรับเขตข้อมูลจะถูกตั้งค่าเป็นวันที่ปัจจุบันตามค่าเริ่มต้น
ฟังก์ชันบางฟังก์ชันต้องการอาร์กิวเมนต์ อาร์กิวเมนต์เป็นค่าที่ให้ข้อมูลป้อนเข้าไปยังฟังก์ชัน ถ้าฟังก์ชันต้องการอาร์กิวเมนต์มากกว่าหนึ่งอาร์กิวเมนต์ ให้คุณคั่นอาร์กิวเมนต์ด้วยเครื่องหมายจุลภาค ตัวอย่างเช่น ให้พิจารณาฟังก์ชัน DATE ในนิพจน์ตัวอย่างต่อไปนี้:
=Format(Date(),"mmmm d, yyyy")
ตัวอย่างนี้ใช้สองอาร์กิวเมนต์:
- อาร์กิวเมนต์แรกคือ
Date()ฟังก์ชัน ซึ่งส่งกลับวันที่ปัจจุบัน เมื่อไม่มีอาร์กิวเมนต์ คุณยังคงต้องเพิ่มวงเล็บฟังก์ชัน - อาร์กิวเมนต์
"mmmm d, yyyy"ที่สอง ซึ่งคั่นจากอาร์กิวเมนต์แรกด้วยเครื่องหมายจุลภาค ระบุสตริงข้อความเพื่อแนะนําฟังก์ชัน FORMAT เกี่ยวกับวิธีการจัดรูปแบบค่าวันที่ที่ส่งกลับ โปรดสังเกตว่าสตริงข้อความต้องอยู่ภายในเครื่องหมายอัญประกาศ
นิพจน์นี้ยังแสดงว่าคุณสามารถซ้อนค่าที่ส่งกลับโดยฟังก์ชันหนึ่งเป็นอาร์กิวเมนต์กับฟังก์ชันอื่น ในกรณีนี้ Date() จะทําหน้าที่เป็นอาร์กิวเมนต์
ค่าคงที่
ค่าคงที่คือรายการที่มีค่าไม่เปลี่ยนแปลงในขณะที่ Access กําลังทํางานอยู่ ค่าTrueคงที่ , และ Null มักใช้Falseในนิพจน์
ค่า
คุณสามารถใช้ค่าตัวอักษรในนิพจน์ของคุณ เช่น ตัวเลข 1,254 หรือสตริง “ใส่ตัวเลขระหว่าง 1 และ 10” คุณยังสามารถใช้ค่าตัวเลข ซึ่งอาจเป็นชุดหลักตัวเลข รวมถึงเครื่องหมายและจุดทศนิยม ถ้าจำเป็น
เมื่อคุณใช้ค่าสตริงข้อความ ให้ใส่สตริงข้อความไว้ภายในเครื่องหมายอัญใบ้เพื่อช่วยให้แน่ใจว่า Access จะตีความสตริงข้อความเหล่านั้นอย่างถูกต้อง ในบางสถานการณ์ Access จะใส่เครื่องหมายอัญระบุให้คุณ ตัวอย่างเช่น เมื่อคุณพิมพ์ข้อความในนิพจน์สําหรับกฎการตรวจสอบหรือสําหรับเกณฑ์คิวรี Access จะล้อมรอบสตริงข้อความของคุณด้วยเครื่องหมายอัญปีกโดยอัตโนมัติ
เมื่อต้องการใช้ค่าวันที่/เวลา ให้ใส่ค่าด้วยเครื่องหมายเลขที่ (#) ตัวอย่างเช่น #3-7-17#, #7-Mar-17#และ #Mar-7-2017# เป็นค่าวันที่/เวลาที่ถูกต้องทั้งหมด เมื่อ Access พบค่าวันที่/เวลาที่ถูกต้องที่อยู่ในอักขระ # ค่าจะถือว่าค่าเป็นชนิดข้อมูลวันที่/เวลาโดยอัตโนมัติ
การเปรียบเทียบนิพจน์ Access และสูตร Excel
นิพจน์ Access จะคล้ายกับสูตร Excel ในที่ใช้องค์ประกอบที่คล้ายกันเพื่อสร้างผลลัพธ์ ทั้งสูตร Excel และนิพจน์ Access มีอย่างน้อยหนึ่งอย่างต่อไปนี้:
-
รหัส ใน Excel ตัวระบุคือชื่อของแต่ละเซลล์หรือช่วงของเซลล์ในเวิร์กบุ๊ก เช่น A1, B3:C6 หรือ Sheet2! C32 ใน Access ตัวระบุคือชื่อของเขตข้อมูลตาราง (เช่น
[Contacts]![First Name]) ตัวควบคุมบนฟอร์มหรือรายงาน (เช่นForms![Task List]![Description]) หรือคุณสมบัติของเขตข้อมูลหรือตัวควบคุมเหล่านั้น (เช่นForms![Task List]![Description].ColumnWidth) -
ผู้ ประกอบการ ในทั้ง Access และ Excel ตัวดําเนินการจะใช้เพื่อเปรียบเทียบค่าหรือทําการคํานวณอย่างง่ายกับข้อมูลของคุณ ตัวอย่างเช่น (
+บวก) หรือ-(ลบ) - ฟังก์ชัน ทั้งใน Access และ Excel ฟังก์ชันและอาร์กิวเมนต์จะใช้เพื่อทํางานที่คุณไม่สามารถทําได้โดยใช้ตัวดําเนินการเพียงอย่างเดียว ตัวอย่างเช่น คุณสามารถหาค่าเฉลี่ยของค่าในเขตข้อมูล หรือแปลงผลลัพธ์ของการคํานวณเป็นรูปแบบสกุลเงินได้ ตัวอย่างของฟังก์ชัน ได้แก่ SUM และ STDEV อาร์กิวเมนต์คือค่าที่ให้ข้อมูลกับฟังก์ชัน โปรดทราบว่าทั้ง Access และ Excel มีฟังก์ชันมากมายให้เลือก แต่ชื่อของฟังก์ชันที่คล้ายกันในโปรแกรมนั้นแตกต่างกันในบางครั้ง ตัวอย่างเช่น ฟังก์ชัน AVERAGE ใน Excel จะสอดคล้องกับฟังก์ชัน AVG ใน Access
- ค่าคงที่ ทั้งใน Access และ Excel ค่าคงที่คือค่าที่ไม่เปลี่ยนแปลง เช่น ตัวเลขที่ไม่ได้คำนวณโดยใช้นิพจน์
- ค่า ในทั้ง Access และ Excel ค่าจะถูกใช้ในลักษณะที่คล้ายกัน
นิพจน์ Access ใช้ตัวดําเนินการและค่าคงที่ที่คล้ายกับที่ใช้ในสูตร Excel แต่นิพจน์ Access จะใช้ตัวระบุและฟังก์ชันที่แตกต่างกัน ในขณะที่สูตร Excel มักจะใช้ในเซลล์เวิร์กชีตเท่านั้น นิพจน์ Access จะถูกใช้ในหลายตําแหน่งภายใน Access สําหรับงานต่างๆ รวมถึงรายการต่อไปนี้:
- การสร้างตัวควบคุมที่มีการคำนวณบนฟอร์มและรายงาน
- การสร้างเขตข้อมูลจากการคำนวณในตารางและคิวรี
- การทำหน้าที่เป็นเกณฑ์ในคิวรี
- การตรวจสอบความถูกต้องของข้อมูลที่ใส่ลงในเขตข้อมูลหรือลงในตัวควบคุมบนฟอร์ม
- การจัดกลุ่มข้อมูลในรายงาน
คุณสามารถใช้นิพจน์ Access หรือสูตร Excel เพื่อคํานวณค่าตัวเลขหรือวันที่/เวลาโดยใช้ตัวดําเนินการทางคณิตศาสตร์ ตัวอย่างเช่น เมื่อต้องการคํานวณราคาส่วนลดสําหรับลูกค้า คุณสามารถใช้สูตร Excel =C2*(1-D2) หรือนิพจน์ = [Unit Price]*(1-[Discount])Access
คุณยังสามารถใช้นิพจน์ Access หรือสูตร Excel เพื่อรวม แยก หรือจัดการสตริงโดยใช้ตัวดําเนินการสตริง ตัวอย่างเช่น เมื่อต้องการรวมชื่อและนามสกุลให้เป็นสตริงเดียว คุณสามารถใช้สูตร Excel =D3 & " " & D4 หรือ นิพจน์ = [First Name] & " " & [Last Name]Access
ใช้ตัวสร้างนิพจน์สร้างนิพจน์คำแนะนำไวยากรณ์ของนิพจน์ตัวอย่างของนิพจน์