Как проверить кириллица или латиница в excel

Обновлено: 07.07.2024

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

Как найти в ячейке текстовые символы (буквы и цифры)

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

  1. Выделяем тот диапазон, который является изначальным и копируем его в соседнюю колонку.
  2. Затем выделяем второй диапазон.
  3. Открываем вкладку «!SEMTools». Там в самой левой части панели инструментов будет вкладка «Обнаружить».
  4. После этого открываем меню «Символы».
  5. Затем появится дополнительное меню, в котором надо найти пункт «Буквы-цифры» и нажать на него.

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

Как найти в ячейке таблицы цифры

Иногда нужно определить ячейки, в которой есть цифры, но они находятся вместе с текстом. Когда таких ячеек становится очень много, может быть довольно нелегко определить их. Перед тем, как реализовывать эту задачу, нужно определиться с некоторыми базовыми терминами. Главное наше понятие – «обнаружить». Это означает – проверить, есть ли определенный тип символа в строке. Если да, возвращается значение «ИСТИНА», если нет «ЛОЖЬ». Если же кроме поиска цифр в ячейке пользователь хочет произвести иные действия, то можно воспользоваться дальнейшими разделами этой инструкции.

Второе понятие, которое нужно разобрать – цифры. Это интегральный термин, который обозначает аж 10 символов, которые соответствуют числам от 0 до 9. Соответственно, чтобы проверить наличие чисел, пользователю нужно 10 раз проверить диапазон. Это можно сделать с помощью функции ЕСЛИ, но такой подход требует очень много времени.

Чтобы решить эту проблему, можно воспользоваться специальной формулой, которая выполнит все проверки за один раз: =СЧЁТ(ПОИСК(;A1))>0. Эта функция имеет тот же синтаксис, что и та, которая ищет кириллические символы в тексте.

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

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

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

Также можно воспользоваться формулой для того, чтобы отыскать в диапазоне ячеек необходимые цифры. Для этого надо применять комбинацию функций СЧЕТ и ПОИСК. С ее помощью можно обнаружить не только отдельные цифры, но и целые числовые последовательности: =СЧЁТ(ПОИСК(;A1))>0.

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

Как узнать, что ячейка Эксель содержит латиницу

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

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

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

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

Основная проблема поиска латинских букв, что их в два с половиной раза больше, чем цифр. Следовательно, нужно задавать программе цикл, состоящий из 26 итераций, что может быть довольно напряжно. Но если использовать формулу массива, состоящую из приведенных выше функций СЧЕТ и ПОИСК, то эта затея уже и не кажется настолько сложной: =СЧЁТ(ПОИСК(;A1))>0. Эта формула вполне подходит для большинства ситуаций. Например, если нет возможности установить соответствующие макросы, которые бы смогли делать это проще и быстрее.

В описанной выше формуле A1 – это та ячейка, в которой осуществляется проверка. Соответственно, вам нужно поставить ту, которая подходит в вашей ситуации. В результате проверки с помощью этой функции возвращается логическое значение. Если совпадения обнаруживаются, то оператор возвращает ИСТИНА, если их нет – ЛОЖЬ.

Функция ПОИСК не дает возможности учитывать регистр при поиске символов. Чтобы это сделать, надо воспользоваться оператором НАЙТИ, который выполняет те же операции, имеет такие же самые аргументы, только уже учитывает регистр. Еще один способ – сделать описанную выше формулу формулой массива. В таком случае она будет иметь следующий вид:.

Поскольку это формула массива, ее нужно указывать без скобок. При этом после ввода надо нажать комбинацию клавиш Ctrl + Shift + Enter (вместо простого нажатия клавиши ввода, как в случае с обычной функцией), после чего фигурные скобки появятся сами.

Эта формула должна записываться так, как формула массива. Следовательно, нужно нажать комбинацию клавиш Ctrl + Shift + Enter вместо простого нажатия клавиши ввода. Но есть некоторые исключения, при которых эта функция не будет работать. Нужно предварительно убедиться в том, что язык по умолчанию для программ не в кодировке Unicode стоит русский. В этом случае проблем возникнуть не должно. Эти формулы имеют некоторые отличия между собой. Вместо 33 букв последняя формула применяет только 32. То есть, она не учитывает букву ё, как кириллическую.

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

Как найти слова в ячейке, которые содержат кириллицу и латиницу

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

Как найти в ячейке заглавные буквы

