Эксперименты делают из нас героев.
(Флэш)
Хотя инструмент Мгновенное заполнение (Flash Fill) появился в Excel ещё с 2013-й версии, но почему-то для многих пользователей этот факт остался незамеченным. И совершенно напрасно. Во многих случаях он оказывается проще, легче и быстрее, чем аналогичные решения на формулах или макросах. По моему опыту, на тренингах эта тема вызывает постоянное «вау!» аудитории — независимо от продвинутости и/или усталости слушателей.
Механизм работы этого инструмента прост: если у вас есть один или несколько столбцов с исходными данными и вы начинаете набирать рядом в соседнем столбце их же, но в каком-либо нужном вам измененном виде, то Excel рано или поздно намекнёт, что готов продолжить дальше за вас:
Чтобы выявить логику (шаблон, pattern) преоборазования и запустить эту функцию Excel обычно хватает ввода 1-3 первых результирующих значений вручную. Если предложенный вариант вам подходит, то достаточно нажать Enter — и остаток списка будет доделан моментально.
Если вы уже ввели 2-3 первых значения, а продолжение всё не появляется, то можно форсировать процесс сочетанием клавиш Ctrl+E или использовать кнопку Мгновенное заполнение (Flash Fill) на вкладке Данные (Data):
Давайте рассмотрим несколько примеров использования этого инструмента на практике, чтобы понять его возможности.
Извлечение слов из текста и перестановки
Написать формулу, которая извлекает, например, третье слово из текста в ячейке — маленький подвиг. Разобрать фразу по пробелу в разные колонки с помощью Данные — Текст по столбцам (Data — Text to Columns) тоже дело не быстрое. С помощью мгновенного заполнения это делается легко и красиво. Причем, можно попутно менять извлекаемые слова местами, комбинируя их в любом порядке:
Деление текста по регистру
Для выделения слов мгновенному заполнению совершенно не обязательно наличие именно пробела. Отлично сгодится и любой другой разделитель, например, запятая или точка-с-запятой после импорта CSV-файла. Но что совсем круто, так это то, что разделителя может и не быть совсем — достаточно только заглавных букв:
Реализовать подобное формулами очень тяжко. Если без мгновенного заполнения, то поможет только макрос.
Склейка текста
Если можно делить, то можно и клеить! Мгновенное заполнение легко соберёт для вас длинную фразу из нескольких фрагментов, перемежая их нужными пробелами, запятыми, союзами или словами:
Извлечение отдельных символов
Обычно для вытаскивания отдельных символов и подстрок в Excel используются функции ЛЕВСИМВ (LEFT), ПРАВСИМВ (RIGHT), ПСТР (MID) и им подобные, но мгновенное заполнение с легкостью решает и эту задачу. Классический пример — формирование ФИО:
Извлечение только чисел, текста или дат
Если вы когда-нибудь пытались вытащить только нужный тип данных из буквенно-цифровой каши, то должны понимать всю сложность этой простой, на первый взгляд, задачи. Мгновенное заполнение и тут справляется «на ура», но нужен лёгкий пендель в виде Ctrl+E:
С извлечением текста тоже самое:
Даты — тоже не проблема (даже если они написаны в разных форматах):
Преобразование форматов чисел или дат
Мгновенное заполнение поможет изменить внешний вид имеющихся данных или привести их к «одному знаменателю». Например, обычную дату преобразовать «шиворот-навыворот» в Unix-формат:
Здесь нюанс в том, что перед вводом нужно заранее поменять формат итоговых ячеек на текстовый, чтобы Excel не пытался распознать введенные вручную в качестве образца «неправильные» даты.
Аналогичным образом можно также правильно представить телефонные номера, добавив код страны и трехзначный префикс оператора (города) в скобках:
Не забудьте сначала поменять формат ячеек в столбце В на текстовый — иначе Excel будет воспринимать значения начинающиеся со знака «+» как формулы.
Преобразование текста (чисел) в дату
При выгрузках из различных ERP и CRM-систем часто дата представляется 8-значным числом в формате ГГГГММДД. Конвертировать её в нормальный вид можно либо функцией ДАТАЗНАЧ (DATEVALUE), либо гораздо проще — мгновенным заполнением:
Изменение регистра
Если вам достался текст с нЕпрАвИльНЫм рЕгисТроМ, то можно просто намекнуть в соседнем столбце к какому виду вы хотите его преобразовать — и мгновенное заполнение сделает за вас всю работу:
Чуть сложнее будет, если нужно изменить регистр по разному у разных частей текста. Например, сделать заглавными только второе слово, оставив первое в нормальном виде. Здесь двух введённых в качестве образца значений окажется недостаточно и придется внести правки, которые мгновенное заполнение тут же учтёт в результатах:
Ограничения и нюансы
При использовании в работе мгновенного заполнения следует помнить несколько моментов:
- Оно срабатывает только, если вводить образцы строго рядом — в предыдущем или следующем столбце справа от данных. Если отступить одну пустую колонку от исходного текста, то ничего не получится.
- При выявлении шаблона учитываются все значения в строке — слева и справа от вводимого столбца. Мораль: лишние колонки, способные запутать алгоритм или внести помехи, лучше заранее отделить от рабочих данных пустыми столбцами или удалить.
- Мгновенное заполнение отлично работает в умных таблицах.
- Малейшая ошибка или опечатка при наборе ячеек-образцов может привести к тому, что мгновенное заполнение не сможет выявить паттерн и не сработает. Будьте внимательны.
- Есть ситуации, когда шаблон определяется некорректно, поэтому всегда нужно проверять результаты, которые вы получили (хотя бы выборочно).
Ссылки по теме
- Как извлечь последнее слово из текста в ячейке
- Нечёткий текстовый поиск (Пушкин = Пушкен) с помощью Fuzzy Lookup в Excel
- Три способа склеить текст в Excel
Предположим, что столбец A содержит имена, столбец B — фамилии, а вы хотите заполнить столбец C сочетаниями имен и фамилий. Если ввести полное имя в столбец C, функция мгновенного заполнения заполнит остальные ячейки соответствующим образом.
-
Введите полное имя в ячейке C2 и нажмите клавишу ВВОД.
-
Начните вводить следующее полное имя в ячейке C3. Excel определит закономерность и отобразит предварительное изображение остальной части столбца, заполненной объединенным текстом.
-
Для подтверждения предварительного просмотра нажмите клавишу ВВОД.
Если вариант заполнения не выводится, вероятно, эта функция не включена. Вы можете выбрать Данные > Мгновенное заполнение, чтобы применить заполнение вручную или нажать клавиши CTRL+E. Чтобы включить мгновенное заполнение, выберите Сервис > Параметры > Дополнительно > Параметры правки и установите флажок Автоматически выполнять мгновенное заполнение.
Предположим, что столбец A содержит имена, столбец B — фамилии, а вы хотите заполнить столбец C сочетаниями имен и фамилий. Если ввести полное имя в столбец C, функция мгновенного заполнения заполнит остальные ячейки соответствующим образом.
-
Введите полное имя в ячейке C2 и нажмите клавишу ВВОД.
-
Выберите Данные > Мгновенное заполнение или нажмите клавиши CTRL+E.
-
Excel определит закономерность в ячейке C2 и заполнит ячейки ниже.
Flash Fill helps you to enter data much more quickly in Microsoft Excel. It watches for patterns in the data you’re entering and makes suggestions to complete your entry, filling whole columns with relevant values. Keep reading to learn how to use Flash Fill in Excel to increase speed and accuracy in up data entry.
Instructions in this article apply to Excel 2019, 2016 and 2013; Excel for Microsoft 365, Excel Online and Excel for Mac. Flash Fill is not available in previous versions of Excel.
Flash Fill works similar to the way that Autofill works in a web browser but is much more intelligent. Excel’s AutoFill works somewhat differently, allowing you to copy formula’s and values across horizontal or vertical arrays in a spreadsheet. Excel actually uses machine learning for Flash Fill, which allows it to make clever suggestions for what you might want to be entering.
How to Use Flash Fill in Excel
There are two ways to use flash fill in Excel. It is always working in the background and will make suggestions as you type into any cell. The simplest and most common way to use Flash Fill is to accept these suggestions by hitting the Enter key. The second way to use Flash Fill is using a command on the DATA tab of the ribbon to automatically fill a number of cells at once.
Flash Fill is currently quite limited in its capabilities. It only works when the column you’re entering data into is directly adjacent to the column containing the source data. The source data is the data containing the pattern that Flash Fill will use to generate values. Somewhat strangely it only works with columns and not rows, so you can’t automatically populate a row of data.
Using Flash Fill As You Type
While you’re typing, Flash Fill is always working in the background. If it thinks it can see what you’re trying to enter in the column, it will make a suggestion for how you could instantly complete the whole entry. Used in this way, you can think of Flash Fill as an extension of Excel’s AutoComplete. While AutoComplete makes suggestions for what you might be typing into an individual cell, Flash Fill allows you to complete whole columns of data.
To use Flash Fill while you’re typing, follow these steps:
-
Insert a new column, next to the column with the source data.
-
Type the required value into the first cell of the new column.
-
Start typing the value into the second column. If Excel detects the pattern then a preview will appear showing what values it will use for the remaining cells.
-
Hit the Enter key and the values are inserted automatically.
-
That’s it, as simple as that!
You can continue to use Flash Fill in subsequent columns to extract different items of data. As long as the column containing the pattern isn’t separated from the column where you are entering the values, Excel should detect the pattern. Continuing the previous example, the names could also be extracted.
Using Flash Fill From the Ribbon
Where Flash Fill detects a pattern, it usually shows the preview while you’re typing. Hitting Enter to accept this suggestion is normally the easiest way to use Flash Fill. However, it can also be used via a command on the ribbon. To use it in this way follow these steps:
-
Insert a new column, next to the column with the source data.
-
Type the required value into the first cell of the new column.
-
Select the DATA tab on the ribbon.
-
Select the Flash Fill command.
-
If Excel has detected a pattern, it will enter its suggested values into the remaining cells.
Combining Data From Multiple Columns
Flash Fill isn’t only able to split values into separate columns. It can also be used to merge columns using any pattern you choose. This can be a lot quicker and more intuitive than using concatenation formula. For example, to create a single address column from individual address fields you could follow these steps:
-
Enter each address field into a separate column.
-
Create an adjacent address column.
-
Enter the first address in the required format.
-
Start typing the second address and check Excel’s suggested values.
-
Hit enter to accept Excel’s suggested Flash Fill.
Note that in this example commas were used between the street, city and country but not the number and street. Flash Fill should work with any format you choose to use.
Other Capabilities of Flash Fill
Flash Fill can simplify many data entry tasks. As well as splitting and combining columns, Flash Fill can remove leading zeros, where only some entries have them. It can be used to format text, number and dates. It can replace part of a cell content, perhaps creating a secure version of sensitive data by replacing some numbers with XXXX. Different functions such as combining values and adding characters can even be combined.
To perform any of these functions, the process is the same. You follow these steps:
-
Enter the raw data that needs to be cleaned or reformatted in one column.
-
Type the data as you want it in the first cell of an adjacent column.
-
Start typing the second value and Flash Fill will suggest how it can complete all the other values in the column, following the same pattern.
Once you start to get to grips with what Flash Fill is capable of you’ll find it an extremely powerful and useful tool. If you’re interested in another really useful tool to simplify data entry, check out how to use AutoFill in Excel, this can copy formulae and values in an intelligent way across a spreadsheet.
Thanks for letting us know!
Get the Latest Tech News Delivered Every Day
Subscribe
Мгновенное заполнение в Microsoft Excel – одна из функций, появившихся в последних версиях программы. Ее основное предназначение заключается в анализе сокращений, которые применяет пользователь при дублировании значения одной ячейки в другую. Один из примеров – сокращение полных имен в списке до необходимого формата, что я и рассмотрю в следующей инструкции.
Как мгновенно заполнить ячейки в Microsoft Excel
Начну с того, что Экселю необходимо обязательно знать закономерность, на основе которой он и будет осуществлять мгновенное заполнение ячеек. Например, у вас есть список месяцев с полными названиями, но вы хотите сократить их до трех букв. Значит, в ячейке напротив стоит написать «Янв» и активировать мгновенное заполнение для всей таблицы. Программа сразу поймет, как именно вы хотите сократить написание, поэтому оставит для всех остальных строк тоже только первые три буквы.
Более сложный вариант состоит как раз в использовании сокращений имени фамилии и отчества, о чем уже было сказано во вступительном абзаце. Давайте я рассмотрю его более детально, чтобы вы понимали принцип работы инструмента.
-
Откройте таблицу и начните с первой строки, введя такое сокращение, которое вы хотите видеть во всем остальном списке. Обратите внимание на следующий скриншот, чтобы понять, какой именно путь выбрал я в своем примере.
-
Перейдите к следующей строке и введите первую букву. Автозаполнение, включенное в Excel по умолчанию, должно предложить варианты сразу для всех ячеек таблицы. Если этого не произошло, останьтесь на первой строке с сокращением и нажмите сочетание клавиш Ctrl + E для применения опции мгновенного заполнения.
-
Посмотрите на результат и убедитесь в том, что у вас получилось справиться с поставленной задачей. Можете поэкспериментировать с разными сокращениями, чтобы протестировать инструмент более детально.
-
В блоке с мгновенным заполнением появится кнопка, отвечающая за открытие панели с дополнительными действиями. Так вы сможете отменить заполнение, принять предложения для ввода данных или выделить все измененные ячейки.
Если предложенный вариант вам не подходит, например, не работает сочетание клавиш или не появляются варианты для заполнения, можно пойти немного другим путем. Для данной опции на панели с инструментами есть своя кнопка, которая и активирует действие мгновенного заполнения.
-
Создайте первую строку с сокращенным вариантом и перейдите на вкладку «Данные».
-
Нажмите кнопку с названием «Мгновенное заполнение».
-
Обратите внимание на то, что инструмент вступил в силу, таблица заполнена, а вы сэкономили значительное количество времени.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Решение некоторых проблем
В завершение быстро расскажу о том, что делать, если при редактировании ячеек не появляются варианты для мгновенного заполнения или по каким-то причинам данный инструмент не работает даже путем нажатия по соответствующей кнопке. Самая распространенная причина – отключенная функция в настройках. Ее проверка выполняется следующим образом:
-
Перейдите на вкладку «Файл».
-
Откройте список параметров программы, щелкнув по строке с соответствующим названием.
-
Выберите раздел «Дополнительно» и убедитесь в том, что в категории «Параметры правки» установлены галочки напротив пунктов «Автозавершение значений ячеек» и «Автоматически выполнять мгновенное заполнение».
Если пункта с мгновенным заполнением вы не нашли, значит, используете старую версию Microsoft Excel и данный инструмент попросту недоступен. Установите обновление, если есть такая возможность.
Еще одна проблема – программа не может понять, как именно вы хотите использовать мгновенное заполнение. Если это так, на экране появится ошибка с соответствующим содержанием. Не закрывайте ее сразу, а прочитайте описание и сделайте все так, как пишут разработчики.
Используйте мгновенное заполнение в Microsoft Excel в своих целях, оптимизируя и значительно ускоряя рабочий процесс. Если исходные данные после сокращения вам не нужны, просто удалите их, чтобы сэкономить место в электронной таблице.
В 2013-й версии Excel появилась новая функциональная возможность – «Мгновенное заполнение» (Flash Fill в англоязычной версии Excel). С помощью данного механизма можно быстро извлекать и соединять данные на страницах Excel без применения формул.
Смотрите также видеоверсию статьи «Мгновенное заполнение в Excel (Flash Fill)».
Мгновенное заполнение использует распознавание шаблонов для извлечения данных из смежных столбцов. Принцип работы Мгновенного заполнения очень схож с таковым в Автозаполнении, т.е. пользователь указывает несколько примеров преобразования данных и Excel, распознав алгоритм преобразования, сможет автоматизировать работу пользователя.
Для работы Мгновенного заполнения необходимо ввести несколько, а иногда просто даже одно, значений, прилегающие к столбцу с данными и выполнить команду: «Вкладка Данные/Работа с данными/Мгновенное заполнение» (или горячее сочетание Ctrl+E). Если заполнение не сработает, можно ввести еще несколько примеров и попробовать выполнить команду еще раз.
Мгновенное заполнение для извлечения данных
Разбиение строки на подстроки
Мы уже рассматривали способы того, как разбить ячейки в Excel, использование мгновенного заполнения можно считать небольшим дополнением к двум рассмотренным ранее способам.
Как и ранее, в качестве примера извлекаемых данных, будем рассматривать ФИО людей.
Можно извлечь отдельно фамилию или имя, а можно полностью разбить данные в ячейке на несколько, достаточно просто ввести рядом с полным ФИО пользователя ту часть данных, которую необходимо извлечь, а потом выполнить команду мгновенного заполнения (Ctrl+E).
Изменение регистра текста
Мгновенное заполнение отлично подходит для однообразного изменение написания текста, например, преобразовать первые строчные буквы в прописные, все строчные в прописные, прописные в строчные и т.д.
Извлечение информации из URL
Для извлечения данных текстовая информация в ячейке не обязательно должна быть разделена пробелами, мгновенное заполнение отлично справиться с «вытягиванием» информации из URL. В следующем примере приведены адреса ссылок на ролики в YouTube, не секрет, что идентификатором конкретного ролика являются символы после знака «=». Достать данную информацию из ячейки проще простого.
Возможные проблемы при работе с мгновенным заполнением, а также недостатки.
Несмотря на то, что мгновенное заполнение просто отличная функция, она не обладает каким-либо обучаемым механизмом распознавания, поэтому данные в ячейках должны быть однообразными, например, если в пример с фамилиями и именами добавить пользователя с отчеством, то мгновенное заполнение извлечет последнее слово из ячейки. То же произойдет, если фамилия человека будет представлена двумя словами.
На рисунке выше цветом выделены ячейки, где алгоритм мгновенного заполнения сработал некорректно. Однако, поспешно расстраиваться не стоит, можно провести дополнительное «обучение» мгновенного заполнения, введя не по одному значению, а, скажем, первые пять, предусмотрев данные с отчеством, а также фамилии с тире, тогда Excel, заполнит данные правильно. На рисунке ниже зеленым выделены ячейки, которые использовались для «обучения».
В любом случае, при работе с большими объемами данных не следует терять бдительность и предусмотреть такие варианты.
Следующей потенциальной неприятностью, с которой может столкнуться пользователь, является то, что иногда мгновенное заполнение не сможет распознать алгоритм извлечения данных и дополнительное введение данных в ячейки не поможет. Здесь придется использовать другие инструменты Excel.
Нужно понимать, что мгновенное заполнение не будет изменять информацию, при ее изменении в первоначальных ячейках, если нужны динамические связи, придется воспользоваться функциями Excel.
Последний недостаток, который придется принять, при работе с мгновенным заполнением – это отсутствие возможности проведения аудита, т.е. вы просто не сможет отследить формулу, по которой было произведено извлечение данных.
Мгновенное заполнение для объединения данных
Мгновенное заполнение отлично подходит не только для извлечения данных из ячеек, но и для объединения и других операций.
Например, можно очень быстро создать единообразные адреса электронной почты из фамилии и имени сотрудника, записанных латиницей, для обучения алгоритма понадобилось заполнить всего одну ячейку.
Кстати, работу алгоритма мгновенного заполнения можно записать формулой с использованием функций: СТРОЧН, ЛЕВСИМВ.
=СТРОЧН(ЛЕВСИМВ(A1;1)&"."&B1&"@msoffice-prowork.com")
В следующем примере, данные в ячейках были сцеплены в одну, но число из столбца «День» преобразовано в дату месяца.
В этом примере для обучения алгоритма пришлось заполнить две строки.
В итоге, можно отметить, что мгновенное заполнение отличный инструмент и каждый сможет найти для себя пути его применения.