นำไปใช้กับ
วัตถุ Form |
วัตถุ Report |
คุณสามารถใช้คุณสมบัติ RecordSource เพื่อระบุแหล่งข้อมูลสําหรับ ฟอร์ม หรือ รายงาน อ่าน/เขียน สตริง
นิพจน์.RecordSource
นิพจน์ จำเป็น นิพจน์ที่ส่งกลับวัตถุใดวัตถุหนึ่งในรายการ นําไปใช้กับ
ข้อสังเกต
การตั้งค่าคุณสมบัติ RecordSource สามารถเป็นชื่อตาราง ชื่อคิวรี หรือคําสั่ง SQL ได้ ตัวอย่างเช่น คุณสามารถใช้การตั้งค่าต่อไปนี้
การตั้งค่าตัวอย่าง |
คำอธิบาย |
Employees |
ชื่อตารางระบุตาราง Employees เป็นแหล่งข้อมูล |
SELECT Orders!OrderDate FROM Orders; |
คําสั่ง SQL ที่ระบุเขตข้อมูล OrderDate ในตาราง Orders เป็นแหล่งข้อมูล คุณสามารถผูกตัวควบคุมบนฟอร์มหรือรายงานเข้ากับเขตข้อมูล OrderDate ในตาราง Orders โดยการตั้งค่าคุณสมบัติ ControlSource ของตัวควบคุมเป็น OrderDate |
หมายเหตุ: คุณสามารถตั้งค่าคุณสมบัติ RecordSource โดยใช้ แผ่นคุณสมบัติ ของฟอร์มหรือรายงาน, แมโคร หรือโค้ด Visual Basic for Applications (VBA) ได้
ใน VBA ให้ใช้ นิพจน์สตริง เมื่อต้องการตั้งค่าคุณสมบัตินี้
หมายเหตุ: การเปลี่ยนแหล่งระเบียนของฟอร์มหรือรายงานที่เปิดอยู่ทําให้เกิดคิวรีข้อมูลต้นแบบซ้ําโดยอัตโนมัติ ถ้าคุณสมบัติ Recordset ของฟอร์มถูกตั้งค่าในขณะทํางาน คุณสมบัติ RecordSource ของฟอร์มจะถูกอัปเดต
หลังจากที่คุณได้สร้างฟอร์มหรือรายงานแล้ว คุณสามารถเปลี่ยนแหล่งข้อมูลของฟอร์มหรือรายงานได้ด้วยการเปลี่ยนคุณสมบัติ RecordSource คุณสมบัติ RecordSource ยังมีประโยชน์ถ้าคุณต้องการสร้างฟอร์มหรือรายงานที่นํากลับมาใช้ใหม่ได้ ตัวอย่างเช่น คุณสามารถสร้างฟอร์มที่รวมการออกแบบมาตรฐาน จากนั้นคัดลอกฟอร์มและเปลี่ยนคุณสมบัติ RecordSource เพื่อแสดงข้อมูลจากตาราง คิวรี หรือคําสั่ง SQL อื่น
การจํากัดจํานวนระเบียนที่มีอยู่ในแหล่งระเบียนของฟอร์มสามารถเพิ่มประสิทธิภาพการทํางานโดยเฉพาะอย่างยิ่งเมื่อแอปพลิเคชันของคุณทํางานบนเครือข่าย ตัวอย่างเช่น คุณสามารถตั้งค่าคุณสมบัติ RecordSource ของฟอร์มเป็นคําสั่ง SQL ที่ส่งกลับระเบียนเดี่ยวและเปลี่ยนแหล่งระเบียนของฟอร์มโดยขึ้นอยู่กับเกณฑ์ที่เลือกโดยผู้ใช้
ตัวอย่าง
ตัวอย่างต่อไปนี้ตั้งค่าคุณสมบัติ RecordSource ของฟอร์มเป็นตาราง Customers:
Forms!frmCustomers.RecordSource = "Customers"
ตัวอย่างถัดไปจะเปลี่ยนแหล่งระเบียนของฟอร์มเป็นระเบียนเดียวในตาราง Customers ขึ้นอยู่กับชื่อบริษัทที่เลือกในตัวควบคุมกล่องคําสั่งผสม cmboCompanyName กล่องคําสั่งผสมจะถูกเติมด้วยคําสั่ง SQL ที่ส่งกลับ ID ลูกค้า (ในคอลัมน์ที่ถูกผูกไว้) และชื่อบริษัท CustomerID มีชนิดข้อมูล Text
Sub cmboCompanyName_AfterUpdate()
Dim strNewRecord As String
strNewRecord = "SELECT * FROM Customers " _
& " WHERE CustomerID = '" _
& Me!cmboCompanyName.Value & "'"
Me.RecordSource = strNewRecord
End Sub