image

Мы узнали, как связать: / excel-text-formulas-split-numbers-and-text-from-string-in-excel [удалить числовые значения из ячейки в Excel 2016 и старше]. Формулы, которые мы использовали, были немного сложными, но теперь в игру включены Excel 2019 и 365. В Excel 2019 и 365 представлены некоторые новые функции, которые упрощают задачу удаления нечисловых символов и получения только числовых значений в новой ячейке. Мы будем использовать формулы, которые помогут нам сделать это более удобно. Generic Formula

=TEXTJOIN(«»,TRUE,IFERROR(MID(jumbled_text,SEQUENCE(NumChars),1)+0,»»))

Jumbled_text: это исходный текст, из которого вы хотите извлечь все числовые значения.

NumChars: это общее количество символов, которые вы хотите обработать.

В jumbled_text не должно быть больше символов, чем это число (вместе символов и чисел).

Давайте посмотрим на примере, чтобы прояснить ситуацию.

Пример: удалить нечисловые символы и извлечь все числа

image

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

Я не ожидаю, что общее количество символов в беспорядочном тексте будет больше 20. Итак, значение NumChars здесь равно 20. При необходимости вы можете увеличить это число.

Примените приведенную выше общую формулу, чтобы удалить нечисловые символы.

=TEXTJOIN(«»,TRUE,IFERROR(MID(C3,SEQUENCE(20),1)+0,»»))

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

image

Как это работает?

Сначала давайте посмотрим, как эта формула решается шаг за шагом.

1→

TEXTJOIN(«»,TRUE,IFERROR(MID(C3,SEQUENCE(20),1)+0,»»))

2→

TEXTJOIN(«»,TRUE,IFERROR(MID(«12asw12w123″,\{1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20}*,1)+0,»»))

3→

TEXTJOIN(«»,TRUE,IFERROR(\{«1″;»2″;»a»;»s»;»w»;»1″;»2″;»w»;»1″;»2″;»3″;»»;»»;»»;»»;»»;»»;»»;»»;»»}*+0,»»))

4→

