คุณสามารถใช้แอคชัน FindRecord ในฐานข้อมูล Access บนเดสก์ท็อปเพื่อค้นหาอินสแตนซ์แรกของข้อมูลที่ตรงตามเกณฑ์ที่ระบุโดยอาร์กิวเมนต์ FindRecord ข้อมูลนี้อาจอยู่ในระเบียนปัจจุบัน ในระเบียนถัดไปหรือก่อนหน้า หรือในระเบียนแรก คุณสามารถค้นหาระเบียนในแผ่นข้อมูลของตารางที่ใช้งานอยู่ แผ่นข้อมูลคิวรี แผ่นข้อมูลแบบฟอร์ม หรือแบบฟอร์ม
หมายเหตุ
แมโครแอคชัน FindRecord ไม่พร้อมใช้งานใน Access Web Apps
การตั้งค่า
แอคชัน FindRecord มีอาร์กิวเมนต์ต่อไปนี้
| อาร์กิวเมนต์ของแอคชัน | คำอธิบาย |
|---|---|
| สิ่งที่ค้นหา | ระบุข้อมูลที่คุณต้องการค้นหาในระเบียน ใส่ข้อความ ตัวเลข หรือวันที่ที่คุณต้องการค้นหาหรือพิมพ์นิพจน์ ซึ่งต้องนําหน้าด้วยเครื่องหมายเท่ากับ (=) ในกล่อง สิ่งที่ค้นหา ในส่วน อาร์กิวเมนต์แอคชัน ของบานหน้าต่างตัวสร้างแมโคร คุณสามารถใช้อักขระตัวแทนได้ นี่เป็นอาร์กิวเมนต์ที่จําเป็น |
| ตรงกัน | ระบุตําแหน่งของข้อมูลในเขตข้อมูล คุณสามารถระบุการค้นหาข้อมูลในส่วนใดๆ ของเขตข้อมูล (ส่วนใดๆ ของเขตข้อมูล) สําหรับข้อมูลที่เติมทั้งเขตข้อมูล (เขตข้อมูลทั้งหมด) หรือสําหรับข้อมูลที่อยู่ที่ตําแหน่งเริ่มต้นของเขตข้อมูล (ตอนต้นของเขตข้อมูล) ค่าเริ่มต้นคือ เขตข้อมูลทั้งหมด |
| ตรงตามตัวพิมพ์ใหญ่-เล็ก | ระบุว่าการค้นหาตรงตามตัวพิมพ์ใหญ่-เล็กหรือไม่ คลิก ใช่ (ดําเนินการค้นหาแบบตรงตามตัวพิมพ์ใหญ่-เล็ก) หรือ ไม่ใช่ (ค้นหาโดยไม่คํานึงว่าต้องตรงตามตัวพิมพ์ใหญ่-เล็ก) ค่าเริ่มต้นคือ ไม่ใช่ |
| การค้นหา | ระบุว่าการค้นหาจะเริ่มจากระเบียนปัจจุบันขึ้นไปยังจุดเริ่มต้นของระเบียน (ขึ้น) หรือไม่ ลงไปยังจุดสิ้นสุดของระเบียน (ลง); หรือลงไปยังจุดสิ้นสุดของระเบียน จากนั้นจากจุดเริ่มต้นของระเบียนไปยังระเบียนปัจจุบัน เพื่อให้ค้นหาทุกระเบียน (ทั้งหมด) ค่าเริ่มต้นคือ ทั้งหมด |
| ค้นหาตามรูปแบบที่จัดไว้ | ระบุว่าการค้นหารวมข้อมูลที่มีการจัดรูปแบบด้วยหรือไม่ คลิก ใช่ (Access จะค้นหาข้อมูลตามที่ถูกจัดรูปแบบและแสดงในเขตข้อมูล) หรือ ไม่ใช่ (Access จะค้นหาข้อมูลตามที่ถูกเก็บไว้ในฐานข้อมูล ซึ่งจะไม่เหมือนกับที่แสดงเสมอไป) ค่าเริ่มต้นคือ ไม่ใช่ คุณสามารถใช้ฟีเจอร์นี้เพื่อจํากัดการค้นหาข้อมูลในรูปแบบหนึ่งๆ ตัวอย่างเช่น คลิก ใช่ และพิมพ์ 1,234 ในอาร์กิวเมนต์สิ่งที่ ค้นหา เพื่อค้นหาค่า 1,234 ในเขตข้อมูลที่จัดรูปแบบให้รวมเครื่องหมายจุลภาค คลิก ไม่ ถ้าคุณต้องการพิมพ์ 1234 เพื่อค้นหาข้อมูลในเขตข้อมูลนี้ เมื่อต้องการค้นหาวันที่ ให้คลิก ใช่ เพื่อค้นหาวันที่ตามที่จัดรูปแบบไว้ เช่น 08 กรกฎาคม 2558 ถ้าคุณคลิก ไม่ ให้ใส่วันที่สําหรับอาร์กิวเมนต์สิ่งที่ค้นหาในรูปแบบที่ตั้งค่าไว้ในการตั้งค่าภูมิภาคในแผงควบคุมของ Windows รูปแบบนี้แสดงในกล่อง รูปแบบวันที่แบบสั้น ที่พบบนแท็บ วันที่ ในการตั้งค่าภูมิภาค ตัวอย่างเช่น ถ้ากล่อง รูปแบบวันที่แบบสั้น ถูกตั้งค่าเป็น ด/ว/ปป คุณสามารถใส่ 8/7/2558 และ Access จะค้นหารายการทั้งหมดในเขตข้อมูลวันที่ที่สอดคล้องกับวันที่ 8 กรกฎาคม 2558 โดยไม่คํานึงถึงวิธีการจัดรูปแบบเขตข้อมูลนี้ หมายเหตุ: อาร์กิวเมนต์ค้นหา ตามการจัดรูปแบบจะ มีผลก็ต่อเมื่อเขตข้อมูลปัจจุบันเป็นตัวควบคุมที่ถูกผูกไว้ อาร์กิวเมนต์ที่ ตรงกัน ถูกตั้งค่าเป็น เขตข้อมูลทั้งหมด อาร์กิวเมนต์เขต ข้อมูลปัจจุบันเท่านั้น ถูกตั้งค่าเป็น ใช่ และอาร์กิวเมนต์ ตรงตามตัวพิมพ์ใหญ่-เล็กถูก ตั้งค่าเป็น ไม่ใช่ ถ้าคุณตั้งค่า ตรงตามตัวพิมพ์ใหญ่-เล็ก เป็น ใช่ หรือ เฉพาะเขตข้อมูลปัจจุบัน เป็น ไม่ใช่ คุณยังต้องตั้งค่า ค้นหาตามรูปแบบ เป็น ใช่ ด้วย |
| เฉพาะเขตข้อมูลปัจจุบัน | ระบุว่าการค้นหาจะถูกจํากัดไว้เฉพาะเขตข้อมูลปัจจุบันในแต่ละระเบียน หรือรวมเขตข้อมูลทั้งหมดในแต่ละระเบียน การค้นหาในเขตข้อมูลปัจจุบันจะเร็วกว่า คลิก ใช่ (จํากัดการค้นหาไว้เฉพาะเขตข้อมูลปัจจุบัน) หรือ ไม่ใช่ (ค้นหาในเขตข้อมูลทั้งหมดในแต่ละระเบียน) ค่าเริ่มต้นคือ ใช่ |
| ค้นหาตั้งแต่ต้น | ระบุว่าการค้นหาจะเริ่มต้นที่ระเบียนแรกหรือที่ระเบียนปัจจุบัน คลิก ใช่ (เริ่มที่ระเบียนแรก) หรือ ไม่ใช่ (เริ่มที่ระเบียนปัจจุบัน) ค่าเริ่มต้นคือ ใช่ |
ข้อสังเกต
เมื่อแมโครเรียกใช้แอคชัน FindRecord โปรแกรม Access จะค้นหาข้อมูลที่ระบุในระเบียน (ลําดับการค้นหาถูกกําหนดโดยการตั้งค่าอาร์กิวเมนต์ Search ) เมื่อ Access พบข้อมูลที่ระบุ ข้อมูลดังกล่าวจะถูกเลือกในระเบียน
แอคชัน FindRecord เทียบเท่ากับการคลิก ค้นหา บนแท็บ หน้าแรก และอาร์กิวเมนต์จะเหมือนกับตัวเลือกในกล่องโต้ตอบ ค้นหาและแทนที่ ถ้าคุณตั้งค่าอาร์กิวเมนต์ FindRecord ในหน้าต่างการออกแบบแมโคร จากนั้นเรียกใช้แมโคร คุณจะเห็นตัวเลือกที่เกี่ยวข้องถูกเลือกไว้ในกล่องโต้ตอบ ค้นหาและแทนที่ เมื่อคุณคลิก ค้นหา
Access จะรักษาอาร์กิวเมนต์ FindRecord ล่าสุดเอาไว้ในระหว่างเซสชันฐานข้อมูล เพื่อที่คุณจะได้ไม่ต้องใส่เกณฑ์เดิมซ้ําๆ ขณะที่คุณดําเนินการที่ตามมาด้วยแอคชัน FindRecord ถ้าคุณปล่อยให้อาร์กิวเมนต์ว่างไว้ Access จะใช้การตั้งค่าล่าสุดสําหรับอาร์กิวเมนต์ ตามที่ตั้งค่าโดยแอคชัน FindRecord ก่อนหน้า หรือในกล่องโต้ตอบ ค้นหาและแทนที่
เมื่อคุณต้องการค้นหาระเบียนโดยใช้แมโคร ให้ใช้แอคชัน FindRecord ไม่ใช่แอคชัน RunCommand ที่มีการตั้งค่าอาร์กิวเมนต์ให้เรียกใช้คำสั่ง ค้นหา
หมายเหตุ
ในขณะที่แอคชัน FindRecord สอดคล้องกับคําสั่ง ค้นหา บนแท็บ หน้าแรก สําหรับตาราง คิวรี และฟอร์ม แต่แอคชันนี้จะไม่สอดคล้องกับคําสั่ง ค้นหา บนเมนู แก้ไข ในหน้าต่าง โค้ด คุณไม่สามารถใช้แอคชัน FindRecord เพื่อค้นหาข้อความในโมดูลได้
ถ้าข้อความที่เลือกในปัจจุบันเหมือนกับข้อความที่ต้องการค้นหาเมื่อดําเนินการ FindRecord การค้นหาจะเริ่มต้นตามการเลือกโดยทันทีในเขตข้อมูลเดียวกันกับการเลือก และในระเบียนเดียวกัน มิฉะนั้น การค้นหาจะเริ่มที่จุดเริ่มต้นของระเบียนปัจจุบัน ซึ่งจะทําให้คุณสามารถค้นหาหลายอินสแตนซ์ของเกณฑ์การค้นหาเดียวกันที่อาจปรากฏในระเบียนเดียวได้
อย่างไรก็ตาม โปรดสังเกตว่าถ้าคุณใช้ปุ่มคําสั่งเพื่อเรียกใช้แมโครที่มีแอคชัน FindRecord อินสแตนซ์แรกของเกณฑ์การค้นหาจะถูกพบซ้ําๆ ลักษณะนี้เกิดขึ้นเนื่องจากการคลิกปุ่มคําสั่งจะนําโฟกัสออกจากเขตข้อมูลที่มีค่าตรงกัน จากนั้นแอคชัน FindRecord จะเริ่มการค้นหาจากจุดเริ่มต้นของระเบียน เมื่อต้องการหลีกเลี่ยงปัญหานี้ ให้เรียกใช้แมโครโดยใช้เทคนิคที่ไม่เปลี่ยนโฟกัส เช่น ปุ่มแถบเครื่องมือแบบกําหนดเองหรือการกดแป้นพิมพ์พร้อมกันที่กําหนดไว้ในแมโคร AutoKeys หรือตั้งค่าโฟกัสในแมโครไปยังเขตข้อมูลที่มีเกณฑ์การค้นหาก่อนที่คุณจะดําเนินการ FindRecord
หมายเหตุ
หลีกเลี่ยงการใช้คําสั่ง SendKeys หรือแมโคร AutoKeys กับข้อมูลที่มีความสําคัญหรือเป็นความลับ ผู้ใช้ที่มีเจตนาร้ายอาจดักจับการกดแป้น และทําให้ความปลอดภัยของคอมพิวเตอร์และข้อมูลของคุณลดลง
ลักษณะการทำงานเช่นเดียวกันนี้ยังเกิดขึ้นได้ถ้าคุณใช้ปุ่มคำสั่งเพื่อเรียกใช้แมโครที่มีแอคชัน FindNext
เมื่อต้องการเรียกใช้แอคชัน FindRecord ในโมดูล Visual Basic for Applications (VBA) ให้ใช้เมธอด FindRecord ของวัตถุ DoCmd
สำหรับการค้นหาที่ซับซ้อนยิ่งขึ้น คุณอาจต้องใช้แมโครแอคชัน SearchForRecord