2016-01-09 2 views
1

У меня есть календарь отпуска, в котором указаны даты в соответствии с датой отпуска сотрудника в календаре с использованием условного форматирования, которое работает идеально, но я хочу, а не выделяю его. Название, указанное перед датой в календарь.Значение ячейки в календаре вместо выделения

= SUMPRODUCT ((B3 < = $ I $ 19: $ I $ 150) * (B3> = $ E $ 19: $ E $ 150)) = 1

cal

Я хочу для отображения имени в календаре вместо зеленой подсветки. Формула или VBA; все приемлемо.

+0

ответ будет зависеть от того, как вы вводите названия месяцев в А3: А14. Сначала я думал, что они были просто напечатаны в тексте из-за выравнивания левой части ячейки, но затем я заметил, что вы вынудили выравнивание влево по датам в объединенных ячейках E19: L22. Таким образом, A3: A14 могут быть фактическими датами, отформатированными как 'mmmm' с принудительным выравниванием влево. Кто они такие? – Jeeped

+0

@ Jeeped Calendar с формулой «= DATE ($ D $ 1, ROWS ($ A $ 3: $ A3), B $ 2)» –

ответ

2

В B3 поставить это:

=IFERROR(INDEX($A$20:$A$151,MATCH(1,IF(DATE($D$1,ROWS($A$3:$A3),B$2)>=$E$20:$E$151,IF(DATE($D$1,ROWS($A$3:$A3),B$2)<=$I$20:$I$151,1)),0)),"") 

Это формула массива и должна быть подтверждена с Ctrl-Shift-Enter. Затем скопируйте вниз и влево.

enter image description here

Если имя необходимо только в первый день периода отпусков, то более простой INDEX/MATCH функция пара будет достаточно.

В B3, как,

=IFERROR(INDEX($A$20:$A$150, MATCH(DATE(YEAR($A3), MONTH($A3), B$2), $E$20:$E$150, 0)), "") 

Наполните вправо и вниз.

holiday_planner_calendar2

Примечание:

Это будет возвращать только первое имя, если есть совпадение.

В зависимости от ваших местных мест, вам может потребоваться изменить разделитель от , до ;.

Если вы все еще хотите, вы условное форматирование, то изменить формулу условного форматирования для:

=B3<>"" 
+0

Хорошая формула, но я думаю, что это название предназначалось только для того, чтобы войти в первую ячейку праздника (* ', указанный перед датой в календаре *). На самом деле это будет немного легче. – Jeeped

+0

@ Jeeped Это определенно вероятность того, что я пропустил. Поскольку я буквально просто вышел из своей двери, я не смогу ее изменить. Если вы хотите, не стесняйтесь редактировать мою и сделать ее вики-сообществом, или разместите свое собственное понимание этого понимания. Я останусь здесь на всякий случай. –

+0

Я дополнил ваш отличный ответ. Верните его, если хотите. – Jeeped

Смежные вопросы