Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Еще…Меньше
Функция «Показать изменения» в Excel позволяет точно узнать, какие изменения были внесены в книги, чтобы вы могли с уверенностью разрешить другим пользователям работать над вашей работой. Вы можете просмотреть сведения о том, кто что изменил, где и когда, а также предыдущее значение ячейки для быстрого изменения. Список изменений можно сузить, выбрав лист, диапазон или отдельную ячейку, чтобы просмотреть все внесенные изменения, включая массовые изменения. Последние изменения отображаются в течение 60 дней. Если у вас возникли проблемы, получите справку по от показанию изменений.
Просмотр изменений для всей книги
-
На вкладке «Рецензию» выберите «Показать изменения».
-
Изменения отображаются на панели с последними изменениями сверху в порядке их внесения.
-
Вы можете увидеть, кто внося изменения, где именно в книге, когда и что они изменили.
-
Вы также можете просмотреть изменения, внесенные одновременно, щелкнув » Просмотреть изменения в массовой карточке».
Примечание:
Отображение изменений отслеживает изменения, внесенные с windows Desktop, Excel на телефонах Mac, iPad, iOS и Android. Последние изменения отображаются в течение 60 дней.
Фильтрация и просмотр изменений для подмножества или диапазона
1. Выберите любой лист, диапазон или одну ячейку.
2. Щелкните правой кнопкой мыши, чтобы открыть контекстное меню и выбрать пункт «Показать изменения».
Примечание: Если вы или другие пользователи редактируем книгу, пока открыта эта область, нажмите кнопку «Просмотреть новые изменения», чтобы обновить изменения. Это уведомление позволяет оставаться под управлением, если вы хотите обновить список и не отвлекаться при просмотре изменений.
Фильтрация изменений на панели «Изменения»
-
В верхней части панели щелкните значок
фильтра.
-
Выберите «Диапазон» или «Лист», чтобы отфильтровать отображаемые изменения, а затем выполните следующие действия.
-
Чтобы отобразить изменения диапазона или ячейки, выберите «Диапазон» и введите диапазон или ячейку в текстовом поле.
-
Щелкните значок стрелки рядом с текстовым полем для подтверждения.
-
Нужна дополнительная помощь?
На чтение 4 мин Просмотров 3.8к. Опубликовано 16.03.2022
Функция «Исправления» — одна из самых лучших функций в Excel. Она позволяет вам не запутаться при работе с большими объемами данных и файлами, которые редактируют сразу несколько человек.
С помощью этой функции, вы можете отдельно отслеживать каждое изменение или сразу все. В общем, настроек в ней много.
Итак, начнем!
Содержание
- Как начать следить за изменениями в Excel
- Как работает эта опция в Excel
- Как просмотреть все изменения списком
- Принимаем или отклоняем изменения
- Отключаем опцию
- Различия между комментариями и отслеживанием изменений
Как начать следить за изменениями в Excel
Изначально эта опция не активирована в Excel. Вы можете сделать это самостоятельно.
Пошаговая инструкция:
- Щелкните на «Рецензирование»;
- Щелкните на «Выделить изменения…» в функции «Исправления»;
- В открывшемся окошке поставьте галочку на опции «Отслеживать исправления». Также вы можете задать дополнительные настройки (видно на картинке), но это уже по вашему усмотрению;
- Подтвердите.
Итак, мы включили функцию.
Как работает эта опция в Excel
Итак, теперь при каждом изменении ячейки она будет выделена синей рамкой. Если вы нажмете на неё, вы увидите кто, когда и что конкретно изменил в ячейке. Это очень удобно когда файл редактируют несколько людей. Например, если вы нашли ошибку, то можете увидеть кто её допустил.
На картинке ниже, я поменял значение ячейки B1, она выделилась синим цветом и в ней появился синий треугольник (слева вверху).
Если мы поместим курсор мышки на ячейку, то увидим небольшое окошко с примечанием, в нем будет указана вся информация про изменение.
Важная информация: когда вы включаете эту функцию, ваш файл Excel становится «Общим». Вы не сможете использовать его защиту (с паролем, как мы рассматривали в статьях ранее) и так далее. Имейте это в виду.
Как просмотреть все изменения списком
Это может понадобиться, когда вы работаете с большими объемами данных. Вы можете просмотреть сразу все изменения, которые вносились в файл списком.
Пошаговая инструкция:
- Щелкните на «Рецензирование»;
- Щелкните на «Выделить изменения…» в функции «Исправления»;
- В открывшемся окошке, кроме уже поставленной галочки на «Отслеживать исправления», поставьте галочку на опции «Вносить изменения на отдельный лист»;
- Подтвердите.
В результате, Excel откроет новую страничку и поместит все изменения туда списком.
Принимаем или отклоняем изменения
В случае если у вас активирована наша функция, изменения, которые вносятся в ячейки не являются окончательными. Чтобы они стали окончательными, вы должны принять их в специальном разделе «Принять/отклонить исправления». Это относится и к изменениям, которые вносили другие люди в ваш файл, если такие, разумеется, есть.
Пошаговая инструкция:
- Щелкните на «Принять/отклонить исправления» в функции «Исправления»;
- В открывшемся окне «Просмотр исправлений» можно выбрать:
- Когда были внесены изменения
- Какой пользователь вносил изменения
- И в каком диапазоне вносились изменения
- Когда укажете нужные вам параметры, подтвердите;
- В следующем окне Excel покажет вам все изменения, которые вносились в ячейках, которые удовлетворяют всем указанным параметрам в прошлом шаге.
Вот и все, в этом окошке вы выбираете, принять или отклонить изменения (например, если вы увидели ошибку, вы можете отклонить).
Отключаем опцию
Когда вы закончите работу над файлом, вы можете отключить эту опцию, чтобы она не мешала.
Пошаговая инструкция:
- Щелкните на «Выделить исправления…» в функции «Исправления»;
- И просто снимите галочку, которую мы поставили ранее («Отслеживать исправления»);
- Подтвердите;
- Откроется окошко, указанное на картинке ниже. Просто щелкните «Да».
Различия между комментариями и отслеживанием изменений
Некоторым нравится добавлять комментарии к ячейкам.
В чем разница между комментарием и отслеживанием изменения:
- Функция «Отслеживание изменений» пишет примечание для каждой ячейки только тогда, когда она была изменена. В случае комментария, изменения необязательны. Комментарий можно оставить и без изменения ячейки.
- Преимущество функции, рассмотренной в статье, заключается в том, что она автоматизирована. То есть она автоматически помечает все ячейки, где было изменение.
- Также нельзя вывести все комментарии для файла, в отдельный лист и после, например, распечатать их.
- Минус нашей функции в том, что, например, мы не можем защитить файл Excel, когда используем функцию. А если мы используем комментарии, то можем.
Хитрости »
1 Май 2011 53742 просмотров
Запись изменений на листе в примечания
Иногда необходимо вести лог изменений в ячейках. Просто чтобы видеть как изменялась информация в ячейке. Например, это может пригодиться при ведении истории заказа, когда статус заказа записывается в одной ячейке. Сначала «В обработке», далее «Вывоз со склада», потом «Доставка» и т.п.
Приведенный ниже код создает примечание в ячейке, если её значение было изменено. В примечание заноситься информация о том, что было занесено в ячейку и когда это было занесено(т.е. дата и время изменения). Если примечание в ячейке уже есть, то в имеющееся примечание допишется информация об изменениях.
Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) 'отслеживаем изменения только в диапазоне "E14:E50" - т.е. только статус '(изменить адрес, если надо отслеживать другие ячейки) If Intersect(Target, Me.Range("E14:E50")) Is Nothing Then Exit Sub Dim oComment As Comment On Error Resume Next Set oComment = Target.Comment If oComment Is Nothing Then Target.AddComment Target.Text & " " & Format(Now, "dd.mm.yy HH:MM") Else oComment.Text oComment.Text & Chr(10) & Target.Text & " " & Format(Now, "dd.mm.yy HH:MM") End If End Sub
Код необходимо поместить в модуль листа(щелкнуть правой кнопкой мыши по ярлычку листа —Исходный текст), изменения на котором необходимо отследить. Подробнее о модулях.
Следует учитывать, что код сработает только если данные были изменены вручную и для одной ячейки, а не для нескольких. Если скопировать в вставить несколько ячеек, примечание будет создано только для одной, а текст примечания может отличаться от ожидаемого. Если изменения производятся посредством вычисления формул — код не сработает вообще.
Изменения отслеживаются исключительно для ячеек A17:I30. Чтобы изменить ячейки, в которых необходимо отслеживать изменения, необходимо в строке:
If Intersect(Target, Me.Range(«E14:E50»)) Is Nothing Then Exit Sub
заменить адрес «E14:E50» на адрес нужных ячеек.
Если необходимо, чтобы в примечание заносилось предыдущее значение ячейки и вдобавок необходимо ограничить диапазон отслеживания изменений конкретными ячейками, то можно применить следующий код:
Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) Dim v, vv, sf, sa As String 'отслеживаем изменения только в диапазоне "A17:I30"(изменить адрес, если надо отслеживать другие ячейки) If Intersect(Target, Me.Range("A17:I30")) Is Nothing Then Exit Sub 'если изменено более одной ячейки - завершаем выполнение во избежание ошибок If Target.Count > 1 Then Exit Sub 'получаем новое значение v = Target.Value sf = Target.Formula 'запоминаем адрес текущей выделенной ячейки 'т.к. после Undo она изменится и надо будет вернуть sa = Selection.Address 'получаем старое значение With Application .EnableEvents = 0 .Undo vv = Target.Value 'старое значение 'возвращаем последнее записанное значение Target.Formula = sf Me.Range(sa).Select .EnableEvents = 1 End With 'сравниваем новое значение с прежним If CStr(vv) <> CStr(v) Then 'если значения различаются - создаем или дописываем примечание On Error Resume Next Dim oComment As Comment Set oComment = Target.Comment If oComment Is Nothing Then 'примечания еще нет - создаем и записываем информацию об изменениях Set oComment = Target.AddComment(CreateObject("wscript.network").UserName & ":" & Chr(10) & "было: " & vv & "; стало: " & v & "; Дата: " & Format(Now, "dd.mm.yy HH:MM")) Else 'уже есть примечание - дописываем информацию об изменениях oComment.Text oComment.Text & Chr(10) & CreateObject("wscript.network").UserName & ":" & Chr(10) & "было: " & vv & "; стало: " & v & "; Дата: " & Format(Now, "dd.mm.yy HH:MM") End If oComment.Shape.TextFrame.AutoSize = True End If End Sub
Код так же как и предыдущий размещается в модуле листа(правая кнопка мыши по ярлычку листа —Исходный текст), изменения в котором необходимо отслеживать.
Так же в данном коде помимо старого значения в примечание так же записываемся имя пользователя, изменившего значение, новое значение, дата/время изменения. Изменения отслеживаются исключительно для ячеек A17:I30. Чтобы изменить ячейки, в которых необходимо отслеживать изменения, необходимо в строке:
If Intersect(Target, Me.Range(«A17:I30»)) Is Nothing Then Exit Sub
заменить адрес «A17:I30» на адрес нужных ячеек.
Хочу обратить внимание, что при изменении нескольких ячеек сразу код не будет выполняться, т.к. ячеек может быть много и их значения могут просто не уместиться в примечания. Если нужны отслеживания множества ячеек сразу, то имеет смысл ознакомиться со статьей: Ведение журнала сделанных в книге изменений
Скачать пример

