Hỏi về cách tìm những tiết trùng trong thời khóa biểu ?

Liên hệ QC

nhunguyet0103

Thành viên chính thức
Tham gia
7/2/09
Bài viết
56
Được thích
6
Các anh chị cho em hỏi với ạ: Em có mẫu thời khóa biểu như File đính kèm; bây giờ em muốn khi giáo viên bộ môn có những tiết trùng nhau thì những tiết đó sẽ chuyển sang 1 màu chỉ định (hoặc hiện ra bảng thông báo những tiết trùng của giáo viên) thì làm thế nào ạ! Các anh chị bớt chút thời gian hướng dẫn em với! Thanks!
 

File đính kèm

  • Thoi_Khoa_Bieu.xls
    21.5 KB · Đọc: 180
bạn dùng Conditional Formating cho từng Cell D6 với Công thức như bên dưới nhé
=COUNTIF($C6:$P6,D6)>1
sau đó copy format cell này áp dụng cho các cell còn lại là được.
mình không biết upload file và hình nên không có file đính kèm :).
 
Em chưa hiểu rõ ý bác lắm ạ! Nếu có thể bác gửi giúp em file mẫu theo địa chỉ Mail: nhunguyet0103@gmail.com. Xin chân thành cảm ơn vì sự giúp đỡ của bác!!!
 

File đính kèm

  • Thoi_Khoa_Bieu.xls
    21.5 KB · Đọc: 200
A em làm được rồi ạ! Cảm ơn bác william.hoang74 nhiều...nhiều! (mỗi tội với trường nhiều lớp thì đặt định dạng kiểu này hơi vất, giá mà có code làm thay việc này thì tốt quá).
 
nếu nhiều lớp thì chắc phải có DATA rồi xài Pivot thì khỏe hơn.
còn k thì dùng VBA.
 
Nếu dùng VBA thì viết code như thế nào ạ! Thanks!
 
Cảm ơn bác Ba Tê code của bác hay và tiện lợi thật! Tiện đây bác và các anh, chị cho em hỏi thêm với ạ: Với thời khóa biểu như trên, bây giờ em muốn lọc ra thời khóa biểu của từng GV, của lớp (theo mẫu file đính kèm: khi gõ tên 1 GV (1lớp) thì TKB của GV đó (lớp đó) hiện ra) để tiện theo dõi thì có được không ạ! mong các anh, chị chỉ bảo thêm! Thanks!
 

File đính kèm

  • Lọc_TKB_GV_HS.xls
    57 KB · Đọc: 40
Cảm ơn bác Ba Tê code của bác hay và tiện lợi thật! Tiện đây bác và các anh, chị cho em hỏi thêm với ạ: Với thời khóa biểu như trên, bây giờ em muốn lọc ra thời khóa biểu của từng GV, của lớp (theo mẫu file đính kèm: khi gõ tên 1 GV (1lớp) thì TKB của GV đó (lớp đó) hiện ra) để tiện theo dõi thì có được không ạ! mong các anh, chị chỉ bảo thêm! Thanks!
Hình như bạn mới bắt đầu vào "con đường đau khổ" của TKB.
Trước hết bạn phải hình dung tổng quát mình muốn có cái gì, mục đích làm gì... để thực hiện xong thì sử dụng được cho một vài mục đích khác nhau chứ hôm nay nghĩ ra chuyện này, mai chỉnh sửa lại cho chuyện khác thì "oải" luôn.
Ví dụ: Bạn nghĩ là " khi gõ tên 1 GV (1lớp) thì TKB của GV đó (lớp đó) hiện ra) để tiện theo dõi ", theo dõi rồi thì sao, có cần in ra phát cho các GV bộ môn hay không, mối lần in 1 người hay in 1 loạt tất cả GV bộ môn? ....
Mỗi sheet nên làm 1 nhiệm vụ riêng để không "lộn xộn", ví dụ sheet TKB bạn lại có 2 bảng TKB_GV và TKB_Lop không hiểu để làm gì?
Tên GV thì cần có mã, hoặc không được trùng (trừ khi 1 người dạy 2 môn). Ví dụ Hương Thể dục - Hương Lý, Anh Thể dục - Anh Lý ... là 1 người hay 2 người?
Tôi gợi ý cho bạn 1 sheet TKB_GV. Thay đổi ô G1 sẽ lọc ra 4 TKB của 4 GV theo STT trong DS GV trong vùng O2:Q41, Bạn muốn xem tổng quát thì xem, muốn in thì thay đổi số lần lượt từ 1 đến hết để in.
Do chưa hoàn chỉnh tất cả bằng VBA nên nếu cần thì sau này chỉnh lại tiếp.
 

File đính kèm

  • TKB_2014.rar
    22.8 KB · Đọc: 101
