Khi bạn muốn một truy vấn trong Access yêu cầu đầu vào mỗi lần bạn chạy truy vấn đó, bạn có thể tạo truy vấn có tham biến.
Bạn cũng có thể tạo biểu mẫu để thu thập giá trị tham số sẽ được sử dụng để hạn chế bản ghi được trả về cho truy vấn, biểu mẫu hoặc báo cáo. Bài viết này sẽ giải thích cách sử dụng biểu mẫu nhằm cải thiện việc sử dụng tham số trong các truy vấn, biểu mẫu và báo cáo của bạn.
Trong bài viết này
Tổng quan
Bạn có thể sử dụng tiêu chí trong một truy vấn tham số ở Access để hạn chế tập hợp bản ghi mà truy vấn trả về. Bạn có thể thấy truy vấn tham số trả về không đủ hộp thoại cho mục đích của mình. Trong những trường hợp như vậy, bạn có thể tạo một biểu mẫu đáp ứng tốt hơn cho nhu cầu về tuyển tập tham số của mình. Bài viết này sẽ giải thích cách tạo biểu mẫu giúp thu thập tham số truy vấn và tham số báo cáo. Bài viết này giả định rằng bạn đã quen với việc tạo truy vấn và xác định tham số trong truy vấn. Ít nhất, bạn cũng quen với việc tạo truy vấn chọn trước khi tiếp tục.
Bài viết này sẽ cung cấp ví dụ về việc sử dụng tham số trong các truy vấn. Bài viết này không cung cấp một tham chiếu toàn diện để xác định tiêu chí.
-
Để biết thêm thông tin về cách tạo truy vấn chọn, hãy xem bài viết Tạo truy vấn chọn đơn giản.
-
Để biết thêm thông tin về các truy vấn nói chung, hãy xem bài viết Giới thiệu về truy vấn.
-
Để biết thêm thông tin về việc xác định tham số trong truy vấn, hãy xem bài viết Sử dụng tham số để yêu cầu đầu vào khi chạy truy vấn.
-
Để biết thêm thông tin về cách xác định tiêu chí trong các truy vấn, hãy xem bài viết Ví dụ về tiêu chí truy vấn.
Sử dụng tham số trong truy vấn
Việc sử dụng tham số trong truy vấn cũng dễ như việc tạo truy vấn có sử dụng tiêu chí. Bạn có thể thiết kế truy vấn để nhắc một phần thông tin cho mình, chẳng hạn như số phần hoặc nhiều hơn một phần thông tin, như hai ngày. Với mỗi tham số, một truy vấn tham số sẽ hiển thị một hộp thoại riêng nhắc bạn về giá trị cho tham số đó.
Thêm tham số vào truy vấn
-
Tạo truy vấn chọn, rồi mở truy vấn trong Cửa sổ thiết kế.
-
Trong hàng Tiêu chí của một trường mà bạn muốn áp dụng tham số, hãy nhập văn bản bạn muốn hộp thoại tham số hiển thị, chẳng hạn như nằm trong ngoặc vuông:
[Ngày Bắt đầu]
Khi bạn chạy truy vấn tham số, lời nhắc sẽ xuất hiện trong hộp thoại mà không có dấu ngoặc vuông.
Bạn cũng có thể sử dụng một biểu thức với lời nhắc tham số của mình, ví dụ:
Từ [Ngày Bắt đầu] Đến [Ngày Kết thúc]
Lưu ý: Một hộp thoại riêng sẽ xuất hiện cho từng lời nhắc tham số. Trong ví dụ thứ hai, hai hộp thoại xuất hiện: một hộp thoại cho Ngày Bắt đầu và một hộp thoại cho Ngày Kết thúc.
-
Lặp lại bước 2 cho từng trường bạn muốn thêm tham số.
Bạn có thể sử dụng các bước trước đó để thêm tham số vào bất kỳ loại truy vấn nào trong những loại truy vấn sau: Chọn, Chéo bảng, Nối, Tạo bảng hoặc Cập nhật.
Bạn cũng có thể thêm tham số vào truy vấn hợp bằng cách làm theo những bước sau:
-
Mở truy vấn hợp trong dạng xem SQL.
-
Thêm mệnh đề WHERE có chứa mọi trường mà bạn muốn nhắc cho tham số.
Nếu đã tồn tại mệnh đề WHERE, hãy kiểm tra xem những trường bạn muốn dùng lời nhắc tham số đã được sử dụng trong mệnh hay chưa và nếu chưa, hãy thêm chúng.
-
Thay vì sử dụng tiêu chí trong mệnh đề WHERE, hãy sử dụng một lời nhắc tham số.
Chỉ rõ kiểu dữ liệu tham số
Bạn cũng có thể xác định kiểu dữ liệu nào tham số sẽ chấp nhận. Bạn có thể xác định kiểu dữ liệu cho mọi tham số nhưng đặc biệt quan trọng là phải xác định kiểu dữ liệu cho những dữ liệu số, tiền tệ hoặc ngày/thời gian. Khi bạn xác định kiểu dữ liệu mà tham số chấp nhận thì người dùng sẽ thấy thông báo lỗi hữu ích hơn khi họ nhập sai kiểu dữ liệu, chẳng hạn như nhập văn bản trong khi đáng ra phải là tiền tệ.
Lưu ý: Nếu tham số được cấu hình để chấp nhận dữ liệu văn bản thì mọi dữ liệu đầu vào sẽ được hiểu là văn bản và không hiển thị thông báo lỗi nào.
Để xác định kiểu dữ liệu cho tham số trong truy vấn, hay làm theo các bước sau:
-
Với truy vấn đang mở trong dạng xem Thiết kế, trên tab Thiết kế, trong nhóm Hiện/Ẩn, bấm Tham số.
-
Trong hộp thoại Tham số Truy vấn, trong cột Tham số, hãy nhập lời nhắc cho mỗi tham số mà bạn muốn xác định kiểu dữ liệu cho tham số đó. Hãy đảm bảo rằng mỗi tham số khớp với lời nhắc bạn đã dùng trong hàng Tiêu chí của lưới thiết kế truy vấn.
-
Trong cột Kiểu Dữ liệu hãy chọn kiểu dữ liệu cho mỗi tham số.
Tạo biểu mẫu giúp thu thập tham số
Mặc dù các truy vấn tham số có tích hợp một hộp thoại tích hợp sẵn giúp thu thập tham số, chúng vẫn sẽ chỉ cung cấp chức năng cơ bản. Qua việc sử dụng biểu mẫu để thu thập tham số, bạn sẽ có được những tính năng sau:
-
Khả năng sử dụng các điều khiển dành riêng cho kiểu dữ liệu, như điều khiển lịch cho ngày.
-
Tính ổn định của các tham số được thu thập để bạn có thể sử dụng chúng với nhiều hơn một truy vấn.
-
Khả năng cung cấp hộp tổ hợp hoặc hộp danh sách cho tuyển tập tham số, khả năng này sẽ giúp bạn chọn từ danh sách các giá trị dữ liệu sẵn có.
-
Khả năng cung cấp điều khiển cho các hàm khác, chẳng hạn như mở hoặc làm mới một truy vấn.
Video sau sẽ hướng dẫn bạn cách tạo biểu mẫu đơn giản để thu thập tham số cho một truy vấn thay vì sử dụng hộp thoại thường được liên kết với các truy vấn tham số.
Tạo biểu mẫu giúp thu thập tham số cho báo cáo
Có vài cách để bạn có thể tiếp cận kịch bản này nhưng chúng tôi sẽ chỉ hướng dẫn một kỹ thuật sử dụng chủ yếu các macro. Hãy làm theo các bước sau để tạo biểu mẫu giúp thu thập tham số cho báo cáo.
Bước 1: Tạo biểu mẫu chấp nhận đầu vào
-
Trên tab Tạo, trong nhóm Biểu mẫu, bấm vào Thiết kế Biểu mẫu.
-
Ở dạng xem Thiết kế, nhấn F4 để hiển thị bảng thuộc tính, rồi xác định thuộc tính biểu mẫu, như được hiển thị trong bảng sau.
Thuộc tính
Cài đặt
Chú thích
Nhập tên bạn muốn xuất hiện trong thanh tiêu đề của biểu mẫu.
Dạng xem Mặc định
Biểu mẫu Đơn
Cho phép Dạng xem Biểu mẫu
Có
Cho phép Dạng xem Biểu dữ liệu
Không
Cho phép Dạng xem PivotTable
Không
Cho phép Dạng xem PivotChart
Không
Thanh Cuộn
Không mục nào
Bộ chọn Bản ghi
Không
Nút Dẫn hướng
Không
Kiểu Viền
Hộp thoại
-
Với mỗi tham số bạn muốn biểu mẫu thu thập, bấm vào Hộp Văn bản trong nhóm Điều khiển ở tab Thiết kế.
-
Đặt thuộc tính cho các hộp văn bản, như được hiển thị trong bảng sau.
Thuộc tính
Cài đặt
Tên
Nhập tên giúp mô tả tham số, ví dụ: Ngày_Bắt_đầu.
Định dạng
Chọn định dạng phản ánh kiểu dữ liệu của trường tham số. Ví dụ: chọn Ngày tháng Chung cho trường ngày tháng.
-
Lưu biểu mẫu rồi đặt tên, chẳng hạn như frmCriteria.
Bước 2: Tạo mô-đun mã để kiểm tra xem biểu mẫu tham số đã được tải hay chưa
-
Trên tab Tạo, trong nhóm Macro & Mã, bấm vào Mô-đun.
Một mô-đun mới sẽ mở ra trong Trình soạn thảo Visual Basic.
-
Hãy nhập hoặc dán mã sau vào Trình soạn thảo Visual Basic:
Function IsLoaded(ByVal strFormName As String) As Boolean Dim oAccessObject As AccessObject Set oAccessObject = CurrentProject.AllForms(strFormName) If oAccessObject.IsLoaded Then If oAccessObject.CurrentView <> acCurViewDesign Then IsLoaded = True End If End If End Function
-
Lưu mô-đun bằng tên duy nhất, rồi đóng Trình soạn thảo Visual Basic.
Bước 3: Tạo macro giúp điều khiển biểu mẫu và báo cáo
Qua việc sử dụng tính năng macro con từ macro của Access, chúng tôi có thể xác định được toàn bộ những bước cần thiết mình cần thực hiện trong một macro đơn. Chúng tôi sẽ tạo bốn macro con - Hộp thoại Mở, Hộp thoại Đóng, OK và Hủy bỏ - để điều khiển các tác vụ khác nhau cần thiết cho quy trình này. Sử dụng ảnh chụp màn hình bên dưới làm hướng dẫn, tạo macro mới bằng các macro con và hành động sau. Lưu ý rằng, với ví dụ này, biểu mẫu tham số của chúng tôi sẽ có tên là frmCriteria. Điều chỉnh macro của bạn để khớp tên biểu mẫu mà bạn đã tạo trước đó. Bạn cũng sẽ cần phải đảm bảo bấm vào Hiển thị Mọi Hành động trên tab Thiết kế để xem toàn bộ hành động macro.
Lưu và đóng macro. Đặt tên cho macro, ví dụ: Macro Phạm vi Ngày.
Bước 4: Thêm các nút lệnh OK và Hủy bỏ vào biểu mẫu
-
Mở lại biểu mẫu tham số bạn đã tạo trước đó trong dạng xem Thiết kế.
-
Đảm bảo không chọn Sử dụng Trình hướng dẫn Điều khiển trong nhóm Điều khiển trên tab Thiết kế.
-
Trên tab Thiết kế, ở nhóm Điều khiển, bấm vào Nút.
-
Đặt con trỏ vào dưới hộp văn bản trên biểu mẫu của bạn, rồi kéo để tạo nút lệnh OK.
-
Nếu bạn không nhìn thấy bảng thuộc tính, hãy nhấn F4 để hiển thị.
-
Đặt thuộc tính của nút OK như được hiển thị trong bảng sau.
Thuộc tính
Cài đặt
Tên
OK
Chú thích
OK
Mặc định
Có
Khi_Bấm
Nhập tên macro, ví dụ Macro Phạm vi Ngày.OK.
-
Tạo nút lệnh Hủy bỏ rồi đặt thuộc tính cho nút, như được hiển thị trong bảng sau.
Thuộc tính
Cài đặt
Tên
Hủy bỏ
Chú thích
Hủy bỏ
Khi_Bấm
Nhập tên macro, ví dụ: Macro Phạm vi Ngày.Hủy bỏ.
-
Lưu và đóng biểu mẫu.
Bước 5: Sử dụng dữ liệu biểu mẫu làm tiêu chí truy vấn
-
Mở truy vấn bạn đã tạo trước đó trong dạng xem Thiết kế.
-
Nhập tiêu chí cho dữ liệu. Sử dụng đối tượng Biểu mẫu, tên biểu mẫu, rồi tên của điều khiển:
-
Ví dụ: trong cơ sở dữ liệu Access (.accdb hoặc .mdb), với biểu mẫu có tên là frmCriteria, bạn sử dụng biểu thức sau để tham chiếu tới các điều khiển có tên là Ngày Bắt đầu và Ngày Kết thúc trong truy vấn:
Từ [Biểu mẫu]![frmCriteria]![Ngày Bắt đầu] Đến [Biểu mẫu]![frmCriteria]![Ngày Kết thúc]
-
Bước 6: Thêm hành động macro vào các sự kiện báo cáo
-
Mở báo cáo bạn muốn sử dụng trong dạng xem Thiết kế.
-
Nếu bạn không nhìn thấy bảng thuộc tính, hãy nhấn F4 để hiển thị.
-
Đảm bảo thuộc tính Nguồn Bản ghi của báo cáo hiện sử dụng truy vấn tham chiếu bạn đã xác định trước đó.
-
Đặt hai thuộc tính báo cáo bổ sung này như được hiển thị trong bảng sau.
Thuộc tính
Cài đặt
Khi_Mở
Nhập tên macro, ví dụ: Macro Phạm vi Ngày.Hộp thoại Mở.
Khi_Đóng
Nhập tên macro, ví dụ: Macro Phạm vi Ngày.Hộp thoại Đóng.
Trong sự kiện Mở của báo cáo, Access sẽ chạy các hành động đã xác định trong macro con Hộp thoại Mở của đối tượng Macro Phạm vi Ngày. Tương tự vậy, khi bạn đóng báo cáo, Access sẽ chạy các hành động đã xác định trong macro con Hộp thoại Đóng của đối tượng Macro Phạm vi Ngày.
-
Lưu và đóng báo cáo.
Bước 7: Hãy thử xem
Giờ thì bạn đã tạo tất cả đối tượng Access, đã đến lúc dùng thử. Mở báo cáo của bạn trong Dạng xem Báo cáo hoặc Xem trước khi In và lưu ý rằng trước khi Access hiển thị báo cáo, biểu mẫu tham số của bạn sẽ mở ở chế độ hộp thoại. Nhập tiêu chí cần thiết vào các hộp văn bản bạn đã tạo trước đó, rồi bấm vào nút lệnh OK trên biểu mẫu. Sau đó, Access sẽ ẩn biểu mẫu (Hiển thị = Không) rồi mở báo cáo chỉ chứa dữ liệu khớp với tiêu chí của bạn. Tính năng này hoạt động nhờ truy vấn tham số mà báo cáo dựa theo đó, có thể đọc giá trị trong các điều khiển trên biểu mẫu ẩn. Khi bạn đóng báo cáo, Access cũng sẽ đóng biểu mẫu tham số.