Excel-有条件地格式化日历

时间:2018-10-10 22:12:54

标签: excel formatting conditional-statements

好吧,我有两个基本相同的问题。我正在Excel工作表中建立标准的每月日历,以跟踪出勤情况。布局与在Outlook中看到的布局相同,其中有6行6列。我有日历设置,它可以根据从“数据验证”列表中选择的月份来准确地更改日期。

我还有另一张纸,它跟踪3条数据用于出勤,员工姓名,出勤“类型”及其发生的日期。

现在,我的任务是根据2种类型的条件设置条件格式。

首先,我想设置格式以“灰显”不属于当前所选月份的日期。

我设置了一个条件公式,

=MONTH(B9)<>MONTH(DATEVALUE(D5&"1"))

其中日历范围被命名为“日历”,范围是B9:H14。

D5是包含当前选定月份的单元格,然后我将其在公式中转换为数值,以将其与日历单元格返回的值进行比较。

这适用于第一个单元格B9。但这不会导致在符合条件的范围内的其他任何单元格上突出显示。

其次,我想为每个日历单元格设置条件格式,以根据出勤类型进行反映。

在日历表中,我有一个数据验证列表,该列表允许选择特定员工。因此,该表反映了特定雇员在特定月份的出勤情况。

同样,使用命名的Calendar范围B9:H14。我要对其进行设置,以便它在第二张工作表上搜索出勤列表,并根据员工姓名,发生的日期和类型突出显示日历上的日期。

例如,如果出席者列表中有一个条目,则John Doe在2018年1月2日病了。然后,如果在“数据验证”列表单元格D4中选择的雇员是John Doe,则日历上将以红色突出显示日期为1/2/2018的单元格。

仅供参考:出席者列表工作表的排列顺序如下:

  • 名称

  • 类型

  • 日期

所有三列均按顺序命名:TrackNames,TrackTypes,TrackDates。

我正在看一些类似的东西:

=COUNTIFS(TrackNames, D4, TrackDates, B9, TrackTypes, Data!$D$4)>0

虽然可以,但是只能在单元格B9上使用。不在整个单元格范围内。

1 个答案:

答案 0 :(得分:0)

已修复:

=MONTH(B9)<>MONTH(DATEVALUE($D$5&"1"))

=COUNTIFS(TrackNames, $D$4, TrackDates, B9, TrackTypes, Data!$D$4)>0