Progress-servis55.ru

Новости из мира ПК
23 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Одинарная кавычка в excel

Зачистка текста

Зачастую текст, который достается нам для работы в ячейках листа 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

Функция ПОДСТАВИТЬ

Замену одних символов на другие можно реализовать и с помощью формул. Для этого в категории Текстовые в Excel есть функция ПОДСТАВИТЬ (SUBSTITUTE) . У нее три обязательных аргумента:

  • Текст в котором производим замену
  • Старый текст – тот, который заменяем
  • Новый текст – тот, на который заменяем

С ее помощью можно легко избавиться от ошибок (замена «а» на «о»), лишних пробелов (замена их на пустую строку «»), убрать из чисел лишние разделители (не забудьте умножить потом результат на 1, чтобы текст стал числом):

Удаление апострофов в начале ячеек

Апостроф (‘) в начале ячейки на листе Microsoft Excel – это специальный символ, официально называемый текстовым префиксом. Он нужен для того, чтобы дать понять Excel, что все последующее содержимое ячейки нужно воспринимать как текст, а не как число. По сути, он служит удобной альтернативой предварительной установке текстового формата для ячейки (Главная – Число – Текстовый) и для ввода длинных последовательностей цифр (номеров банковских счетов, кредитных карт, инвентарных номеров и т.д.) он просто незаменим. Но иногда он оказывается в ячейках против нашей воли (после выгрузок из корпоративных баз данных, например) и начинает мешать расчетам. Чтобы его удалить, придется использовать небольшой макрос. Откройте редактор Visual Basic сочетанием клавиш Alt+F11, вставьте новый модуль (меню Insert — Module) и введите туда его текст:

Теперь, если выделить на листе диапазон и запустить наш макрос (Alt+F8 или вкладка Разработчик – кнопка Макросы), то апострофы перед содержимым выделенных ячеек исчезнут.

Английские буквы вместо русских

Это уже, как правило, чисто человеческий фактор. При вводе текстовых данных в ячейку вместо русских букв случайно вводятся похожие английские («це» вместо русской «эс», «игрек» вместо русской «у» и т.д.) Причем снаружи все прилично, ибо начертание у этих символов иногда абсолютно одинаковое, но Excel воспринимает их, конечно же, как разные значения и выдает ошибки в формулах, дубликаты в фильтрах и т.д.

Можно, конечно, вручную заменять символы латинцы на соответствующую им кириллицу, но гораздо быстрее будет сделать это с помощью макроса. Откройте редактор Visual Basic сочетанием клавиш Alt+F11, вставьте новый модуль (меню Insert — Module) и введите туда его текст:

Теперь, если выделить на листе диапазон и запустить наш макрос (Alt+F8 или вкладка Разработчик – кнопка Макросы), то все английские буквы, найденные в выделенных ячейках, будут заменены на равноценные им русские. Только будьте осторожны, чтобы не заменить случайно нужную вам латиницу 🙂

Читать еще:  Goal seek excel

Как создать строки, содержащие двойные кавычки в формулах Excel?

Как я могу построить следующую строку в Формуле Excel:

Если я использую одинарные кавычки, это тривиально = «Maurice ‘The Rocket’ Richard» но как насчет двойных кавычек?

12 ответов:

вы пробовали бежать с двойной кавычкой?

кроме того, вы можете использовать CHAR функция:

три двойные кавычки: » » » x » » » = «x» Excel автоматически изменится на одну двойную кавычку. например:

Я использую функцию для этого (если книга уже есть в VBA).

это из книги Сью Мошер «Программирование Microsoft Outlook». Тогда ваша формула будет:

=»Maurice «&Quote(«Rocket»)&» Richard»

Это похоже на то, что Дейв DuPlantis выложил.

в случае, если вам нужно сделать это с JSON:

использовать chr(34) Код: Joe = «Привет», & Chr (34) & » Joe » & Chr (34) Активная ячейка.Значение = Джо

результат: Привет, «Джо»

будет ли это работать для макросов с помощью .Formula = «=THEFORMULAFUNCTION(«STUFF»)» так было бы: будет ли это работать для макросов с помощью .Formula = «=THEFORMULAFUNCTION(CHAR(34) & STUFF & CHAR(34))»

листа текст может дать тот же результат без использования кавычек.

