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

Bạn có thể sử dụng hàm DAvg để tính trung bình của một tập hợp các giá trị trong một tập hợp các bản ghi đã xác định ( miền ). Sử dụng hàm DAvg trong mô-đun Visual Basic for Applications (VBA), trong macro, trong biểu thức truy vấn hoặc trong biểu thức điều khiển được tính toán.

Ví dụ: bạn có thể sử dụng hàm DAvg trong hàng tiêu chí của truy vấn chọn trên cước phí để hạn chế kết quả ở những bản ghi có chi phí vận chuyển vượt quá mức trung bình. Hoặc bạn có thể sử dụng một biểu thức bao gồm hàm DAvg trong điều khiển được tính toán và hiển thị giá trị trung bình của các đơn hàng trước đó bên cạnh giá trị của một đơn hàng mới.

Cú pháp

DAvg ( expr , domain [, criteria] )

pháp hàm DAvg có các đối số sau đây:

Đối số

Mô tả

expr

Bắt buộc. Một biểu thức xác định trường có chứa dữ liệu số mà bạn muốn tính trung bình. Nó có thể là một biểu thức chuỗi nhận dạng một trường trong một bảng hoặc truy vấn hoặc nó có thể là một biểu thức thực hiện tính toán trên dữ liệu trong trường đó. Trong expr, bạn có thể đưa tên của trường vào bảng, điều khiển trên biểu mẫu, hằng số hoặc hàm. Nếu expr bao gồm một hàm, nó có thể là tích hợp sẵn hoặc do người dùng xác định, nhưng không phải là một hàm tổng hợp miền khác hoặc hàm tổng hợp SQL.

miền

Bắt buộc. Một biểu thức chuỗi xác định tập hợp các bản ghi cấu thành miền. Đó có thể là tên bảng hoặc tên truy vấn cho truy vấn không yêu cầu tham số.

tiêu chí

Không bắt buộc. Một biểu thức chuỗi được sử dụng để hạn chế phạm vi dữ liệu mà hàm DAvg được thực hiện. Ví dụ: tiêu chí thường tương đương với mệnh đề WHERE trong một biểu thức SQL, không có từ WHERE. Nếu đối số criteria bị bỏ qua, hàm DAvg sẽ đánh giá expr so với toàn bộ tên miền. Bất kỳ trường nào được bao gồm trong criteria cũng phải là một trường trong tên miền; nếu không , hàm DAvg trả về giá trị Null.

Chú thích

Bản ghi chứa giá trị Null không được bao gồm trong tính toán giá trị trung bình.

Cho dù bạn sử dụng hàm DAvg trong macro hay mô-đun, trong biểu thức truy vấn hay trong điều khiển được tính toán, bạn phải xây dựng đối số criteria một cách cẩn thận để đảm bảo tham đối được đánh giá chính xác.

Bạn có thể sử dụng hàm DAvg để chỉ định các tiêu chí trong hàng Tiêu chí của truy vấn. Ví dụ: giả sử bạn muốn xem danh sách tất cả các sản phẩm được đặt hàng với số lượng lớn hơn số lượng đơn hàng trung bình. Bạn có thể tạo truy vấn trên các bảng Đơn hàng, Chi tiết Đơn hàng và Sản phẩm, đồng thời bao gồm trường Tên Sản phẩm và trường Số lượng với biểu thức sau đây trong hàng Tiêu chí bên dưới trường Số lượng:

>DAvg("[Quantity]", "Orders")

Bạn cũng có thể sử dụng hàm DAvg trong biểu thức trường được tính toán trong truy vấn hoặc trong hàng Cập nhật thành của một truy vấn cập nhật.

Lưu ý: Bạn có thể sử dụng hàm DAvghoặc Avg trong một biểu thức trường được tính toán trong một truy vấn tổng. Nếu bạn sử dụng hàm DAvg , giá trị được tính trung bình trước khi dữ liệu được nhóm. Nếu bạn sử dụng hàm Avg , dữ liệu được nhóm trước các giá trị trong biểu thức trường là trung bình.

Sử dụng hàm DAvg trong điều khiển được tính toán khi bạn cần chỉ định các tiêu chí để hạn chế phạm vi dữ liệu mà hàm DAvg được thực hiện. Ví dụ: để hiển thị chi phí vận chuyển trung bình cho các lô hàng được gửi đến California, hãy đặt thuộc tính ControlSource của hộp văn bản thành biểu thức sau đây:

=DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'")

Nếu bạn chỉ muốn tính trung bình tất cả các bản ghi trong miền, hãy sử dụng hàm Avg .

Bạn có thể sử dụng hàm DAvg trong mô-đun hoặc macro hoặc trong điều khiển được tính toán trên biểu mẫu nếu trường mà bạn cần hiển thị không nằm trong nguồn bản ghi mà biểu mẫu của bạn dựa trên đó. Ví dụ: giả sử bạn có một biểu mẫu dựa trên bảng Đơn hàng và bạn muốn đưa vào trường Số lượng từ bảng Chi tiết Đơn hàng để hiển thị số lượng trung bình các mục mà một khách hàng cụ thể đã đặt hàng. Bạn có thể sử dụng hàm DAvg để thực hiện tính toán này và hiển thị dữ liệu trên biểu mẫu của mình.

Mẹo

  • Nếu bạn sử dụng hàm DAvg trong điều khiển được tính toán, bạn có thể muốn đặt điều khiển trên đầu trang hoặc chân trang của biểu mẫu để giá trị cho điều khiển này không được tính toán lại mỗi lần bạn di chuyển đến một bản ghi mới.

  • Nếu kiểu dữ liệu của trường có xuất phát từ expr là số, hàm DAvg sẽ trả về kiểu dữ liệu Double. Nếu bạn sử dụng hàm DAvg trong điều khiển được tính, hãy đưa hàm chuyển đổi kiểu dữ liệu vào biểu thức để cải thiện hiệu suất.

  • Mặc dù bạn có thể sử dụng hàm DAvg để xác định trung bình của các giá trị trong một trường trong bảng phụ nhưng việc tạo truy vấn chứa tất cả các trường bạn cần có có thể sẽ hiệu quả hơn, rồi tạo cơ sở cho biểu mẫu hoặc báo cáo của bạn dựa trên truy vấn đó.

Lưu ý: Những thay đổi không được lưu đối với bản ghi trong miền không được bao gồm khi bạn sử dụng hàm này. Nếu bạn muốn hàm DAvg dựa trên các giá trị đã thay đổi, trước tiên bạn phải lưu các thay đổi bằng cách bấm Lưu Bản ghi bên dưới Bản ghi trên tab Dữ liệu, di chuyển tiêu điểm đến một bản ghi khác hoặc bằng cách sử dụng phương pháp Cập nhật.

Ví dụ

Lưu ý: Các ví dụ sau thể hiện cách sử dụng hàm này trong mô-đun Visual Basic for Applications (VBA). Để biết thêm thông tin về cách làm việc với VBA, chọn Tham khảo dành cho Nhà phát triển trong danh sách thả xuống cạnh Tìm kiếm, rồi nhập một hoặc nhiều từ vào hộp tìm kiếm.

Hàm sau trả về chi phí cước phí trung bình cho các đơn hàng được vận chuyển vào hoặc sau một ngày nhất định. Miền là bảng Đơn hàng. Đối số criteria hạn chế tập hợp bản ghi thu được dựa trên ngày vận chuyển và quốc gia/vùng lãnh thổ đã cho. Lưu ý rằng từ khóa AND được bao gồm trong chuỗi để phân tách các trường trong đối số criteria . Tất cả các bản ghi được bao gồm trong tính toán hàm DAvg sẽ có cả hai tiêu chí này.

Public Function AvgFreightCost _    (ByVal strCountryRegion As String, _     ByVal dteShipDate As Date) As Double    AvgFreightCost = DAvg("[Freight]", "Orders", _        "[ShipCountryRegion] = '" & strCountryRegion & _        "'AND [ShippedDate] >= #" & dteShipDate & "#")End Function

Để gọi hàm, hãy dùng dòng mã sau đây trong cửa sổ Tức thời:

:AvgFreightCost "UK", #1/1/96#

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ú.