Копировать ЧИСЛА из
WORD
в
EXCEL
приходится не так уж и редко. Чтобы избежать нежелательного переноса разрядов числа на другую строку, в
WORD
принято разделять разряды неразрывным пробелом (1 234 478,33). Из-за этого скопированные из
WORD
числа принимают текстовый формат (не обращая внимания на формат ячейки), от которого не так просто избавиться.
Рассмотрим сначала копирование из WORD в EXCEL числа 1 234 478,33, у которого разряды разделены обычными пробелами (код символа 32). Скопировав это число через Буфер обмена в ячейку с форматом
Общий
, получим в ячейке число, а формат ячейки изменится на
Числовой
. Т.е. в EXCEL при вставке значения было задействовано следующее правило:
если вставляемое значение можно преобразовать в число, то вставляй его как число и меняй формат ячейки на Числовой (если разряды разделены пробелом) или оставляй формат Общий (если разряды не разделены пробелом)
. Слова «
вставляй его как число
» можно интерпретировать в нашем случае как «избавляйся от пробелов».
Если разряды числа разделены неразрывными пробелами (код символа 160), то EXCEL никакого «правила» на этот случай не имеет – после вставки мы получим текстовое значение, с которым нельзя выполнять вычисления. Преобразовывать значения состоящее из цифр и из текстовых символов (кроме пробелов, разрыва строки, табуляции и символа абзаца) EXCEL не умеет. Это примерно тоже самое, что и ожидать, что значение 11Щ555,00 будет автоматически при вставке преобразовано в число 11555,00.
Теперь решим эту задачу. Приемы, упомянутые в статьях
Часть 1. Преобразование формулами
и
Часть 2. Преобразование через Буфер обмена
, здесь не сработают. От символа неразрывного пробела можно избавиться либо изначально в WORD, например заменив его пробелом (через
CTRL
+
F
), либо сделать это уже в EXCEL после вставки.
Для этого:
- в EXCEL выделяем диапазон ячеек, содержащих значения импортированных из WORD;
-
вызываем стандартный инструмент
Найти…
(или нажать
CTRL+F
); -
открываем вкладку
Заменить
; -
в поле
Найти
нужно ввести код символа неразрывного пробела (визуально этот символ ничем от обычного пробела не отличается). Для этого на цифровой клавиатуре (справа, там где клавиша NumLock), удерживая клавишу
ALT
, ввести цифры 0160. Подробнее об этом вводе читайте в статьеВвод символов с помощью клавиши ALT
.
-
поле «
Заменить на
» должно быть пустым; -
нажмите «
Заменить все
».
Числа будут преобразованы из текстового в числовой формат.
Конечно, можно вышеуказанного добиться и формулами, например, с помощью функции
ПОДСТАВИТЬ()
(См.
файл примера
).
=ПОДСТАВИТЬ(A1;СИМВОЛ(160);»»))
Добрый день! |
|
gling Пользователь Сообщений: 4024 |
#2 07.03.2019 07:09:18
Копируете этот символ из текста в ячейке Вставляете его в Найти, а в заменить пишите пробел и Заменить все. Можно эту процедуру записать макрорекордером и будет у вас макрос. Только макрос чуть подправите, уберете копирование из ячейки. Изменено: gling — 07.03.2019 07:12:58 |
||
Да спасибо |
|
gling Пользователь Сообщений: 4024 |
Если не знаете где скопировать можно ввести его через Alt +код, прочтите здесь . Если диапазон не будет обозначен, то замена произойдет на всём листе, а если в Параметрах выбрать «в книге», то во всей книге. Изменено: gling — 07.03.2019 07:36:51 |
БМВ Модератор Сообщений: 21385 Excel 2013, 2016 |
#5 07.03.2019 07:56:43
то еще можно таким образом По вопросам из тем форума, личку не читаю. |
||
Jack Famous Пользователь Сообщений: 10852 OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome |
#6 07.03.2019 10:14:48
…точнее, будет выделена только 1 ячейка Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄ |
||
Уважаемые знатоки!
Из системы в Excel выбрасываются данные, где вроде-бы в «пустых» ячейках находится, так называемый «неразрывный пробел». Если бы это было только в одном столбце, я бы справилась с помощью функции. Но таких столбцов примерно 150 и строк достаточно много. Я знаю, что код этого символа 160 т.е. в Excel это =СИМВОЛ(160), (=CHAR(160)). Помогите, пожалуйста с макросом для удаления этого символа со всего листа!
В файле другой символ… Не имеет значения.
Копировать пустую ячейку (это будет ноль). Выделить данные, Правка-Спецвставка-Сложить-ОК. При суммировании нуля и текстовой записи числа текст преобразуется в число.
Если после замены мешают нулевые значения:
Выделить данные, инструмент НАЙТИ/ЗАМЕНИТЬ. Найти 0 (ноль), в параметрах — ячейка целиком. ОК
Для замены СИМВОЛ(160) — те же действия, но копировать этот символ.
Я себе на кнопку вывел такой модуль.
Правит внутри выделенного диапазона.
Sub Символ160()
'
' Символ160 Макрос
' Удаление разделителя разрядов
'
'
Selection.Replace What:=" ", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub
Макрос у меня не удаляет, специальной вставкой тоже не получается. Проверяю через F5 — Выделить — Пустые ячейки (Blanks). Т.е. он все равно там остается! Но заметила, что после F2+Enter пропадает. И что это такое за символ!!!
Вариант действий:
Выделяете необходимый диапазон
«Найти и заменить»
верхнее поле пустое, нижнее — «#» (как очень редко встречающийся символ)
галочка на «Ячейка целиком»
Заменяете.
Повторить, но с обратным расположением сверху — «#», внизу пусто
опять галочка на «Ячейка целиком».
ЦитироватьМакрос у меня не удаляет
Наверное, показывать надо. Или билет на самолет купите и в гости пригласите?
runner!!!!
Помогла только Ваша подсказка!!!!
Vikttur!!! — Показывать не надо — я и сама такой способ знаю, но при проверке на пустые ячейки через F5 — Выделить пустые, они все равно не выделялись.
Не поняли… Не я — Вы должны показывать, где макрос не работает.
Можно выделить диапазон и:
Public Sub www()
Selection = Application.Clean(Selection)
End Sub
Я, как всегда, чертовски адекватен… Email: kuklp60@gmail.com WM Z206653985942, R334086032478, U238399322728, E332314026771
Когда в Excel будут импортированы данные из других источников (базы данных, таблицы с интернет страниц и т.п.) без сомнения вместе с данными вы получите лишние ненужные отступы в значениях ячеек. Некоторые из них будут в начале текста, другие в конце.
Как удалить лишние пробелы в ячейке Excel?
Лишние отступы искажают информацию и могут навредить при работе с формулами. Например, могут возникнуть проблемы в процессе использования поисковых функций, построения графиков, изменения ширины столбцов и при печати листов.
Ниже на рисунке примера показано как можно удалить лишние пробелы и отступы с помощью функции СЖПРОБЕЛЫ:
Сама по себе функция СЖПРОБЕЛЫ абсолютно проста. Достаточно лишь указать в ее аргументе ссылку на ячейку с исходным текстом, а после функция автоматически удалит из него все пробелы и отступы. За исключением одиночных пробелов между словами текстовой строки.
Но из-за своей простоты функция СЖПРОБЕЛЫ существенно обделена своими возможностями. Поэтому ее лучше использовать в формулах в комбинации с другими текстовыми функциями для решения более сложных задач по удалению лишних пробелов и отступов в тексте.
Функция СЖПРОБЕЛЫ служит для удаления лишних пробелов только одного вида 32-го кода символа по стандарту ASCII таблицы. Однако в стандарте символов Unicode могут быть и другие символы пробелов или отступов табуляции. Например, символ твердый пробел. Очень часто используется на страницах интернет сайтов. Его код равен 160 по таблице символов Unicode стандарта.
Чтобы удалить лишние пробелы в строке текста, которая содержит «твердый пробел» с кодом 160, необходимо использовать формулу с комбинацией 3-х функций:
- СЖПРОБЕЛЫ – удалит только лишние пробелы в текстовой строке, кроме пробелов между словами.
- ПОДСТАВИТЬ – найдет текстовые символы с кодом 160 и заменит их все на пробел с кодом 32.
- СИМВОЛ – введет любой текстовый символ по номеру кода стандарта указанному в аргументе функции.
Все эти три задачи можно выполнить за одну операцию применив не сложную формулу:
Мы просто нашли и заменили лишние символы на те, с которыми умеет работать функция СЖПРОБЕЛЫ, после чего она беспрепятственно справилась со своей задачей.
Полезный совет! Если нужно удалить все пробелы используйте функцию ПОДСТАВИТЬ вместо СЖПРОБЕЛЫ как показано на рисунке:
Следующая формула выборочно удаляет пробелы между словами, буквами и знаками:
Таким образом мы можем удалять не только все пробелы, а и все любые другие символы, от которых нужно очистить исходный текст.
Неразрывный пробел в excel
Преобразование ТЕКСТовых значений в ЧИСЛА (Часть 3. Неразрывный пробел в MS EXCEL)
Смотрите такжеEnd Sub ее до низа действительно выровнялись, потомуПримечание: функция убирает все обычные пробелы (ASCII и в конце действий значения с Конечно, можно проводитьСинтаксис этого оператора довольно мыши. В появившемся«Найти» от лишних двойных этих случаях различный. удаляются пробелы.=ПОДСТАВИТЬ(A1;СИМВОЛ(160);»»)) табуляции и символа
Копировать ЧИСЛА из WORDОднако, в данном таблицы, функция проставит что пробелы удалились. лишние пробелы, за 32) заменяется на ячейки корректно сможет лишними пробелами были с каждой ячейкой прост и имеет меню выбираем пунктустанавливаем один пробел, пробелов между словамиС заменой двойных пробеловСкопируйте образец данных изПримечание: абзаца) EXCEL не в EXCEL приходится случае поиск идёт нам все значения. Проверим это наверняка, исключением того, который неразрывный пробел (ASCII только функция заменены идентичными данными отдельную операцию, но всего один аргумент:«Формат ячеек…» а поле в документе. между словами на следующей таблицы и
Мы стараемся как умеет. Это примерно не так уж по однобуквенным предлогам. Теперь все правильно. изменив диапазон в ставится по умолчанию 160). Причем еслиСЖПРОБЕЛЫ без них. То это может отнять=СЖПРОБЕЛЫ(текст).«Заменить на»Урок: одинарные в Экселе вставьте их в можно оперативнее обеспечивать тоже самое, что и редко. ЧтобыА как можноИзбавиться от лишних пробелов команде СУММЕСЛИ. Вместо
между словами. вставлять скопированное из. Поэтому о применении есть, поставленная задача очень много времени,В качестве аргументаПроисходит запуск окна форматирования.оставляем вообще незаполненным.Замена символов в Excel отлично справляется инструмент ячейку A1 нового вас актуальными справочными и ожидать, что избежать нежелательного переноса сделать тоже самое, можно и без
B3:B14 пропишем D3:D14
- Те, кто хорошо владеет 1с не в конкретного способа пользователь
- выполнена. Теперь можно особенно, если диапазон«Текст» Переходим во вкладку Чтобы удостовериться наВ некоторых случаях между
- «Заменить»
- листа Excel. Чтобы материалами на вашем значение 11Щ555,00 будет разрядов числа на но для двух- использования функции СЖПРОБЕЛЫ. и посмотрим результат. техникой печатания, наверняка Excel, а в должен принимать решение удалить транзитную область, большой. Существует способможет выступать, как«Число» предмет того, что разрядами в числах.
- отобразить результаты формул, языке. Эта страница
- автоматически при вставке
другую строку, в и более буквенных Воспользуемся старым проверенным
Теперь плюшевых зайцев недоумевают, как вообще другое место (word), самостоятельно с учетом которая была использована
значительно ускорить процесс.
СЖПРОБЕЛЫ (функция СЖПРОБЕЛЫ)
непосредственно текстовое выражение,, в случае если в этом поле устанавливаются пробелы. ЭтоНаходясь во вкладке выделите их и переведена автоматически, поэтому преобразовано в число WORD принято разделять предлогов? способом, который нам действительно 5, медведей могут появиться лишние то копируется верный ситуации. для трансформации. Выделяем Устанавливаем курсор в так и ссылка открытие произошло в нет пробелов, устанавливаем не ошибка, просто«Главная»
нажмите клавишу F2, ее текст может 11555,00. разряды неразрывным пробеломНапример, для «по»,
знаком еще из – 6 и пробелы. Но опытные символ (ASCII 32).Автор: Максим Тютюшев диапазон ячеек, в нижний правый угол на ячейку в другом месте. Если курсор в него
для визуального восприятия, кликаем по кнопке а затем — содержать неточности иТеперь решим эту задачу. (1 234 478,33). Из-за этого «до» и прочее. WORD – команда т.п. Получается, символы пользователи знают, чтоТакое происходит соВ отличии от word, которых содержится формула ячейки, в которой котором оно содержится. разделение было задано и зажимаем кнопку больших чисел именно«Найти и выделить» клавишу ВВОД. При грамматические ошибки. Для
Приемы, упомянутые в
скопированные из WORD2. Подскажите, как
НАЙТИ-ЗАМЕНИТЬ. табуляции играют важную информация для Excel
всеми табличными формами напрямую назначить горячуюСЖПРОБЕЛЫ уже содержится формула. Для нашего случая при помощи форматирования, backspace (в виде такой вид написания, которая размещена в необходимости измените ширину нас важно, чтобы статьях Часть 1. числа принимают текстовый
Как убрать лишние пробелы в Excel?
Рассмотрим способы удаления пробелов в Excel (например, между словами, в начале или конце предложений, в числах).
Приветствую всех, уважаемые читатели блога TutorExcel.Ru.
Зачастую при копировании текста или переносе таблиц возникают проблемы с наличием лишних символов, которые могут появиться по самым разным причинам: неправильный ввод данных, импортирование данных из внешних источников и т.д.
Достаточно часто лишние пробелы в Excel встречаются в тексте в следующих случаях:
- В начале или в конце предложений;
- Дублирование пробелов;
- Невидимые символы, в т.ч. неразрывный пробел;
- В числах (в разделителях разрядов).
Помимо того, что данные могут стать трудночитаемыми, так и использование обычных инструментов Excel (к примеру, сортировка, фильтрация, поиск, применение функций и т.д.) становится затруднительным и некорректным.
Поэтому, чтобы при работе избежать подобных проблем, для корректной работы необходимо удалять лишние символы.
Как удалить пробелы в Excel?
Рассмотрим 2 основных способа, как можно удалить лишние символы:
- Инструмент «Найти и заменить». Удаление пробелов через диалоговое окно;
- С помощью функций. Формульный вариант удаления.
Инструмент «Найти и заменить»
Предположим, что у нас есть текст или таблица со словами, в котором присутствует дублирование пробелов.
Для начала выделяем диапазон ячеек с данными и выбираем на панели вкладок Главная -> Редактирование -> Найти и выделить -> Заменить либо просто нажимаем сочетание клавиш Ctrl + H:
Появляется стандартное диалоговое окно замены, затем вводим в поле Найти два пробела, а в Заменить на — один. Нажимаем Заменить все и повторяем операцию до тех пор, пока Excel находит повторения.
Как видим алгоритм достаточно простой, однако данный способ удаления пробелов не срабатывает, если они присутствуют в конце или в начале текста.
С помощью функций
В этом случае можно воспользоваться стандартной функцией СЖПРОБЕЛЫ, которая удаляет все пробелы, за исключением одиночных между словами.
Предположим, что у нас имеется список фамилий (столбец A) содержащий лишние пробелы как между словами, так и в начале или конце фамилии. Давайте создадим вспомогательный столбец (столбец B), куда введем формулу СЖПРОБЕЛЫ ссылающуюся на столбец с фамилиями:
Далее копируем содержимое столбца B и вставляем значения без связей в столбец A, после чего удаляем вспомогательный столбец.
Минусом данного способа является его неудобство при работе с большими объемами данных, так как для каждой редактируемой ячейки необходимо создавать дополнительное место где будет обрабатываться исходная ячейка.
Неразрывный пробел в Excel
В случае если после совершенных действий лишние пробелы все же не получилось удалить, то вероятно в тексте могут содержаться неразрывные пробелы.
Данный символ внешне выглядит как обычный пробел, однако его нельзя удалить с помощью функции СЖПРОБЕЛЫ или инструмента «Найти и Заменить» (при вводе в поле для замены обычного пробела).
Как видим в ячейке A2 содержатся лишние пробелы, но функция СЖПРОБЕЛЫ их не удаляет.
Каждый символ в Excel имеет свою кодировку в таблице знаков ANSI (для ОС Windows), в том числе и интересные нам одиночный пробел (символ 32) и неразрывный (символ 160).
Поэтому с помощью функции ПОДСТАВИТЬ заменяем неразрывный пробел (символ 160) на обычный (символ 32), а затем к полученному результату применяя функцию СЖПРОБЕЛЫ получаем требуемый результат:
На самом деле убрать неразрывный пробел можно и с помощью «Найти и заменить», для этого в поле Найти необходимо ввести неразрывный пробел и заменить его либо на обычный, либо удалить, оставив поле Заменить на пустым.
Возникает вопрос, как это сделать?
Первый способ — непосредственно скопировать данный символ из текста и ввести в поле Найти.
Второй способ — воспользоваться Alt-кодом (для систем Windows) и ввести комбинацию Alt + 0160 (удерживая клавишу Alt нужно набрать 0160 на цифровой клавиатуре).
Как убрать пробелы в числах в Excel?
Проблема с удалением пробелов встречается и при работе с числами — в числах попадаются пробелы (к примеру, вместо разделителей разрядов), из-за чего они воспринимаются в Excel как текст.
Предположим, что у нас имеется таблица с числами, где содержатся пробелы. Выделяем диапазон с данными и с помощью инструмента «Найти и Заменить» удаляем пробелы, подставив вместо одиночного пробела пустое поле, как показано в примере выше.
Аналогичный результат можно получить и с помощью формулы:
При этом не забудьте умножить результат на 1, чтобы перевести формулу из текста в число.
Спасибо за внимание!
Если у вас есть мысли или вопросы по теме статьи — делитесь ими в комментариях.
Функция СЖПРОБЕЛЫ в формуле Excel с функцией ПОДСТАВИТЬ
Когда в Excel будут импортированы данные из других источников (базы данных, таблицы с интернет страниц и т.п.) без сомнения вместе с данными вы получите лишние ненужные отступы в значениях ячеек. Некоторые из них будут в начале текста, другие в конце.
Как удалить лишние пробелы в ячейке Excel?
Лишние отступы искажают информацию и могут навредить при работе с формулами. Например, могут возникнуть проблемы в процессе использования поисковых функций, построения графиков, изменения ширины столбцов и при печати листов.
Ниже на рисунке примера показано как можно удалить лишние пробелы и отступы с помощью функции СЖПРОБЕЛЫ:
Сама по себе функция СЖПРОБЕЛЫ абсолютно проста. Достаточно лишь указать в ее аргументе ссылку на ячейку с исходным текстом, а после функция автоматически удалит из него все пробелы и отступы. За исключением одиночных пробелов между словами текстовой строки.
Но из-за своей простоты функция СЖПРОБЕЛЫ существенно обделена своими возможностями. Поэтому ее лучше использовать в формулах в комбинации с другими текстовыми функциями для решения более сложных задач по удалению лишних пробелов и отступов в тексте.
Функция СЖПРОБЕЛЫ служит для удаления лишних пробелов только одного вида 32-го кода символа по стандарту ASCII таблицы. Однако в стандарте символов Unicode могут быть и другие символы пробелов или отступов табуляции. Например, символ твердый пробел. Очень часто используется на страницах интернет сайтов. Его код равен 160 по таблице символов Unicode стандарта.
Чтобы удалить лишние пробелы в строке текста, которая содержит «твердый пробел» с кодом 160, необходимо использовать формулу с комбинацией 3-х функций:
- СЖПРОБЕЛЫ – удалит только лишние пробелы в текстовой строке, кроме пробелов между словами.
- ПОДСТАВИТЬ – найдет текстовые символы с кодом 160 и заменит их все на пробел с кодом 32.
- СИМВОЛ – введет любой текстовый символ по номеру кода стандарта указанному в аргументе функции.
Все эти три задачи можно выполнить за одну операцию применив не сложную формулу:
Мы просто нашли и заменили лишние символы на те, с которыми умеет работать функция СЖПРОБЕЛЫ, после чего она беспрепятственно справилась со своей задачей.
Полезный совет! Если нужно удалить все пробелы используйте функцию ПОДСТАВИТЬ вместо СЖПРОБЕЛЫ как показано на рисунке:
Следующая формула выборочно удаляет пробелы между словами, буквами и знаками:
Таким образом мы можем удалять не только все пробелы, а и все любые другие символы, от которых нужно очистить исходный текст.
Зачистка текста
Зачастую текст, который достается нам для работы в ячейках листа Microsoft Excel далек от совершенства. Если он был введен другими пользователями (или выгружен из какой-нибудь корпоративной БД или ERP-системы) не совсем корректно, то он легко может содержать:
- лишние пробелы перед, после или между словами (для красоты!)
- ненужные символы («г.» перед названием города)
- невидимые непечатаемые символы (неразрывный пробел, оставшийся после копирования из Word или «кривой» выгрузки из 1С, переносы строк, табуляция)
- апострофы (текстовый префикс – спецсимвол, задающий текстовый формат у ячейки)
Давайте рассмотрим способы избавления от такого «мусора».
«Старый, но не устаревший» трюк. Выделяем зачищаемый диапазон ячеек и используем инструмент Заменить с вкладки Главная – Найти и выделить (Home – Find & Select – Replace) или жмем сочетание клавиш Ctrl+H.
Изначально это окно было задумано для оптовой замены одного текста на другой по принципу «найди Маша – замени на Петя», но мы его, в данном случае, можем использовать его и для удаления лишнего текста. Например, в первую строку вводим «г.» (без кавычек!), а во вторую не вводим ничего и жмем кнопку Заменить все (Replace All). Excel удалит все символы «г.» перед названиями городов:
Только не забудьте предварительно выделить нужный диапазон ячеек, иначе замена произойдет на всем листе!
Удаление пробелов
Если из текста нужно удалить вообще все пробелы (например они стоят как тысячные разделители внутри больших чисел), то можно использовать ту же замену: нажать Ctrl+H, в первую строку ввести пробел, во вторую ничего не вводить и нажать кнопку Заменить все (Replace All).
Однако, часто возникает ситуация, когда удалить надо не все подряд пробелы, а только лишние – иначе все слова слипнутся друг с другом. В арсенале Excel есть специальная функция для этого – СЖПРОБЕЛЫ (TRIM) из категории Текстовые. Она удаляет из текста все пробелы, кроме одиночных пробелов между словами, т.е. мы получим на выходе как раз то, что нужно:
Удаление непечатаемых символов
В некоторых случаях, однако, функция СЖПРОБЕЛЫ (TRIM) может не помочь. Иногда то, что выглядит как пробел – на самом деле пробелом не является, а представляет собой невидимый спецсимвол (неразрывный пробел, перенос строки, табуляцию и т.д.). У таких символов внутренний символьный код отличается от кода пробела (32), поэтому функция СЖПРОБЕЛЫ не может их «зачистить».
Вариантов решения два:
- Аккуратно выделить мышью эти спецсимволы в тексте, скопировать их (Ctrl+C) и вставить (Ctrl+V) в первую строку в окне замены (Ctrl+H). Затем нажать кнопку Заменить все (Replace All) для удаления.
- Использовать функцию ПЕЧСИМВ (CLEAN) . Эта функция работает аналогично функции СЖПРОБЕЛЫ, но удаляет из текста не пробелы, а непечатаемые знаки. К сожалению, она тоже способна справится не со всеми спецсимволами, но большинство из них с ее помощью можно убрать.
Функция ПОДСТАВИТЬ
Замену одних символов на другие можно реализовать и с помощью формул. Для этого в категории Текстовые в Excel есть функция ПОДСТАВИТЬ (SUBSTITUTE) . У нее три обязательных аргумента:
- Текст в котором производим замену
- Старый текст – тот, который заменяем
- Новый текст – тот, на который заменяем
С ее помощью можно легко избавиться от ошибок (замена «а» на «о»), лишних пробелов (замена их на пустую строку «»), убрать из чисел лишние разделители (не забудьте умножить потом результат на 1, чтобы текст стал числом):
Удаление апострофов в начале ячеек
Апостроф (‘) в начале ячейки на листе Microsoft Excel – это специальный символ, официально называемый текстовым префиксом. Он нужен для того, чтобы дать понять Excel, что все последующее содержимое ячейки нужно воспринимать как текст, а не как число. По сути, он служит удобной альтернативой предварительной установке текстового формата для ячейки (Главная – Число – Текстовый) и для ввода длинных последовательностей цифр (номеров банковских счетов, кредитных карт, инвентарных номеров и т.д.) он просто незаменим. Но иногда он оказывается в ячейках против нашей воли (после выгрузок из корпоративных баз данных, например) и начинает мешать расчетам. Чтобы его удалить, придется использовать небольшой макрос. Откройте редактор Visual Basic сочетанием клавиш Alt+F11, вставьте новый модуль (меню Insert — Module) и введите туда его текст:
Теперь, если выделить на листе диапазон и запустить наш макрос (Alt+F8 или вкладка Разработчик – кнопка Макросы), то апострофы перед содержимым выделенных ячеек исчезнут.
Английские буквы вместо русских
Это уже, как правило, чисто человеческий фактор. При вводе текстовых данных в ячейку вместо русских букв случайно вводятся похожие английские («це» вместо русской «эс», «игрек» вместо русской «у» и т.д.) Причем снаружи все прилично, ибо начертание у этих символов иногда абсолютно одинаковое, но Excel воспринимает их, конечно же, как разные значения и выдает ошибки в формулах, дубликаты в фильтрах и т.д.
Можно, конечно, вручную заменять символы латинцы на соответствующую им кириллицу, но гораздо быстрее будет сделать это с помощью макроса. Откройте редактор Visual Basic сочетанием клавиш Alt+F11, вставьте новый модуль (меню Insert — Module) и введите туда его текст:
Теперь, если выделить на листе диапазон и запустить наш макрос (Alt+F8 или вкладка Разработчик – кнопка Макросы), то все английские буквы, найденные в выделенных ячейках, будут заменены на равноценные им русские. Только будьте осторожны, чтобы не заменить случайно нужную вам латиницу 🙂
Преобразование ТЕКСТовых значений в ЧИСЛА (Часть 3. Неразрывный пробел в MS EXCEL)
Копировать ЧИСЛА из WORD в EXCEL приходится не так уж и редко. Чтобы избежать нежелательного переноса разрядов числа на другую строку, в WORD принято разделять разряды неразрывным пробелом (1 234 478,33). Из-за этого скопированные из WORD числа принимают текстовый формат (не обращая внимания на формат ячейки), от которого не так просто избавиться.
Рассмотрим сначала копирование из WORD в EXCEL числа 1 234 478,33, у которого разряды разделены обычными пробелами (код символа 32). Скопировав это число через Буфер обмена в ячейку с форматом Общий, получим в ячейке число, а формат ячейки изменится на Числовой. Т.е. в EXCEL при вставке значения было задействовано следующее правило: если вставляемое значение можно преобразовать в число, то вставляй его как число и меняй формат ячейки на Числовой (если разряды разделены пробелом) или оставляй формат Общий (если разряды не разделены пробелом). Слова «вставляй его как число» можно интерпретировать в нашем случае как «избавляйся от пробелов».
Если разряды числа разделены неразрывными пробелами (код символа 160), то EXCEL никакого «правила» на этот случай не имеет – после вставки мы получим текстовое значение, с которым нельзя выполнять вычисления. Преобразовывать значения состоящее из цифр и из текстовых символов (кроме пробелов, разрыва строки, табуляции и символа абзаца) EXCEL не умеет. Это примерно тоже самое, что и ожидать, что значение 11Щ555,00 будет автоматически при вставке преобразовано в число 11555,00.
Теперь решим эту задачу. Приемы, упомянутые в статьях Часть 1. Преобразование формулами и Часть 2. Преобразование через Буфер обмена, здесь не сработают. От символа неразрывного пробела можно избавиться либо изначально в WORD, например заменив его пробелом (через CTRL+F), либо сделать это уже в EXCEL после вставки.
- в EXCEL выделяем диапазон ячеек, содержащих значения импортированных из WORD;
- вызываем стандартный инструмент Найти… ( Главная/ Редактирование/ Найти и выделить/ Найти… или нажать CTRL+F);
- открываем вкладку Заменить;
- в поле Найти нужно ввести код символа неразрывного пробела (визуально этот символ ничем от обычного пробела не отличается). Для этого на цифровой клавиатуре (справа, там где клавиша NumLock), удерживая клавишу ALT, ввести цифры 0160. Подробнее об этом вводе читайте в статье Ввод символов с помощью клавиши ALT.
- поле «Заменить на» должно быть пустым;
- нажмите «Заменить все».
Числа будут преобразованы из текстового в числовой формат.
Конечно, можно вышеуказанного добиться и формулами, например, с помощью функции ПОДСТАВИТЬ() (См. файл примера ).
=ПОДСТАВИТЬ(A1;СИМВОЛ(160);»»))