к моему глазу, используя TEXT(,) на месте «» очищает даже простую формулу, как выше. Преимущества становятся все более значимыми при использовании в более сложных формулах, таких как практика добавления пустой строки к VLOOKUP чтобы избежать возврата нуля в ячейку, когда поиск приводит к пустой или возвращающей пустую строку на no-match с IFERROR.

С TEXT(,) замена старого «» метод доставки пустой строки, вы можете перестать использовать счеты, чтобы определить, есть ли у вас правильное количество символов кавычек в строке формулы.

функция VBA

1) .Формула = » = «»THEFORMULAFUNCTION «» &(CHAR (34) & «»STUFF»» & CHAR(34))»

2) .Формула = «THEFORMULAFUNCTION «»STUFF»»»

первый метод использует vba для записи формулы в ячейку, которая приводит к вычисленному значению:

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

Excel Результат / Формула

1) = «THEFORMULAFUNCTION» &(CHAR (34) & «STUFF» & CHAR(34))

2) THEFORMULAFUNCTION «STUFF»

есть другой способ, хотя больше для «как я могу построить следующую строку в Формуле Excel: «Морис» ракета «Ричард»», чем » как создать строки, содержащие двойные кавычки в формулах Excel? «, который просто использовать две одинарные кавычки:

слева Калибр вырезается из листа Excel,а справа-из окна VBA. На мой взгляд, побег, как упоминалось @YonahW, выигрывает «руки вниз», но два одиночных котировки не более чем два двойника, и разница достаточно очевидна в VBA без дополнительных нажатий клавиш, в то время как, потенциально, не заметна в электронной таблице.

Как создать строки, содержащие двойные кавычки в формулах Excel?

Как я могу построить следующую строку в Формуле Excel:

Читать еще:  Узнать номер строки excel vba

Если я использую одинарные кавычки, это тривиально = «Maurice ‘The Rocket’ Richard» но как насчет двойных кавычек?

12 ответов:

вы пробовали бежать с двойной кавычкой?

кроме того, вы можете использовать CHAR функция:

три двойные кавычки: » » » x » » » = «x» Excel автоматически изменится на одну двойную кавычку. например:

Я использую функцию для этого (если книга уже есть в VBA).

это из книги Сью Мошер «Программирование Microsoft Outlook». Тогда ваша формула будет:

=»Maurice «&Quote(«Rocket»)&» Richard»

Это похоже на то, что Дейв DuPlantis выложил.

в случае, если вам нужно сделать это с JSON:

использовать chr(34) Код: Joe = «Привет», & Chr (34) & » Joe » & Chr (34) Активная ячейка.Значение = Джо

результат: Привет, «Джо»

будет ли это работать для макросов с помощью .Formula = «=THEFORMULAFUNCTION(«STUFF»)» так было бы: будет ли это работать для макросов с помощью .Formula = «=THEFORMULAFUNCTION(CHAR(34) & STUFF & CHAR(34))»

листа текст может дать тот же результат без использования кавычек.

к моему глазу, используя TEXT(,) на месте «» очищает даже простую формулу, как выше. Преимущества становятся все более значимыми при использовании в более сложных формулах, таких как практика добавления пустой строки к VLOOKUP чтобы избежать возврата нуля в ячейку, когда поиск приводит к пустой или возвращающей пустую строку на no-match с IFERROR.

С TEXT(,) замена старого «» метод доставки пустой строки, вы можете перестать использовать счеты, чтобы определить, есть ли у вас правильное количество символов кавычек в строке формулы.

функция VBA

1) .Формула = » = «»THEFORMULAFUNCTION «» &(CHAR (34) & «»STUFF»» & CHAR(34))»

2) .Формула = «THEFORMULAFUNCTION «»STUFF»»»

первый метод использует vba для записи формулы в ячейку, которая приводит к вычисленному значению:

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

Excel Результат / Формула

1) = «THEFORMULAFUNCTION» &(CHAR (34) & «STUFF» & CHAR(34))

2) THEFORMULAFUNCTION «STUFF»

есть другой способ, хотя больше для «как я могу построить следующую строку в Формуле Excel: «Морис» ракета «Ричард»», чем » как создать строки, содержащие двойные кавычки в формулах Excel? «, который просто использовать две одинарные кавычки:

слева Калибр вырезается из листа Excel,а справа-из окна VBA. На мой взгляд, побег, как упоминалось @YonahW, выигрывает «руки вниз», но два одиночных котировки не более чем два двойника, и разница достаточно очевидна в VBA без дополнительных нажатий клавиш, в то время как, потенциально, не заметна в электронной таблице.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector