Как сделать диапазон дат в excel?

Глава 12. Выборка из диапазона дат с помощью критерия в ином формате

Это глава из книги: Майкл Гирвин. Ctrl+Shift+Enter. Освоение формул массива в Excel.

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

Подсчет дат, когда критерий сформулирован в виде текста. На рис. 12.1 показан набор данных с датами в стандартном формате Excel, то есть в виде порядковых чисел. В тоже время, критерии заданы как число (год) и текст (месяц). Цель – подсчитать, сколько дат соответствуют критерию. Проблема в том, что у нас несоответствие формата данных: в столбце A даты как порядковые номера, а критерий – смесь чисел и текста. На рис. 12.1 приведено пять различных формул, которые можно использовать для достижения цели.

Рис. 12.1. Подсчет количества дат (заданных порядковыми номерами) по двум критериям: году (число) и месяцу (текст)

Скачать заметку в формате Word или pdf, примеры в формате Excel2013

Давайте подробнее изучим работу этих пяти формул.

  • Если вы можете позволить себе вспомогательный столбец, функция СЧЁТЕСЛИ будет самым простым решением.
  • Функция МЕСЯЦ возвращает число между 1 и 12, а функция ГОД – число (год).
  • Хотя Excel требует, чтобы аргумент функции МЕСЯЦ был представлен датой в числовом формате, этот аргумент может распознать и текст. Однако МЕСЯЦ(Окт) вернет ощибку, а вот если добавить к названию месяца любое число, например, 1, то Excel справится. Используйте, как в формуле выражение Окт1, заданное фрагментом F8&1, или 1Окт, заданное фрагментом 1&F8.
  • Формулы с вспомогательными столбцами как правило работают быстрее.
  • Если у вас Excel 2007 или более поздний, вы можете использовать функции СЧЁТЕСЛИМН и КОНМЕСЯЦА.
  • Вам даны год (в виде числа) и месяц (как текст). Это означает, что вы можете вычислить дату начала и конца месяца, а затем определить даты, попажающие между ними.
  • Месяц всегда начинается с первого числа, так что вы можете создать нижнюю границу диапазона конкатенацией: » >=1 » &F8&E8. Операции конкатенации возвращают текст, но это не страшно, т.к. функция СУММЕСЛИМН понимает даты в виде текста.
  • Вы используете функцию КОНМЕСЯЦА с аргументом число_месяцев равным нулю; это позволяет получить последнюю дату текущего месяца. Функция КОНМЕСЯЦА является динамической: она возвращает 28 или 29 для февраля и 30 или 31 для любого другого месяца.
  • Эта формула является самой быстрой, если вам нужно получить решение в одной ячейке.
  • Если у вас Excel версии младше 2007 г., вы можете использовать две функции СЧЁТЕСЛИ, одну – для верхнего диапазона, вторую – для нижнего. Фокус в том, чтобы сначала сосчитать все значения, которые равны или меньше верхней границы, а затем вычесть все значения, которые меньше нижней границы.
  • В Excel 2003 или более ранней, чтобы добавить функцию КОНМЕСЯЦА, вам нужно выбрать ИнструментыНадстройкиАнализ Данных.
  • Эта формула работает быстрее, чем формулы [4] и [5].
  • Функции МЕСЯЦ и ГОД возвращают числа, извлекая их из порядкового номера даты.
  • Далее сравниваются два фрагмента, каждый полкченный конкатенацией.
  • Функция ТЕКСТ используется для представления чисел в виде текста. Второй аргумент этой функции – формат – определяет, как будет представлено число. Вы может конвертировать весь столбец А в текст, состоящий из 7 символов: 3 буквы месяца и 4 цифры года.

Нахождение объема продаж за год. На рис. 12.4 показан пример несоответствие формата года в критерии Е6 (число) и формата дат в диапазоне А2:А6 (порядковый номер). Цель – найти сумму продаж за год. На рисунке представлены шесть вариантов формул, которые могут решить задачу. Обратите внимание, что в формулах [1] и [2] критерии начала и конца года жестко зашиты в коде, т.к. они не могут изменяться. Это 1/1 и 31/12). Формулы размещены на рисунке в порядка увеличения скорости работы.

Рис. 12.4. Формата года в критерии Е6 (число) не соответствует формату дат в диапазоне А2:А6 (порядковый номер)

Диаграммы в Эксель: задать диапазон формулой от даты

Здравствуйте, уважаемые.
Прошу помочь разобраться — возможно ли задать формулу выбора диапазона данных для диаграммы (простой график), с зависимостью от времени исполнения

Есть таблица, в которой отражена динамика изменения некоего параметра (точнее, ежедневно вносятся данные об объёме продаж вчерашнего дня — не накопительно, а именно отгрузка вчерашнего дня). В начале месяца таблица обнуляется. Выходной день склада — воскресенье (строго воскресенье, и только оно, то есть Новый Год и прочие праздники — не рассматриваются)

На основании этой таблицы строится диаграмма, по Х отражены календарные дни месяца, по Y откладываются данные, точки соединяются. Данные берутся из столбца таблицы «Сумма» (там несколько групп товаров, каждый заполняется отдельно, а масса суммируется и идёт в диаграмму).

Читать еще:  Как сделать слияние документов в excel?

Проблема в том, что если ставить в воскресенье продажи = 0, то на графике офигительный провал. Та же проблема, если сейчас — начало месяца, то все дни до конца месяца равны нулю, и это тоже выглядит некрасиво.

Скрыть в исходной таблице воскресенья — нельзя.

Поставил простую формулу во избежание провалов по воскресеньям: ЕСЛИ(СУММ(. )=0;ЯчейкаВыше;СУММ(. )) — провалы исчезли, однако эта формула приводит к длинной и ровной линии на весь остаток месяца — манагеров напрягает такая стабильность 🙂

Так вот, собственно, вопрос: как, не изменяя диапазон данных диаграммы вручную, отображать этот график только ПО текущий день? (день предполагается задать в отдельной ячейке в районе таблицы с данными, то есть формула вида ДЕНЬ() здесь не нужна, ибо на начало нового месяца нужно отразить полную картину предыдущего)

Хочу добиться того, чтоб на, скажем, 10-е число, было показано данных только из 10 строк, а на 11-е — из одинадцати, соответственно.

Не совсем понял задачу, 🙁
может нарисуете что хотите?

Делал когда-то что-то следующее.

[b]Avsha[/b], спасибо за Ваше внимание, однако, пример не помог.
[b]Diment[/b], это действительно близко к теме, возможно, буду работать именно в этом направлении.

Вообще, хотелось без макросов. Дальше на примере [b]Diment[/b]:
Таблица очень похожа, только в моей столбец «Подпись» содержит номера дней месяца (календарные — 1-31), а в столбце «Данные» сидит формула, суммирующая сведения по ещё нескольким столбцам (в соответствующей строке, естественно). При этом, формула содержит проверку на нулевую сумму, и в случае нуля возвращает сумму из строки выше (это предотвращает провал графика по воскресеньям).
То есть, если сегодня среда середины месяца, и было пара воскресений (когда продажи равны нулю по причине выходного), то график будет идти без резких провалов.
Далее, самое важное: в окрестностях таблицы нужна ячейка, в которую оператор (я и типа меня товарищи на филиалах) после заполнения данных за «вчерашний день» должны поставить число, соответствующее последней актуальной дате данных (например, сегодня 10-е число, занёс данные об отгрузках за 9-е число, ставлю в эту ячейку «9» — в результате график должен отображать данные только с 1-го по 9-е число). То есть, диапазон данных диаграммы должен смениться и составить в этой ситуации только 9 строк таблицы.

Прилагаю пример — как оно есть(выдрано из рабочей книги, хотя названия и параметры изменены).
На графике видна та самая линия «стабильности», которая так напрягает манагеров.
Чтоб её скрыть (не выводить на график незаполненные дни до конца месяца), нужно менять диапазон данных диаграммы, а в ручную — мне лень, а некоторые операторы и не могут 🙂 Вот и хочется присобачить автоматику.

Думаю, ваш вид диаграммы необходимо оставить таким какой есть, т.е. на все 31 день.
И дополнить несколькими линиями, которые соответствуют дням восресения и остатку месяца.
Их можно выделить другим цветом, типом и т.д.
По значению их можно протянуть по последнему «рабочему» значению

Таким образом в вашем графике будет присутствовать не одна линия, а 6 или 7,
— рабочая линия
— линия 1-го воскресения
— линия 2-го воскресения и т.д.
— линия остатка месяца.

Не знаю решили вы проблему или нет.
Я когда-то столкнулся с аналогичной задачей. Посмотрите вложенный файл, может там есть решения, которые вам будут полезны.
Я его немного отредактировал, с учетом провалов по воскресеньям.

PS на листе total ключевая ячейка отчетная дата.

[b]pc[/b],
Хотел уточнить рациональное в вашем примере:
1. Когда значения ряда равны #Н/Д маркер на линии не ставится,
2. Управление количеством точек в диаграмме реализуется автомасштабированием оси X, лишние значения подписей оси Х для этого забиваются также значением — #Н/Д.
Верно?

[b]Дионис[/b],
Вот еще вариант, кусок рационального взял с примера Pc.
Добавил условное форматирование для наглядности.

Как подсветить сроки и даты в ячейках в Excel?

Добрый день уважаемый пользователь Microsoft Excel!

Темой статьи будет возможность подсветить сроки и даты в ячейках Excel, которые будут указаны в условиях как критические. Это необходимо когда выполнение любых условий привязанных к датам являются очень важными.

Статья будет полезна тем, кому важны сроки окончания действий договоров, для их перезаключения, проведения тендеров, тут вообще необходимо жёсткое соответствие срокам, отслеживания дат отгрузок товаров согласно соглашениям, ведение строгой и простой отчётности и т.п… Как видите, сфера применения очень обширна и данная возможность пригодится многим юристам, работникам кадровых служб, экономистам и бухгалтерам.

Давайте рассмотрим на практике два способа применения подсветки с помощью условного форматирования:

Подсветка дат и сроков с помощью правил выделения ячеек

Это самый простой способ, который возможно осуществить с помощью нескольких кликов. Для начала необходимо выделить нужный диапазон с вашими датами, на панели управления во вкладке «Главная», выбрать выпадающее меню «Условное форматирование», выбрать в списке «Правила выделения ячеек», далее выбрать тип «Дата…». Следующим шагом вы в диалоговом окне «Дата» в выпадающем списке указываем условия выделения, например, выбрать все даты «На текущей неделе» и выберем для них красный цвет.

Подсветка дат в ячейках с помощью условного форматирования и элементов управления форм

Этот способ будет более сложным, конечно, но и лучше, и красочнее, и интересней. Рассмотрим наш пример на основе отдела продаж и плану отгрузки товаров для клиентов, выполнение, которого очень строго и обязательно для исполнения, если необходима кристальная репутация и деньги.

Читать еще:  Как сделать дни недели в excel?

Создадим таблицу отгрузки товаров: Главным аргументом в работе будут даты отгрузки, когда в списке дата уже прошла, значит, товар поставлен и всё у вас хорошо. Когда же дата еще не наступила, вам необходимо контролировать этот процесс и сделать отгрузку в указанный период. А вот если дата отгрузки и сегодняшняя дата совпадают, тогда бросайте всё и бегите немедленно заниматься срочной отгрузкой, так как ее приоритет в работе будет максимальной.

Для наибольшей наглядности настроим несколько правил для работы условного форматирования, чтобы происходила заливка строки таблицы в определённые цвета в зависимости от указанных дат поставки.

Для начала выделим созданную таблицу и на вкладке «Главная» выбираем в выпадающем списке «Условное форматирование» пункт «Создать правило». В открывшемся диалоговом окне выбираете правило «Использовать формулу для определения форматируемых ячеек» и вводим формулу: =$D5 ИСТИНА. Формат указывать не надо, так как таблица должна выглядеть обыкновенной, нажимаем кнопочку «ОК» добавляем новое правило в общий список. В случае если новое правило не возглавило список, то необходимо стрелочками его туда пропихнуть и установить флажок в столбике «Остановить если истина». Указание последнего параметра необходимо для того, чтобы, когда ваше правило выполнялось (выключен флажок «Включить индикатор строк»), Excel автоматически отключал все нижестоящие правила условного форматирования и таблица остается, девственно чиста от заливок, чего, собственно вы и добивались!

Я очень хочу, чтобы возможность и умение подсветить сроки и даты в ячейках в Excel у вас получилась, и вы могли применить их в своей работе. Если у вас есть чем дополнить меня пишите комментарии, я буду их ждать с нетерпением, ставьте лайки и делитесь полезной статьей в соц.сетях!

Не забудьте подкинуть автору на кофе…

10 популярных функций даты и времени в Microsoft Excel

Одной из самых востребованных групп операторов при работе с таблицами Excel являются функции даты и времени. Именно с их помощью можно проводить различные манипуляции с временными данными. Дата и время зачастую проставляется при оформлении различных журналов событий в Экселе. Проводить обработку таких данных – это главная задача вышеуказанных операторов. Давайте разберемся, где можно найти эту группу функций в интерфейсе программы, и как работать с самыми востребованными формулами данного блока.

Работа с функциями даты и времени

Группа функций даты и времени отвечает за обработку данных, представленных в формате даты или времени. В настоящее время в Excel насчитывается более 20 операторов, которые входят в данный блок формул. С выходом новых версий Excel их численность постоянно увеличивается.

Любую функцию можно ввести вручную, если знать её синтаксис, но для большинства пользователей, особенно неопытных или с уровнем знаний не выше среднего, намного проще вводить команды через графическую оболочку, представленную Мастером функций с последующим перемещением в окно аргументов.

  1. Для введения формулы через Мастер функций выделите ячейку, где будет выводиться результат, а затем сделайте щелчок по кнопке «Вставить функцию». Расположена она слева от строки формул.

После этого происходит активация Мастера функций. Делаем клик по полю «Категория».

Из открывшегося списка выбираем пункт «Дата и время».

Кроме того, Мастер функций можно активировать, выделив ячейку на листе и нажав комбинацию клавиш Shift+F3. Существует ещё возможность перехода во вкладку «Формулы», где на ленте в группе настроек инструментов «Библиотека функций» следует щелкнуть по кнопке «Вставить функцию».

Имеется возможность перемещения к окну аргументов конкретной формулы из группы «Дата и время» без активации главного окна Мастера функций. Для этого выполняем перемещение во вкладку «Формулы». Щёлкаем по кнопке «Дата и время». Она размещена на ленте в группе инструментов «Библиотека функций». Активируется список доступных операторов в данной категории. Выбираем тот, который нужен для выполнения поставленной задачи. После этого происходит перемещение в окно аргументов.

Одной из самых простых, но вместе с тем востребованных функций данной группы является оператор ДАТА. Он выводит заданную дату в числовом виде в ячейку, где размещается сама формула.

Его аргументами являются «Год», «Месяц» и «День». Особенностью обработки данных является то, что функция работает только с временным отрезком не ранее 1900 года. Поэтому, если в качестве аргумента в поле «Год» задать, например, 1898 год, то оператор выведет в ячейку некорректное значение. Естественно, что в качестве аргументов «Месяц» и «День» выступают числа соответственно от 1 до 12 и от 1 до 31. В качестве аргументов могут выступать и ссылки на ячейки, где содержатся соответствующие данные.

Для ручного ввода формулы используется следующий синтаксис:

Близки к этой функции по значению операторы ГОД, МЕСЯЦ и ДЕНЬ. Они выводят в ячейку значение соответствующее своему названию и имеют единственный одноименный аргумент.

Своего рода уникальной функцией является оператор РАЗНДАТ. Он вычисляет разность между двумя датами. Его особенность состоит в том, что этого оператора нет в перечне формул Мастера функций, а значит, его значения всегда приходится вводить не через графический интерфейс, а вручную, придерживаясь следующего синтаксиса:

Читать еще:  Как сделать увеличивающуюся картинку в excel?

Из контекста понятно, что в качестве аргументов «Начальная дата» и «Конечная дата» выступают даты, разницу между которыми нужно вычислить. А вот в качестве аргумента «Единица» выступает конкретная единица измерения этой разности:

  • Год (y);
  • Месяц (m);
  • День (d);
  • Разница в месяцах (YM);
  • Разница в днях без учета годов (YD);
  • Разница в днях без учета месяцев и годов (MD).

В отличии от предыдущего оператора, формула ЧИСТРАБДНИ представлена в списке Мастера функций. Её задачей является подсчет количества рабочих дней между двумя датами, которые заданы как аргументы. Кроме того, имеется ещё один аргумент – «Праздники». Этот аргумент является необязательным. Он указывает количество праздничных дней за исследуемый период. Эти дни также вычитаются из общего расчета. Формула рассчитывает количество всех дней между двумя датами, кроме субботы, воскресенья и тех дней, которые указаны пользователем как праздничные. В качестве аргументов могут выступать, как непосредственно даты, так и ссылки на ячейки, в которых они содержатся.

Синтаксис выглядит таким образом:

Оператор ТДАТА интересен тем, что не имеет аргументов. Он в ячейку выводит текущую дату и время, установленные на компьютере. Нужно отметить, что это значение не будет обновляться автоматически. Оно останется фиксированным на момент создания функции до момента её перерасчета. Для перерасчета достаточно выделить ячейку, содержащую функцию, установить курсор в строке формул и кликнуть по кнопке Enter на клавиатуре. Кроме того, периодический пересчет документа можно включить в его настройках. Синтаксис ТДАТА такой:

Очень похож на предыдущую функцию по своим возможностям оператор СЕГОДНЯ. Он также не имеет аргументов. Но в ячейку выводит не снимок даты и времени, а только одну текущую дату. Синтаксис тоже очень простой:

Эта функция, так же, как и предыдущая, для актуализации требует пересчета. Перерасчет выполняется точно таким же образом.

Основной задачей функции ВРЕМЯ является вывод в заданную ячейку указанного посредством аргументов времени. Аргументами этой функции являются часы, минуты и секунды. Они могут быть заданы, как в виде числовых значений, так и в виде ссылок, указывающих на ячейки, в которых хранятся эти значения. Эта функция очень похожа на оператор ДАТА, только в отличии от него выводит заданные показатели времени. Величина аргумента «Часы» может задаваться в диапазоне от 0 до 23, а аргументов минуты и секунды – от 0 до 59. Синтаксис такой:

Кроме того, близкими к этому оператору можно назвать отдельные функции ЧАС, МИНУТЫ и СЕКУНДЫ. Они выводят на экран величину соответствующего названию показателя времени, который задается единственным одноименным аргументом.

Функция ДАТАЗНАЧ очень специфическая. Она предназначена не для людей, а для программы. Её задачей является преобразование записи даты в обычном виде в единое числовое выражение, доступное для вычислений в Excel. Единственным аргументом данной функции выступает дата как текст. Причем, как и в случае с аргументом ДАТА, корректно обрабатываются только значения после 1900 года. Синтаксис имеет такой вид:

Задача оператора ДЕНЬНЕД – выводить в указанную ячейку значение дня недели для заданной даты. Но формула выводит не текстовое название дня, а его порядковый номер. Причем точка отсчета первого дня недели задается в поле «Тип». Так, если задать в этом поле значение «1», то первым днем недели будет считаться воскресенье, если «2» — понедельник и т.д. Но это не обязательный аргумент, в случае, если поле не заполнено, то считается, что отсчет идет от воскресенья. Вторым аргументом является собственно дата в числовом формате, порядковый номер дня которой нужно установить. Синтаксис выглядит так:

Предназначением оператора НОМНЕДЕЛИ является указание в заданной ячейке номера недели по вводной дате. Аргументами является собственно дата и тип возвращаемого значения. Если с первым аргументом все понятно, то второй требует дополнительного пояснения. Дело в том, что во многих странах Европы по стандартам ISO 8601 первой неделей года считается та неделя, на которую приходится первый четверг. Если вы хотите применить данную систему отсчета, то в поле типа нужно поставить цифру «2». Если же вам более по душе привычная система отсчета, где первой неделей года считается та, на которую приходится 1 января, то нужно поставить цифру «1» либо оставить поле незаполненным. Синтаксис у функции такой:

Оператор ДОЛЯГОДА производит долевой расчет отрезка года, заключенного между двумя датами ко всему году. Аргументами данной функции являются эти две даты, являющиеся границами периода. Кроме того, у данной функции имеется необязательный аргумент «Базис». В нем указывается способ вычисления дня. По умолчанию, если никакое значение не задано, берется американский способ расчета. В большинстве случаев он как раз и подходит, так что чаще всего этот аргумент заполнять вообще не нужно. Синтаксис принимает такой вид:

Мы прошлись только по основным операторам, составляющим группу функций «Дата и время» в Экселе. Кроме того, существует ещё более десятка других операторов этой же группы. Как видим, даже описанные нами функции способны в значительной мере облегчить пользователям работу со значениями таких форматов, как дата и время. Данные элементы позволяют автоматизировать некоторые расчеты. Например, по введению текущей даты или времени в указанную ячейку. Без овладения управлением данными функциями нельзя говорить о хорошем знании программы Excel.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Ссылка на основную публикацию
Adblock
detector