Excel 2010 - Tính trung bình dữ liệu cột theo các cột khác nhau


0

Dữ liệu của tôi bao gồm một số biện pháp lặp lại (~ 4-5) cho mỗi người tham gia và tôi muốn có thể tính trung bình tất cả các biện pháp cụ thể cho từng người tham gia. ví dụ: trong ảnh chụp màn hình đính kèm, tôi muốn tính trung bình cho mỗi biện pháp (cột CK, mỗi cột biểu thị một biện pháp khác nhau) cho người dùng đầu tiên (ID = 38106100) người dùng thứ hai (ID = 38212221) riêng biệt. Đó là, tôi muốn tính trung bình cho mỗi cột chỉ sử dụng các hàng 2-5, thay vì chỉ các hàng 6-8, rồi 9-12, v.v., mà không phải lặp lại cho mỗi ID người tham gia (tôi có 200 người tham gia) .


Chào mừng bạn Bạn có bất kỳ loại tập tin hoặc dịch vụ chia sẻ hình ảnh mà bạn có thể đăng ảnh chụp màn hình của bạn (chỉ cần chỉnh sửa câu hỏi của bạn để bao gồm một liên kết)? Điều đó sẽ cho phép ai đó nhúng ảnh chụp màn hình của bạn vào câu hỏi cho bạn.
fixer1234

Câu trả lời:


-1

Bạn không chỉ định định dạng chính xác, không đính kèm ảnh chụp màn hình, nên hơi khó đoán.

Hãy giả sử như sau

Sheet1
A       B       C       D           E
name    date    unit_1  unit_2      unit_3
John    1-2-3   3       9           7
John    2-2-3   9       13          16
Maria   9-10-4  10      8           7
Maria   13-5-4  6       3           7
Maria   9-8-7   8       7           3

Những gì bạn có thể làm là tạo ra một tờ thứ hai. - Tạo cột A giữ tên của người tham gia hiện tại (hoặc id hoặc bất cứ điều gì bảng 1 cột A của bạn là (hoặc B?)) - Tạo cột B giữ hàng đầu tiên chứa thông tin người tham gia của cột A. - Tạo cột C giữ hàng cuối cùng chứa thông tin người tham gia của cột A. - Tạo cột D-L chứa trung bình.

Giả sử bạn muốn dành hàng 1 cho hàng tiêu đề, ví dụ này bắt đầu ở hàng 2.

Row #2
A   = INDIRECT(CONCATENATE("Sheet1!A",B2)  
B   = IF(ROW()=2;2;C1+1)
C   = SUMPRODUCT(MAX((INDIRECT(CONCATENATE("Sheet1!A",B2,":","A",B2+10))=A2)*(ROW(INDIRECT(CONCATENATE("Sheet1!A",B2,":","A",B2+10))))))
D   = AVERAGE(INDIRECT(CONCATENATE("Sheet1!C",$B2,":","C",$C2)))
E   = AVERAGE(INDIRECT(CONCATENATE("Sheet1!D",$B2,":","D",$C2)))
F   = AVERAGE(INDIRECT(CONCATENATE("Sheet1!E",$B2,":","E",$C2)))
G   = AVERAGE(INDIRECT(CONCATENATE("Sheet1!F",$B2,":","F",$C2)))
H   = AVERAGE(INDIRECT(CONCATENATE("Sheet1!G",$B2,":","G",$C2)))
I   = AVERAGE(INDIRECT(CONCATENATE("Sheet1!H",$B2,":","H",$C2)))
J   = AVERAGE(INDIRECT(CONCATENATE("Sheet1!I",$B2,":","I",$C2)))
K   = AVERAGE(INDIRECT(CONCATENATE("Sheet1!J",$B2,":","J",$C2)))
L   = AVERAGE(INDIRECT(CONCATENATE("Sheet1!K",$B2,":","K",$C2)))

Cột B giữ hàng đầu tiên (hàng 2) nếu đây là hàng đầu tiên trong trang 2, nếu không, nó sẽ lấy giá trị kết thúc của hàng ở trên và +1 nó. Cột A nhận được tên thuộc về hàng đó từ cột A, hàng của cột B2 từ trang tính có tên 'Trang tính 1'. Cột C tìm thấy hàng đầu tiên có giá trị khác trong hàng A (Chỉ kiểm tra tối đa 10 hàng, nếu trên 10 hàng, công cụ có thể bị hỏng, hãy điều chỉnh số 10 nếu bạn cần phục vụ nhiều hàng hơn.) Cột D-L tính toán trung bình. Các cột D-L về cơ bản là giống nhau, vì vậy bạn chỉ cần kéo công thức từ D đến L.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.