Чтобы найти заглавные буквы, необходимо воспользоваться функцией НАЙТИ, а в качестве аргументов указать заглавные кириллические буквы (или элементы латинского алфавита, если нужно найти их) или же их коды.

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

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

  1. Делаем нижний регистр значений в отдельной ячейке.
  2. Сравниваем результаты с первоначальными.
  3. После этого используем следующую формулу: =НЕ(СОВПАД(СТРОЧН(A1);A1))

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

Поиск символов в Excel при помощи регулярных выражений

Можно также воспользоваться регулярными выражениями для того, чтобы найти символы. Лучше всего это делать с помощью инструмента !SEMTools, поскольку он автоматизирует множество процессов их использования. Спектр использования регулярных выражений в Excel достаточно широк. Мы же остановимся прежде всего на функциях ПОИСК, ЗАМЕНИТЬ, ИЗВЛЕЧЬ.

Приятная новость: эти функции можно использовать как в Гугл таблицах, так и в Excel с этой настройкой.

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

Что делать с найденными символами

Хорошо. Предположим, мы нашли символы. А что с ними можно делать дальше? Здесь есть несколько возможных вариантов, как можно поступить. Например, можно их удалить. Например, если мы среди кириллических значений нашли латиницу. Также можно заменить ее на аналогичный символ, только в кириллице (например, большую английскую М на русскую М) или же извлечь этот символ для использования в другой формуле.

Удаление лишних символов в Excel

Извлечение определенных символов в Excel

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

Изменение символов в Excel

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

Здравствуйте. Для сайта Википедия нужен скрипт. Требуется около 100 фамилий биатлонистов "переделать" с латиницы (и не только) на кириллицу. Нужно именно по принципу:

Martin Fourcade - Мартен Фуркад
Björn Ferry - Бьёрн Ферри
Ole Einar Bjørndalen - Уле-Эйнар Бьёрндален

Вдобавок, в зависимости от гонки фамилии могут меняться местами.

Т.е. нужно что-то вроде массовой замены "Найти" и "Заменить на".

У кого-нибудь есть идеи? Спасибо :))

Здравствуйте. Для сайта Википедия нужен скрипт. Требуется около 100 фамилий биатлонистов "переделать" с латиницы (и не только) на кириллицу. Нужно именно по принципу:

Martin Fourcade - Мартен Фуркад
Björn Ferry - Бьёрн Ферри
Ole Einar Bjørndalen - Уле-Эйнар Бьёрндален

Вдобавок, в зависимости от гонки фамилии могут меняться местами.

Т.е. нужно что-то вроде массовой замены "Найти" и "Заменить на".

У кого-нибудь есть идеи? Спасибо :)) dimakdd

Martin Fourcade - Мартен Фуркад
Björn Ferry - Бьёрн Ферри
Ole Einar Bjørndalen - Уле-Эйнар Бьёрндален

Вдобавок, в зависимости от гонки фамилии могут меняться местами.

Т.е. нужно что-то вроде массовой замены "Найти" и "Заменить на".

У кого-нибудь есть идеи? Спасибо :)) Автор - dimakdd
Дата добавления - 12.11.2017 в 18:16


в основном, называются "транслит".
Ищите, и обрящете.
Правда, как с использованием транслита изобразить Fernand Renault, большой вопрос.
в основном, называются "транслит".
Ищите, и обрящете.
Правда, как с использованием транслита изобразить Fernand Renault, большой вопрос. RAN
в основном, называются "транслит".
Ищите, и обрящете.
Правда, как с использованием транслита изобразить Fernand Renault, большой вопрос. Автор - RAN
Дата добавления - 12.11.2017 в 18:27 Хм. а по какому принципу Ole Einar превращается в Уле-Эйнар (через дефис). Что-то подсказывает, что для проще ручками таблицу соответствий сделать, чем заморачиваться на скрипты под разные языки Хм. а по какому принципу Ole Einar превращается в Уле-Эйнар (через дефис). Что-то подсказывает, что для проще ручками таблицу соответствий сделать, чем заморачиваться на скрипты под разные языки buchlotnik проще ручками таблицу соответствий сделать, чем заморачиваться на скрипты под разные языки Автор - buchlotnik
Дата добавления - 12.11.2017 в 19:07

Ой, СПАСИБО за оперативность. Уже РЕШИЛ проблему. Просто думал, что у меня уникально-сложная ситуация. Оказалось всё просто - ответы с этой темы натолкнули меня на идеи, и вот здесь моя проблема решена:

Создаём Excel-документ. В документе создаём "вторую книгу". Во второй книге, в столбце "А" прописываем фамилии на языке-оригинале. В столбце "B" прописываем фамилии так, как хотим их видеть на русском.
Копируем фамилии из pdf-документа с результатами гонок, вставляем в "первую книгу" документа, создаём и запускаем нижеследующий макрос:

Ой, СПАСИБО за оперативность. Уже РЕШИЛ проблему. Просто думал, что у меня уникально-сложная ситуация. Оказалось всё просто - ответы с этой темы натолкнули меня на идеи, и вот здесь моя проблема решена:

Создаём Excel-документ. В документе создаём "вторую книгу". Во второй книге, в столбце "А" прописываем фамилии на языке-оригинале. В столбце "B" прописываем фамилии так, как хотим их видеть на русском.
Копируем фамилии из pdf-документа с результатами гонок, вставляем в "первую книгу" документа, создаём и запускаем нижеследующий макрос:

Создаём Excel-документ. В документе создаём "вторую книгу". Во второй книге, в столбце "А" прописываем фамилии на языке-оригинале. В столбце "B" прописываем фамилии так, как хотим их видеть на русском.
Копируем фамилии из pdf-документа с результатами гонок, вставляем в "первую книгу" документа, создаём и запускаем нижеследующий макрос:

[/vba] Автор - dimakdd
Дата добавления - 12.11.2017 в 22:27

И позвольте ещё помощь. Я просто в Макросах Excel, на ДАННЫЙ МОМЕНТ, вообще не понимаю. Однако добрые дела делать хочется, например, для Википедии. Там реально люди тратят по 2 часа, чтобы ВРУЧНУЮ набрать результаты ОДНОЙ ГОНКИ. Используя Макросы Excel эту же задачу можно решить за 5-10 минут.

Как улучшить вышеуказанный скрипт для следующей базовой цели:
Есть excel-документ. В нём 4 листа ("Лист1", "Мужчины", "Женщины", "Флаги"). На Лист1 я ввёл фамилию биатлонистки "CHEVALIER ANAIS". Нужно, чтобы Макрос видел эту фамилию при том, что "База данных" с этой фамилией расположена на третьем листе (т.е. на листе "Женщины").

И 2 коротких вопроса:

1. Как увеличить у Макроса "зону просмотра столбцов" ?? Т.е. этот Макрос "просматривает" только 3 столбца на листе "Словарь" и потом возвращаеться к 1-му столбцу этого же листа. Нужно, чтобы "просматривал" хотя бы 5 столбцов, И НЕ возвращался к 1-му столбцу

И позвольте ещё помощь. Я просто в Макросах Excel, на ДАННЫЙ МОМЕНТ, вообще не понимаю. Однако добрые дела делать хочется, например, для Википедии. Там реально люди тратят по 2 часа, чтобы ВРУЧНУЮ набрать результаты ОДНОЙ ГОНКИ. Используя Макросы Excel эту же задачу можно решить за 5-10 минут.

Как улучшить вышеуказанный скрипт для следующей базовой цели:
Есть excel-документ. В нём 4 листа ("Лист1", "Мужчины", "Женщины", "Флаги"). На Лист1 я ввёл фамилию биатлонистки "CHEVALIER ANAIS". Нужно, чтобы Макрос видел эту фамилию при том, что "База данных" с этой фамилией расположена на третьем листе (т.е. на листе "Женщины").

И 2 коротких вопроса:

1. Как увеличить у Макроса "зону просмотра столбцов" ?? Т.е. этот Макрос "просматривает" только 3 столбца на листе "Словарь" и потом возвращаеться к 1-му столбцу этого же листа. Нужно, чтобы "просматривал" хотя бы 5 столбцов, И НЕ возвращался к 1-му столбцу

Как улучшить вышеуказанный скрипт для следующей базовой цели:
Есть excel-документ. В нём 4 листа ("Лист1", "Мужчины", "Женщины", "Флаги"). На Лист1 я ввёл фамилию биатлонистки "CHEVALIER ANAIS". Нужно, чтобы Макрос видел эту фамилию при том, что "База данных" с этой фамилией расположена на третьем листе (т.е. на листе "Женщины").

И 2 коротких вопроса:

1. Как увеличить у Макроса "зону просмотра столбцов" ?? Т.е. этот Макрос "просматривает" только 3 столбца на листе "Словарь" и потом возвращаеться к 1-му столбцу этого же листа. Нужно, чтобы "просматривал" хотя бы 5 столбцов, И НЕ возвращался к 1-му столбцу

Читайте также: