Автоматическое изменение значений ячеек excel

Содержание

  1. Как запустить макрос при изменении определенных ячеек в Excel
  2. Аннотация
  3. Дополнительная информация
  4. Excel заменить значение в ячейке по условию
  5. Функция ПОДСТАВИТЬ при условии подставляет значение
  6. Автозамена значения в текстовых ячейках с помощью функции ПОДСТАВИТЬ
  7. Формула с макросом регулярного выражения и функция ПОДСТАВИТЬ
  8. Особенности использования функции ПОДСТАВИТЬ в Excel
  9. Быстрая замена значений по условию в Excel
  10. Задача
  11. Замена текстовых значений
  12. Чтобы заменить текстовые значения:
  13. Замена числовых, логических значений или значений даты и времени
  14. Чтобы заменить числовые, логические значения или значения даты и времени:

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

Аннотация

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

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

Дополнительная информация

Корпорация Майкрософт предоставляет примеры программирования только в целях демонстрации без явной или подразумеваемой гарантии. Данное положение включает, но не ограничивается этим, подразумеваемые гарантии товарной пригодности или соответствия отдельной задаче. Эта статья предполагает, что пользователь знаком с представленным языком программирования и средствами, используемыми для создания и отладки процедур. Специалисты технической поддержки Майкрософт могут пояснить работу той или иной процедуры, но модификация примеров и их адаптация к задачам разработчика не предусмотрена. Во многих случаях макрос должен работать только тогда, когда определенное количество ячеек имеет значения, введенные в них (именуемые в этом документе «ключевыми ячейками»). Для предотвращения запуска большого макроса каждый раз, когда значение вводится в ячейку листа, необходимо проверить, является ли ActiveCell одной из ключевых ячеек. Для этого используйте метод Intersect на ActiveCell и диапазон, содержащий ключевые ячейки, для проверки того, что ActiveCell является одной из ключевых ячеек. Если ActiveCell находится в диапазоне, содержащем ключевые ячейки, можно вызвать макрос.

Для создания макроса Visual Basic:

Нажмите правой кнопкой на вкладке Sheet1, а затем нажмите Посмотреть код.

Открывается лист модуля за sheet1.

Введите следующий код в лист модуля:

Нажмите Закрыть и вернуться в Microsoft Excel в меню Файл.

При вводе записи в ячейках A1:C10 на листе 1 отображается окно сообщений.

Источник

Excel заменить значение в ячейке по условию

Функция ПОДСТАВИТЬ в Excel выполняет динамическую замену определенной части строки на указанное новое значение и возвращает новую строку, содержащую замененную часть текста. Благодаря этой функции можно подставлять значения из другой ячейки. Рассмотрим возможности функции на конкретных примерах в Excel.

Функция ПОДСТАВИТЬ при условии подставляет значение

Пример 1. В результате расчетов, произведенных в некотором приложении, были получены некоторые значения, записанные в таблицу Excel. Некоторые величины рассчитать не удалось, и вместо числового представления была сгенерирована ошибка “NaN”. Необходимо заменить все значения “NaN” на число 0 в соответствующих строках.

Для замены и подстановки используем рассматриваемую формулу в качестве массива. Вначале выделим диапазон ячеек C2:C9, затем введем формулу через комбинацию Ctrl+Shift+Enter:

Функция ЧЗНАЧ выполняет преобразование полученных текстовых строк к числовым значениям. Описание аргументов функции ПОДСТАВИТЬ:

  • B2:B9 – диапазон ячеек, в которых требуется выполнить замену части строки;
  • “NaN” – фрагмент текста, который будет заменен;
  • 0 – фрагмент, который будет вставлен на место заменяемого фрагмента.

Для подстановки значений во всех ячейках необходимо нажать Ctrl+Shift+Enter, чтобы функция была выполнена в массиве. Результат вычислений:

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

Автозамена значения в текстовых ячейках с помощью функции ПОДСТАВИТЬ

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

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

Примечание: в данном примере ПОДСТАВИТЬ также используется в массиве Ctrl+Shift+Enter.

В результате получим:

Формула с макросом регулярного выражения и функция ПОДСТАВИТЬ

Пример 3. При составлении таблицы из предыдущего примера была допущена ошибка: все номера домов на улице Никольская должны быть записаны как «№№-Н», где №№ – номер дома. Как быстро исправить ошибку?

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

  1. Открыть редактор макросов (Ctrl+F11).
  2. Вставить исходный код функции (приведен ниже).
  3. Выполнить данный макрос и закрыть редактор кода.

Public Function RegExpExtract(Text As String , Pattern As String , Optional Item As Integer = 1) As String
On Error GoTo ErrHandl
Set regex = CreateObject( «VBScript.RegExp» )
regex.Pattern = Pattern
regex. Global = True
If regex.Test(Text) Then
Set matches = regex.Execute(Text)
RegExpExtract = matches.Item(Item – 1)
Exit Function
End If
ErrHandl:
RegExpExtract = CVErr(xlErrValue)
End Function

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

Регулярные выражения могут быть различными. Например, для выделения любого символа из текстовой строки в качестве второго аргумента необходимо передать значение «w», а цифры – «d».

Для решения задачи данного Примера 3 используем следующую запись:

  1. Функция ЕСЛИОШИБКА используется для возврата исходной строки текста (B2), поскольку результатом выполнения функции RegExpExtract(B2;»Никольская») будет код ошибки #ЗНАЧ!, если ей не удалось найти хотя бы одно вхождение подстроки «Никольская» в строке B2.
  2. Если результат выполнения сравнения значений RegExpExtract(B2;»Никольская»)=»Никольская» является ИСТИНА, будет выполнена функция ПОДСТАВИТЬ(B2;RegExpExtract(B2;»d+»);RegExpExtract(B2;»d+»)&»-Н»), где:
  • a. B2 – исходный текст, содержащий полный адрес;
  • b. RegExpExtract(B2;»d+») – формула, выделяющая номер дома из строки с полным адресом;
  • c. RegExpExtract(B2;»d+»)&»-Н» – новый номер, содержащий исходное значение и символы «-Н».

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

Особенности использования функции ПОДСТАВИТЬ в Excel

Функция ПОДСТАВИТЬ имеет следующую синтаксическую запись:

  • текст – обязательный аргумент, характеризующий текстовую строку, в которой необходимо выполнить замену части текста. Может быть задан как текстовая строка («некоторый текст») или ссылка на ячейку, которая содержит текстовые данные.
  • стар_текст – часть текстовой строки, принимаемой в качестве первого аргумента данной функции, которую требуется заменить. Аргумент обязателен для заполнения.
  • нов_текст – обязательный для заполнения аргумент, содержащий текстовые данные, которые будут вставлены на место заменяемой части строки.
  • [номер_вхождения] – числовое значение, характеризующее номер вхождения старого текста, который требуется заменить на фрагмент нового текста. Возможные варианты записи:
  1. Аргумент явно не указан. Функция ПОДСТАВИТЬ определит все части текстовой строки, соответствующие фрагменту текста стар_текст, и выполнит их замену на нов_текст;
  2. В качестве аргумента передано числовое значение. Функция ПОДСТАВИТЬ заменит только указанное вхождение. Отсчет начинается слева направо, число 1 соответствует первому вхождению. Например, функция =ПОДСТАВИТЬ(«текст №1, №2, №3»;«текст»;«новый»;1) вернет значение «новый_текст №1, №2, №3».
  1. Аргумент [номер_вхождения] должен быть задан из диапазон целых положительных чисел от 1 до n, где n определяется максимально допустимой длиной строки, содержащейся в объекте данных (например, в ячейке).
  2. Если в текстовой строке, представленной в качестве аргумента текст не содержится фрагмент, переданный в качестве аргумента стар_текст, функция ПОДСТАВИТЬ вернет строку текст без изменений.
  3. Если число вхождений заменяемого фрагмента в обрабатываемой строке меньше, чем числовое значение, переданное в качестве аргумент [номер_вхождения], функция ПОДСТАВИТЬ вернет текстовую строку в исходном виде. Например, аргументы функции («а 1 а 2 а 3»;«а»;«б»;4) вернут строку «а 1 а 2 а 3».
  4. Рассматриваемая функция чувствительная к регистру, то есть строки «Слово» и «слово» не являются тождественными.
  5. Для решения аналогичных задач по замене части символов текстовой строки можно использовать функцию ЗАМЕНИТЬ. Однако, в отличие от функции ПОДСТАВИТЬ, для ее использования необходимо явно указывать позицию начального символа для замены, а также количество символов, которые необходимо заменить. Функция автоматически выполняет поиск указанной части строки и производит ее замену, поэтому в большинстве случаев предлагает более удобный функционал для работы с текстовыми строками.

Быстрая замена значений по условию в Excel

Добрый день, уважаемые читатели блога! Сегодня поговорим о быстрой замене значений в таблице Excel. Зачем нам это нужно, когда есть формулы ЕСЛИ и условное форматирование? Ответ прост — для экономии времени. Но ведь можно ещё быстрее. Ниже будет пример с небольшой таблицей, где хочется сразу выделить или поместить нужное значение.

Есть две таблицы, одна оригинал, вторая для изменений. Все ученики кто получил 4 и выше имеют результат «Прошёл», у кого 3 и ниже — «Не прошёл».

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

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

  • вкладка «Разработчик», блок кнопок «Код»;
  • жмём «Visual Basic»;
  • добавляем новый модуль Insert -> Module.

Вставляем следующий код.

Sub Result()
Dim cell As Range
‘ Проверка каждой ячейки диапазона на прохождение
For Each cell In Range(«I2:L10»).Cells
If cell.Value
cell.Value = «Не прошёл»
ElseIf cell.Value >= 4 Then
cell.Value = «Прошёл»
End If
Next
End Sub

В этом случае используется связка из команд IF и ElseIf, что позволяет нам несколько расширить понимание формулы ЕСЛИ. Напомню, что макрос будет применён только к ячейкам из диапазона I2:L10!

Запускаем выбор макросов с помощью сочетания клавиш Alt+F8 и нажимаем кнопку «Выполнить».

Получаем результат. Во второй таблице я сразу вижу кто из учеников прошёл дальше, а кто нет. Ну и кому что необходимо подтянуть:)

Таким образом решается некая ограниченность формулы ЕСЛИ, ведь условия в макросе можно продолжить и подобрать свои, всего лишь изменив значения.

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

Примечание: Компонент Power Query в Excel 2016 называется Скачать и преобразовать. Информация в этой статье относится к обоим компонентам. Дополнительные сведения см. в статье Функция «Скачать и преобразовать» в Excel 2016.

Примечание: В конце этой статьи есть небольшое видео о том, как вывести редактор запросов.

В Power Query можно заменить одно значение другим в выбранных столбцах.

Задача

Замена текстовых значений

С помощью ленты редактора запросов

На ленте Редактора запросов выберите на вкладке Преобразование Замена значений.

С помощью контекстного меню Редактора запросов:

Щелкните текстовую ячейку правой кнопкой мыши и выберите команду Замена значений.

Чтобы заменить текстовые значения:

В диалоговом окне Замена значений введите значения в поля Значение для поиска и Заменить на.

Установите флажок Сравнивать содержимое ячейки целиком, чтобы заменить все содержимое ячеек. В противном случае при использовании команды Замена значений будут заменены все значения, соответствующие условию Значение для поиска.

Нажмите кнопку ОК.

Замена числовых, логических значений или значений даты и времени

С помощью ленты редактора запросов

На ленте Редактора запросов, на вкладке « преобразовать » выберите Замена значений.

С помощью контекстного меню Редактора запросов:

Щелкните ячейку с числовым значением или значением даты и времени правой кнопкой мыши и выберите команду Замена значений.

Чтобы заменить числовые, логические значения или значения даты и времени:

В диалоговом окне Замена значений введите значения в поля Значение для поиска и Заменить на.

Нажмите кнопку ОК.

Примечание: Редактор запросов отображается только при загрузке, редактировании или создании нового запроса с помощью Power Query. В видео показано окно редактора запросов, которое отображается после изменения запроса в книге Excel. Чтобы просмотреть редактор запросов, не загружая и не изменяя существующий запрос в книге, в разделе Получение внешних данных на вкладке ленты Power Query выберите Из других источников > Пустой запрос. В видео показан один из способов отображения редактора запросов.

Источник

 

vamesc

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

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

Здраствуйте, пожалуйста, помогите решить задачу! Как автоматически менять вводимые в ячеки значения на другие (как ВПР, только значения проставляются в ту же ячейку в которую вводятся данные).

 

Юрий М

Модератор

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

Контакты см. в профиле

Макросом. Вопрос: а зачем такие сложности? Используйте выпадающий список — всего три значения и ничего другого ввести будет невозможно.

 

vamesc

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

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

Дело в том, что сами значения маленькие и их быстрее вручную напечатать чем использовать выпадающий список, и еще один не маловажный момент — ярлычек выпадающего списка закрывает соседнюю ячейку куда нужно вводить номера (в оригинале таблица очень сжата и расширить ее нельзя), а цель приследуется только одна: максимум ускорить работу, в селепую, не переключая язык быстро вбивать первые символы и все. Нашел похожий пример, но из-за незнания VBA не получается расширить действие на оба столбца, и при пустых значениях выставляет #Н/Д. Если не сложно помогите усложнить). Прием думаю многим пригодится, полезная штука.

 

Автозамена? Параметры Excel — Правописание — Параметры автозамены.

 

vamesc

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

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

Спасибо! Хорошая идея, как вариант подходит, просто и понятно. Все же хочется общее решение, которое бы и в будущем в более сложных случаях пригодилось.

 

vamesc

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

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

Автозамена регистр в некоторых случаях не меняет, а это тоже важно, и с данной таблицей работает несколько пользователей, которым придется настраивать автозамену, объяснять зачем и для чего это нужно. Подскажите как доработать этот ариант из примера (только на два и более столбца, а лучше на определенный диапазон(ы), и без #Н/Д):  

  Option Explicit  
Private Sub Worksheet_Change(ByVal Target As Range)  
  If Target.Column <> 1 Or Target.Count > 1 Then Exit Sub  
  With Application  
  .EnableEvents = False  
  Target = .VLookup(Target.Value, Columns(«C:D»), 2, 0)  
  .EnableEvents = True  
  End With  
End Sub

 

Юрий М

Модератор

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

Контакты см. в профиле

На диапазон А1:В10  
If Target.Cells.Count > 1 Then Exit Sub  
If Not Intersect(Target, Range(«A1:B10»)) Is Nothing Then  
With Application  

 

Hugo

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

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

Такой вариант:  

  таблицу замены делаем такой:  

  «Контролируемый  
диапазон»  
A1:A10, D2:D11  
ТАБЛИЦА 2  
f FW  
F FW  
FW FW  
а FW  

  и т.д.    

  Я её сдвинул в  N:O, в N2 записан перечень контролируемых диапазонов!  
Его можно «динамически» менять и дополнять, только оставьте вокруг незаполненные ячейки (чтоб работал CurrentRegion).  

  Макрос:  

  Private Sub Worksheet_Change(ByVal Target As Range)  
   If Target.Cells.Count > 1 Then Exit Sub  
   If Not Intersect(Target, Range([n2].Value)) Is Nothing Then
       With Application  
           .EnableEvents = False  
           Dim a, i&  
           a = [n2].CurrentRegion.Value
           For i = 4 To UBound(a)  
               If a(i, 1) = Target.Value Then Target.Value = a(i, 2): Exit For  
           Next  
           .EnableEvents = True  
       End With  
   End If  
End Sub

 

Доброва времени суток! Юрий М и Hugo, вы не могли бы свои варианты решения вставить в мою таблицу и выложить на форуме, у меня не получается, VBA не знаю поэтому сложности в выявлении неправильных действий.

 

Hugo

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

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

Доброе утро!  
Я с работы не могу файлы выкладывать. Может быть кто-то кто может сделает пример по моему способу?  

  Private Sub Worksheet_Change(ByVal Target As Range)  
этот макрос кладёте в модуль нужного листа (как сделано в Вашем примере в post_333205.rar)  
Таблицу соответствий можно и не сдвигать, это не принципиально.

 

vamesc

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

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

Hugo, доброе утро! Мне уже не кспеху, я уже отработал (Хабаровск), так что могу подождать пока вы придете домой, пробовал в исходный лист вставлять ваш макрос но при изменении ячейки выдовало ошибку. Пока что использую метод Казанского (неплохо звучит: МЕТОД КАЗАНСКОГО:-)) с автозаменой, но макрос будет полезнее, хотелось бы чтобы было в нем немного понятнее (если вас это не затруднит) где и что изменять, для применения его на других таблицах с разной структурой и данными, как диапазон «таблицы2» вынести на другой лист, менять контролируемые диапазоны.

 

Hugo

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

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

Доброе :)  

  Хорошо Вам, у Вас уже вечер пятницы, совсем спешить с работой не нужно :)  

  Вот именно чтоб проще менять «контролируемые» ячейки, я и вынес их перечень на лист, над таблицей соответствия.  
Но можно и где-то рядом его расположить, не важно.  
Просто пишите в любой указанной в коде ячейке через запятую перечень диапазонов: A1:A10, H2:H3 и т.д.  
А ниже начиная с четвёртой строки (на это число ориентирован код) можете «бесконечно» продлевать список соответствий.  
Можно эти параметры располагать на другом (служебном) листе, или всё прописать непосредственно в коде (но так сложнее их менять, если понадобится).  

  Этот код не мешает вводить то, чего нет в списке, например букву «a»  
Можно его чуть изменить, чтоб не обращал внимания на регистр — так можно список сократить в 2 раза :)  

  Если до вечера файл не появится — выложу.

 

Тоже решал.Посчитал решение Hugo достаточно)

 

Hugo

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

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

Тоже вариант.  

  Я файл уже подготовил — чуть развил идею :)  
Вечером покажу, может кому пригодится.

 

Hugo

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

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

 

Hugo и Маугли, спасибо! Hugo, раз уж вы начали развивать идею :-), можно сделать так: в диапазоне А1:А10 используется для подстановки Таблица1, в В1:В10 — Таблица2 (Таблица1 и Таблица2 с разными данными) и т. д., и использовать вариант Маугли с «Диспетчером имен»?

 

vamesc

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

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

Hugo вариант очень хороший, но разобратся для меня сложновато (где что можно поменять), объединитесь с Маугли, в его варианте все сразу понятно и где диапазоны выставить которые будут контролироваться, и где поставить именнованный диапазон.

 

Hugo, разобрался где менять диапазоны), теперь нужно придти от частного к общему, использовать один исходный код для всех листов. К примеру зашел в сервис лист в первой строке над каждой таблицей указал необходимые листы, во второй необходимые диапазоны для этих листов, только вот как диапазоны перечислять? Может как нибудь так Лист2!F24:F28, Лист1!A24:A28, и т.д. Вариант получится универсальный и практичный!

 

vamesc

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

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

Hugo, спасибо большое! Рабочий день прошел на ура! Скажите возможно ли объеденить код с вашими вариантами в один, и исппользовать несколько разных диапазонов подстановки на разных диапазонах одного листа?

 

Hugo

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

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

Можно.  
В коде листа есть строка:  

  If Not Intersect(Target, Range(.[A2].Value)) Is Nothing Then

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

 

vamesc

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

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

#21

13.05.2012 02:55:24

Спасибо, вы мне очень помогли! Буду разбираться дальше, вопросов и идей еще куча, но по другим темам)

На чтение 9 мин Просмотров 7.5к.

Содержание

  1. Функция ПОДСТАВИТЬ при условии подставляет значение
  2. Автозамена значения в текстовых ячейках с помощью функции ПОДСТАВИТЬ
  3. Формула с макросом регулярного выражения и функция ПОДСТАВИТЬ
  4. Особенности использования функции ПОДСТАВИТЬ в Excel
  5. Быстрая замена значений по условию в Excel
  6. Задача
  7. Замена текстовых значений
  8. Чтобы заменить текстовые значения:
  9. Замена числовых, логических значений или значений даты и времени
  10. Чтобы заменить числовые, логические значения или значения даты и времени:

Функция ПОДСТАВИТЬ в Excel выполняет динамическую замену определенной части строки на указанное новое значение и возвращает новую строку, содержащую замененную часть текста. Благодаря этой функции можно подставлять значения из другой ячейки. Рассмотрим возможности функции на конкретных примерах в Excel.

Функция ПОДСТАВИТЬ при условии подставляет значение

Пример 1. В результате расчетов, произведенных в некотором приложении, были получены некоторые значения, записанные в таблицу Excel. Некоторые величины рассчитать не удалось, и вместо числового представления была сгенерирована ошибка “NaN”. Необходимо заменить все значения “NaN” на число 0 в соответствующих строках.

Для замены и подстановки используем рассматриваемую формулу в качестве массива. Вначале выделим диапазон ячеек C2:C9, затем введем формулу через комбинацию Ctrl+Shift+Enter:

Функция ЧЗНАЧ выполняет преобразование полученных текстовых строк к числовым значениям. Описание аргументов функции ПОДСТАВИТЬ:

  • B2:B9 – диапазон ячеек, в которых требуется выполнить замену части строки;
  • “NaN” – фрагмент текста, который будет заменен;
  • 0 – фрагмент, который будет вставлен на место заменяемого фрагмента.

Для подстановки значений во всех ячейках необходимо нажать Ctrl+Shift+Enter, чтобы функция была выполнена в массиве. Результат вычислений:

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

Автозамена значения в текстовых ячейках с помощью функции ПОДСТАВИТЬ

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

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

Примечание: в данном примере ПОДСТАВИТЬ также используется в массиве Ctrl+Shift+Enter.

В результате получим:

Формула с макросом регулярного выражения и функция ПОДСТАВИТЬ

Пример 3. При составлении таблицы из предыдущего примера была допущена ошибка: все номера домов на улице Никольская должны быть записаны как «№№-Н», где №№ – номер дома. Как быстро исправить ошибку?

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

  1. Открыть редактор макросов (Ctrl+F11).
  2. Вставить исходный код функции (приведен ниже).
  3. Выполнить данный макрос и закрыть редактор кода.

Public Function RegExpExtract(Text As String , Pattern As String , Optional Item As Integer = 1) As String
On Error GoTo ErrHandl
Set regex = CreateObject( «VBScript.RegExp» )
regex.Pattern = Pattern
regex. Global = True
If regex.Test(Text) Then
Set matches = regex.Execute(Text)
RegExpExtract = matches.Item(Item – 1)
Exit Function
End If
ErrHandl:
RegExpExtract = CVErr(xlErrValue)
End Function

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

Регулярные выражения могут быть различными. Например, для выделения любого символа из текстовой строки в качестве второго аргумента необходимо передать значение «w», а цифры – «d».

Для решения задачи данного Примера 3 используем следующую запись:

  1. Функция ЕСЛИОШИБКА используется для возврата исходной строки текста (B2), поскольку результатом выполнения функции RegExpExtract(B2;»Никольская») будет код ошибки #ЗНАЧ!, если ей не удалось найти хотя бы одно вхождение подстроки «Никольская» в строке B2.
  2. Если результат выполнения сравнения значений RegExpExtract(B2;»Никольская»)=»Никольская» является ИСТИНА, будет выполнена функция ПОДСТАВИТЬ(B2;RegExpExtract(B2;»d+»);RegExpExtract(B2;»d+»)&»-Н»), где:
  • a. B2 – исходный текст, содержащий полный адрес;
  • b. RegExpExtract(B2;»d+») – формула, выделяющая номер дома из строки с полным адресом;
  • c. RegExpExtract(B2;»d+»)&»-Н» – новый номер, содержащий исходное значение и символы «-Н».

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

Особенности использования функции ПОДСТАВИТЬ в Excel

Функция ПОДСТАВИТЬ имеет следующую синтаксическую запись:

  • текст – обязательный аргумент, характеризующий текстовую строку, в которой необходимо выполнить замену части текста. Может быть задан как текстовая строка («некоторый текст») или ссылка на ячейку, которая содержит текстовые данные.
  • стар_текст – часть текстовой строки, принимаемой в качестве первого аргумента данной функции, которую требуется заменить. Аргумент обязателен для заполнения.
  • нов_текст – обязательный для заполнения аргумент, содержащий текстовые данные, которые будут вставлены на место заменяемой части строки.
  • [номер_вхождения] – числовое значение, характеризующее номер вхождения старого текста, который требуется заменить на фрагмент нового текста. Возможные варианты записи:
  1. Аргумент явно не указан. Функция ПОДСТАВИТЬ определит все части текстовой строки, соответствующие фрагменту текста стар_текст, и выполнит их замену на нов_текст;
  2. В качестве аргумента передано числовое значение. Функция ПОДСТАВИТЬ заменит только указанное вхождение. Отсчет начинается слева направо, число 1 соответствует первому вхождению. Например, функция =ПОДСТАВИТЬ(«текст №1, №2, №3»;«текст»;«новый»;1) вернет значение «новый_текст №1, №2, №3».

Примечания:

  1. Аргумент [номер_вхождения] должен быть задан из диапазон целых положительных чисел от 1 до n, где n определяется максимально допустимой длиной строки, содержащейся в объекте данных (например, в ячейке).
  2. Если в текстовой строке, представленной в качестве аргумента текст не содержится фрагмент, переданный в качестве аргумента стар_текст, функция ПОДСТАВИТЬ вернет строку текст без изменений.
  3. Если число вхождений заменяемого фрагмента в обрабатываемой строке меньше, чем числовое значение, переданное в качестве аргумент [номер_вхождения], функция ПОДСТАВИТЬ вернет текстовую строку в исходном виде. Например, аргументы функции («а 1 а 2 а 3»;«а»;«б»;4) вернут строку «а 1 а 2 а 3».
  4. Рассматриваемая функция чувствительная к регистру, то есть строки «Слово» и «слово» не являются тождественными.
  5. Для решения аналогичных задач по замене части символов текстовой строки можно использовать функцию ЗАМЕНИТЬ. Однако, в отличие от функции ПОДСТАВИТЬ, для ее использования необходимо явно указывать позицию начального символа для замены, а также количество символов, которые необходимо заменить. Функция автоматически выполняет поиск указанной части строки и производит ее замену, поэтому в большинстве случаев предлагает более удобный функционал для работы с текстовыми строками.

Быстрая замена значений по условию в Excel

Добрый день, уважаемые читатели блога! Сегодня поговорим о быстрой замене значений в таблице Excel. Зачем нам это нужно, когда есть формулы ЕСЛИ и условное форматирование? Ответ прост — для экономии времени. Но ведь можно ещё быстрее. Ниже будет пример с небольшой таблицей, где хочется сразу выделить или поместить нужное значение.

Есть две таблицы, одна оригинал, вторая для изменений. Все ученики кто получил 4 и выше имеют результат «Прошёл», у кого 3 и ниже — «Не прошёл».

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

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

  • вкладка «Разработчик», блок кнопок «Код»;
  • жмём «Visual Basic»;
  • добавляем новый модуль Insert -> Module.

Вставляем следующий код.

Sub Result()
Dim cell As Range
‘ Проверка каждой ячейки диапазона на прохождение
For Each cell In Range(«I2:L10»).Cells
If cell.Value
cell.Value = «Не прошёл»
ElseIf cell.Value >= 4 Then
cell.Value = «Прошёл»
End If
Next
End Sub

В этом случае используется связка из команд IF и ElseIf, что позволяет нам несколько расширить понимание формулы ЕСЛИ. Напомню, что макрос будет применён только к ячейкам из диапазона I2:L10!

Запускаем выбор макросов с помощью сочетания клавиш Alt+F8 и нажимаем кнопку «Выполнить».

Получаем результат. Во второй таблице я сразу вижу кто из учеников прошёл дальше, а кто нет. Ну и кому что необходимо подтянуть:)

Таким образом решается некая ограниченность формулы ЕСЛИ, ведь условия в макросе можно продолжить и подобрать свои, всего лишь изменив значения.

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

Примечание: Компонент Power Query в Excel 2016 называется Скачать и преобразовать. Информация в этой статье относится к обоим компонентам. Дополнительные сведения см. в статье Функция «Скачать и преобразовать» в Excel 2016.

Примечание: В конце этой статьи есть небольшое видео о том, как вывести редактор запросов.

В Power Query можно заменить одно значение другим в выбранных столбцах.

Задача

Замена текстовых значений

С помощью ленты редактора запросов

На ленте Редактора запросов выберите на вкладке Преобразование Замена значений.

С помощью контекстного меню Редактора запросов:

Щелкните текстовую ячейку правой кнопкой мыши и выберите команду Замена значений.

Чтобы заменить текстовые значения:

В диалоговом окне Замена значений введите значения в поля Значение для поиска и Заменить на.

Установите флажок Сравнивать содержимое ячейки целиком, чтобы заменить все содержимое ячеек. В противном случае при использовании команды Замена значений будут заменены все значения, соответствующие условию Значение для поиска.

Нажмите кнопку ОК.

Замена числовых, логических значений или значений даты и времени

С помощью ленты редактора запросов

На ленте Редактора запросов, на вкладке « преобразовать » выберите Замена значений.

С помощью контекстного меню Редактора запросов:

Щелкните ячейку с числовым значением или значением даты и времени правой кнопкой мыши и выберите команду Замена значений.

Чтобы заменить числовые, логические значения или значения даты и времени:

В диалоговом окне Замена значений введите значения в поля Значение для поиска и Заменить на.

Нажмите кнопку ОК.

Примечание: Редактор запросов отображается только при загрузке, редактировании или создании нового запроса с помощью Power Query. В видео показано окно редактора запросов, которое отображается после изменения запроса в книге Excel. Чтобы просмотреть редактор запросов, не загружая и не изменяя существующий запрос в книге, в разделе Получение внешних данных на вкладке ленты Power Query выберите Из других источников > Пустой запрос. В видео показан один из способов отображения редактора запросов.

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

Как в Excel сделать автоматическое изменение диапазона

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

Сформируйте отчет по доходности нашего объекта инвестирования, так как показано на рисунке:

Доходы.

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

  1. Выберите инструмент «Формулы»-«Определенные имена»-«Присвоить имя».
  2. Заполните поля диалогового окна «Создание имени» как на рисунке. Обратите внимание на то, что в поле «Диапазон:» мы используем функцию =СМЕЩ, а в одном из ее параметров используем функцию =СЧЕТ. Пример: =СМЕЩ(Лист1!$B$2;0;0;СЧЁТ(Лист1!$B:$B);1)
  3. Создание имени.

  4. Переместите курсор в ячейку D2 и введите функцию =СУММ с именем «доход» в ее параметрах.

Пример.

Теперь постепенно заполняя ячейки в столбце B, мы можем проследить, как изменяется охват ячеек именем «доход».



Функция СМЕЩ в Excel

Разберем более детально функции, которые мы вводили в поле диапазон при создании динамического имени.

Функция =СМЕЩ определяет наш диапазон в зависимости от количества заполненных ячеек в столбце B. 5 параметров функции =СМЕЩ(начальная ячейка; смещение размера диапазона по строкам; смещение по столбцам; размер диапазона в высоту; размер диапазона в ширину):

СМЕЩ.

  1. «Начальная ячейка» – указывает верхнюю левую ячейку, от которой будет динамически расширяться диапазон как вниз, так и вправо (при необходимости).
  2. «Смещение по строкам» – параметр определяет, на какое количество нужно смещать диапазон по вертикали от начальной ячейки (первого параметра). Значения могут быть нулевыми и отрицательными.
  3. «Смещение по столбцам» – параметр определяет, на какое количество нужно смещать по горизонтали от начальной ячейки. Значения могут быть даже нулевыми и отрицательными.
  4. «Размер диапазона в высоту» – количество ячеек, на которое нужно увеличить диапазон в высоту. По сути, название говорит само за себя.
  5. «Размер диапазона в ширину» – количество ячеек, на которое нужно увеличить в ширину от начальной ячейки.

Последние 2 параметра функции являются необязательными. Если их не заполнять, то диапазон будет состоять из 1-ой ячейки. Например: =СМЕЩ(A1;0;0) – это просто ячейка A1, а параметр =СМЕЩ(A1;2;0) ссылается на A3.

Теперь разберем функцию: =СЧЕТ, которую мы указывали в 4-ом параметре функции: =СМЕЩ.

Что определяет функция СЧЕТ

СЧЕТ.

Функция =СЧЕТ($B:$B) автоматически считает количество заполненных ячеек в столбце B.

Таким образом, мы с помощью функции =СЧЕТ() и =СМЕЩ() автоматизируем процесс формирования диапазона для имени «доход», что делает его динамическим. Теперь еще раз посмотрим на нашу формулу, которой мы присвоили имя «доход»: =СМЕЩ(Лист1!$B$2;0;0;СЧЁТ(Лист1!$B:$B);1)

Читать данную формулу следует так: первый параметры указывает на то, что наш автоматически изменяемый диапазон начинается в ячейке B2. Следующие два параметра имеют значения 0;0 – это значит, что динамический диапазон не смещается относительно начальной ячейки B2. А увеличивается только его размер по вертикали, о чем свидетельствует 4-тый параметр. В нем находится функция СЧЕТ и она возвращает число равно количеству заполненных ячеек в столбце B. Соответственно количество ячеек по вертикали в диапазоне будет равно числу, которое нам даст функция СЧЕТ. А за ширину диапазона у нас отвечает последний 5-тый параметр, где находиться число 1.

Благодаря функции СЧЕТ мы рационально загружаем в память только заполненные ячейки из столбца B, а не весь столбец целиком. Данный факт исключает возможные ошибки связанные с памятью при работе с данным документом.

Динамические диаграммы в Excel

