-
RE: Cách thay đổi Back Color của control theo giá trị
cpucloi > 11-07-16, 11:51 AM
Theo mình hiểu:
- Bạn muốn kiểm tra thông tin khi nhập vào, nếu đúng điều kiện đưa ra (như điều kiện đang để trong table của bạn) thì mới được lưu thông tin, nếu không đúng thì báo sai và không cho lưu thông tin.
Việc này bạn nên thực hiện trên form (tớ thường không đưa điều kiện vào table, bởi vì không nhất thiết phải lưu điều kiện so sánh này trong table, nếu cần bạn có thể kiểm trên form hoặc report)
Bạn nghiên cứu tiếp, có gì chúng ta cùng trao đổi nhé.
(bạn có demo nhưng không kèm dữ liệu mẫu nên mình lười nạp quá)
-
RE: Cách thay đổi Back Color của control theo giá trị
toancvp > 11-07-16, 12:36 PM
(11-07-16, 11:51 AM)cpucloi Đã viết: Theo mình hiểu:
- Bạn muốn kiểm tra thông tin khi nhập vào, nếu đúng điều kiện đưa ra (như điều kiện đang để trong table của bạn) thì mới được lưu thông tin, nếu không đúng thì báo sai và không cho lưu thông tin.
Việc này bạn nên thực hiện trên form (tớ thường không đưa điều kiện vào table, bởi vì không nhất thiết phải lưu điều kiện so sánh này trong table, nếu cần bạn có thể kiểm trên form hoặc report)
Bạn nghiên cứu tiếp, có gì chúng ta cùng trao đổi nhé.
(bạn có demo nhưng không kèm dữ liệu mẫu nên mình lười nạp quá)
Em cũng ko có dữ liệu mẫu bác ạ, toàn điền vớ vẩn vào thôi,
Em cũng muốn cho điều kiện vào form lắm, cho đỡ nặng table, nhưng mà em chỉ biết làm kiểu event before update cho xác nhận có lưu hay ko, nếu ok thì lưu, cancel thì me.undo.
Mà nếu dùng undo thì nó undo tất cả. Bác hướng dẫn qua giúp em xem làm thế nào vs ạ. -
RE: Cách thay đổi Back Color của control theo giá trị
cpucloi > 11-07-16, 03:00 PM
Bạn tham khảo nhé
Code nút Lưu (cmd_luu)
....
' Kiểm tra các điều kiện của các ô nhập liệu theo yêu cầu
IIF me.cbo_MaDT = 'Le' and (isnull(me.txt_ghichu) or me.txt_ghichu = "")) then
' Thông báo chưa nhập đủ dữ liệu và không cho ghi
Msgbox "Hj, chưa nhập dữ liệu kìa",64,"Nhắc nhở trước khi lưu"
me.txt_kiemtra = "SAI"
me.txt_kiemtra.backcolor = vbred
me.txt_ghichu.setforcus
exit sub
else
me.txt_kiemtra = "ĐÚNG"
me.txt_kiemtra.backcolor = vbGreen
end if
Bạn thử và phát triển tiếp nhé
ĐK trong bảng của bạn: IIf(([MaDT]="LE") And ((Len([GhiChu])<5) Or (IsNull([GhiChu])=(-1))),"SAI","ĐÚNG") -
RE: Cách thay đổi Back Color của control theo giá trị
toancvp > 14-07-16, 08:47 AM
(11-07-16, 03:00 PM)cpucloi Đã viết: Bạn tham khảo nhé
Code nút Lưu (cmd_luu)
....
' Kiểm tra các điều kiện của các ô nhập liệu theo yêu cầu
IIF me.cbo_MaDT = 'Le' and (isnull(me.txt_ghichu) or me.txt_ghichu = "")) then
' Thông báo chưa nhập đủ dữ liệu và không cho ghi
Msgbox "Hj, chưa nhập dữ liệu kìa",64,"Nhắc nhở trước khi lưu"
me.txt_kiemtra = "SAI"
me.txt_kiemtra.backcolor = vbred
me.txt_ghichu.setforcus
exit sub
else
me.txt_kiemtra = "ĐÚNG"
me.txt_kiemtra.backcolor = vbGreen
end if
Bạn thử và phát triển tiếp nhé
ĐK trong bảng của bạn: IIf(([MaDT]="LE") And ((Len([GhiChu])<5) Or (IsNull([GhiChu])=(-1))),"SAI","ĐÚNG")
, em làm được rồi bác ạ, làm như bác hợp lý hơn nhiều.
Em cám ơn nhé! -
RE: Cách thay đổi Back Color của control theo giá trị
lehongduc > 16-07-16, 07:37 AM
Chào Bạn,
Bạn có thể dùng chức năng định dạng có điều kiện (Conditional Formatting) để định dạng màu hiển thị của ô dữ liệu xác định.
Xin xem ảnh minh hoạ đính kèm.
Chúc Bạn thành công. -
RE: Cách thay đổi Back Color của control theo giá trị
toancvp > 16-07-16, 10:43 AM