TEXTJOIN(«»,TRUE,IFERROR(\{1;2;#VALUE!;#VALUE!;#VALUE!;1;2;#VALUE!;1;2;3;#VALUE!;#VALUE!;…​;#VALUE!}*+0,»»))

5→

TEXTJOIN(«»,TRUE,\{1;2;»»;»»;»»;1;2;»»;1;2;3;»»;»»;»»;»»;»»;»»;»»;»»;»»}*)

6→ «1212123»

Как видите, решение формулы начинается изнутри. Сначала решается ссылка: / excel-365-functions-the-sequence-function-in-excel [SEQUENCE function]. Поскольку мы прошли 20. Он возвращает массив чисел от 1 до 20.

Этот массив передается функции MID в качестве начального номера. Функция mid переходит к каждому индексу в строке и разбивает каждый символ. Вы можете увидеть это на шаге 3.

Затем мы добавляем 0 к каждому символу. В Excel, если вы попытаетесь добавить число к нечисловым символам, это приведет к `link: / tips-value-error-and-how-to-fix-it-in-excel [#VALUE!

Ошибка] `. Получаем массив чисел и #VALUE! Ошибки. Нечисловые символы исчезли.

Следующая функция ЕСЛИОШИБКА заменяет все ошибки #VALUE на «» (пусто). Теперь у нас остались числовые значения и пробелы.

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

Улучшение формулы

В приведенной выше формуле для обработки количества символов использовалось жестко закодированное число (мы взяли двадцать). Но вы можете захотеть, чтобы он был динамичным. В таком случае, как вы угадали, мы воспользуемся функцией LEN. Для обработки потребуется точное количество символов. Так что формула будет.

=TEXTJOIN(«»,TRUE,IFERROR(MID(jumbled_text,SEQUENCE(LEN(jumbled_text)*),1)+0,»»))

Здесь функция LEN автоматически определит точное количество символов в буквенно-цифровой строке. Это снимет нагрузку с определения максимального количества символов.

Альтернатива функции ПОСЛЕДОВАТЕЛЬНОСТЬ

Если вы не хотите использовать функцию ПОСЛЕДОВАТЕЛЬНОСТЬ, вы можете использовать комбинацию функций СТРОКА и ДВССЫЛ для `link: / information-formulas-how-to-get-serial-row-number-in-excel [генерация последовательных чисел] `.

=TEXTJOIN(«»,TRUE,IFERROR(MID(jumbled_text,ROW(INDIRECT(«1:»&`LEN`(jumbled_text)))*,1)+0,»»))

ДВССЫЛ преобразует текст («1:20») в фактический диапазон, а затем функция СТРОКА будет перечислять все номера строк от 1 до 20. (например, 20. Это может быть любое число).

Так что да, ребята, вот как вы можете скопировать нечисловые символы из буквенно-цифровой строки в Excel. Надеюсь, я достаточно объяснил, и эта статья вам помогла. Если у вас есть какие-либо вопросы по этой теме или любой другой теме excel / VBA. А пока продолжайте Excelling.

Статьи по теме:

link: / excel-text-formulas-split-numbers-and-text-from-string-in-excel [Разделить числа и текст из строки в Excel 2016 и более ранних версиях]: когда у нас не было функции TEXTJOIN, мы использовали Функции LEFT и RIGHT с некоторыми другими функциями для разделения числовых и нечисловых символов из строки. link: / excel-text-extract-text-from-a-string-in-excel-using-excels-left-and-right-function [Извлечь текст из строки в Excel с помощью функции Excel ВЛЕВО и ВПРАВО]: * Чтобы удалить текст в excel из строки, мы можем использовать функции Excel LEFT и RIGHT. Эти функции помогают нам динамически нарезать строки.

link: / excel-text-formulas-remove-первые-и-конечные-пробелы-из-текста-в-excel [Удалить начальные и конечные пробелы из текста в Excel]: * Начальные и конечные пробелы трудно распознать визуально и может испортить ваши данные. Удаление этих символов из строки — основная и самая важная задача очистки данных. Вот как это легко сделать в Excel.

link: / excel-text-formulas-remove-characters-from-right [Удалить символы справа]: * Чтобы удалить символы справа от строки в Excel, мы используем функцию LEFT. Да, функция ВЛЕВО. Функция LEFT сохраняет заданное количество символов от LEFT и удаляет все справа.

link: / excel-text-formulas-remove-unwanted-characters-in-excel [Удалить нежелательные символы в Excel]: * Чтобы удалить нежелательные символы из строки в Excel, мы используем функцию ЗАМЕНА. Функция SUBSTITUTE заменяет заданные символы другим заданным символом и создает новую измененную строку.

link: / excel-text-formulas-how-to-remove-text-in-excel-start-from-a-position [Как удалить текст в Excel, начиная с позиции в Excel]: * Чтобы удалить текст из начальная позиция в строке, мы используем функцию ЗАМЕНИТЬ в Excel. Эта функция помогает нам определить начальную позицию и количество символов для удаления.

Популярные статьи:

link: / keyboard-formula-shortcuts-50-excel-shortcuts-to-вашу-продуктивность [50 комбинаций клавиш Excel для повышения вашей продуктивности] | Выполняйте свою задачу быстрее. Эти 50 ярлыков заставят вас работать в Excel еще быстрее.

link: / формулы-и-функции-введение-функции-vlookup [Как использовать функцию Excel VLOOKUP] | Это одна из наиболее часто используемых и популярных функций Excel, которая используется для поиска значений из разных диапазонов и листов. link: / tips-countif-in-microsoft-excel [Как использовать]

link: / введение-формулы-и-функции-функции-vlookup [Excel]

link: / tips-countif-in-microsoft-excel [Функция СЧЁТЕСЛИ] | Подсчитайте значения с условиями, используя эту удивительную функцию.

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

link: / excel-formula-and-function-excel-sumif-function [Как использовать функцию СУММЕСЛИ в Excel] | Это еще одна важная функция приборной панели. Это поможет вам суммировать значения для конкретных условий.