Так же см.:
Ведение журнала сделанных в книге изменений
Выделение сделанных изменений
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика
На чтение 3 мин Опубликовано 26.04.2020
Excel содержит очень полезный инструмент, который позволяет отслеживать исправления, вносимые в рабочую книгу. Например, Вы можете отдать свою работу другому пользователю на рецензирование, а затем забрав ее обратно, посмотреть какие изменения были внесены. В этом уроке мы научимся отслеживать исправления в рабочей книге Excel, а также создавать Журнал изменений.
Предположим, Вас попросили откорректировать или выполнить совместно с коллегами работу над одной рабочей книгой Excel. Если есть распечатанный экземпляр, можно взять красную ручку и исправить недочеты, отметить орфографические ошибки или добавить комментарии на полях. Microsoft Excel позволяет осуществлять все это в электронном виде при помощи режима Отслеживания исправлений.
Содержание
- Общие сведения об отслеживании исправлений в Excel
- Как включить режим отслеживания исправлений
- Вынесение всех исправлений на отдельный лист
Общие сведения об отслеживании исправлений в Excel
Когда режим отслеживания исправлений включен, каждая ячейка, в которой произошли изменения, будет выделена особыми границами и указателем. При наведении курсора на отмеченную ячейку Вы увидите детали исправления. Это позволяет Вам и другим рецензентам следить за тем, чтобы все было исправлено, прежде чем утверждать окончательную версию книги.
Существует ряд исправлений, которые Excel не может отслеживать. Перед использованием данной опции советуем Вам ознакомиться на сайте компании Microsoft со списком изменений, которые не отслеживаются и не выделяются.
Вы не сможете использовать режим отслеживания исправлений, если рабочая книга включает в себя таблицы. Чтобы удалить таблицу: выделите её, перейдите на вкладку Конструктор, а затем выберите команду Преобразовать в диапазон.
Как включить режим отслеживания исправлений
- На вкладке Рецензирование нажмите команду Исправления, а затем в выпадающем меню выберите пункт Выделить исправления.
- В появившемся диалоговом окне Исправления установите флажок Отслеживать исправления. Убедитесь, что выбран пункт Выделять исправления на экране, а затем нажмите OK.
- Если появится запрос для подтверждения сохранения книги, нажмите ОК.
- Режим отслеживания исправлений будет включен. Теперь любая отредактированная ячейка будет помечаться цветной границей и треугольником в верхнем левом углу. Если рецензентов несколько, каждому из них будет присвоен свой цвет.
- Выберите любую отредактированную ячейку, чтобы увидеть перечень внесенных изменений. В следующем примере мы изменили содержимое ячейки E6 с «?» на «Андрей».
При включении режима отслеживания исправлений книга автоматически становится общей. Сутью общего доступа к рабочим книгам является возможность их хранения там, где сразу несколько пользователей смогут одновременно открывать и редактировать ее. Кроме этого, Вы можете отслеживать исправления как в локальной, так и в личной копии книги.
Вынесение всех исправлений на отдельный лист
В Excel есть возможность просматривать изменения на отдельном листе, который называется Журнал изменений. В данном журнале приводится список всех изменений в книге, включая Старое значение (прежнее содержимое ячейки) и Значение (текущее содержимое ячейки).
- Сохраните рабочую книгу.
- На вкладке Рецензирование выберите команду Исправления, а затем в выпадающем меню нажмите Выделять исправления.
- В появившемся диалоговом окне Исправления установите флажок Вносить изменения на отдельный лист, затем нажмите OK.
- Исправления будут приводиться на отдельном листе с названием Журнал.
Чтобы удалить Журнал изменений из рабочей книги Excel, можно либо сохранить книгу, либо снять флажок Вносить изменения на отдельный лист в диалоговом окне Исправления.
Оцените качество статьи. Нам важно ваше мнение:
В Excel есть возможность просматривать изменения на отдельном листе, который называется Журнал изменений. В данном журнале приводится список всех изменений в книге, включая Старое значение (прежнее содержимое ячейки) и Значение (текущее содержимое ячейки).
Как посмотреть кто внес изменения в Excel?
Просмотр журнала изменений
- На вкладке Рецензирование нажмите кнопку Отслеживание изменений и выберите команду Выделить исправления. …
- В группе Отслеживать исправления, внесенные установите флажок по времени и в списке время выберите вариант Все.
- Снимите флажки пользователем и в диапазоне.
Как в Excel вернуть предыдущую версию файла после сохранения?
Если файл сохранен
- Откройте файл, с которым вы работали.
- Перейдите в папку «>».
- В области «Управление книгой»или «Управлениепрезентацией» выберите файл с меткой (при закрытии без сохранения).
- На панели в верхней части файла выберите «Восстановить», чтобы переписать сохраненные ранее версии.
Как посмотреть историю сохранения файла Excel?
Просмотр предыдущих версий файла
- Откройте файл, который вы хотите просмотреть.
- Щелкните «Файл» > «Сведения > версии».
- Выберите версию, чтобы открыть ее в отдельном окне.
- Если вы хотите восстановить предыдущую открытую версию, выберите «Восстановить».
Как посмотреть историю ячейки?
В Google Таблицах появилась уникальная функция — возможность посмотреть историю изменений для каждой ячейки в таблице. Для просмотра истории изменений необходимо кликнуть правой кнопкой мыши по ячейке и выбрать в контекстном меню пункт Показать историю изменений.
Как делать исправления в Эксель?
Как включить режим отслеживания исправлений
- На вкладке Рецензирование нажмите команду Исправления, а затем в выпадающем меню выберите пункт Выделить исправления.
- В появившемся диалоговом окне Исправления установите флажок Отслеживать исправления. …
- Если появится запрос для подтверждения сохранения книги, нажмите ОК.
Как включить режим редактирования в Excel?
Включить или отключить режим правки
- Щелкните Файл > Параметры > Дополнительно. -ИЛИ- Только Excel 2007: нажмите кнопку Microsoft Office. …
- В разделе Параметры правки выполните требуемое действие. Чтобы включить режим правки, выберите элемент Разрешить редактирование непосредственно в ячейках.
Можно ли восстановить предыдущую версию файла?
Будни технической поддержки
- Нажмите правой кнопкой мыши на файл или папку, предыдущую версию которого вы хотите восстановить, и в открывшемся меню выберите “Восстановить прежнюю версию”. …
- Выберите из доступных нужную версию и нажмите на “Восстановить”. …
- Нажмите на “Восстановить”.
Можно ли отменить сохранение в Excel?
Если файл сохранен
Откройте файл, с которым вы работали. Перейдите в раздел файл > сведения. В разделе Управление книгой или Управление презентациейвыберите файл с меткой (при закрытии без сохранения). На панели в верхней части файла выберите команду восстановить , чтобы перезаписать сохраненные ранее версии.
Как вернуть файл в прежнее состояние?
Чтобы вернуть файл или папку в прежнее состояние
- Щелкните файл или папку правой кнопкой мыши и выберите команду Восстановить предыдущие версии.
- Появится список доступных предыдущих версий файла или папки. …
- Вкладка «Предыдущие версии», отражение предыдущих версий файлов
Как узнать версию файла Excel?
Какая у меня версия Office?
- Откройте любое приложение Office, например Word или Excel, и выберите Учетная запись. …
- В разделе Сведения о продукте отображается название продукта. …
- Для дополнительных сведений, например, разрядность версии, выберите Об Excel.
Как восстановить предыдущую версию файла Excel 2003?
Откройте меню Сведения на вкладке Файл (этот пункт отрывается первым по умолчанию) и в разделе Версии выберите файл с отметкой (при закрытии без сохранения). На желтой панели в верхней части файла выберите команду Восстановить, чтобы перезаписать сохраненные ранее версии.
Как посмотреть историю действий в гугл таблице?
Откройте на компьютере документ, таблицу или презентацию Google.
- В верхней части экрана нажмите Файл История версий Смотреть историю версий.
- Выберите версию на панели справа. …
- Чтобы присвоить версии название, нажмите на значок …
- Чтобы посмотреть дополнительные сведения об изменениях, выполните следующие действия:
Как посмотреть историю работы в Word?
С помощью встроенной функции Word можно просмотреть всю историю редактирования документа. CHIP расскажет, как это сделать. Откройте в текстовом редакторе Word нужный документ и перейдите на вкладку «Рецензирование». В ленте меню перейдите в группу «Запись исправлений» и нажмите кнопку «Исправления».
Как посмотреть историю работы в Excel?
Как в Excel узнать дату изменения ячейки?
Меню Сервис-Параметры-вычисления-Итерации. Галочку видите.
Как удалить историю изменений в Excel?
Чтобы удалить Журнал изменений из рабочей книги Excel, можно либо сохранить книгу, либо снять флажок Вносить изменения на отдельный лист в диалоговом окне Исправления.
Как принять исправления в Эксель?
Что необходимо для рецензирования исправлений
- Нажмите команду Исправления на вкладке Рецензирование и в выпадающем меню выберите пункт Принять/отклонить исправления.
- Если появится запрос, нажмите ОК, чтобы сохранить книгу.
Как узнать кто создал файл Excel?
Способ 3. Используем Проводник Windows
- Откройте в Проводнике Windows папку, содержащую файлы Excel.
- Выберите нужный файл.
- Кликните по нему правой кнопкой мыши и в контекстном меню нажмите Свойства (Properties).
- На вкладке Подробно (Details) можно найти заголовок, тему, автора документа, комментарии и другие данные.
Как посмотреть историю сохранения файла Excel?
Восстановление предыдущих версий файла Office
- Откройте файл, с которым вы работали.
- Перейдите в папку «>».
- В области «Управление книгой»или «Управлениепрезентацией» выберите файл с меткой (при закрытии без сохранения).
- На панели в верхней части файла выберите «Восстановить», чтобы переписать сохраненные ранее версии.
Можно ли посмотреть историю изменений в Excel?
Просмотр журнала изменений
- На вкладке Рецензирование нажмите кнопку Отслеживание изменений и выберите команду Выделить исправления. …
- В группе Отслеживать исправления, внесенные установите флажок по времени и в списке время выберите вариант Все.
- Снимите флажки пользователем и в диапазоне.
Как удалить историю изменений в гугл таблице?
В Google Таблицах нет специальной функции-кнопки для запрета или удаления истории изменений, но мы пойдем обходным путем при помощи создания копии без истории. Нажмите на вкладку «Файл» > «Создать копию». Отметьте нужные вам функции для переноса.
Как удалить историю изменений в гугл документе?
Как отключить историю просмотров для всех файлов
- Откройте на компьютере Google Документы, Таблицы или Презентации.
- В левом верхнем углу экрана нажмите на значок меню Настройки.
- В разделе «История изменений» отключите параметр Показывать вашу историю просмотров.
Как отменить изменения в сохраненном файле Excel?
Чтобы отменить последнее действие, нажмите клавиши CTRL+Z. Вы также можете нажать кнопку Отменить на панели быстрого доступа. Если нужно отменить несколько действий, можно нажать кнопку «Отменить» (или клавиши CTRL+Z) несколько раз.
Как снять рецензирование в Excel?
Отмена защиты листа Excel
- Выберите Файл > Сведения > Защита > Снять защиту листа или РецензированиеИзменения > Снять защиту листа.
- Если лист защищен паролем, введите его в диалоговом окне Защита листа и нажмите кнопку OK.
Для чего предназначена программа рецензирование?
peer review, исп. revisión por pares). Цель рецензирования до публикации — убедиться в точности и достоверности изложения и в необходимых случаях добиться от автора следования стандартам, принятым в конкретной области или науке в целом.
Как определить автора файла?
Чтобы увидеть свойство Author (Автор) для документа или книги, щелкните Файл > Сведения, а затем найдите author (Автор) в области Related People (Связанные люди) справа.
Как посмотреть дату создания файла Excel?
Как посмотреть дату создания файла
…
Выполните следующие шаги:
- Перетащите файл в окно программы, или нажмите на кнопку «Add Files», для добавления файла с ПК. …
- В полях «Created Date» (дата создания), «Modified Date» (дата изменения), «Accessed Date» (дата доступа) установите подходящие значения для даты и времени.
Как узнать у кого открыт документ?
В иерархии оснастки переходим /Управление компьютером/Служебные программы/Общие папки/Открытые файлы. В правой части оснастки появится список открытых файлов. Здесь можно увидеть имя пользователя открывшего файл, количество блокировок и режим доступа к файлу.
Содержание
- Применение инструментов заполнения
- Способ 1: встроенный объект для ввода данных Excel
- Способ 2: создание пользовательской формы
- Вопросы и ответы
Для облегчения ввода данных в таблицу в Excel можно воспользоваться специальными формами, которые помогут ускорить процесс заполнения табличного диапазона информацией. В Экселе имеется встроенный инструмент позволяющий производить заполнение подобным методом. Также пользователь может создать собственный вариант формы, которая будет максимально адаптирована под его потребности, применив для этого макрос. Давайте рассмотрим различные варианты использования этих полезных инструментов заполнения в Excel.
Применение инструментов заполнения
Форма заполнения представляет собой объект с полями, наименования которых соответствуют названиям колонок столбцов заполняемой таблицы. В эти поля нужно вводить данные и они тут же будут добавляться новой строкой в табличный диапазон. Форма может выступать как в виде отдельного встроенного инструмента Excel, так и располагаться непосредственно на листе в виде его диапазона, если она создана самим пользователем.
Теперь давайте рассмотрим, как пользоваться этими двумя видами инструментов.
Способ 1: встроенный объект для ввода данных Excel
Прежде всего, давайте узнаем, как применять встроенную форму для ввода данных Excel.
- Нужно отметить, что по умолчанию значок, который её запускает, скрыт и его нужно активировать. Для этого переходим во вкладку «Файл», а затем щелкаем по пункту «Параметры».
- В открывшемся окне параметров Эксель перемещаемся в раздел «Панель быстрого доступа». Большую часть окна занимает обширная область настроек. В левой её части находятся инструменты, которые могут быть добавлены на панель быстрого доступа, а в правой – уже присутствующие.
В поле «Выбрать команды из» устанавливаем значение «Команды не на ленте». Далее из списка команд, расположенного в алфавитном порядке, находим и выделяем позицию «Форма…». Затем жмем на кнопку «Добавить».
- После этого нужный нам инструмент отобразится в правой части окна. Жмем на кнопку «OK».
- Теперь данный инструмент располагается в окне Excel на панели быстрого доступа, и мы им можем воспользоваться. Он будет присутствовать при открытии любой книги данным экземпляром Excel.
- Теперь, чтобы инструмент понял, что именно ему нужно заполнять, следует оформить шапку таблицы и записать любое значение в ней. Пусть табличный массив у нас будет состоять из четырех столбцов, которые имеют названия «Наименование товара», «Количество», «Цена» и «Сумма». Вводим данные названия в произвольный горизонтальный диапазон листа.
- Также, чтобы программа поняла, с каким именно диапазонам ей нужно будет работать, следует ввести любое значение в первую строку табличного массива.
- После этого выделяем любую ячейку заготовки таблицы и щелкаем на панели быстрого доступа по значку «Форма…», который мы ранее активировали.
- Итак, открывается окно указанного инструмента. Как видим, данный объект имеет поля, которые соответствуют названиям столбцов нашего табличного массива. При этом первое поле уже заполнено значением, так как мы его ввели вручную на листе.
- Вводим значения, которые считаем нужными и в остальные поля, после чего жмем на кнопку «Добавить».
- После этого, как видим, в первую строку таблицы были автоматически перенесены введенные значения, а в форме произошел переход к следующему блоку полей, который соответствуют второй строке табличного массива.
- Заполняем окно инструмента теми значениями, которые хотим видеть во второй строке табличной области, и снова щелкаем по кнопке «Добавить».
- Как видим, значения второй строчки тоже были добавлены, причем нам даже не пришлось переставлять курсор в самой таблице.
- Таким образом, заполняем табличный массив всеми значениями, которые хотим в неё ввести.
- Кроме того, при желании, можно производить навигацию по ранее введенным значениям с помощью кнопок «Назад» и «Далее» или вертикальной полосы прокрутки.
- При необходимости можно откорректировать любое значение в табличном массиве, изменив его в форме. Чтобы изменения отобразились на листе, после внесения их в соответствующий блок инструмента, жмем на кнопку «Добавить».
- Как видим, изменение сразу произошло и в табличной области.
- Если нам нужно удалить, какую-то строчку, то через кнопки навигации или полосу прокрутки переходим к соответствующему ей блоку полей в форме. После этого щелкаем по кнопке «Удалить» в окошке инструмента.
- Открывается диалоговое окно предупреждения, в котором сообщается, что строка будет удалена. Если вы уверены в своих действиях, то жмите на кнопку «OK».
- Как видим, строчка была извлечена из табличного диапазона. После того, как заполнение и редактирование закончено, можно выходить из окна инструмента, нажав на кнопку «Закрыть».
- После этого для предания табличному массиву более наглядного визуального вида можно произвести форматирование.
Способ 2: создание пользовательской формы
Кроме того, с помощью макроса и ряда других инструментов существует возможность создать собственную пользовательскую форму для заполнения табличной области. Она будет создаваться прямо на листе, и представлять собой её диапазон. С помощью данного инструмента пользователь сам сможет реализовать те возможности, которые считает нужными. По функционалу он практически ни в чем не будет уступать встроенному аналогу Excel, а кое в чем, возможно, превосходить его. Единственный недостаток состоит в том, что для каждого табличного массива придется составлять отдельную форму, а не применять один и тот же шаблон, как это возможно при использовании стандартного варианта.
- Как и в предыдущем способе, прежде всего, нужно составить шапку будущей таблицы на листе. Она будет состоять из пяти ячеек с именами: «№ п/п», «Наименование товара», «Количество», «Цена», «Сумма».
- Далее нужно из нашего табличного массива сделать так называемую «умную» таблицу, с возможностью автоматического добавления строчек при заполнении соседних диапазонов или ячеек данными. Для этого выделяем шапку и, находясь во вкладке «Главная», жмем на кнопку «Форматировать как таблицу» в блоке инструментов «Стили». После этого открывается список доступных вариантов стилей. На функционал выбор одного из них никак не повлияет, поэтому выбираем просто тот вариант, который считаем более подходящим.
- Затем открывается небольшое окошко форматирования таблицы. В нем указан диапазон, который мы ранее выделили, то есть, диапазон шапки. Как правило, в данном поле заполнено все верно. Но нам следует установить галочку около параметра «Таблица с заголовками». После этого жмем на кнопку «OK».
- Итак, наш диапазон отформатирован, как «умная» таблица, свидетельством чему является даже изменение визуального отображения. Как видим, помимо прочего, около каждого названия заголовка столбцов появились значки фильтрации. Их следует отключить. Для этого выделяем любую ячейку «умной» таблицы и переходим во вкладку «Данные». Там на ленте в блоке инструментов «Сортировка и фильтр» щелкаем по значку «Фильтр».
Существует ещё один вариант отключения фильтра. При этом не нужно даже будет переходить на другую вкладку, оставаясь во вкладке «Главная». После выделения ячейки табличной области на ленте в блоке настроек «Редактирование» щелкаем по значку «Сортировка и фильтр». В появившемся списке выбираем позицию «Фильтр».
- Как видим, после этого действия значки фильтрации исчезли из шапки таблицы, как это и требовалось.
- Затем нам следует создать саму форму ввода данных. Она тоже будет представлять собой своего рода табличный массив, состоящий из двух столбцов. Наименования строк данного объекта будут соответствовать именам столбцов основной таблицы. Исключение составляют столбцы «№ п/п» и «Сумма». Они будут отсутствовать. Нумерация первого из них будет происходить при помощи макроса, а расчет значений во втором будет производиться путем применения формулы умножения количества на цену.
Второй столбец объекта ввода данных оставим пока что пустым. Непосредственно в него позже будут вводиться значения для заполнения строк основного табличного диапазона.
- После этого создаем ещё одну небольшую таблицу. Она будет состоять из одного столбца и в ней разместится список товаров, которые мы будем выводить во вторую колонку основной таблицы. Для наглядности ячейку с заголовком данного перечня («Список товаров») можно залить цветом.
- Затем выделяем первую пустую ячейку объекта ввода значений. Переходим во вкладку «Данные». Щелкаем по значку «Проверка данных», который размещен на ленте в блоке инструментов «Работа с данными».
- Запускается окно проверки вводимых данных. Кликаем по полю «Тип данных», в котором по умолчанию установлен параметр «Любое значение».
- Из раскрывшихся вариантов выбираем позицию «Список».
- Как видим, после этого окно проверки вводимых значений несколько изменило свою конфигурацию. Появилось дополнительное поле «Источник». Щелкаем по пиктограмме справа от него левой клавишей мыши.
- Затем окно проверки вводимых значений сворачивается. Выделяем курсором с зажатой левой клавишей мыши перечень данных, которые размещены на листе в дополнительной табличной области «Список товаров». После этого опять жмем на пиктограмму справа от поля, в котором появился адрес выделенного диапазона.
- Происходит возврат к окошку проверки вводимых значений. Как видим, координаты выделенного диапазона в нем уже отображены в поле «Источник». Кликаем по кнопке «OK» внизу окна.
- Теперь справа от выделенной пустой ячейки объекта ввода данных появилась пиктограмма в виде треугольника. При клике на неё открывается выпадающий список, состоящий из названий, которые подтягиваются из табличного массива «Список товаров». Произвольные данные в указанную ячейку теперь внести невозможно, а только можно выбрать из представленного списка нужную позицию. Выбираем пункт в выпадающем списке.
- Как видим, выбранная позиция тут же отобразилась в поле «Наименование товара».
- Далее нам нужно будет присвоить имена тем трем ячейкам формы ввода, куда мы будем вводить данные. Выделяем первую ячейку, где уже установлено в нашем случае наименование «Картофель». Далее переходим в поле наименования диапазонов. Оно расположено в левой части окна Excel на том же уровне, что и строка формул. Вводим туда произвольное название. Это может быть любое наименование на латинице, в котором нет пробелов, но лучше все-таки использовать названия близкие к решаемым данным элементом задачам. Поэтому первую ячейку, в которой содержится название товара, назовем «Name». Пишем данное наименование в поле и жмем на клавишу Enter на клавиатуре.
- Точно таким же образом присваиваем ячейке, в которую будем вводить количество товара, имя «Volum».
- А ячейке с ценой – «Price».
- После этого точно таким же образом даем название всему диапазону из вышеуказанных трех ячеек. Прежде всего, выделим, а потом дадим ему наименование в специальном поле. Пусть это будет имя «Diapason».
- После последнего действия обязательно сохраняем документ, чтобы названия, которые мы присвоили, смог воспринимать макрос, созданный нами в дальнейшем. Для сохранения переходим во вкладку «Файл» и кликаем по пункту «Сохранить как…».
- В открывшемся окне сохранения в поле «Тип файлов» выбираем значение «Книга Excel с поддержкой макросов (.xlsm)». Далее жмем на кнопку «Сохранить».
- Затем вам следует активировать работу макросов в своей версии Excel и включить вкладку «Разработчик», если вы это до сих пор не сделали. Дело в том, что обе эти функции по умолчанию в программе отключены, и их активацию нужно выполнять принудительно в окне параметров Excel.
- После того, как вы сделали это, переходим во вкладку «Разработчик». Кликаем по большому значку «Visual Basic», который расположен на ленте в блоке инструментов «Код».
- Последнее действие приводит к тому, что запускается редактор макросов VBA. В области «Project», которая расположена в верхней левой части окна, выделяем имя того листа, где располагаются наши таблицы. В данном случае это «Лист 1».
- После этого переходим к левой нижней области окна под названием «Properties». Тут расположены настройки выделенного листа. В поле «(Name)» следует заменить кириллическое наименование («Лист1») на название, написанное на латинице. Название можно дать любое, которое вам будет удобнее, главное, чтобы в нем были исключительно символы латиницы или цифры и отсутствовали другие знаки или пробелы. Именно с этим именем будет работать макрос. Пусть в нашем случае данным названием будет «Producty», хотя вы можете выбрать и любое другое, соответствующее условиям, которые были описаны выше.
В поле «Name» тоже можно заменить название на более удобное. Но это не обязательно. При этом допускается использование пробелов, кириллицы и любых других знаков. В отличие от предыдущего параметра, который задает наименование листа для программы, данный параметр присваивает название листу, видимое пользователю на панели ярлыков.
Как видим, после этого автоматически изменится и наименование Листа 1 в области «Project», на то, которое мы только что задали в настройках.
- Затем переходим в центральную область окна. Именно тут нам нужно будет записать сам код макроса. Если поле редактора кода белого цвета в указанной области не отображается, как в нашем случае, то жмем на функциональную клавишу F7 и оно появится.
- Теперь для конкретно нашего примера нужно записать в поле следующий код:
Sub DataEntryForm()
Dim nextRow As Long
nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1, 0).Row
With Producty
If .Range("A2").Value = "" And .Range("B2").Value = "" Then
nextRow = nextRow - 1
End If
Producty.Range("Name").Copy
.Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues
.Cells(nextRow, 3).Value = Producty.Range("Volum").Value
.Cells(nextRow, 4).Value = Producty.Range("Price").Value
.Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").Value
.Range("A2").Formula = "=IF(ISBLANK(B2), """", COUNTA($B$2:B2))"
If nextRow > 2 Then
Range("A2").Select
Selection.AutoFill Destination:=Range("A2:A" & nextRow)
Range("A2:A" & nextRow).Select
End If
.Range("Diapason").ClearContents
End With
End Sub
Но этот код не универсальный, то есть, он в неизменном виде подходит только для нашего случая. Если вы хотите его приспособить под свои потребности, то его следует соответственно модифицировать. Чтобы вы смогли сделать это самостоятельно, давайте разберем, из чего данный код состоит, что в нем следует заменить, а что менять не нужно.
Итак, первая строка:
Sub DataEntryForm()«DataEntryForm» — это название самого макроса. Вы можете оставить его как есть, а можете заменить на любое другое, которое соответствует общим правилам создания наименований макросов (отсутствие пробелов, использование только букв латинского алфавита и т.д.). Изменение наименования ни на что не повлияет.
Везде, где встречается в коде слово «Producty» вы должны его заменить на то наименование, которое ранее присвоили для своего листа в поле «(Name)» области «Properties» редактора макросов. Естественно, это нужно делать только в том случае, если вы назвали лист по-другому.
Теперь рассмотрим такую строку:
nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1, 0).RowЦифра «2» в данной строчке означает второй столбец листа. Именно в этом столбце находится колонка «Наименование товара». По ней мы будем считать количество рядов. Поэтому, если в вашем случае аналогичный столбец имеет другой порядок по счету, то нужно ввести соответствующее число. Значение «End(xlUp).Offset(1, 0).Row» в любом случае оставляем без изменений.
Далее рассмотрим строку
If .Range("A2").Value = "" And .Range("B2").Value = "" Then«A2» — это координаты первой ячейки, в которой будет выводиться нумерация строк. «B2» — это координаты первой ячейки, по которой будет производиться вывод данных («Наименование товара»). Если они у вас отличаются, то введите вместо этих координат свои данные.
Переходим к строке
Producty.Range("Name").CopyВ ней параметр «Name» означат имя, которое мы присвоили полю «Наименование товара» в форме ввода.
В строках
.Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues
.Cells(nextRow, 3).Value = Producty.Range("Volum").Value
.Cells(nextRow, 4).Value = Producty.Range("Price").Value
.Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").Value
наименования «Volum» и «Price» означают названия, которые мы присвоили полям «Количество» и «Цена» в той же форме ввода.
В этих же строках, которые мы указали выше, цифры «2», «3», «4», «5» означают номера столбцов на листе Excel, соответствующих колонкам «Наименование товара», «Количество», «Цена» и «Сумма». Поэтому, если в вашем случае таблица сдвинута, то нужно указать соответствующие номера столбцов. Если столбцов больше, то по аналогии нужно добавить её строки в код, если меньше – то убрать лишние.
В строке производится умножение количества товара на его цену:
.Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").ValueРезультат, как видим из синтаксиса записи, будет выводиться в пятый столбец листа Excel.
В этом выражении выполняется автоматическая нумерация строк:
If nextRow > 2 Then
Range("A2").Select
Selection.AutoFill Destination:=Range("A2:A" & nextRow)
Range("A2:A" & nextRow).Select
End If
Все значения «A2» означают адрес первой ячейки, где будет производиться нумерация, а координаты «A» — адрес всего столбца с нумерацией. Проверьте, где именно будет выводиться нумерация в вашей таблице и измените данные координаты в коде, если это необходимо.
В строке производится очистка диапазона формы ввода данных после того, как информация из неё была перенесена в таблицу:
.Range("Diapason").ClearContentsНе трудно догадаться, что («Diapason») означает наименование того диапазона, который мы ранее присвоили полям для ввода данных. Если вы дали им другое наименование, то в этой строке должно быть вставлено именно оно.
Дальнейшая часть кода универсальна и во всех случаях будет вноситься без изменений.
После того, как вы записали код макроса в окно редактора, следует нажать на значок сохранения в виде дискеты в левой части окна. Затем можно его закрывать, щелкнув по стандартной кнопке закрытия окон в правом верхнем углу.
- После этого возвращаемся на лист Excel. Теперь нам следует разместить кнопку, которая будет активировать созданный макрос. Для этого переходим во вкладку «Разработчик». В блоке настроек «Элементы управления» на ленте кликаем по кнопке «Вставить». Открывается перечень инструментов. В группе инструментов «Элементы управления формы» выбираем самый первый – «Кнопка».
- Затем с зажатой левой клавишей мыши обводим курсором область, где хотим разместить кнопку запуска макроса, который будет производить перенос данных из формы в таблицу.
- После того, как область обведена, отпускаем клавишу мыши. Затем автоматически запускается окно назначения макроса объекту. Если в вашей книге применяется несколько макросов, то выбираем из списка название того, который мы выше создавали. У нас он называется «DataEntryForm». Но в данном случае макрос один, поэтому просто выбираем его и жмем на кнопку «OK» внизу окна.
- После этого можно переименовать кнопку, как вы захотите, просто выделив её текущее название.
В нашем случае, например, логично будет дать ей имя «Добавить». Переименовываем и кликаем мышкой по любой свободной ячейке листа.
- Итак, наша форма полностью готова. Проверим, как она работает. Вводим в её поля необходимые значения и жмем на кнопку «Добавить».
- Как видим, значения перемещены в таблицу, строке автоматически присвоен номер, сумма посчитана, поля формы очищены.
- Повторно заполняем форму и жмем на кнопку «Добавить».
- Как видим, и вторая строка также добавлена в табличный массив. Это означает, что инструмент работает.
Читайте также:
Как создать макрос в Excel
Как создать кнопку в Excel
В Экселе существует два способа применения формы заполнения данными: встроенная и пользовательская. Применение встроенного варианта требует минимум усилий от пользователя. Его всегда можно запустить, добавив соответствующий значок на панель быстрого доступа. Пользовательскую форму нужно создавать самому, но если вы хорошо разбираетесь в коде VBA, то сможете сделать этот инструмент максимально гибким и подходящим под ваши нужды.
Видео
Как обычно, кому надо быстро — смотрим видео. Подробности и нюансы — в тексте ниже:
Как вводить даты и время в Excel
Если иметь ввиду российские региональные настройки, то Excel позволяет вводить дату очень разными способами — и понимает их все:
|
«Классическая» форма |
3.10.2006 |
|
Сокращенная форма |
3.10.06 |
|
С использованием дефисов |
3-10-6 |
|
С использованием дроби |
3/10/6 |
Внешний вид (отображение) даты в ячейке может быть очень разным (с годом или без, месяц числом или словом и т.д.) и задается через контекстное меню — правой кнопкой мыши по ячейке и далее Формат ячеек (Format Cells):
Время вводится в ячейки с использованием двоеточия. Например
16:45
По желанию можно дополнительно уточнить количество секунд — вводя их также через двоеточие:
16:45:30
И, наконец, никто не запрещает указывать дату и время сразу вместе через пробел, то есть
27.10.2012 16:45
Быстрый ввод дат и времени
Для ввода сегодняшней даты в текущую ячейку можно воспользоваться сочетанием клавиш Ctrl + Ж (или CTRL+SHIFT+4 если у вас другой системный язык по умолчанию).
Если скопировать ячейку с датой (протянуть за правый нижний угол ячейки), удерживая правую кнопку мыши, то можно выбрать — как именно копировать выделенную дату:
Если Вам часто приходится вводить различные даты в ячейки листа, то гораздо удобнее это делать с помощью всплывающего календаря:
Если нужно, чтобы в ячейке всегда была актуальная сегодняшняя дата — лучше воспользоваться функцией СЕГОДНЯ (TODAY):
Как Excel на самом деле хранит и обрабатывает даты и время
Если выделить ячейку с датой и установить для нее Общий формат (правой кнопкой по ячейке Формат ячеек — вкладка Число — Общий), то можно увидеть интересную картинку:
То есть, с точки зрения Excel, 27.10.2012 15:42 = 41209,65417
На самом деле любую дату Excel хранит и обрабатывает именно так — как число с целой и дробной частью. Целая часть числа (41209) — это количество дней, прошедших с 1 января 1900 года (взято за точку отсчета) до текущей даты. А дробная часть (0,65417), соответственно, доля от суток (1сутки = 1,0)
Из всех этих фактов следуют два чисто практических вывода:
- Во-первых, Excel не умеет работать (без дополнительных настроек) с датами ранее 1 января 1900 года. Но это мы переживем!
- Во-вторых, с датами и временем в Excel возможно выполнять любые математические операции. Именно потому, что на самом деле они — числа! А вот это уже раскрывает перед пользователем массу возможностей.
Количество дней между двумя датами
Считается простым вычитанием — из конечной даты вычитаем начальную и переводим результат в Общий (General) числовой формат, чтобы показать разницу в днях:
Количество рабочих дней между двумя датами
Здесь ситуация чуть сложнее. Необходимо не учитывать субботы с воскресеньями и праздники. Для такого расчета лучше воспользоваться функцией ЧИСТРАБДНИ (NETWORKDAYS) из категории Дата и время. В качестве аргументов этой функции необходимо указать начальную и конечную даты и ячейки с датами выходных (государственных праздников, больничных дней, отпусков, отгулов и т.д.):
Примечание: Эта функция появилась в стандартном наборе функций Excel начиная с 2007 версии. В более древних версиях сначала необходимо подключить надстройку Пакета анализа. Для этого идем в меню Сервис — Надстройки (Tools — Add-Ins) и ставим галочку напротив Пакет анализа (Analisys Toolpak). После этого в Мастере функций в категории Дата и время появится необходимая нам функция ЧИСТРАБДНИ (NETWORKDAYS).
Количество полных лет, месяцев и дней между датами. Возраст в годах. Стаж.
Про то, как это правильно вычислять, лучше почитать тут.
Сдвиг даты на заданное количество дней
Поскольку одни сутки в системе отсчета даты Excel принимаются за единицу (см.выше), то для вычисления даты, отстоящей от заданной на, допустим, 20 дней, достаточно прибавить к дате это число.
Сдвиг даты на заданное количество рабочих дней
Эту операцию осуществляет функция РАБДЕНЬ (WORKDAY). Она позволяет вычислить дату, отстоящую вперед или назад относительно начальной даты на нужное количество рабочих дней (с учетом выходных суббот и воскресений и государственных праздинков). Использование этой функции полностью аналогично применению функции ЧИСТРАБДНИ (NETWORKDAYS) описанной выше.
Вычисление дня недели
Вас не в понедельник родили? Нет? Уверены? Можно легко проверить при помощи функции ДЕНЬНЕД (WEEKDAY) из категории Дата и время.
Первый аргумент этой функции — ячейка с датой, второй — тип отсчета дней недели (самый удобный — 2).
Вычисление временных интервалов
Поскольку время в Excel, как было сказано выше, такое же число, как дата, но только дробная его часть, то с временем также возможны любые математические операции, как и с датой — сложение, вычитание и т.д.
Нюанс здесь только один. Если при сложении нескольких временных интервалов сумма получилась больше 24 часов, то Excel обнулит ее и начнет суммировать опять с нуля. Чтобы этого не происходило, нужно применить к итоговой ячейке формат 37:30:55:
Ссылки по теме
- Как вычислять возраст (стаж) в полных годах-месяцах-днях
- Как сделать выпадающий календарь для быстрого ввода любой даты в любую ячейку.
- Автоматическое добавление текущей даты в ячейку при вводе данных.
- Как вычислить дату второго воскресенья февраля 2007 года и т.п.
#Руководства
- 23 май 2022
-
0
Как с помощью макросов автоматизировать рутинные задачи в Excel? Какие команды они выполняют? Как создать макрос новичку? Разбираемся на примере.
Иллюстрация: Meery Mary для Skillbox Media
Рассказывает просто о сложных вещах из мира бизнеса и управления. До редактуры — пять лет в банке и три — в оценке имущества. Разбирается в Excel, финансах и корпоративной жизни.
Макрос (или макрокоманда) в Excel — алгоритм действий в программе, который объединён в одну команду. С помощью макроса можно выполнить несколько шагов в Excel, нажав на одну кнопку в меню или на сочетание клавиш.
Обычно макросы используют для автоматизации рутинной работы — вместо того чтобы выполнять десяток повторяющихся действий, пользователь записывает одну команду и затем запускает её, когда нужно совершить эти действия снова.
Например, если нужно добавить название компании в несколько десятков документов и отформатировать его вид под корпоративный дизайн, можно делать это в каждом документе отдельно, а можно записать ход действий при создании первого документа в макрос — и затем применить его ко всем остальным. Второй вариант будет гораздо проще и быстрее.
В статье разберёмся:
- как работают макросы и как с их помощью избавиться от рутины в Excel;
- какие способы создания макросов существуют и как подготовиться к их записи;
- как записать и запустить макрос начинающим пользователям — на примере со скриншотами.
Общий принцип работы макросов такой:
- Пользователь записывает последовательность действий, которые нужно выполнить в Excel, — о том, как это сделать, поговорим ниже.
- Excel обрабатывает эти действия и создаёт для них одну общую команду. Получается макрос.
- Пользователь запускает этот макрос, когда ему нужно выполнить эту же последовательность действий ещё раз. При записи макроса можно задать комбинацию клавиш или создать новую кнопку на главной панели Excel — если нажать на них, макрос запустится автоматически.
Макросы могут выполнять любые действия, которые в них запишет пользователь. Вот некоторые команды, которые они умеют делать в Excel:
- Автоматизировать повторяющиеся процедуры.
Например, если пользователю нужно каждый месяц собирать отчёты из нескольких файлов в один, а порядок действий каждый раз один и тот же, можно записать макрос и запускать его ежемесячно.
- Объединять работу нескольких программ Microsoft Office.
Например, с помощью одного макроса можно создать таблицу в Excel, вставить и сохранить её в документе Word и затем отправить в письме по Outlook.
- Искать ячейки с данными и переносить их в другие файлы.
Этот макрос пригодится, когда нужно найти информацию в нескольких объёмных документах. Макрос самостоятельно отыщет её и принесёт в заданный файл за несколько секунд.
- Форматировать таблицы и заполнять их текстом.
Например, если нужно привести несколько таблиц к одному виду и дополнить их новыми данными, можно записать макрос при форматировании первой таблицы и потом применить его ко всем остальным.
- Создавать шаблоны для ввода данных.
Команда подойдёт, когда, например, нужно создать анкету для сбора данных от сотрудников. С помощью макроса можно сформировать такой шаблон и разослать его по корпоративной почте.
- Создавать новые функции Excel.
Если пользователю понадобятся дополнительные функции, которых ещё нет в Excel, он сможет записать их самостоятельно. Все базовые функции Excel — это тоже макросы.
Все перечисленные команды, а также любые другие команды пользователя можно комбинировать друг с другом и на их основе создавать макросы под свои потребности.
В Excel и других программах Microsoft Office макросы создаются в виде кода на языке программирования VBA (Visual Basic for Applications). Этот язык разработан в Microsoft специально для программ компании — он представляет собой упрощённую версию языка Visual Basic. Но это не значит, что для записи макроса нужно уметь кодить.
Есть два способа создания макроса в Excel:
- Написать макрос вручную.
Это способ для продвинутых пользователей. Предполагается, что они откроют окно Visual Basic в Еxcel и самостоятельно напишут последовательность действий для макроса в виде кода.
- Записать макрос с помощью кнопки меню Excel.
Способ подойдёт новичкам. В этом варианте Excel запишет программный код вместо пользователя. Нужно нажать кнопку записи и выполнить все действия, которые планируется включить в макрос, и после этого остановить запись — Excel переведёт каждое действие и выдаст алгоритм на языке VBA.
Разберёмся на примере, как создать макрос с помощью второго способа.
Допустим, специальный сервис автосалона выгрузил отчёт по продажам за три месяца первого квартала в формате таблиц Excel. Эти таблицы содержат всю необходимую информацию, но при этом никак не отформатированы: колонки слиплись друг с другом и не видны полностью, шапка таблицы не выделена и сливается с другими строками, часть данных не отображается.
Скриншот: Skillbox Media
Пользоваться таким отчётом неудобно — нужно сделать его наглядным. Запишем макрос при форматировании таблицы с продажами за январь и затем применим его к двум другим таблицам.
Готовимся к записи макроса
Кнопки для работы с макросами в Excel находятся во вкладке «Разработчик». Эта вкладка по умолчанию скрыта, поэтому для начала разблокируем её.
В операционной системе Windows это делается так: переходим во вкладку «Файл» и выбираем пункты «Параметры» → «Настройка ленты». В открывшемся окне в разделе «Основные вкладки» находим пункт «Разработчик», отмечаем его галочкой и нажимаем кнопку «ОК» → в основном меню Excel появляется новая вкладка «Разработчик».
В операционной системе macOS это нужно делать по-другому. В самом верхнем меню нажимаем на вкладку «Excel» и выбираем пункт «Параметры…».
Скриншот: Skillbox Media
В появившемся окне нажимаем кнопку «Лента и панель».
Скриншот: Skillbox Media
Затем в правой панели «Настроить ленту» ищем пункт «Разработчик» и отмечаем его галочкой. Нажимаем «Сохранить».
Скриншот: Skillbox Media
Готово — вкладка «Разработчик» появилась на основной панели Excel.
Скриншот: Skillbox Media
Чтобы Excel смог сохранить и в дальнейшем использовать макрос, нужно пересохранить документ в формате, который поддерживает макросы. Это делается через команду «Сохранить как» на главной панели. В появившемся меню нужно выбрать формат «Книга Excel с поддержкой макросов».
Скриншот: Skillbox Media
Перед началом записи макроса важно знать об особенностях его работы:
- Макрос записывает все действия пользователя.
После старта записи макрос начнёт регистрировать все клики мышки и все нажатия клавиш. Поэтому перед записью последовательности лучше хорошо отработать её, чтобы не добавлять лишних действий и не удлинять код. Если требуется записать длинную последовательность задач — лучше разбить её на несколько коротких и записать несколько макросов.
- Работу макроса нельзя отменить.
Все действия, которые выполняет запущенный макрос, остаются в файле навсегда. Поэтому перед тем, как запускать макрос в первый раз, лучше создать копию всего файла. Если что-то пойдёт не так, можно будет просто закрыть его и переписать макрос в созданной копии.
- Макрос выполняет свой алгоритм только для записанного диапазона таблиц.
Если при записи макроса пользователь выбирал диапазон таблицы, то и при запуске макроса в другом месте он выполнит свой алгоритм только в рамках этого диапазона. Если добавить новую строку, макрос к ней применяться не будет. Поэтому при записи макроса можно сразу выбирать большее количество строк — как это сделать, показываем ниже.
Для начала записи макроса перейдём на вкладку «Разработчик» и нажмём кнопку «Записать макрос».
Скриншот: Skillbox Media
Появляется окно для заполнения параметров макроса. Нужно заполнить поля: «Имя макроса», «Сохранить в», «Сочетание клавиш», «Описание».
Скриншот: Skillbox Media
«Имя макроса» — здесь нужно придумать и ввести название для макроса. Лучше сделать его логически понятным, чтобы в дальнейшем можно было быстро его найти.
Первым символом в названии обязательно должна быть буква. Другие символы могут быть буквами или цифрами. Важно не использовать пробелы в названии — их можно заменить символом подчёркивания.
«Сохранить в» — здесь нужно выбрать книгу, в которую макрос сохранится после записи.
Если выбрать параметр «Эта книга», макрос будет доступен при работе только в этом файле Excel. Чтобы макрос был доступен всегда, нужно выбрать параметр «Личная книга макросов» — Excel создаст личную книгу макросов и сохранит новый макрос в неё.
«Сочетание клавиш» — здесь к уже выбранным двум клавишам (Ctrl + Shift в системе Windows и Option + Cmd в системе macOS) нужно добавить третью клавишу. Это должна быть строчная или прописная буква, которую ещё не используют в других быстрых командах компьютера или программы Excel.
В дальнейшем при нажатии этих трёх клавиш записанный макрос будет запускаться автоматически.
«Описание» — необязательное поле, но лучше его заполнять. Например, можно ввести туда последовательность действий, которые планируется записать в этом макросе. Так не придётся вспоминать, какие именно команды выполнит этот макрос, если нужно будет запустить его позже. Плюс будет проще ориентироваться среди других макросов.
В нашем случае с форматированием таблицы заполним поля записи макроса следующим образом и нажмём «ОК».
Скриншот: Skillbox Media
После этого начнётся запись макроса — в нижнем левом углу окна Excel появится значок записи.
Скриншот: Skillbox Media
Пока идёт запись, форматируем таблицу с продажами за январь: меняем ширину всех столбцов, данные во всех ячейках располагаем по центру, выделяем шапку таблицы цветом и жирным шрифтом, рисуем границы.
Важно: в нашем случае у таблиц продаж за январь, февраль и март одинаковое количество столбцов, но разное количество строк. Чтобы в случае со второй и третьей таблицей макрос сработал корректно, при форматировании выделим диапазон так, чтобы в него попали не только строки самой таблицы, но и строки ниже неё. Для этого нужно выделить столбцы в строке с их буквенным обозначением A–G, как на рисунке ниже.
Скриншот: Skillbox Media
Если выбрать диапазон только в рамках первой таблицы, то после запуска макроса в таблице с большим количеством строк она отформатируется только частично.
Скриншот: Skillbox Media
После всех манипуляций с оформлением таблица примет такой вид:
Скриншот: Skillbox Media
Проверяем, все ли действия с таблицей мы выполнили, и останавливаем запись макроса. Сделать это можно двумя способами:
- Нажать на кнопку записи в нижнем левом углу.
- Перейти во вкладку «Разработчик» и нажать кнопку «Остановить запись».
Скриншот: Skillbox Media
Готово — мы создали макрос для форматирования таблиц в границах столбцов A–G. Теперь его можно применить к другим таблицам.
Запускаем макрос
Перейдём в лист со второй таблицей «Февраль_2022». В первоначальном виде она такая же нечитаемая, как и первая таблица до форматирования.
Скриншот: Skillbox Media
Отформатируем её с помощью записанного макроса. Запустить макрос можно двумя способами:
- Нажать комбинацию клавиш, которую выбрали при заполнении параметров макроса — в нашем случае Option + Cmd + Ф.
- Перейти во вкладку «Разработчик» и нажать кнопку «Макросы».
Скриншот: Skillbox Media
Появляется окно — там выбираем макрос, который нужно запустить. В нашем случае он один — «Форматирование_таблицы». Под ним отображается описание того, какие действия он включает. Нажимаем «Выполнить».
Скриншот: Skillbox Media
Готово — вторая таблица с помощью макроса форматируется так же, как и первая.
Скриншот: Skillbox Media
То же самое можно сделать и на третьем листе для таблицы продаж за март. Более того, этот же макрос можно будет запустить и в следующем квартале, когда сервис автосалона выгрузит таблицы с новыми данными.

Научитесь: Excel + Google Таблицы с нуля до PRO
Узнать больше

фильтра.


















































































































