gaubu117 > 08-10-15, 09:47 AM
tranthanhan1962 > 08-10-15, 01:46 PM
(08-10-15, 09:47 AM)gaubu117 Đã viết: Hiện mình đang làm một bảng thông báo theo thời gian thực trên Form.
Tổng cộng có 7 cột và 50 dòng.
Mỗi cột có thời gian cách nhau tùy ý : ví dụ 7h30 - 8h20 - 9h10 - 9h50 - 10h:00
Yêu cầu là khi thời gian thực rơi trong cột nào thì text box ô đó sẽ đổi màu xanh, đỏ , các ô còn lại không thay đổi và tuan tự như vậy.
Các bạn giúp mình với
Option Compare Database
Option Explicit
Private Sub Form_Load()
Me.TimerInterval = 1000
End Sub
Private Sub Form_Timer()
Select Case Time()
Case #7:30:00 AM# To #8:20:00 AM#
cot1.BackColor = 255
cot2.BackColor = 16777215
cot3.BackColor = 16777215
cot4.BackColor = 16777215
cot5.BackColor = 16777215
cot6.BackColor = 16777215
cot7.BackColor = 16777215
Case #8:20:00 AM# To #9:10:00 AM#
cot1.BackColor = 16777215
cot2.BackColor = 255
cot3.BackColor = 16777215
cot4.BackColor = 16777215
cot5.BackColor = 16777215
cot6.BackColor = 16777215
cot7.BackColor = 16777215
Case #9:10:00 AM# To #9:50:00 AM#
cot1.BackColor = 16777215
cot2.BackColor = 16777215
cot3.BackColor = 255
cot4.BackColor = 16777215
cot5.BackColor = 16777215
cot6.BackColor = 16777215
cot7.BackColor = 16777215
Case #9:50:00 AM# To #10:00:00 AM#
cot1.BackColor = 16777215
cot2.BackColor = 16777215
cot3.BackColor = 16777215
cot4.BackColor = 255
cot5.BackColor = 16777215
cot6.BackColor = 16777215
cot7.BackColor = 16777215
Case #2:00:00 PM# To #3:00:00 PM#
cot1.BackColor = 16777215
cot2.BackColor = 16777215
cot3.BackColor = 16777215
cot4.BackColor = 16777215
cot5.BackColor = 255
cot6.BackColor = 16777215
cot7.BackColor = 16777215
Case #3:00:00 PM# To #4:00:00 PM#
cot1.BackColor = 16777215
cot2.BackColor = 16777215
cot3.BackColor = 16777215
cot4.BackColor = 16777215
cot5.BackColor = 16777215
cot6.BackColor = 255
cot7.BackColor = 16777215
Case #4:00:00 PM# To #5:00:00 PM#
cot1.BackColor = 16777215
cot2.BackColor = 16777215
cot3.BackColor = 16777215
cot4.BackColor = 16777215
cot5.BackColor = 16777215
cot6.BackColor = 16777215
cot7.BackColor = 255
Case Else
cot1.BackColor = 16777215
cot2.BackColor = 16777215
cot3.BackColor = 16777215
cot4.BackColor = 16777215
cot5.BackColor = 16777215
cot6.BackColor = 16777215
cot7.BackColor = 16777215
End Select
End Sub
Private Sub Form_Unload(Cancel As Integer)
Me.TimerInterval = 0
End Sub
ledangvan > 08-10-15, 02:05 PM
gaubu117 > 08-10-15, 03:05 PM
gaubu117 > 08-10-15, 05:09 PM
tranthanhan1962 > 08-10-15, 05:48 PM
(08-10-15, 02:05 PM)ledangvan Đã viết: Bác phải sửa câu này :Sorry! Tại vì mình viết code chay trên khung trả lời không chú ý nên cứ copy dán mà quên kiểm tra lại.
Tạo một Continuous Forms với các textbox1, textbox2, textbox3, textbox4, textbox5, textbox6, textbox
Thành :
Tạo một Continuous Forms với các textbox : Cot1; Cot2. Cot3 ...Cot7
tranthanhan1962 > 08-10-15, 06:02 PM
(08-10-15, 05:09 PM)gaubu117 Đã viết: Mình đã giải quyết đước vấn đề đổi màu liên tục, đáp ứng điều kiện đưa ra rồi,Trong trường hợp bạn chỉ xử lý cho một Ô (textbox tại vị trí record nào đó) bạn nghiên cứu thêm bài Thay đổi màu nền các dòng theo điều kiện trên form Continuous và Hỏi cách đánh dấu dòng đã mở hoặc xem để phối hợp hai điều kiện thời gian và điều kiện record để xử lý bằng value của textbox nằm phía dưới. Nếu cần bao nhiêu màu bạn phải có bao nhiêu textbox màu nằm cùng ở phía dưới textbox chính. Khi thỏa điều kiện có màu nào textbox màu đó sẽ có giá trị làm nền màu, các textbox màu còn lại sẽ có giá trị ="".
Tuy nhiên, form access nó sẽ áp dụng đổi màu cho cả cột trong khi mình chỉ có 1 text box thỏa mãn điều kiện.
Phải làm thế nào để chỉ áp dụng cho đúng ô thỏa mãn đây các bạn
gaubu117 > 09-10-15, 02:19 PM