Bỏ qua nội dung chính

Làm cách nào để tính trung bình 5 giá trị cuối cùng của một cột khi các số mới nhập vào?

Trong Excel, bạn có thể nhanh chóng tính toán trung bình của 5 giá trị cuối cùng trong một cột bằng hàm Trung bình, nhưng đôi khi, bạn cần nhập các số mới phía sau dữ liệu ban đầu của mình và bạn muốn kết quả trung bình sẽ được tự động thay đổi như nhập dữ liệu mới. Có nghĩa là, bạn muốn có giá trị trung bình luôn phản ánh 5 số cuối cùng trong danh sách dữ liệu của mình, ngay cả khi bạn thêm các số ngay bây giờ và sau đó.

Trung bình 5 giá trị cuối cùng của một cột dưới dạng số mới nhập với công thức


mũi tên màu xanh bong bóng bên phải Trung bình 5 giá trị cuối cùng của một cột dưới dạng số mới nhập với công thức

Các công thức mảng sau đây có thể giúp bạn giải quyết vấn đề này, vui lòng thực hiện như sau:

Nhập công thức này vào một ô trống:

=IF(COUNT(A:A),AVERAGE(INDEX(A:A,LARGE(IF(ISNUMBER(A1:A10000),ROW(A1:A10000)),MIN(5,COUNT(A1:A10000)))):A10000),"no data") (A: A là cột chứa dữ liệu bạn đã sử dụng, A1: A10000 là một phạm vi động, bạn có thể mở rộng nó tùy theo nhu cầu của bạn và 5 cho biết giá trị n cuối cùng.), rồi nhấn Ctrl + Shift + Enter các phím với nhau để lấy giá trị trung bình của 5 số cuối cùng. Xem ảnh chụp màn hình:

doc-trung-bình-cuối-5-1

Và bây giờ, khi bạn nhập các số mới sau dữ liệu ban đầu, giá trị trung bình cũng sẽ được thay đổi, hãy xem ảnh chụp màn hình:

doc-trung-bình-cuối-5-2

Chú thích: Nếu cột ô chứa giá trị 0, bạn muốn loại trừ các giá trị 0 khỏi 5 số cuối cùng của mình, công thức trên sẽ không hoạt động, ở đây, tôi có thể giới thiệu cho bạn một công thức mảng khác để lấy giá trị trung bình của 5 giá trị khác không cuối cùng , vui lòng nhập công thức này:

=AVERAGE(SUBTOTAL(9,OFFSET(A1:A10000,LARGE(IF(A1:A10000>0,ROW(A1:A10000)-MIN(ROW(A1:A10000))),ROW(INDIRECT("1:5"))),0,1))), và sau đó nhấn Ctrl + Shift + Enter để nhận được kết quả bạn cần, xem ảnh chụp màn hình:

doc-trung-bình-cuối-5-3


Các bài liên quan:

Làm cách nào để tính trung bình mỗi 5 hàng hoặc cột trong Excel?

Làm cách nào để tính trung bình 3 giá trị trên cùng hoặc dưới cùng trong Excel?

Công cụ năng suất văn phòng tốt nhất

🤖 Trợ lý AI của Kutools: Cách mạng hóa việc phân tích dữ liệu dựa trên: Thực thi thông minh   |  Tạo mã  |  Tạo công thức tùy chỉnh  |  Phân tích dữ liệu và tạo biểu đồ  |  Gọi các hàm Kutools...
Các tính năng phổ biến: Tìm, đánh dấu hoặc xác định các bản sao   |  Xóa hàng trống   |  Kết hợp các cột hoặc ô mà không làm mất dữ liệu   |   Vòng không có công thức hữu ích. Cảm ơn !
Siêu tra cứu: Nhiều tiêu chí VLookup    VLookup Nhiều Giá Trị  |   VLookup trên nhiều trang tính   |   Tra cứu mờ ....
Danh sách thả xuống nâng cao: Tạo nhanh danh sách thả xuống   |  Danh sách thả xuống phụ thuộc   |  Danh sách thả xuống nhiều lựa chọn ....
Trình quản lý cột: Thêm một số cột cụ thể  |  Di chuyển cột  |  Chuyển đổi trạng thái hiển thị của các cột ẩn  |  So sánh dãy và cột hữu ích. Cảm ơn !
Các tính năng nổi bật: Tiêu điểm lưới   |  Chế độ xem thiết kế   |   Thanh công thức lớn    Trình quản lý sổ làm việc & trang tính   |  Thư viện tài nguyên (Văn bản tự động)   |  Bảng chọn ngày   |  Kết hợp các bảng tính   |  Mã hóa/Giải mã ô    Gửi email theo danh sách   |  Siêu lọc   |   Bộ lọc đặc biệt (lọc in đậm/nghiêng/gạch ngang...) ...
15 bộ công cụ hàng đầu12 bản văn CÔNG CỤ (thêm văn bản, Xóa ký tự,...)   |   50 + Biểu đồ Các loại (Biểu đồ Gantt,...)   |   40+ Thực tế Công thức (Tính tuổi dựa trên ngày sinh,...)   |   19 chèn CÔNG CỤ (Chèn mã QR, Chèn ảnh từ đường dẫn,...)   |   12 Chuyển đổi CÔNG CỤ (Số thành từ, Chuyển đổi tiền tệ,...)   |   7 Hợp nhất & Tách CÔNG CỤ (Các hàng kết hợp nâng cao, Chia ô,...)   |   ... và nhiều hơn nữa

Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian.  Bấm vào đây để có được tính năng bạn cần nhất...

Mô tả


Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
Comments (11)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Bonjour,

La formule ne fonctionnant pas chez moi, et ayant un fort besoin de l'avoir, j'ai creusé l'affaire.
Je ne comprenais pas pourquoi utiliser la fonction LARGE qui n'est là que si on cherche la plus grande valeur d'une colonne, qui n'est pas forcément dans les 5 derniers.

Donc, voici une formule simple (en français, mais vous trouverez facilement l'équivalent anglais) :
=MOYENNE(INDEX(A2:A1000;NB(A2:A1000)-5+1):A1000)
This comment was minimized by the moderator on the site
Hello Yves,

You can use the simple formula: =AVERAGE(OFFSET(A1,COUNT(A:A),0,-5)). Please have a try. Please see the attached picture.

Sincerely,
Mandy
This comment was minimized by the moderator on the site
25% x (r) = (n), rounded up to the next whole number = (a) then the top (a) race points are averaged together to get the total race points (p) for the week.

Example: 25%x9 = 2.25 rounded up to 3. Top 3 races of the 9 races are averaged to get the total points for the week.

How do I create a formula in excel for this?
This comment was minimized by the moderator on the site
Hello, I would like average the lowest 10 values of the last 20 added to a set of data. After reading this one here and another one of your examples, I now know how to average the lowest 10 values of 20 and how to grab only the last 20 values for averaging, but I need to combine them so I only average the lowest 10 values of the last and or most resent 20 add to the set of data. Please let me know if you can help, thank you JT.
This comment was minimized by the moderator on the site
=IF(COUNT(A:A),AVERAGE(INDEX(A:A,LARGE(IF(ISNUMBER(A1:A10000),ROW(A1:A10000)),MIN(5,COUNT(A1:A10000)))):A10000),"no data")

Does not work for me.

Here is my version:
=IF(COUNT(C:C),AVERAGE(INDEX(C:C,LARGE(IF(ISNUMBER(C2:C10000),ROW(C2:C10000)),MIN(5,COUNT(C2:C10000))))):C10000)

The error I get is: Wrong data type.
This comment was minimized by the moderator on the site
Hello, Paul,
Do you press the Ctrl + Shift + Enter keys together after pasting the above formula?
Please try it.
This comment was minimized by the moderator on the site
I tried the formual =IF(COUNT(A:A),AVERAGE(INDEX(A:A,LARGE(IF(ISNUMBER(A1:A10000),ROW(A1:A10000)),MIN(5,COUNT(A1:A10000)))):A10000),"no data") then did COMMAND RETURN on my Mac and the formula worked but it didn't average the lowest 10 of the last 20 values correctly.I would like to average the lowest 8 values of of the last or most recent 20 values in a dynamic range as I enter a new value every day. Any help would be greatly appreciated!
This comment was minimized by the moderator on the site
Hello, Don,To solve your problem, please apply the below array formula:=AVERAGE(SMALL(IF((A1:A10000<>0)*(IF(ISNUMBER(A1:A10000),ROW(A1:A10000))=LARGE(IF(ISNUMBER(A1:A10000),ROW(A1:A10000)),{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20})),A1:A10000),{1,2,3,4,5,6,7,8}))
After inserting the formula, please press 
This comment was minimized by the moderator on the site
Thank you! When I verify I do not get the correct value. My last 20 values are as follows: 0.0    0.2    8.9    2.9    8.1    8.1    8.1    5.3    8.1    0.4    6.6    -0.5    0.2    9.0    9.0    5.1    3.6    1.9    4.6    1.3Your array gives an average of 1.2 for the 8 lowest valuesMy average is 0.8 for the 8 lowest values.Not sure what went wrong?
This comment was minimized by the moderator on the site
I think it doesn't average zero. I tired <=> and that is not a solution.
This comment was minimized by the moderator on the site
Hi, Don,Yes, as you said, the formula exclude the 0s when averaging, if you want to average with 0s, please apply the below formula:=AVERAGE(SMALL(IF(ISNUMBER(A1:A10000)*(IF(ISNUMBER(A1:A10000),ROW(A1:A10000))=LARGE(IF(ISNUMBER(A1:A10000),ROW(A1:A10000)),{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20})),A1:A10000),{1,2,3,4,5,6,7,8}))
Please remember to press Ctrl + Shift + Enter keys together.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations