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

 

vatr15

Пользователь

Сообщений: 3
Регистрация: 13.11.2016

Добрый день. Недавно активно стал пользоваться Excel 2010 года.
Ситуация следующая: «Лист1» я переименовал на «01.01.2016», в этом листе существует таблица. Как мне создать 365 листов, то есть до конца этого года, чтобы в каждом следующем листе сохранилась эта таблица и каждый следующий лист был под датой следующего дня? (то есть если 1ый лист «01.01.2016» то следующий лист автоматом должен «02.01.2016 и т.д» .
Если это реально, прошу помогите решить проблему.
Спасибо!

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

Добавить новый лист с текущей датой с помощью кода VBA

Добавьте новые рабочие листы с последовательной датой, используя Kutools for Excel


стрелка синий правый пузырь Добавить новый лист с текущей датой с помощью кода VBA

Следующий код VBA поможет вам вставить новый рабочий лист с текущей датой, когда вы запускаете код каждый день.

1. Удерживайте ALT + F11 ключи, и он открывает Окно Microsoft Visual Basic для приложений.

2. Нажмите Вставить > Модули, и вставьте следующий макрос в Окно модуля.

Код VBA: добавить новый лист с текущей датой

Sub AddSheets_TodayDate()
'Updateby20140717
    Dim szTodayDate As String
    szTodayDate = Format(Date, "mmm-dd-yyyy")
    On Error GoTo MakeSheet
    Sheets(szTodayDate).Activate
    Exit Sub
MakeSheet:
    Sheets.Add , Worksheets(Worksheets.Count)
    ActiveSheet.Name = szTodayDate
End Sub

3, Затем нажмите F5 ключ для запуска этого кода, и новый лист с сегодняшней датой был вставлен после существующих листов. Смотрите скриншот:

документ-добавить-лист с-датой-1

Внимание: Когда вы сохраните и закроете эту книгу, сохраните ее как Excel Macro-Enabled Workbook форматировать, нажав Файл > Сохранить как. И когда вы запустите книгу на следующий день, обязательно нажмите Включить контент, чтобы вы могли успешно запустить код для добавления нового листа даты.


стрелка синий правый пузырь Добавьте новые рабочие листы с последовательной датой, используя Kutools for Excel

Приведенный выше код может помочь вам вставить только один лист с датой текущего дня за раз, если вы хотите вставить несколько листов с последовательной датой, эта утилита Создать рабочие листы последовательностей of Kutools for Excel сделаю вам одолжение.

Kutools for Excel включает более 300 удобных инструментов Excel. Бесплатная пробная версия без ограничений в течение 30 дней. Получить сейчас.

Если вы установили Kutools for Excel, пожалуйста, сделайте следующее:

1. В пустой ячейке введите сегодняшнюю дату, а затем перетащите маркер заполнения, чтобы заполнить ячейки нужной последовательностью дат.

документ-добавить-лист с-датой-1

2. Затем нажмите Предприятие > Инструменты рабочего листа > Создать рабочие листы последовательностей, см. снимок экрана:

документ-добавить-лист с-датой-1

3. В Создать рабочие листы последовательностей диалоговом окне укажите рабочий лист, на основе которого вы хотите создать новые листы Базовый рабочий лист раскрывающийся список. А затем выберите Данные в диапазоне вариант под Имена листов на основе раздел, чтобы выбрать диапазон данных, который вы хотите использовать в качестве имен листов. Смотрите скриншот:

документ-добавить-лист с-датой-1

4. Затем нажмите OK, и будет создана новая книга с именами листов в порядке дат. Смотрите скриншот:

документ-добавить-лист с-датой-1

Чтобы узнать больше об этой функции создания рабочих листов последовательности.


Связанная статья:

Как создать рабочие листы последовательности из диапазона ячеек в Excel?


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (0)


Оценок пока нет. Оцените первым!

Создать сразу новые листы с датами на месяц

111rabotnik

Дата: Понедельник, 14.12.2015, 05:31 |
Сообщение № 1

Группа: Пользователи

Ранг: Прохожий

Сообщений: 3


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Здравствуйте, помогите пожалуйста решить вопрос…Проблема в том что каждый месяц мне нужно создавать книгу ексель а вней в зависимости от количества дней в месяце столько и листов с датами…табличка абсолютно одинаковая на каждом листе…расскажите пожалуйста как это можно сделать…на каждом листе таже табличка что и на первом. Только листы со следующей датой на месяц сразу, примерно 30 листов…

К сообщению приложен файл:

4989166.xls
(35.0 Kb)

Сообщение отредактировал 111rabotnikПонедельник, 14.12.2015, 05:31

 

Ответить

_Boroda_

Дата: Понедельник, 14.12.2015, 09:27 |
Сообщение № 2

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Так нужно?
[vba]

Код

Sub tt()
    Application.ScreenUpdating = 0
    sn_ = Sheets(1).Name
    n_ = Day(WorksheetFunction.EoMonth(CDate(sn_), 0))
    For i = n_ To 2 Step -1
        sn1_ = Format(i, «00») & Mid(sn_, 3, 8)
        Sheets(1).Copy After:=Sheets(1)
        Sheets(2).Name = sn1_
    Next i
End Sub

[/vba]
В файле макрос повесил на сочетание Контрл Шифт M (латинское)


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

111rabotnik

Дата: Понедельник, 14.12.2015, 09:50 |
Сообщение № 3

Группа: Пользователи

Ранг: Прохожий

Сообщений: 3


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

[moder]Не нужно цитировать весь пост. Об этом есть в Правилах форума[/moder]
Спасибо огромноее Boroda))))))есть несколько нюансов но меня устраивает))))а можно создавать листы по тексту ячеек?)))пишу текст в столбец любой и создаются листы с такими именами и таким количеством выделенных ячеек?))
В любом случае спасибо уже огромное Вам)))

К сообщению приложен файл:

8527512.xls
(24.0 Kb)

Сообщение отредактировал 111rabotnikПонедельник, 14.12.2015, 10:00

 

Ответить

_Boroda_

Дата: Понедельник, 14.12.2015, 10:32 |
Сообщение № 4

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Не понял вот этой фразы

таким количеством выделенных ячеек

Так?
[vba]

Код

Sub tt()
    Application.ScreenUpdating = 0
    n_ = Selection.Count
    For i = n_ To 1 Step -1
        sn_ = Selection(i).Text
        If sn_ <> «» Then
            On Error Resume Next
            Sheets(sn_).Select
            If Err.Number Then
                Sheets(1).Copy After:=Sheets(1)
                Sheets(2).Name = sn_
                Err.Clear
            End If
        End If
    Next i
End Sub

[/vba]
Или так?
[vba]

Код

Sub tt()
    Application.ScreenUpdating = 0
    n_ = Selection.Count
    For i = 1 To n_
        sn_ = Selection(i).Text
        If sn_ <> «» Then
            On Error Resume Next
            Sheets(sn_).Select
            If Err.Number Then
                Sheets.Add After:=Sheets(1)
                Sheets(2).Name = sn_
                Sheets(1).Select
                Err.Clear
            End If
        End If
    Next i
End Sub

[/vba]


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

111rabotnik

Дата: Понедельник, 14.12.2015, 11:07 |
Сообщение № 5

Группа: Пользователи

Ранг: Прохожий

Сообщений: 3


Репутация:

0

±

Замечаний:
0% ±


Excel 2010


Да как во втором варианте))))первый вариант не работает а второй все супер)))спасибо Вам огромнейшее))))удачного дня))) hands

 

Ответить

Коллеги.
1. Прошу подсказать существует ли у Экселя возможности создавать автоматически листы в книге?
Например,  в ячейках A1-A5 первого листа записаны 5 значений
«имя первого листа»……. «имя пятого листа»
и есть 5 листов с такими названиями листов
если добавляем в ячеку A6 значение «имя шестого листа», то автоматически создаётся ещё один лист с указанным названием.

2. Обратная задача.
В ячейках стоит формула, которая определяет имена листов и подставляет в соответствующую ячейку определённое имя.

Заранее благодарен.


Так?
В из_ячеек_в_листы.xls в Лист1 столбец А нужно ввести корректный для имени листа текст
В из_листов_в_ячейки.xls нужно вставить новый лист или изменить название старого и посмотреть на Лист1

Скажи мне, кудесник, любимец ба’гов…

Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995


Цитата: _Boroda_ от 17.02.2010, 01:53
Так?
В из_ячеек_в_листы.xls в Лист1 столбец А нужно ввести корректный для имени листа текст
В из_листов_в_ячейки.xls нужно вставить новый лист или изменить название старого и посмотреть на Лист1

А мне понравилось. Подскажет ли уважаемый _Boroda_  как генерировать новые листы с уже готовым форматированием.
Т.е. я создал некий бланк, и при вводе значений на листе файла «из_ячеек_в_листы.xls» создаётся новый лист (это _Boroda_ уже осуществил)
с уже готовым бланком


_Boroda_, Огромное спасибо.
Собственно говоря кzld озвучил мой основной вопрос.

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

Событие может быть — новый месяц, новый сотрудник, новая роль, новые материалы к изучению …

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


Скажи мне, кудесник, любимец ба’гов…

Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995


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

;D

Спасибо огромное. Будем развивать.


Доброго времени суток уважаемый _Boroda_
Столкнулся с такой же проблемой но не смог разобраться как решить мою задачю
Задача поставлена таким образом:
Нужно чтоб при добавлении текста в ячейку В КОНЕЦ КНИГИ был скопирован последний лист этой книги с названием указанным в ячейке
PS: я так понимаю открыв редактор VB я увижу ваш скрипт и смогу внедрить его в свой документ
Заранее Спасибо

Не пытайтесь спорить с дебилом. Иначе вы опуститесь до его уровня. Где он задавит вас своим опытом.


выложил пример в нем попробовал подробней описать поставленную задачу

Не пытайтесь спорить с дебилом. Иначе вы опуститесь до его уровня. Где он задавит вас своим опытом.


