Xin hỏi về Công thức tính tiết theo PPCT (phân phối chương trình) trong Lịch báo giảng tự động (1 người xem)

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

Tôi tuân thủ nội quy khi đăng bài

2013myvietnam

Thành viên mới
Tham gia
5/6/23
Bài viết
20
Được thích
12
Em xin được file Lịch báo giảng tự động cấp THCS của đồng nghiệp về thử nghiệm thấy rất hay và tiện dụng. Mọi việc diễn ra rất tốt cho đến khi đến Tuần 16 do em đảo Tiết 17: Kiểm tra cuối học kỳ I để kịp với tiến độ thống kê, báo cáo chung (Bằng cách chọn Đảo tiết ở cột I_Ghi chú và gõ tiết đảo ở cột K_Phụ ghi). Đúng như thiết kế của người tạo ra file Lịch báo giảng tự động này thì ở Tuần 17 tiết theo PPCT phải quay lại là Tiết 16 nhưng không hiểu công thức tính bị lỗi ở đâu mà kết quả lại là Tiết 17 (thành ra có 2 tiết 17 liền, VD Tuần 17 trong file đính kèm các lớp: 8A2, 9B, 6A5, 6A2). Các Anh, Chị xem giúp em công thức tính Tiết theo PPCT có bị lỗi ở đâu không ạ, Em xin chân thành cảm ơn!
VD: G1045=IF(F1045=0,"",IF(OR(I1045="Nghỉ",I1045="Hết PPCT"),"/",IF(I1045="Đảo tiết",K1045,COUNTIF($F$4:F1045,F1045)-COUNTIF($J$4:J1045,F1045)+COUNTIF($R$3:R1044,F1045))))
 

File đính kèm

Chưa rõ lắm về cách thức liên kết giữa các sheet và điều kiện trên dưới của sheet, nó hơi rối như lâm vào ma trận, nên tôi chưa dám khẳng định cái lỗi nằm đâu.

Tuy nhiên, nếu bạn thử so sánh Tuần 16 giữa 2 lớp 8A2 và 7A5 thì sẽ thấy ô R991 có xuất hiện "8A2mt", còn ô R984 thì trống, nếu thử xóa R991 đi thì G1045 của lớp 8A2 thành tiết 16.

Có thể điều kiện trong công thức
R991=IFERROR(IF(O991="","",VLOOKUP(O991,P:Q,2,0)),"")
có vấn đề, bạn tiếp tục kiểm tra lại thử.
 
Chưa rõ lắm về cách thức liên kết giữa các sheet và điều kiện trên dưới của sheet, nó hơi rối như lâm vào ma trận, nên tôi chưa dám khẳng định cái lỗi nằm đâu.

Tuy nhiên, nếu bạn thử so sánh Tuần 16 giữa 2 lớp 8A2 và 7A5 thì sẽ thấy ô R991 có xuất hiện "8A2mt", còn ô R984 thì trống, nếu thử xóa R991 đi thì G1045 của lớp 8A2 thành tiết 16.

Có thể điều kiện trong công thức
R991=IFERROR(IF(O991="","",VLOOKUP(O991,P:Q,2,0)),"")
có vấn đề, bạn tiếp tục kiểm tra lại thử.
Vâng em cảm ơn Anh ạ!
 
Các Anh, Chị xem giúp em công thức tính Tiết theo PPCT có bị lỗi ở đâu không ạ
Sau khi nghiền ngẫm cách tính 'đảo tiết' của bạn, tôi đã phát hiện ra bộ đếm cột N của bạn không chính xác, vì khi đếm nó phải loại trừ những tiết 'nghỉ" hoặc 'hết ppct'. Do vậy, thay vì bạn đang đếm: số dòng thực tế phát sinh của từng lớp, như:
=IF(F4=0,"",COUNTIF($F$4:F4,F4))
Bạn nên loại ra các dòng không hình thành tiết học như 'nghỉ' hoặc 'hết ppct':
=IF(F4=0,"",COUNTIFS($F$4:F4,F4,$G$4:G4,">0"))
(Fill xuống)

Bạn sẽ được kết quả như ý muốn.

Thân
 

File đính kèm

Sau khi nghiền ngẫm cách tính 'đảo tiết' của bạn, tôi đã phát hiện ra bộ đếm cột N của bạn không chính xác, vì khi đếm nó phải loại trừ những tiết 'nghỉ" hoặc 'hết ppct'. Do vậy, thay vì bạn đang đếm: số dòng thực tế phát sinh của từng lớp, như:
=IF(F4=0,"",COUNTIF($F$4:F4,F4))
Bạn nên loại ra các dòng không hình thành tiết học như 'nghỉ' hoặc 'hết ppct':
=IF(F4=0,"",COUNTIFS($F$4:F4,F4,$G$4:G4,">0"))
(Fill xuống)

Bạn sẽ được kết quả như ý muốn.

Thân
Vâng, em cảm ơn Anh nhiều ạ! để em xem lại ạ
 
Em đã dùng thử công thức trên và đúng như Anh nói đã khắc phục được "lỗi Đảo tiết" trên. Thì ra lỗi công thức ở Cột N chứ không phải ở cột G. Anh cho em hỏi thêm chút ạ: Công thức N4=IF(F4=0,"",COUNTIFS($F$4:F4,F4,$G$4:G4,">0")) với những máy Office cũ (VD: office 2010 chẳng hạn) sẽ không được do chưa có hàm COUNTIFS, vậy có ta phải sửa lại công thức trên như thế nào để các Office cũ cũng có thể sử dụng được ạ
 
với những máy Office cũ (VD: office 2010 chẳng hạn) sẽ không được do chưa có hàm COUNTIFS, vậy có ta phải sửa lại công thức trên như thế nào
Excel phiên bản 2010 sử dụng tốt hàm Countifs(), nên bạn đừng lo!

Còn nếu đến nay (2026) so với 2010 đã hơn 15 năm rồi mà máy tính của trường vẫn xài excel phiên bản thấp hơn 2010, thì phải xem lại sự lãnh đạo của hiệu trưởng. :)

Thân
 
Excel phiên bản 2010 sử dụng tốt hàm Countifs(), nên bạn đừng lo!

Còn nếu đến nay (2026) so với 2010 đã hơn 15 năm rồi mà máy tính của trường vẫn xài excel phiên bản thấp hơn 2010, thì phải xem lại sự lãnh đạo của hiệu trưởng. :)

Thân
Cảm ơn Anh! nếu Office 2010 đã hỗ trợ hàm COUNTIFS thì không còn gì đáng lo nữa ạ! (File này năm nay em mới dùng thử, định cuối năm nếu dùng ổn sẽ chia sẻ cho các đồng nghiệp khác, em thấy nhiều máy họ vẫn còn sử dụng Office 2010 nên sợ phát sinh lỗi thôi ạ). Nhân dịp năm mới 2026, Em kính chúc Anh và gia đình nhiều sức khỏe, An Khang, Thịnh Vượng ạ!
 
Bạn cứ an tâm nếu máy xài excel 2010 thì nó sẽ chạy tốt với Countifs().

Còn nếu bạn sợ có máy thấp hơn thì bất đắc dĩ lắm bạn thay bằng công thức sau, ô N4:
Mã:
=IF(F4=0,"",COUNT(1/($G$4:G4<>"/")/($F$4:F4=F4)))
Fill xuống. (Xem cột T)

Chúc bạn và gia đình bình an và hạnh phúc năm mới.
Thân
 

File đính kèm

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

Back
Top Bottom