У нас есть динамическое имя, теперь создадим динамическую диаграмму для данного типа отчета:

  1. Выделите диапазон B2:B6 и выберите инструмент: «Вставка»-«Диаграммы»-«Гистограмма»-«Гистограмма с группировкой».
  2. Щелкните левой кнопкой мышки по любому столбцу гистограммы и в строке формул отобразится функция диаграммы: =РЯД().
  3. РЯД.

  4. В строке формул измените параметры функции: =РЯД(Лист1!$B$1;;Лист1!$B$2:$B$7;1) на =РЯД(Лист1!$B$1;;Лист1!доход;1).
  5. В отчет добавьте новую запись в ячейки A8 — «июль», B8 — «77000» соответственно. И убедитесь, что на диаграмме автоматически добавился новый столбец.

Динамическая диаграмма.

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

Содержание

  • Процедура изменения цвета ячеек в зависимости от содержимого
    • Способ 1: условное форматирование
    • Способ 2: использование инструмента «Найти и выделить»
  • Вопросы и ответы

Заливка цветом ячеек в Microsoft Excel

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

Процедура изменения цвета ячеек в зависимости от содержимого

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

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

Но выход существует. Для ячеек, которые содержат динамические (изменяющиеся) значения применяется условное форматирование, а для статистических данных можно использовать инструмент «Найти и заменить».

Способ 1: условное форматирование

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

Посмотрим, как этот способ работает на конкретном примере. Имеем таблицу доходов предприятия, в которой данные разбиты помесячно. Нам нужно выделить разными цветами те элементы, в которых величина доходов менее 400000 рублей, от 400000 до 500000 рублей и превышает 500000 рублей.

  1. Выделяем столбец, в котором находится информация по доходам предприятия. Затем перемещаемся во вкладку «Главная». Щелкаем по кнопке «Условное форматирование», которая располагается на ленте в блоке инструментов «Стили». В открывшемся списке выбираем пункт «Управления правилами…».
  2. Переход к управлению правилами в Microsoft Excel

  3. Запускается окошко управления правилами условного форматирования. В поле «Показать правила форматирования для» должно быть установлено значение «Текущий фрагмент». По умолчанию именно оно и должно быть там указано, но на всякий случай проверьте и в случае несоответствия измените настройки согласно вышеуказанным рекомендациям. После этого следует нажать на кнопку «Создать правило…».
  4. Переход к созданию правила в Microsoft Excel

  5. Открывается окно создания правила форматирования. В списке типов правил выбираем позицию «Форматировать только ячейки, которые содержат». В блоке описания правила в первом поле переключатель должен стоять в позиции «Значения». Во втором поле устанавливаем переключатель в позицию «Меньше». В третьем поле указываем значение, элементы листа, содержащие величину меньше которого, будут окрашены определенным цветом. В нашем случае это значение будет 400000. После этого жмем на кнопку «Формат…».
  6. Окно создания правила форматирования в Microsoft Excel

  7. Открывается окно формата ячеек. Перемещаемся во вкладку «Заливка». Выбираем тот цвет заливки, которым желаем, чтобы выделялись ячейки, содержащие величину менее 400000. После этого жмем на кнопку «OK» в нижней части окна.
  8. Выбор цвета ячейки в Microsoft Excel

  9. Возвращаемся в окно создания правила форматирования и там тоже жмем на кнопку «OK».
  10. Создание правила форматирования в Microsoft Excel

  11. После этого действия мы снова будем перенаправлены в Диспетчер правил условного форматирования. Как видим, одно правило уже добавлено, но нам предстоит добавить ещё два. Поэтому снова жмем на кнопку «Создать правило…».
  12. Переход к созданию следующего правила в Microsoft Excel

  13. И опять мы попадаем в окно создания правила. Перемещаемся в раздел «Форматировать только ячейки, которые содержат». В первом поле данного раздела оставляем параметр «Значение ячейки», а во втором выставляем переключатель в позицию «Между». В третьем поле нужно указать начальное значение диапазона, в котором будут форматироваться элементы листа. В нашем случае это число 400000. В четвертом указываем конечное значение данного диапазона. Оно составит 500000. После этого щелкаем по кнопке «Формат…».
  14. Переход в окно форматирования в Microsoft Excel

  15. В окне форматирования снова перемещаемся во вкладку «Заливка», но на этот раз уже выбираем другой цвет, после чего жмем на кнопку «OK».
  16. Окно форматирования в Microsoft Excel

    Lumpics.ru

  17. После возврата в окно создания правила тоже жмем на кнопку «OK».
  18. Завершене создания правила в Microsoft Excel

  19. Как видим, в Диспетчере правил у нас создано уже два правила. Таким образом, осталось создать третье. Щелкаем по кнопке «Создать правило».
  20. Переход к созданию последнего правила в Microsoft Excel

  21. В окне создания правила опять перемещаемся в раздел «Форматировать только ячейки, которые содержат». В первом поле оставляем вариант «Значение ячейки». Во втором поле устанавливаем переключатель в полицию «Больше». В третьем поле вбиваем число 500000. Затем, как и в предыдущих случаях, жмем на кнопку «Формат…».
  22. Окно создания правила в Microsoft Excel

  23. В окне «Формат ячеек» опять перемещаемся во вкладку «Заливка». На этот раз выбираем цвет, который отличается от двух предыдущих случаев. Выполняем щелчок по кнопке «OK».
  24. Окно формат ячеек в Microsoft Excel

  25. В окне создания правил повторяем нажатие на кнопку «OK».
  26. Последнее правило создано в Microsoft Excel

  27. Открывается Диспетчер правил. Как видим, все три правила созданы, поэтому жмем на кнопку «OK».
  28. Завершение работы в Диспетчере правил в Microsoft Excel

  29. Теперь элементы таблицы окрашены согласно заданным условиям и границам в настройках условного форматирования.
  30. Ячейки окрашены согласно заданным условиям в Microsoft Excel

  31. Если мы изменим содержимое в одной из ячеек, выходя при этом за границы одного из заданных правил, то при этом данный элемент листа автоматически сменит цвет.

Смена цвета в ячеке в Microsoft Excel

Кроме того, можно использовать условное форматирование несколько по-другому для окраски элементов листа цветом.

  1. Для этого после того, как из Диспетчера правил мы переходим в окно создания форматирования, то остаемся в разделе «Форматировать все ячейки на основании их значений». В поле «Цвет» можно выбрать тот цвет, оттенками которого будут заливаться элементы листа. Затем следует нажать на кнопку «OK».
  2. Форматирование ячеек на основании их значений в Microsoft Excel

  3. В Диспетчере правил тоже жмем на кнопку «OK».
  4. Диспетчер правил в Microsoft Excel

  5. Как видим, после этого ячейки в колонке окрашиваются различными оттенками одного цвета. Чем значение, которое содержит элемент листа больше, тем оттенок светлее, чем меньше – тем темнее.

Ячейки отформатированы в Microsoft Excel

Урок: Условное форматирование в Экселе

Способ 2: использование инструмента «Найти и выделить»

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

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

  1. Выделяем столбец с данными, которые следует отформатировать цветом. Затем переходим во вкладку «Главная» и жмем на кнопку «Найти и выделить», которая размещена на ленте в блоке инструментов «Редактирование». В открывшемся списке кликаем по пункту «Найти».
  2. Переход в окно Найти и заменить в Microsoft Excel

  3. Запускается окно «Найти и заменить» во вкладке «Найти». Прежде всего, найдем значения до 400000 рублей. Так как у нас нет ни одной ячейки, где содержалось бы значение менее 300000 рублей, то, по сути, нам нужно выделить все элементы, в которых содержатся числа в диапазоне от 300000 до 400000. К сожалению, прямо указать данный диапазон, как в случае применения условного форматирования, в данном способе нельзя.

    Но существует возможность поступить несколько по-другому, что нам даст тот же результат. Можно в строке поиска задать следующий шаблон «3?????». Знак вопроса означает любой символ. Таким образом, программа будет искать все шестизначные числа, которые начинаются с цифры «3». То есть, в выдачу поиска попадут значения в диапазоне 300000 – 400000, что нам и требуется. Если бы в таблице были числа меньше 300000 или меньше 200000, то для каждого диапазона в сотню тысяч поиск пришлось бы производить отдельно.

    Вводим выражение «3?????» в поле «Найти» и жмем на кнопку «Найти все».

  4. Запуск поиска в Microsoft Excel

  5. После этого в нижней части окошка открываются результаты поисковой выдачи. Кликаем левой кнопкой мыши по любому из них. Затем набираем комбинацию клавиш Ctrl+A. После этого выделяются все результаты поисковой выдачи и одновременно выделяются элементы в столбце, на которые данные результаты ссылаются.
  6. Выделение результатоа поисковой выдачи в Microsoft Excel

  7. После того, как элементы в столбце выделены, не спешим закрывать окно «Найти и заменить». Находясь во вкладке «Главная» в которую мы переместились ранее, переходим на ленту к блоку инструментов «Шрифт». Кликаем по треугольнику справа от кнопки «Цвет заливки». Открывается выбор различных цветов заливки. Выбираем тот цвет, который мы желаем применить к элементам листа, содержащим величины менее 400000 рублей.
  8. Выбор цвета заливки в Microsoft Excel

  9. Как видим, все ячейки столбца, в которых находятся значения менее 400000 рублей, выделены выбранным цветом.
  10. Ячейки выделены синим цветом в Microsoft Excel

  11. Теперь нам нужно окрасить элементы, в которых располагаются величины в диапазоне от 400000 до 500000 рублей. В этот диапазон входят числа, которые соответствуют шаблону «4??????». Вбиваем его в поле поиска и щелкаем по кнопке «Найти все», предварительно выделив нужный нам столбец.
  12. Поиск второго интервала значений в Microsoft Excel

  13. Аналогично с предыдущим разом в поисковой выдаче производим выделение всего полученного результата нажатием комбинации горячих клавиш CTRL+A. После этого перемещаемся к значку выбора цвета заливки. Кликаем по нему и жмем на пиктограмму нужного нам оттенка, который будет окрашивать элементы листа, где находятся величины в диапазоне от 400000 до 500000.
  14. Выбор цвета заливки для второго диапазона данных в Microsoft Excel

  15. Как видим, после этого действия все элементы таблицы с данными в интервале с 400000 по 500000 выделены выбранным цветом.
  16. Ячейки выделены зеленым цветом в Microsoft Excel

  17. Теперь нам осталось выделить последний интервал величин – более 500000. Тут нам тоже повезло, так как все числа более 500000 находятся в интервале от 500000 до 600000. Поэтому в поле поиска вводим выражение «5?????» и жмем на кнопку «Найти все». Если бы были величины, превышающие 600000, то нам бы пришлось дополнительно производить поиск для выражения «6?????» и т.д.
  18. Поиск третьего интервала значений в Microsoft Excel

  19. Опять выделяем результаты поиска при помощи комбинации Ctrl+A. Далее, воспользовавшись кнопкой на ленте, выбираем новый цвет для заливки интервала, превышающего 500000 по той же аналогии, как мы это делали ранее.
  20. Выбор цвета заливки для третьего диапазона данных в Microsoft Excel

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

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

Цвет не поменялся после изменения значения в ячейке в Microsoft Excel

Урок: Как сделать поиск в Экселе

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

Like this post? Please share to your friends:
  • Автоматическое изменение даты в ячейке excel
  • Автоматическое изменение даты в word
  • Автоматическое заполнение бланков excel по списку
  • Автоматическое изменение данных в excel
  • Автоматическое заполнение бланка excel