Hàm thống tính điểm từ sheet khác theo từng nhân viên (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

hoahongden142917

Thành viên hoạt động
Tham gia
28/5/13
Bài viết
180
Được thích
20
nhờ các bác giúp em ạ.
ở sheet sk8 em đã dùng công thức mà em tự mò ra để tính điểm sơ kết cho cột D12 nó sẽ tự tổng điểm từ sheet db8:
Nếu vùng H9:H100 mà có tên Người (vùng B9:B100) ghép tương ứng với các chữ cái đầu tiên dính liền ở cột C9:C100. thì sẽ trả về tương ứng cột E9
Cái em tính thì nó phức tạp quá và khi áp dụng cho người khác thì mình phải thay tên lại cho người đó mà không dùng cách kéo dài xuống như các hàm thông thường. Như vậy quá mệt. Em làm cái này nếu theo cách của em thì quá trời mệt luôn Mong anh em giúp đỡ. tôi xin vô cùng biết ơn.
 

File đính kèm

Lần chỉnh sửa cuối:
nhờ các bác giúp em ạ.
ở sheet sk8 em đã dùng công thức mà em tự mò ra để tính điểm sơ kết cho cột D12 nó sẽ tự tổng điểm từ sheet db8:
Nếu vùng H9:H100 mà có tên Người (vùng B9:B100) ghép tương ứng với các chữ cái đầu tiên dính liền ở cột C9:C100. thì sẽ trả về tương ứng cột E9
Cái em tính thì nó phức tạp quá và khi áp dụng cho người khác thì mình phải thay tên lại cho người đó mà không dùng cách kéo dài xuống như các hàm thông thường. Như vậy quá mệt. Em làm cái này nếu theo cách của em thì quá trời mệt luôn Mong anh em giúp đỡ. tôi xin vô cùng biết ơn.
Em cho kết quả của 1 vài người thử coi
 
nhờ các bác giúp em ạ.
ở sheet sk8 em đã dùng công thức mà em tự mò ra để tính điểm sơ kết cho cột D12 nó sẽ tự tổng điểm từ sheet db8:
Nếu vùng H9:H100 mà có tên Người (vùng B9:B100) ghép tương ứng với các chữ cái đầu tiên dính liền ở cột C9:C100. thì sẽ trả về tương ứng cột E9
Cái em tính thì nó phức tạp quá và khi áp dụng cho người khác thì mình phải thay tên lại cho người đó mà không dùng cách kéo dài xuống như các hàm thông thường. Như vậy quá mệt. Em làm cái này nếu theo cách của em thì quá trời mệt luôn Mong anh em giúp đỡ. tôi xin vô cùng biết ơn.

công thức cột C sheet SK8:
Mã:
=SUMPRODUCT(COUNTIF('DB8'!$H$9:$H$1000;B9&$V$9:$V$13&" ")*($W$9:$W$13))

- mình chỉ tạo thử cho cột C và F
- bạn mở file dựa theo cách làm đó và điền cho các cột tương tự nhé :-=

Link: https://www.mediafire.com/?83uucdgxb424yb1
 
Lần chỉnh sửa cuối:
em không hiểu cho lắm công thức của anh. anh có thể giải thích chứ ạ. cảm ơn anh.
 
em không hiểu cho lắm công thức của anh. anh có thể giải thích chứ ạ. cảm ơn anh.

bạn kiểm tra kết quả xem có đúng ko? +-+-+-+
'- - -
tại sheet SK8, mình tạo thêm vùng phụ là V9:W13 (dùng cho cột C), X9:Y12 (hỗ trợ cột LBG) thay vì phải viết từng điều kiện 1 thì hàm Sumproduct cho phép gộp chung vào + kết hợp với hàm Countif (đếm có điều kiện)

'- - -
để biết hàm Sumproduct hoạt động ntn bạn vào tham khảo link sau:
[h=1]SumProduct và công thức mảng - Phép tính có nhiều điều kiện[/h]
 
nhờ các bác giúp em ạ.
ở sheet sk8 em đã dùng công thức mà em tự mò ra để tính điểm sơ kết cho cột D12 nó sẽ tự tổng điểm từ sheet db8:
Nếu vùng H9:H100 mà có tên Người (vùng B9:B100) ghép tương ứng với các chữ cái đầu tiên dính liền ở cột C9:C100. thì sẽ trả về tương ứng cột E9
Cái em tính thì nó phức tạp quá và khi áp dụng cho người khác thì mình phải thay tên lại cho người đó mà không dùng cách kéo dài xuống như các hàm thông thường. Như vậy quá mệt. Em làm cái này nếu theo cách của em thì quá trời mệt luôn Mong anh em giúp đỡ. tôi xin vô cùng biết ơn.

Tôi vận dụng 12 thành công lực để hiểu bạn muốn làm gì..................mà hình như ko hiểu được,,,,,,,,,,,,,,kakaak
thôi hiểu sao làm vậy
bạn xem như vậy được ko nha
sheet SK8
Mã:
C12=SUMPRODUCT(('DB8'!$B$9:$B$18=B12)*('DB8'!$G$9:$G$18<>"CĐ 3 ngày phép")*(LOOKUP('DB8'!$D$9:$D$18,{"A","B","C","D","E"},{-2,-4,-1,-2,-2})))

đúng đáp số -10 so với cthức của bạn rồi đó
==============
àh, mấy cái -1,-2....... đó có quy luật gì ko, hay do bạn cho vào?
 
Nhờ anh em thống kê cho 3 ngày nghỉ đầu tiên của một người trong 1 năm học

-Trước tiên xin cảm ơn các bác đã giúp đỡ. em đã làm được rồi. chân thành cảm ơn
- Đây là bảng theo dõi thi đua của giáo viên trong đơn vị nên số điểm là theo quy định.
- GIỜ XIN NHỜ CÁC BÁC GIÚP THÊM 1 TÍ NỮA Ạ
+ sheet CĐ3NP: em muốn ở sheet này nó sẽ tìm ra 3 ngày nghỉ đầu tiên của một người tương ứng đã nghỉ trong 1 năm học. Tính 1 năm học khoảng từ tháng 8 năm cũ-tháng 5 năm mới.
Cụ thể: vì trong quy định là 1gv được nghỉ tối đa 3 ngày/năm học mà không bị trừ điểm. Nên 3 ngày này gọi là chế độ 3 ngày phép (CĐ3NP).
Nếu nghỉ từ ngày thứ 4 trở đi sẽ bị trừ điểm.
Ở sheet CĐ3NP từ đó giờ em cập nhật thủ công nên nhiều khi quyên nên trừ điểm người ta luôn. Còn nếu không thì cứ lật qua lật lại giữa sheet DB... rồi xem ai còn CĐ3NP thì điền cho họ. Rất mệt thưa các anh.
Xin đa tạ các anh.
 

File đính kèm

Với CSDL của bạn xây dựng như vậy, nếu ai giúp tiếp sẽ là không có "TÂM"!

(*) Trong trang 'DS' cũng như các trang khác chưa có mã duy nhất cho từng người;

Dù là không có giáo viên trùng tên, nhưng chuyện tìm kiếm trong 1 CSDL là không thể tránh fải. Mà việc tìm này theo mã sẽ nhanh hơn gấp nhiều lần theo họ tên dài ngoằng; Bạn đồng í chớ? (Bạn chớ nói với tôi là máy tìm chớ bạn có tìm đâu đó nha!)

(*) Tên các trang tính nên không có chữ cái tiếng Việt không giống ai, như 'Đ' & '...NĂM";
Theo mình, thay vì 'CĐ3NP' ta xài là 'CDF'; thay vì 'SK NĂM' sẽ là 'SKNam'

(*) Toàn bộ các cột có tiêu đề 'THỜI GIAN' chưa chuẩn, nếu không muốn nói là chả giống ai!

Ví dụ: dòng 11 của trang 'DB8' bạn nhập là '19-20/8/13''; Cột (trường) này là để thể hiện ngày tháng diễn ra sự việc; tuy nhiên bạn ghi như vậy thì hoài công các hàm trong excel mà Ngài B. lập ra rồi, như =MONTH(), . . .

Cái không giống ai trong số liệu của trường này nữa là bạn nhập theo kiểu hệ Fáp (13/9/13); Lí ra fải là 9/13/2013 & sau đó định dạng lại như theo bạn đã nhập.

Kế nữa: Từ các trang 'DB1' trở đi lại chỉ nhập '13/1', thậm chí '2;4/1'! Chuyện này người trần mắt thịt có thể hiểu ngầm, nhưng 'Máy' thì đố hiểu cho là cái chắc!


Nhìn toàn cảnh CSDL của bạn mới thấy rằng ngành 'GIÁO DỤC' của chúng ta còn lâu mới bỏ được bệnh thành tích!


Tiếp theo đây là những lời khuyên không dễ nghe:

(*) Các trang tính thể hiện số tháng thì nên có độ dài như nhau, ví dụ: 'DB12', 'DB01',. . . Bạn có thể để làm chi?, thứ nhất là dễ fát hiện sai sót khi nhập liệu, sau nữa là dễ bề tự động hóa sau này.


(*) Thật ra theo mình thì các trang họ 'DB' hay 'SK' nên gộp chung thành 1 trang!
Các dòng dữ liệu của tháng này khác với tháng kề nó bằng cách Conditional Formatting
(*) . . . . . (Còn nhiều nữa, nhưng chỉ sợ bạn bội thực thôi, nên tạm dừng!)

Thân!
 
Tôi thì thấy cơ sở dữ liệu ban đầu khi bạn (khi chưa làm việc nhiều với excel) như vậy là được (có lẻ tôi ko chuyên được như bác HYen17)
tuy theo công việc và dữ liệu mà lảm
tôi có một số nhận xét như vậy (quan điểm của tôi thôi)
* về cơ sở dữ liệu
1- vi du như dach sách của bạn chỉ có 39 người, và không có tên người trùng, và bạn dùng validation list để nhập tên--->tôi thấy như vậy là ok
tương tự như vậy cho cái list ở shet "TD".
2- các con số để, thời gian ...v.v. nên định dạng đúng (như ý bác HYen17), như vậy sẻ dể xử lý về sau.
3- tôi không thực sự hiểu mấy cái sheet SK, DB là gì nên ko góp ý

* về các cthức trong sheet
4- ở cột E của các sheet DB có dùng cthức if gì đó thấy khủng khiếp qua tôi nghĩ là bạn có thể rút gọn cthức này
5-thực ra thì cột phụ H (ở các sheet DB bạn có thể ko cần)
6- bạn dùng name nhiều quá, nên cân nhắc, dùng nhiều name gây ra năng file, và nên dùng name động để lấy số dòng cần thiết (nhất là khi bạn sử dụng hàm mảng).
* các vấn đề khác
- còn nói về thành tích, thì thực ra ko nên chỉ trích bạn hay ngành giáo dục, nên là thực trạng của mọi ngành nghề, ko riêng gì ngành giáo dục đâu
- nói chung bạn cứ làm việc nhiêu với excel thì bạn sẽ tích lũy kinh nghiệm để cải tiến dần file dữ liệu của mình.
- những góp ý của bác HYen17 rất tốt cho một cơ sở dữ liệu chuẩn
 
Trước hết xin chân thành cảm ơn các bác.
- Tôi sẽ chỉnh lại các ý mà các bác đã góp ý.
- Nhưng xin hỏi lại anh em là:
+ Theo bác HYen17 nói là gôm lại 1 trang - em đã làm trước đó rồi nhưng khi nhập diễn biến (DB) cho từng gv thì gặp phải vấn đề là: mình insert thêm dòng thì nó ảnh hưởng tới dữ liệu...
+ Theo bác Let'sgaugau thì hàm if ở sheet DB8 quá dài. Em đã tự mò cả tuần đấy thật dở đúng không. Nhưng đó là tất cả những gì em làm được. Hàm if đó dựa theo thang điểm ở sheet TD đó ạ. Bác có cách nào khác không. Nghĩa là Nhập tên gv rồi chọn diễn biến - thì excel nó sẽ tự động hiện ra số điểm tương ứng với loại diễn biến đó. (diễn biến và điểm thì có quy định trong sheet TD ạ)
+ Theo bác Theo bác Let'sgaugau thì không cần cột H. vì em lệnh cho nó có liên quan đến sheet SK. Nếu cột H nó hiện ra thì SHeet SK nó mới tự động nhảy điểm số tương ứng ạ. Nếu bỏ thì có cách nào đơn giản hơn không.
Nhờ các bác chỉ giúp một cách chi tiết bằng công thức luôn. Tôi không bao giờ quên ơn. Thanks


Tôi sẽ cảm thấy rất vui khi các bác nhận xét chỉ cho tôi cái sai. Ai lại bực kia chứ. cảm ơn không hết nữa là

 
Bây giờ em sẽ chỉnh lại định dạng ngày tháng năm (em biết điều này) Nhưng khi chỉnh lại rồi em cũng đâu có cách nào thống kê hay làm một cái nhắc nhở là người đó đã đủ 3 ngày phép rồi. (em muốn làm 1 cái nhắc nhở)
Và sheet CĐ3NP cũng đâu có tự động cập nhật 3 ngày nghỉ đầu tiên của người đó trong năm đâu. (em muốn nó tự động cập nhật)
Nhờ các bác giúp đỡ. xin đa tạ
 
Không nói trước là mình có đủ kiên nhẫn không; Nhưng mình sẽ chỉnh lại CSDL của bạn ngay từ đầu;
Ráng chờ vài ngày thử xem sao nha!

Còn CSDL của bạn bây giờ mà ai giúp tiếp là . . . không thật lòng với bạn đâu!
 
Đã xong rồi đây;

Những chú í khi tham khảo

Tổ hợp fím để chạy macro lần kế tiếp là {CTRL}+{SHIFT}+F
Kết quả xem ở trang 'CD3F'; Bạn kiểm tra thử bên trang 'DB00'

Thử thay đổi bên trang 'DB00' & chạy lại macro để coi sự cập nhật của nó.
 

File đính kèm

sao các bác ơi em chả hiểu gì cả ạ. nhức đầu quá trời luôn. sao bác không chỉ em làm gì hết vậy. sao nó thống kê 3 ngày nghỉ đầu tiên không đúng vậy ạ. cả của 2 bác luôn.
 
sao các bác ơi em chả hiểu gì cả ạ. nhức đầu quá trời luôn. sao bác không chỉ em làm gì hết vậy. sao nó thống kê 3 ngày nghỉ đầu tiên không đúng vậy ạ. cả của 2 bác luôn.

Bạn hãy cụ thể xem dòng nào ở trang 'CD3F' tổng hợp sai nào?
(Xem trị ngày tháng trên thanh công thức mới là trị thực đó nha.)
 
bác làm ơn chỉ chi tiết cách làm được không? vả lại em vẫn để các SỐ LƯỢNG CÁC sheet giốNG NHƯ CŨ RỒI LÀM GIỐNG BÁC ĐƯỢC KHÔNG HAY LÀ PHẢI XOÁ HẾT CÁC SHEET KIA ĐI NHƯ BÁC MỚI ĐƯỢC Ạ. ý CỦA EM LÀ VẪN GIỮ SL SHEET NHƯ CŨ CHỨ DỒN HẾT VÀ 1 SHEET THÌ K ĐƯỢC Ạ.
CẢM ƠN BÁC
 
Bạn muốn để nguyên thì,. . . . lí ra mình sẽ không chỉ cho bạn đâu!

/(/hưng nếu vậy, chí ít bạn thực hiện các chỉ dẫn sau (Từ những chi li nhất):

(1) Tất tần tật các trang tính có họ DB cần có độ dài chuỗi là 4, như nhau, như DB01,. . ., DB11, DB12.

(2) Bỏ trộn 2 dòng tiêu đề đi; Chả ích gì khi trộn như vậy!

(3) Sửa tiêu đề, thay vì 'THỜI GIAN;, nên là 'Ngày'

(4) Sửa lại các trị ngày tháng của các cột/trường này có dạng MM/DD/yyyy; Nếu cần quen mắt, thì định dạng chúng là Cutom thể DD/MM/yyyy

(5) Các cấu trúc của họ trang tính này là như nhau, như:
Tiêu đề trường từ dòng 8;
Mã hiệu của 1 diễn biến là duy nhất, & nó cần có tính gợi cảm, dễ nhớ để dễ xài;
Truy xuất sẽ thông qua mã hiệu này để đạt số liệu thống kê iêu cầu.
(6) Nên có mã cho từng giáo viên, như trong file;
(7). . . . .

Hoàn tất chỉnh sửa theo 6 iêu cầu trên, lúc đó chúng ta sẽ trao đổi tiếp!

Chúc ngủ ngon!
 
cảm ơn anh nhiều lắm. em làm xong rồi đây ạ.
Nhưng có điều cho em hỏi ở sheet DB cột Ma bộ mình nhập thủ công hả. có cách nào mình chỉ cần chọn tên gv ở cột HO VÀ TÊN thì cột Ma nó tự nhẩy không.
 
em chỉnh xong rồi ạ. anh xem lại dùm em đi. rồi chỉ em với. em đang rất hồi hộp chờ đợi đây.
- em muốn sheet CD3F tự động cập nhật 3 lá phép đầu tiên của 1 người từ dữ liệu của họ DB. (lá phép đầu tiên: có thể là nghỉ 1 tiết, trễ 5p, nghỉ 1 buổi, 1 ngày, họp ...miễn là nghỉ)
- Khi em nhập dữ liệu diễn biến nễu: người đó đã đủ 3 lần phép đầu tiên rồi (tức là 3 cột NGÀY 1, NGÀY 2, NGÀY 3 SHEET CD3F đầy) thì excel sẽ báo cho mình biết là người đó đã hưởng chế độ 3 lần phép đầu tiên rồi -> từ đó mình sẽ biết để không cho người đó hưởng lố thêm lá phép thứ 4. (mặc dù mình vẫn đang thao tác trên sheet họ DB mà k cần mở sheet CD3F)
Em xin chân thành cảm ơn.
 

File đính kèm

Lần chỉnh sửa cuối:
Web KT

Bài viết mới nhất

Back
Top Bottom