Bạn có thể sử dụng hành động macro SearchForRecord trong cơ sở dữ liệu Access trên máy tính để tìm kiếm một bản ghi cụ thể trong bảng, truy vấn, biểu mẫu hoặc báo cáo.
Thiết đặt
Hành động macro SearchForRecord có các đối số sau đây.
Đối số hành động |
Mô tả |
||||||||||
Kiểu Đối tượng |
Nhập hoặc chọn loại đối tượng cơ sở dữ liệu mà bạn đang tìm kiếm. Bạn có thể chọn Bảng, Truy vấn, Biểu mẫu hoặc Báo cáo. |
||||||||||
Tên Đối tượng |
Nhập hoặc chọn đối tượng cụ thể có chứa bản ghi để tìm kiếm. Danh sách thả xuống hiển thị tất cả các đối tượng cơ sở dữ liệu của kiểu bạn đã chọn cho đối số Loại Đối tượng. |
||||||||||
Bản ghi |
Xác định điểm bắt đầu và hướng tìm kiếm.
|
||||||||||
Điều kiện ở đâu |
Nhập tiêu chí cho tìm kiếm bằng cách sử dụng cùng một cú pháp như mệnh đề WHERE của SQL, chỉ không có từ "WHERE". Ví dụ: Description = "Beverages" Để tạo tiêu chí bao gồm một giá trị từ hộp văn bản trên biểu mẫu, bạn phải tạo một biểu thức ghép nối phần đầu tiên của tiêu chí với tên của hộp văn bản có chứa giá trị cần tìm kiếm. Ví dụ: tiêu chí sau đây sẽ tìm kiếm giá trị trong hộp văn bản có tên txtDescription trên biểu mẫu có tên là frmCategories. Lưu ý dấu bằng (=) ở đầu biểu thức và sử dụng dấu nháy đơn (') ở hai bên của tham chiếu hộp văn bản: ="Description = '" & Forms![frmCategories]![txtDescription] & "'" |
Chú thích
-
Trong trường hợp có nhiều bản ghi khớp với tiêu chí trong đối số Where Condition , các yếu tố sau đây sẽ xác định bản ghi nào được tìm thấy:
-
Thiết đặt đối số Record Xem bảng trong mục Cài đặt để biết thêm thông tin về đối số Record .
-
Thứ tự sắp xếp các bản ghi Ví dụ: nếu đối số Record được đặt là Đầu tiên, việc thay đổi thứ tự sắp xếp các bản ghi có thể thay đổi bản ghi được tìm thấy.
-
-
Đối tượng được xác định trong đối số Tên Đối tượng phải được mở trước khi chạy hành động này. Nếu không, lỗi sẽ xảy ra.
-
Nếu tiêu chí trong đối số Where Condition không được đáp ứng, không có lỗi xuất hiện và tiêu điểm vẫn còn trên bản ghi hiện tại.
-
Khi tìm kiếm bản ghi trước đó hoặc tiếp theo, tìm kiếm sẽ không "ngắt dòng" khi đến cuối dữ liệu. Nếu không có thêm bản ghi nào khớp với tiêu chí, sẽ không có lỗi nào xảy ra và tiêu điểm vẫn còn trên bản ghi hiện tại. Để xác nhận đã tìm thấy kết quả khớp, bạn có thể nhập điều kiện cho hành động tiếp theo và làm cho điều kiện giống như tiêu chí trong đối số Where Condition .
-
Để chạy hành động SearchForRecord trong mô-đun VBA, hãy sử dụng phương pháp SearchForRecord của đối tượng DoCmd .
-
Hành động macro SearchForRecord tương tự như hành động macro FindRecord nhưng SearchForRecord có các tính năng tìm kiếm mạnh mẽ hơn. Hành động macro FindRecord chủ yếu được sử dụng để tìm chuỗi và hành động này trùng lặp chức năng của hộp thoại Tìm. Hành động macro SearchForRecord sử dụng các tiêu chí giống với các tiêu chí của bộ lọc hoặc truy vấn SQL hơn. Danh sách sau đây minh họa một số thao tác bạn có thể thực hiện với hành động macro SearchForRecord :
-
Bạn có thể sử dụng tiêu chí phức tạp trong đối số Where Condition , chẳng hạn như
-
Mô tả = "Đồ uống" và CATEGORYID = 11
-
Bạn có thể tham chiếu đến các trường trong nguồn bản ghi của một biểu mẫu hoặc báo cáo nhưng không được hiển thị trên biểu mẫu hoặc báo cáo. Trong ví dụ trên đây, các tiêu chí Description cũng CategoryID được hiển thị trên biểu mẫu hoặc báo cáo để các tiêu chí hoạt động.
-
Bạn có thể sử dụng toán tử lô-gic, chẳng hạn<, >, AND, OR và BETWEEN. Hành động FindRecord chỉ khớp với các chuỗi bằng nhau, bắt đầu bằng hoặc chứa chuỗi đang được tìm kiếm.
Ví dụ
Macro sau đây trước tiên sẽ mở bảng Thể loại bằng cách sử dụng hành động OpenTable . Sau đó, macro sẽ sử dụng hành động macro SearchForRecord để tìm bản ghi đầu tiên trong bảng có trường Mô tả bằng "Đồ uống".
Hành động |
Đối số |
OpenTable |
Tên Bảng: Thể loại Dạng xem: Biểu dữ liệu Chế độ Dữ liệu: Chỉnh sửa |
SearchForRecord |
Loại Đối tượng: Bảng Tên Đối tượng: Thể loại Bản ghi: Đầu tiên Trong đó Điều kiện: Mô tả = "Đồ uống" |