Định dạng có điều kiện theo ngày trong tuần


21

Làm cách nào tôi có thể định dạng có điều kiện các ô trong bảng tính Google có chứa ngày để có nền khác nhau theo ngày trong tuần, ví dụ: làm nổi bật các ngày thứ Bảy và Chủ nhật trong một cột có chứa các ngày trong tháng?

Câu trả lời:


13

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 A1là 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).


2
Đây là một giải pháp tốt, cảm ơn. Tôi đang chấp nhận nó. Để sử dụng, tôi đã điều chỉnh nó để loại trừ các ô trống: =and(not(isblank(A1)), or(WEEKDAY(A1)=1,WEEKDAY(A1)=7))
Mike Ellis

Bổ sung tốt đẹp với không isblank. Tôi đã sử dụng nó theo cách mà tôi chỉ sử dụng nó cho phạm vi có chứa ngày, ví dụ A1: A31. Tôi cũng đã thay đổi nó từ việc sử dụng> và <thành = như bạn đã làm. Đó là một chút thẳng về phía trước theo cách đó. Tôi đoán tôi đã bắt đầu hy vọng việc đánh số ngày trong tuần giống như ở nước tôi, nơi thứ Hai sẽ là 1 và Chủ nhật sẽ là 7. Tôi không biết liệu đây có phải là trường hợp nếu thay đổi cài đặt quốc gia.
aej

14

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 1khi 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.


4
Dựa trên điều này, một cách đơn giản hơn sẽ được thực hiện =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
FuriousGeorge

1
Điều đó đã lừa Cảm ơn!
Vũ điệu Joshua

5

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)=falsecũ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ư A1sẽ 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:A100thay vì A1:A100)

Tín dụng cho quả đậu!


4

Đ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.

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.


Cảm ơn, William. Mặc dù mã có vẻ hợp lý, vì một số lý do, nó không hoạt động như mong đợi. Nó chuyển sang ngày số chẵn màu đỏ và ngày số lẻ màu trắng.
Mike Ellis

Tôi đã thay đổi bài kiểm tra trong iftuyên bố để đơn giản hơn. Nó có hoạt động bây giờ không?
William Jackson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.