Скажи мне, кудесник, любимец ба’гов…

Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995


Огромное спасибо  :D это именно то что я хотел
+1

Не пытайтесь спорить с дебилом. Иначе вы опуститесь до его уровня. Где он задавит вас своим опытом.


Dobryi den’, uvajaemyi _Boroda_

Vo pervyh,  izvinite za transliteratsiyu…. u menya klava ne russkaya, a v slepuyu ya pechatat’ ne umeyu.

vo vtoryh, hotelos’ by obratit’sya k vam za pomosch’yu… Vy horosho osvetili temu avtomaticheskogo sozdaniya listov v Excele iz dannyh v tablitse… Ya popytalsya ispol’zovat’ fail s gotovym makrosom, no eto kak stavit’ podvesku ot Jiguley na BMW, a samomu mne, kak cheloveku dalekomu ot VBA otredaktirovat’ kod -delo nemuslennoe.

Vy ne mogli by vstavit’ makros v predlojennyi fail, kotoryi budet sozdavat’ listy v kontse kniki s imenem po znacheniyu yacheiki pervogo stolbtsa stranitsy «Main» s formatom i shapkoi tablitsy, no ne dannymi v tablise  iz imeyuchegosya uje lista?

izvinite za naglost’ i bespokoistvo, pojaluysta.

Artem


Вопрос: а если таблица должна быть определенного размера и я скопировала формулу на остальные ячейки, и естественно, у меня отображается в ячейках «#ССЫЛКА!». можно ли каким-то образом сделать так, что бы в ячейках отображалось или значение или ничего?!
Заранее спасибо!


Можно.
условным форматированием
формулой если(еошибка(…);»»;…)
другой формулой
макросом

Но совсем что-то не понятно, а какое отношение это все имеет к теме «Автоматическое создание листов книги»?

Скажи мне, кудесник, любимец ба’гов…

Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995


ну как бэ, вроде как, работаю с фалом из этой темы :)) ну хорошо, как перенести в новую тему? :)))
условным форматированием пробовала — ничего не получилось. не пойму как выставить условие о не верной ссылке.


получилось через формулу!!! Вы гений! :)


условное_форматирование
выделяем диапазон, УФ, формула =ЕОШИБКА(B2), формат — белый текст
формула БЕЗ ЗНАКОВ $

Скажи мне, кудесник, любимец ба’гов…

Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995


А теперь вопрос по теме: как сделать так, что бы при добавлении нового месяца, не только с вновь созданного листа можно было вернуться на главную страницу, но и в столбце «А», нажав на нужный мне месяц, я попадала на соответствующий лист? Т.е. при автоматическом создании нового листа в столбце «А» при нажатии на месяц переходит на соответствующий лист сразу, без дополнительных ручных манипуляций и создания гиперссылок. Просто это сильно облегчит работу, если в книге более 20-70 листов!


Скажи мне, кудесник, любимец ба’гов…

Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995


:D именно!!! то, что надо! выручили блондинку!  ::)


Товарищи, а как в макросе прописать, что каждый последующий лист будет копироваться не из предыдущего, как сейчас прописано, а из листа под названием «Шаблон». это реально?

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo A
r_ = Range(«a» & Cells.Rows.Count).End(xlUp).Row
If Target.Row = r_ And Range(«a» & r_) <> «» Then
    n_ = Format(Range(«a» & r_), «MMMM YYYY»)
    s_ = ThisWorkbook.Sheets.Count
    Sheets(s_).Copy After:=Sheets(s_)
    Sheets(s_ + 1).Name = n_
End If
Exit Sub
A: MsgBox «Ïðîâåðü, íåò ëè ëèñòà ñ òàêèì èìåíåì.»
End Sub


вместо
Sheets(s_).Copy After:=Sheets(s_)
нужно
Sheets(«Шаблон»).Copy After:=Sheets(s_)

Скажи мне, кудесник, любимец ба’гов…

Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995


Замечательные примеры. Коллеги а подскажите пожалуйста по этой же теме, как можно реализовать следующее:

1. На листе «Список» при написании в ячейке А2 «Фамилия Имя» (например — Иванов Иван) создается новый лист на базе имеющегос «Шаблона» с именем, но с именем Иванов И, т.е. Фамилия и первая буква имени, а если уже такое сочетание имеется, то Фамилия и первые две буквы имени (например — Иванов Иг)

2. Сама ячейка А2 где «Фамилия Имя» должна стать гиперссылкой на созданный лист.

3. А в созданом листе Иванов И в ячейке А1  прописывается его «Фамилия Имя» (Иванов Иван).

Много из этого уже имеется в ранее выложенных примерах, но вот хотелось бы и в таком виде, а мозг не доходит. Если не сложно, можно в макросе давать короткое описание некоторых командных строк, за что они отвечают….

Заранее ОГРОМНЕЙШЕЕ все спасибо.


Коллеги, очень нужна ваша помощь…


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


Действительно имя листа соответствует  введеному  в ячейке имени… а возможно так так указано выше…


Как сделать сортировку в excel по дате

