Applies ToAccess cho Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Bạn có thể sử dụng hành động macro SetValue để đặt giá trị của trường, điều khiển hoặc thuộc tính Access trên biểu mẫu, biểu mẫu biểu dữ liệu hoặc báo cáo.

Lưu ý: Bạn không thể sử dụng hành động macro SetValue để đặt giá trị của thuộc tính Access trả về một đối tượng.

Lưu ý: Hành động này sẽ không được phép nếu cơ sở dữ liệu không đáng tin cậy.

Thiết đặt

Hành động macro SetValue có các đối số sau đây.

Đối số hành động

Mô tả

Mục

Tên của trường, điều khiển hoặc thuộc tính mà bạn muốn đặt giá trị. Nhập trường, điều khiển hoặc tên thuộc tính vào hộp Mục trong phần Đối số Hành động của cửa sổ thiết kế macro. Bạn phải sử dụng cú pháp đầy đủ để tham chiếu đến mục này, chẳng hạn như controlname (cho điều khiển trên biểu mẫu hoặc báo cáo mà từ đó tên macro được gọi) hoặc tên Forms!formname! controlname. Đây là đối số bắt buộc.

Biểu thức

Hàm biểu thức Access sử dụng để đặt giá trị cho mục này. Bạn phải luôn sử dụng cú pháp đầy đủ để tham chiếu đến bất kỳ đối tượng nào trong biểu thức. Ví dụ: để tăng giá trị trong điều khiển Mức lương trên biểu mẫu Nhân viên thêm 10 phần trăm, hãy sử dụng Forms!Employees!Salary*1.1. Đây là đối số bắt buộc.

Lưu ý: Bạn không nên sử dụng dấu bằng (=) trước biểu thức trong đối số này. Nếu bạn làm vậy, Access sẽ đánh giá biểu thức, rồi sử dụng giá trị này làm biểu thức trong đối số này. Điều này có thể tạo ra các kết quả không mong muốn nếu biểu thức là một chuỗi.

Ví dụ: nếu bạn nhập ="String1" cho đối số này, trước tiên Access sẽ đánh giá biểu thức là Chuỗi_1. Sau đó, hàm sử dụng String1 làm biểu thức trong đối số này, hy vọng sẽ tìm thấy điều khiển hoặc thuộc tính có tên là Chuỗi_1 trên biểu mẫu hoặc báo cáo có tên là macro.

Lưu ý: Trong cơ sở dữ liệu Access (.mdb hoặc .accdb), bấm vào nút Dựng để sử dụng Bộ dựng Biểu thức để tạo biểu thức cho một trong các tham đối này.

Chú thích

Bạn có thể sử dụng hành động này để đặt giá trị cho một trường hoặc điều khiển trên biểu mẫu, biểu dữ liệu biểu mẫu hoặc báo cáo. Bạn cũng có thể đặt giá trị cho hầu hết các thuộc tính điều khiển, biểu mẫu và báo cáo trong mọi dạng xem. Để tìm hiểu xem một thuộc tính cụ thể có thể được đặt bằng cách sử dụng macro và có thể đặt thuộc tính đó trong chế độ xem nào, hãy xem chủ đề Trợ giúp cho thuộc tính đó trong thuộc tính Visual Basic Trình soạn thảo.

Bạn cũng có thể đặt giá trị cho một trường trong bảng cơ sở của biểu mẫu ngay cả khi biểu mẫu không chứa điều khiển được liên kết với trường. Sử dụng cú pháp Forms!formname! fieldname trong hộp Mục để đặt giá trị cho một trường như vậy. Bạn cũng có thể tham chiếu đến một trường trong bảng cơ sở của báo cáo bằng cách sử dụng cú pháp Báo cáo! tên báo cáo! fieldname, nhưng phải có một điều khiển trên báo cáo liên kết với trường này, hoặc trường phải được tham chiếu đến trong một điều khiển được tính toán báo cáo.

Nếu bạn đặt giá trị của điều khiển trên biểu mẫu, hành động macro SetValue sẽ không kích hoạt quy tắc xác thực mức biểu mẫu của điều khiển nhưng sẽ kích hoạt quy tắc xác thực mức bảng của trường cơ sở nếu điều khiển là điều khiển được liên kết. Hành động macro SetValue cũng kích hoạt tính toán lại, nhưng việc tính toán lại có thể không xảy ra ngay lập tức. Để kích hoạt ngay lập tức vẽ lại và buộc hoàn tất tính toán lại, hãy sử dụng hành động macro RepaintObject . Giá trị bạn đặt trong điều khiển bằng cách sử dụng hành động macro SetValue cũng không bị ảnh hưởng bởi dấu hiệu nhập được đặt trong thuộc tính InputMask của trường điều khiển hoặc trường cơ sở.

Để thay đổi giá trị của điều khiển, bạn có thể sử dụng hành động SetValue trong macro được xác định bởi thuộc tính sự kiện AfterUpdate của điều khiển. Tuy nhiên, bạn không thể sử dụng hành động SetValue trong macro được xác định bởi thuộc tính sự kiện BeforeUpdate của điều khiển để thay đổi giá trị của điều khiển (mặc dù bạn có thể sử dụng hành động SetValue để thay đổi giá trị của các điều khiển khác). Bạn cũng có thể sử dụng hành động SetValue trong macro được xác định bởi thuộc tính BeforeUpdate hoặc AfterUpdate của biểu mẫu để thay đổi giá trị của bất kỳ điều khiển nào trong bản ghi hiện tại.

Lưu ý: Bạn không thể sử dụng hành động macro SetValue để đặt giá trị của các điều khiển sau:

  • Điều khiển liên kết và điều khiển được tính toán trên báo cáo.

  • Điều khiển được tính trên biểu mẫu.

Mẹo

Bạn có thể sử dụng hành động macro SetValue để ẩn hoặc hiển thị biểu mẫu trong dạng xem Biểu mẫu. Nhập Forms!formname. Hiển thịtrong hộp Mục và Khônghoặc Có trong hộp Biểu thức. Việc đặt thuộc mô thức Visible của biểu mẫu thành Không sẽ ẩn biểu mẫu và làm cho biểu mẫu ở chế độ không cần thiết. Việc đặt thuộc tính thành Yes sẽ hiển thị biểu mẫu và khiến biểu mẫu hiển thị lại mô thức.

Việc thay đổi giá trị hoặc thêm dữ liệu mới vào điều khiển bằng cách sử dụng hành động SetValue trong macro không kích hoạt các sự kiện như BeforeUpdate, BeforeInsert hoặc Change xảy ra khi bạn thay đổi hoặc nhập dữ liệu vào những điều khiển này trong giao diện người dùng. Những sự kiện này cũng sẽ không xảy ra nếu bạn đặt giá trị của điều khiển bằng cách sử dụng mô-đun Visual Basic for Applications (VBA).

Hành động này không sẵn dùng trong mô-đun VBA. Đặt giá trị trực tiếp trong VBA.

Ví dụ

Đặt giá trị của điều khiển bằng cách sử dụng macro

Macro sau đây sẽ mở biểu mẫu Thêm Sản phẩm từ một nút trên biểu mẫu Nhà cung cấp. Nó cho thấy việc sử dụng các hành động macro Echo, Close, OpenForm, SetValuevà GoToControl . Hành động SetValue đặt điều khiển ID Nhà cung cấp trên biểu mẫu Sản phẩm cho nhà cung cấp hiện tại trên biểu mẫu Nhà cung cấp. Hành động GoToControl sau đó sẽ di chuyển tiêu điểm đến trường CategoryID, nơi bạn có thể bắt đầu nhập dữ liệu cho sản phẩm mới. Macro này phải được đính kèm vào nút Thêm Sản phẩm trên biểu mẫu Nhà cung cấp.

Hành động

Đối số: Thiết đặt

Chú thích

Echo

Echo On: Không

Dừng cập nhật màn hình trong khi macro đang chạy.

Đóng

Loại Đối tượng: Biểu mẫu

Tên Đối tượng: Danh sách Sản phẩm

Lưu: Không

Đóng biểu mẫu Danh sách Sản phẩm.

Biểu mẫu Mở

Tên Biểu mẫu: Sản phẩm

Dạng xem: Biểu mẫu

Chế độ Dữ liệu: Thêm

Chế độ Cửa sổ: Bình thường

Mở biểu mẫu Sản phẩm.

SetValue

Mặt hàng: [Forms]![ Sản phẩm]! [ID Nhà cung cấp]

Biểu thức: ID Nhà cung cấp

Đặt kiểm soát ID_nhà_cung_cấp cho nhà cung cấp hiện tại trên biểu mẫu Nhà cung cấp.

GoToControl

Tên Điều khiển: CategoryID

Đi đến điều khiển CategoryID.

Bạn cần thêm trợ giúp?

Bạn muốn xem các tùy chọn khác?

Khám phá các lợi ích của gói đăng ký, xem qua các khóa đào tạo, tìm hiểu cách bảo mật thiết bị của bạn và hơn thế nữa.

Cộng đồng giúp bạn đặt và trả lời các câu hỏi, cung cấp phản hồi và lắng nghe ý kiến từ các chuyên gia có kiến thức phong phú.