Cảm ơn anh đã nhiệt tình chỉ bảo, giúp đỡ em!!! Em xin lỗi vì diễn đạt chưa rõ ý làm mất thời gian của anh! Ý của em là: Ở sheet TKB em có 2 bảng TKB_GVTKB_Lop với mục đích là dễ bao quát tổng số tiết của GV đã đủ như phân công chuyên môn chưa, vị trí của các tiết của GV ở các thứ (cũng như tổng số tiết của các lớp...) cụ thể là: với bảng TKB_GV em muốn khi gõ tên của GV cần kiểm tra vào ô U7 Ví dụ: GV Sơn thì các tiết của GV Sơn sẽ hiện ra, ô W7 sẽ báo tổng số tiết của GV đó. Khi gõ tên GV khác vào ô U7 thì lại hiện các của gv đó... và nút In TKB của GV ra giấy khi bấm vào nút này sẽ chuyển toàn bộ các tiết của GV đang chọn trong bảng sang sheet TKB_GV-Lop em không phải in cho toàn bộ GV mà chỉ in khi thật cần thiết. Bảng TKB_Lop cũng tương tự vậy ạ. Tên của GV thì trùng nhau là do GV đó phải dạy cả 2 môn đấy ạ! Anh giúp em với! Thanks!!!
 
Các anh, chị chỉ giúp em với! Thanks!
 
Còn In TKB của GV ra giấy và In TKB của lớp ra giấy thì phải viết code như thế nào để nếu bấm nút TKB của GV ra giấy thì sẽ chuyển thời khóa biểu của giáo viên đang chọn sang sheet TKB_GV-Lop đồng thời chèn luôn tên GV vào chỗ em bôi đỏ ạ? Các anh chỉ giúp luôn em với đừng mắng em "Được voi đòi tiên" nhé! Thanks!!!
 

File đính kèm

  • nut in.jpg
    nut in.jpg
    30.8 KB · Đọc: 40
Lần chỉnh sửa cuối:
nút In TKB của GV ra giấy em dùng code sau được không ạ! các anh chị xem giúp em với, em mò mãi chẳng được! Thanks!

Public Sub InTKB_GV()
Range("AI7").Select
Selection.Copy

Sheets("TKB_GV-Lop").Select

Range("d3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Sheets("TKB").Select
Range("AG10:Al14").Select
Selection.Copy
Sheets("TKB_GV-Lop").Select
Range("b6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Range("a1").Select
End Sub
 
Các bác giúp em với! Thanks!
Nếu xài chung một bảng bên sheet TKB_GV-Lop thì:
Gán em này cho nút "In TKB của GV ra giấy":
Mã:
Public Sub CaNhan()
    Sheets("TKB_GV-Lop").Range("B6:G10").Value = Sheets("TKB").Range("S10:X14").Value
    Sheets("TKB_GV-Lop").Range("C3").Value = "Giáo viên: " & Sheets("TKB").Range("U7").Value
End Sub
Gán em này cho nút "In TKB của Lớp ra giấy":
Mã:
Public Sub Lop()
    Sheets("TKB_GV-Lop").Range("B6:G10").Value = Sheets("TKB").Range("S24:X28").Value
    Sheets("TKB_GV-Lop").Range("C3").Value = "L" & ChrW(7899) & "p" & ": " & Sheets("TKB").Range("U21").Value
End Sub
Thân
 
Nếu xài chung một bảng bên sheet TKB_GV-Lop thì:
Gán em này cho nút "In TKB của GV ra giấy":
Mã:
Public Sub CaNhan()
    Sheets("TKB_GV-Lop").Range("B6:G10").Value = Sheets("TKB").Range("S10:X14").Value
    Sheets("TKB_GV-Lop").Range("C3").Value = "Giáo viên: " & Sheets("TKB").Range("U7").Value
End Sub
Gán em này cho nút "In TKB của Lớp ra giấy":
Mã:
Public Sub Lop()
    Sheets("TKB_GV-Lop").Range("B6:G10").Value = Sheets("TKB").Range("S24:X28").Value
    Sheets("TKB_GV-Lop").Range("C3").Value = "L" & ChrW(7899) & "p" & ": " & Sheets("TKB").Range("U21").Value
End Sub
Thân
Cảm ơn bác nhiều... nhiều...! code ngắn gọn và hiệu quả thật!
 
Cảm ơn tất cả các anh, chị đã chỉ bảo em! Với sự giúp đỡ của các anh, chị; em đã giải quyết được các vấn đề nan giải gặp phải khi thực hiện nhiệm vụ được giao. Kính chúc các anh, chị và gia đình luôn vui vẻ, mạnh khỏe và thành đạt!
 
Web KT
Back
Top Bottom