Видео: Excel 2007. Фильтрация и сортировка ячеек

Есть несколько способов сортировки дат в Excel.

Здесь рассмотрим, как сделать сортировку в Excel по дате рождения, по месяцам, т.д.

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

Например, все даты 2010 года. А среди этих дат будет идти сортировка по месяцам, затем дням. Затем, все даты 2011 года, т.д.

Для примера и сравнения, мы скопировали даты столбца А в столбец В.

В столбце B мы отсортировали даты по условию «Сортировка от старых к новым».

Здесь произошла сортировка по годам, а месяца идут не подряд.

Но, если нам важнее отсортировать даты по месяцам, например – дни рождения сотрудников или отсортировать даты в пределах одного года, периода, тогда применим формулу.

Сортировка дат в Excel по месяцам.

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

Выделяем ячейку С8. На закладке «Формулы» в разделе «Библиотека функций» в функциях «Текстовые» выбираем функцию «Текст».

Появившееся диалоговое окно заполняем так.Нажимаем «ОК». В ячейке С8 появилась такая формула.

Обратите внимание. Если будете писать формулу вручную, то формат дат нужно писать в кавычках – «ММ.ДД».

Копируем формулу вниз по столбцу.

Теперь отсортируем даты функцией «Сортировка от A до Я» — это сортировка по возрастанию.

Функция «Сортировка и фильтр» находится на закладке «Главная» в разделе «Редактирование».

Теперь можно установить в таблице разделительные линии, которые будут отделять даты каждого месяца.

(Пока оценок нет)

Как сделать сортировку по дате в Excel в порядке возрастания

Каждая транзакция проводиться в какое-то время или период, а потом привязывается к конкретной дате. В Excel дата – это преобразованные целые числа. То есть каждая дата имеет свое целое число, например, 01.01.1900 – это число 1, а 02.01.1900 – это число 2 и т.д. Определение годов, месяцев и дней – это ничто иное как соответствующий тип форматирования для очередных числовых значений. По этой причине даже простейшие операции с датами выполняемые в Excel (например, сортировка) оказываются весьма проблематичными.

Сортировка в Excel по дате и месяцу

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

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

  1. В ячейке A1 введите название столбца «№п/п», а ячейку A2 введите число 1. После чего наведите курсор мышки на маркер курсора клавиатуры расположенный в нижнем правом углу квадратика. В результате курсор изменит свой внешний вид с указательной стрелочки на крестик. Не отводя курсора с маркера нажмите на клавишу CTRL на клавиатуре в результате чего возле указателя-крестика появиться значок плюсик «+».
  2. Теперь одновременно удерживая клавишу CTRL на клавиатуре и левую клавишу мышки протяните маркер вдоль целого столбца таблицы (до ячейки A15).

В результате чего столбец автоматически заполниться последовательностью номеров транзакций от 1 до 14.

Полезный совет! В Excel большинство задач имеют несколько решений. Для автоматического нормирования столбцов в Excel можно воспользоваться правой кнопкой мышки. Для этого достаточно только лишь навести курсор на маркер курсора клавиатуры (в ячейке A2) и удерживая только правую кнопку мышки провести маркер вдоль столбца. После того как отпустить правую клавишу мышки, автоматически появиться контекстное меню из, которого нужно выбрать опцию «Заполнить». И столбец автоматически заполниться последовательностью номеров, аналогично первому способу автозаполнения.

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

  1. Ячейки D1, E1, F1 заполните названиями заголовков: «Год», «Месяц», «День».
  2. Соответственно каждому столбцу введите под заголовками соответствующие функции и скопируйте их вдоль каждого столбца:
  • D1: =ГОД(B2);
  • E1: =МЕСЯЦ(B2);
  • F1: =ДЕНЬ(B2).

В итоге мы должны получить следующий результат:

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

Допустим мы хотим выполнить сортировку дат транзакций по месяцам. В данном случае порядок дней и годов – не имеют значения. Для этого просто перейдите на любую ячейку столбца «Месяц» (E) и выберите инструмент: «ДАННЫЕ»-«Сортировка и фильтр»-«Сортировка по возрастанию».

Теперь, чтобы сбросить сортировку и привести данные таблицы в изначальный вид перейдите на любую ячейку столбца «№п/п» (A) и вы снова выберите тот же инструмент «Сортировка по возрастанию».

Как сделать сортировку дат по нескольким условиям в Excel

А теперь можно приступать к сложной сортировки дат по нескольким условиям. Задание следующее – транзакции должны быть отсортированы в следующем порядком:

  1. Года по возрастанию.
  2. Месяцы в период определенных лет – по убыванию.
  3. Дни в периоды определенных месяцев – по убыванию.

Способ реализации поставленной задачи:

  1. Перейдите на любую ячейку исходной таблицы и выберите инструмент: «ДАННЫЕ»-«Сортировка и фильтр»-«Сортировка».
  2. В появившемся диалоговом окне настраиваемой сортировки убедитесь в том, что галочкой отмечена опция «Мои данные содержат заголовки». После чего во всех выпадающих списках выберите следующие значения: в секции «Столбец» – «Год», в секции «Сортировка» – «Значения», а в секции «Порядок» – «По возрастанию».
  3. На жмите на кнопку добавить уровень. И на втором условии заполните его критериями соответственно: 1 – «Месяц», 2 – «Значение», 3 – «По убыванию».
  4. Нажмите на кнопку «Копировать уровень» для создания третьего условия сортирования транзакций по датам. В третьем уровне изменяем только первый критерий на значение «День». И нажмите на кнопку ОК в данном диалоговом окне.

В результате мы выполнили сложную сортировку дат по нескольким условиям:

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

Сортировка дней рождений

Во многих компаниях принято отмечать дни рождения сотрудников или поздравлять с ДР клиентов, предлагая скидки именинникам. И тут же возникает проблема: если в компании ощутимо большое количество сотрудников/клиентов, то сортировка их списка по дате рождения дает не совсем желательный результат:

Поскольку Microsoft Excel воспринимает любую дату как числовой код (количество дней с начала века до текущей даты), то сортировка идет, на самом деле, по этому коду. Таким образом мы получаем на выходе список по порядку «старые-молодые», но из него совсем не видно у кого в каком месяце день рождения.

Способ 1. Функция ТЕКСТ и дополнительный столбец

Для решения задачи нам потребуется еще один вспомогательный столбец с функцией ТЕКСТ (TEXT) , которая умеет представлять числа и даты в заданном формате:

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

Теперь простая сортировка по вспомогательному столбцу (вкладка Данные — Сортировка) как раз и даст нужный результат:

Для полноты ощущений можно добавить к отсортированному списку еще автоматическое отчеркивание месяцев друг от друга горизонтальной линией. Для этого выделите весь список (кроме шапки) и выберите на вкладке Главная команду Условное форматирование — Создать правило (Home — Conditional formatting — Create Rule) . В открывшемся окне выберите нижний тип правила Использовать формулу для определения форматируемых ячеек и введите следующую формулу:

Эта формула проверяет номер месяца для каждой строки, и если он отличается от номера месяца в следующей строке, то срабатывает условное форматирование. Нажмите кнопку Формат и включите нижнюю границу ячейки на вкладке Границы (Borders) . Также не забудьте убрать лишние знаки доллара в формуле, т.к. нам нужно закрепить в ней только столбцы.

После нажатия на ОК к нашей таблице добавятся симпатичные разделительные линии по месяцам:

Способ 2. Сводная таблица с группировкой

Этот способ вместо дополнительных столбцов и функций задействует супермощный инструмент Excel — сводные таблицы. Выделите ваш список и на вкладке Вставка (Insert) нажмите кнопку Сводная таблица (Pivot Table) , а затем ОК в появившемся окне. Перетащите поле с датой в область строк — Excel выведет на листе список всех дат в первом столбце:

Щелкните правой кнопкой мыши по любой дате и выберите команду Группировать (Group) . В следующем окне убедитесь, что выбран шаг группировки Месяцы и нажмите ОК. Получим список всех месяцев, которые есть в исходной таблице:

Теперь, чтобы увидеть у кого именно из сотрудников день рождения приходятся на конкретный месяц, перетащите поле с именем сотрудника и бросьте его под поле с датой в область строк:

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

Ну, вот — можно идти собирать деньги с коллег на очередной тортик или закупать подарки для любимых клиентов 🙂

Сортировка по дате в excel — от меньшего к большему

Microsoft Office Excel часто используется в небольших фирмах для формирования бухгалтерской отчетности. Такой документ обязательно содержит даты переводов со счетов и суммы. Иногда необходимо отсортировать данные, чтобы понять, когда самый большой объем выплат для предприятия с целью планирования расходов на будущие периоды. Сегодня разберемся, как работает в excel сортировка по дате.

Обычная сортировка

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

Для начала дополним таблицу несколькими столбцами.

  1. Добавим нумерацию строк, чтобы можно было в любой момент вернуться к исходному массиву. Быстрее всего это сделать при помощи маркера автозаполнения. Ставите единицу в первой строке и тянете специальный квадратик в углу ячейки вниз.

  1. Для качественной сортировки дополним таблицу еще тремя столбцами: день, месяц и год. Сделать это можно при помощи одноименных функций редактора и автозаполнения.

  1. Теперь выбираете сортировку от меньшего к большему для любого столбца с элементами даты. Найти инструмент можно на главной вкладке верхней панели.

  1. В итоге получилось следующее:

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

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

Сложная сортировка

Задать несколько условий для сортировки можно через отдельную опцию из выпадающего списка.

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

Отсортируем данные исходной таблицы по дате и месяцу. Окно настройки будет выглядеть следующим образом:

В результате сложной сортировки получился следующий массив:

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

Жми «Нравится» и получай только лучшие посты в Facebook ↓

Сортировка дат по месяцам

Подскажите, пожалуйста, как в MS Excel отсортировать даты (в формате 01.03.2019) по месяцам?
Поиски в Интернете не привели ни к чему, кроме сортировки по дню или текстовому отображению даты и сортировки, соответственно по тексту.
Кто сталкивался с подобной задачкою, объясните, что можно предпринять (без использования программирования, а только стандартными функциями Excel)?

К вопросу прикладываю пример таблицы, в которой даты нужно отсортировать по месяцам

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

Поиск дат в периоде дат (целиком или частично)
Добрый день! У Меня есть проблема, не могу подобрать формулу по поиску определенного периода даты.

Flot.js и график в разрезе дат (по дням, по неделям, по месяцам)
Доброго времени суток! Не получается построить ступенчатую диаграмму в разрезе дат. Желательно.

Получить номер записи в диапазоне дат — автоматическая нумерация документов по месяцам
Добрый день! Есть задача сделать автоматическую нумерацию документов которая будет начинаться.

Сортировка по месяцам
Такое дело, что есть 12 таблиц каждого месяца года, есть листбокс в котором список этих таблиц.

На чтение 4 мин. Просмотров 93 Опубликовано 20.05.2021

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

Добавьте новый рабочий лист с текущей датой, используя код VBA

Добавить новые листы с последовательной датой с помощью Kutools for Excel

Вкладка Office Включить редактирование и просмотр с вкладками в Office, и ваша работа станет намного проще …

Подробнее … Скачать бесплатно …

Kutools for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%.

  • Повторное использование всего: добавьте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро повторно используйте их в будущем.
  • Более 20 текстовых функций: извлечение числа из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
  • Инструменты слияния: несколько книг и листов в одну; Объединить несколько ячеек/строк/столбцов без потери данных; Объедините повторяющиеся строки и суммируйте.
  • Инструменты разделения: разделение данных на несколько листов в зависимости от значения; Из одной книги в несколько файлов Excel, PDF или CSV; Один столбец в несколько столбцов.
  • Вставить пропуск скрытых/отфильтрованных строк; Подсчет и сумма по цвету фона; Массовая отправка персонализированных писем нескольким получателям.
  • Суперфильтр: создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделе, дню, частоте и т. Д. Фильтр жирным шрифтом, формулами, комментарием …
  • Более 300 мощных функций; Работает с Office 2007-2019 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.

Подробнее … Бесплатная загрузка …


Добавить новый рабочий лист с текущей датой с помощью кода VBA

Потрясающе! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
Сэкономьте 50% своего времени и сократите тысячи щелчков мышью каждый день!

Следующий код VBA поможет вам вставить новый рабочий лист с текущей датой, когда вы запускаете код каждый день.

1 . Удерживая нажатыми клавиши ALT + F11 , откроется окно Microsoft Visual Basic для приложений .

2 . Нажмите Вставить > Module и вставьте следующий макрос в окно модуля .

Код VBA: добавить новый лист с текущей датой

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

Примечание : при сохранении и закрытии этой книги сохраните ее в формате Excel Macro-Enabled Workbook , нажав Файл > Сохранить как . И когда вы запустите книгу на следующий день, не забудьте нажать Включить контент , чтобы вы могли успешно запустить код и добавить новый рабочий лист даты.


Добавить новые рабочие листы с последовательной датой с помощью Kutools for Excel

Приведенный выше код может помочь вам вставить только один лист с датой текущего дня за раз. Если вы хотите вставить несколько листов с последовательной датой, эта утилита Create Sequence Worksheets из Kutools for Excel окажет вам услугу.

Kutools for Excel включает более 300 удобных инструментов Excel. Бесплатная пробная версия без ограничений в течение 30 дней. Получить сейчас .

Если вы установили Kutools for Excel, сделайте следующее:

1 . В пустой ячейке введите сегодняшнюю дату, а затем перетащите маркер заполнения, чтобы заполнить ячейки нужной последовательностью дат.

2 . Затем нажмите Enterprise > Инструменты рабочего листа > Создать рабочие листы последовательности , см. Снимок экрана:

3 . В диалоговом окне Создать рабочие листы последовательности укажите рабочий лист, на основе которого вы хотите создать новые листы, из раскрывающегося списка Базовый рабочий лист . Затем выберите параметр Данные в диапазоне в разделе Имена листов на основе , чтобы выбрать диапазон данных, который вы хотите использовать в качестве имен листов. См. Снимок экрана:

4 . Затем нажмите OK , и будет создана новая книга с именами листов в порядке дат. См. Снимок экрана:

Чтобы узнать больше об этой функции создания рабочих листов последовательности.


Как создать рабочие листы последовательности из диапазона ячеек в Excel?


Создание списка последовательных дат

Вы можете быстро создать список дат в последовательном порядке с помощью маркера заполнения Маркер заполнения или команды Заполнить.

Браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

Использование маркера заполнения

  1. Выделите ячейку, содержащую первую дату. Перетащите маркер заполнения по смежным ячейкам, которые нужно заполнить последовательными датами.

  2. Щелкните в нижнем правом углу ячейки маркер заполнения  Маркер заполнения и, удерживая, перетащите его, чтобы заполнить остальные ячейки в ряду. Маркер заполнения можно перетаскивать вверх, вниз и по горизонтали в пределах листа.

  3. Создание списка последовательных дат с помощью маркера заполнения

Использование команды «Заполнить»

  1. Выделите ячейку с первой датой. Затем выделите диапазон ячеек, которые нужно заполнить.

  2. Выберите Заполнить > Прогрессия > Единицы. Выберите нужную единицу.

Совет: Даты можно сортировать так же, как любые другие данные. По умолчанию даты сортируются от самой ранней до самой поздней.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

См. также

Автоматическое заполнение ячеек листа данными

Использование функций автозаполнения и мгновенного заполнения

Нужна дополнительная помощь?

Loleee

0 / 0 / 0

Регистрация: 16.01.2017

Сообщений: 2

1

Создание листов с названиями месяцев

16.01.2017, 08:00. Показов 4255. Ответов 4

Метки нет (Все метки)


Студворк — интернет-сервис помощи студентам

Всем привет. Есть задача. Автоматическое создание листов с названиями месяцев так, чтобы новый лист вытаскивал все данные из предыдущего (т.е. копировался полностью). Как осуществить? По поиску у вас нашел такой вот код, который автоматически создает листы, проверяя есть ли лист с определенным названием и, если есть, то создает лист со следующей цифрой, если нету, соответственно — просто создает. Как сделать также, но с месяцами и с вытаскиванием данных с предыдущего листа? Возможно ли месяцам присвоить цифровые значения от 1 до 12? Тогда у меня как-то в голове вырисовывается логика. Чтобы, если есть лист 1 (январь), то при создании лист 2 (февраль) копировался бы с данными из предыдущего листа 1 (январь). И так вплоть до декабря (12), т.е. 12 листов в книге.

Visual Basic
1
2
3
4
5
6
7
8
9
Sub ElenaKha()
Dim n&, m&, s As Object
On Error Resume Next
For Each s In Sheets
  n = s.Name
  If n > m Then m = n
Next
Worksheets.Add(after:=Sheets(Sheets.Count)).Name = m + 1
End Sub



0



Burk

1813 / 1135 / 346

Регистрация: 11.07.2014

Сообщений: 4,002

16.01.2017, 12:16

2

Ну, если по-простому, без определения номера последней заполненной строки и с условием, что новая страница появляется только, когда наступит новый месяц

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub Макрос1()
Dim Mon As Integer, I As Integer
'
' Макрос1 Макрос
'
I = Sheets.Count
Mon = Month(Date) 'месяц текущей даты
If Mon > I Then
    Worksheets.Add(after:=Sheets(I)).Name = Mon
    Sheets(I).Select
    Cells.Select
    Selection.Copy
    Range("A1").Select
    Sheets(Mon).Select
    ActiveSheet.Paste
    Range("A1").Select
End If

End Sub



0



3827 / 2254 / 751

Регистрация: 02.11.2012

Сообщений: 5,930

16.01.2017, 13:36

3

Burk, любишь ты макрорекордер. а вот от селектов избавляться нет.



0



toiai

3217 / 966 / 223

Регистрация: 29.05.2010

Сообщений: 2,085

16.01.2017, 13:54

4

Немного подкорректировал код Burk:

Visual Basic
1
2
3
4
5
6
7
8
9
Sub Макрос1()
Dim Mon As Integer, I As Integer
I = Sheets.Count
Mon = Month(Date) 'месяц текущей даты
If Mon > I Then
    Sheets(I).Copy after:=Sheets(I)
    ActiveSheet.name=Mon
End If
End Sub



0



1813 / 1135 / 346

Регистрация: 11.07.2014

Сообщений: 4,002

17.01.2017, 06:17

5

Vlad999, в своих программах я редко пользуюсь Select. А здесь я хотел показать автору темы, пока ещё не очень продвинутому, как можно с использованием записи макросов сделать нужный код. Подучится и не будет часто селектировать



0



В автоматическом режиме Microsoft Excel нумерацию страниц не проставляет. Если работа с таблицами ведется исключительно в программе, необходимости в этом нет. Но зачастую, если какой-либо документ нужно распечатать, требуется пронумеровать его страницы для более удобной навигации по ним.

В программе Эксель есть такая функция как “Колонтитулы”, которая и поможет в выполнении поставленной задачи, причем существует несколько вариантов, каким образом можно проставить номера страниц. Ниже мы подробно рассмотрим каждый из них.

Содержание

  • Простая нумерация страниц
  • Нумерация с учетом общего количества страниц в файле
  • Нумерация со второго листа
  • Нумерация с определенной страницы
  • Заключение

Простая нумерация страниц

Самый простой способ выполняет нумерацию всех страниц в открытом файле. Выполняется процедура следующим образом:

  1. Чтобы активировать колонтитулы, переходим во вкладку «Вставка».
  2. Кликаем по разделу «Текст» и в открывшемся списке выбираем «Колонтитулы».Простая нумерация страницПримечание: Располагаться колонтитулы, а значит и номера страниц могут как наверху листа, так и внизу. По умолчанию их значения не заданы и, соответственно, они не отображаются на странице. Отличительной особенностью колонтитулов является то, что внесенная в них информация отображается на всех листах текущего файла.
  3. Программа должна автоматически перейти во вкладку “Колонтитулы”, где отобразит разметку текущего листа и верхний колонтитул, который поделен на 3 части. При желании и необходимости можно переключиться и на нижний, нажав на соответствующую кнопку.Простая нумерация страниц
  4. Теперь нужно выбрать подходящий колонтитул и одну его из частей, где будут располагаться номера страницы. На практике чаще всего выбирают левую сторону верхнего колонтитула. Кликаем по выбранной части, затем щелкаем по кнопке “Номер страницы”.Простая нумерация страниц
  5. На листе в области колонтитула вставится тег следующего формата: &[Страница].Простая нумерация страниц
  6. Теперь щелкаем по любому месту документа за пределами области с колонтитулом, чтобы проставить номер страницы.Простая нумерация страниц
  7. Чтобы быстро отыскать номер страницы, придать ему симпатичный вид, а также, выделить среди другой информации, можно воспользоваться функцией форматирования. Выделяем информацию в колонтитуле, наведя курсор на нужную область и щелкнув левой кнопкой мыши. Далее переходим по вкладке “Главная” (если это не произошло автоматически) и можно приступить к настройке внешнего вида колонтитулов:
    • поменять шрифт
    • применить полужирное/курсивное начертание или подчеркнуть текст
    • скорректировать размер текста
    • выбрать его цветПростая нумерация страниц
  8. После того, как все корректировки внесены, снова щелкаем по любой области вне колонтитула и готово.Простая нумерация страниц

Примечание: Обратите внимание, что все работы с колонтитулами (за исключением настройки их внешнего вида) ведутся из вкладки “Колонтитулы” в верхней строке меню программы.

Нумерация с учетом общего количества страниц в файле

Проставить номера на листах в Эксель можно и с учетом общего количества страниц в документе. Вот, что нужно для этого сделать:

  1. Для начала активируем колонтитулы, как это было описано в примере выше, и вставляем простую нумерацию.
  2. В появившемся теге дописываем перед ним слово “Страницы”, а после – “из”. Должно получится так: Страница &[Страница] из.Нумерация с учетом общего количества страниц в файле
  3. Далее, нажав пробел после слова “из” кликаем по кнопке «Количество страниц». Таким образом, наш финальный тег должен выглядеть следующим образом: Страница &[Страница] из &[Страница].Нумерация с учетом общего количества страниц в файле
  4. Кликаем на любую место в документе за пределами колонтитула, чтобы теги изменились на числовые значения. Причем будет отображаться не только номер текущей страницы, но и общее количество листов, что и требовалось сделать.Нумерация с учетом общего количества страниц в файле
  5. При желании, как и в первом способе, можно настроить внешний вид текста.

Нумерация со второго листа

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

  1. Активируем колонтитулы, как и в предыдущих методах.
  2. Далее нужно нажать на кнопку “Параметры”, где следует поставить галочку напротив опции “Особый колонтитул для первой страницы”.Нумерация со второго листа
  3. Теперь нужно пронумеровать страницы любым из методов, о которых шла речь выше. Однако, в данном случае выбрать нужно любую страницу, за исключением титульной.
  4. Если все действия выполнены верно, будут пронумерованы все листы, за исключением первого. При этом, обратите внимание, что в общем счете первая страница учитывается, просто номер на ней не отображается, что соответствует поставленной задаче. Это значит, что на второй странице будет проставлен именно номер 2 в соответствии с ее реальным порядковым номером.

Нумерация с определенной страницы

В некоторых документах требуется проставление нумерации с определенного номера, например, со второго или, скажем, с пятого. Подобные ситуации на практике встречаются редко, но все же существуют. Для решения подобной задачи выполняем следующие действия:

  1. Сначала нумеруем страницы первым или вторым способами, которые мы уже рассмотрели ранее.
  2. Далее переходи во вкладку “Разметка страницы”.
  3. Снизу в правой части области с инструментами находим кнопку, которая ведет в параметры страницы, и щелкаем по ней. Она представлена виде маленького значка со стрелкой, указывающей вниз по диагонали.Нумерация с определенной страницы
  4. В открывшемся окне мы по умолчанию должны оказаться во вкладке “Страница”. Здесь проставляем номер первой страницы и жмем OK.Нумерация с определенной страницы
  5. В итоге, нумерация начнется с указанной цифры с соответствующим смещением номеров последующих страниц. Нумерация с определенной страницы

Примечание: Чтобы убрать нумерацию страниц, выделяем соответствующую часть колонтитула, и нажимаем кнопку Del (или Backspace), чтобы удалить содержащиеся в ней порядковые номера.

Заключение

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

Понравилась статья? Поделить с друзьями:
  • Как создать листы в excel если в книге один лист
  • Как создать маркер в word
  • Как создать листовку в word
  • Как создать макросы для документа word
  • Как создать листовки в word