Câu trả lời:
Tôi đã vật lộn với điều này trong một thời gian dài, nhưng cuối cùng đã phá vỡ nó:
Sử dụng định dạng có điều kiện trên cột với ngày và nhập như sau là một công thức tùy chỉnh:
=or(WEEKDAY(A1)=1,WEEKDAY(A1)=7)
nơi A1
là ngày đầu tiên trong cột.
Điều này sẽ áp dụng định dạng có điều kiện cho tất cả các ngày trong tuần với giá trị là 1 (Chủ nhật) và 7 (Thứ bảy).
Dễ dàng (nhưng hơi tẻ nhạt!) Trong Google Sheets mới. Đối với Định dạng có điều kiện, một quy tắc mới được yêu cầu cho mỗi màu, đại khái. (Một màu thường có thể được bỏ qua khỏi các quy tắc và thay vào đó được áp dụng với định dạng thông thường - sẽ bị áp đảo khi áp dụng bất kỳ điều kiện nào cho CF.) Vì vậy, hãy mong đợi lặp lại những điều cơ bản sau ít nhất năm lần.
Giả sử cột ngày là A. Chọn nó, Định dạng> Định dạng có điều kiện ..., Công thức tùy chỉnh là và nhập:
=weekday(A1)=1
Chọn định dạng cần thiết.
Trận chung kết 1
ở trên là vào Chủ nhật, những ngày khác theo thứ tự số.
Lặp lại cho các định dạng cần thiết khác, điều chỉnh 1
khi cần thiết.
Bởi vì các quy tắc này không xung đột (mỗi ngày chỉ là một ngày cụ thể trong tuần) nên thứ tự các quy tắc được thêm vào (với " + Thêm quy tắc khác ") không quan trọng.
=WEEKDAY(A1,2)>5
- Điều này sẽ đánh vào cả Thứ Bảy và Chủ Nhật và chỉ cần một quy tắc
Nếu ngày nằm trong cột A, hãy chọn chúng, sau đó: Định dạng > Định dạng có điều kiện ... > Định dạng ô nếu ... > Công thức tùy chỉnh và đặt
=and(isblank(A:A)=false, or(weekday(A:A)=1, weekday(A:A)=7))
Một số giải thích:
weekday(A:A)
trả về 1-7 , cho ngày trong tuần và
or(weekday(A:A)=1, weekday(A:A)=7)
trả về đúng , nếu đó là Chủ nhật ( 1 ) hoặc Thứ bảy ( 7 ).
Điều này sẽ tự hoạt động, nhưng vì một số lý do ngày trong tuần () trên một ô trống trả về 7 , do đó, isblank(A:A)=false
cũng kiểm tra xem ô đó có trống không. Bây giờ nó tô màu một ô nếu cả hai (không trống) và (mặt trời hoặc sat)
Tôi cũng đặt A:A
, như A1
sẽ cho kết quả bù nếu phạm vi định dạng không bắt đầu ở trên cùng (ví dụ A5:A100
thay vì A1:A100
)
Tín dụng cho quả đậu!
Điều này là có thể với một kịch bản. Chuyển đến Công cụ → Trình chỉnh sửa tập lệnh ... và dán vào tập lệnh này:
function onEdit(e) {
var cell = e.range.getCell(1, 1);
var val = cell.getValue();
if ((val instanceof Date) && (val.getDay() == 0 || val.getDay() == 6)) {
cell.setBackground("red");
} else {
cell.setBackground("white");
}
}
Lưu tập lệnh (đặt tên dự án) và quay lại bảng tính của bạn.
Bây giờ, mỗi khi bạn chỉnh sửa một ô, tập lệnh này sẽ kiểm tra xem bạn đã nhập ngày chưa và ngày bạn nhập là Chủ nhật hay Thứ bảy. Nếu vậy, nền của ô sẽ chuyển sang màu đỏ. Nếu không phải là một ngày hoặc không phải vào cuối tuần, nền sẽ chuyển sang màu trắng.
Có những tên màu khác bạn có thể sử dụng hoặc bạn có thể sử dụng mã hex để chỉ định một màu khác.
if
tuyên bố để đơn giản hơn. Nó có hoạt động bây giờ không?
=and(not(isblank(A1)), or(WEEKDAY(A1)=1,WEEKDAY(A1)=7))