Note: The other languages of the website are Google-translated. Back to English

Как преобразовать текстовые строки в формулы в Excel?

Если есть много текстовых строк в формате = A1 + B1, которые вам нужно преобразовать эти текстовые строки в реальные формулы и вычислить их значения на вашем листе, к сожалению, нет прямого способа решить эту проблему в Excel. Но здесь я могу рассказать вам о некоторых интересных трюках.

Преобразование текстовых строк в формулы с помощью функции, определяемой пользователем

Преобразование текстовых строк в формулы с помощью Kutools for Excel

Вкладка Office позволяет редактировать и просматривать в Office с вкладками и значительно упрощает работу ...
Kutools for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%
  • Повторное использование чего угодно: Добавляйте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро используйте их в будущем.
  • Более 20 текстовых функций: Извлечь число из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
  • Инструменты слияния: Несколько книг и листов в одну; Объединить несколько ячеек / строк / столбцов без потери данных; Объедините повторяющиеся строки и сумму.
  • Разделить инструменты: Разделение данных на несколько листов в зависимости от ценности; Из одной книги в несколько файлов Excel, PDF или CSV; От одного столбца к нескольким столбцам.
  • Вставить пропуск Скрытые / отфильтрованные строки; Подсчет и сумма по цвету фона; Отправляйте персонализированные электронные письма нескольким получателям массово.
  • Суперфильтр: Создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделям, дням, периодичности и др .; Фильтр жирным шрифтом, формулы, комментарий ...
  • Более 300 мощных функций; Работает с Office 2007-2021 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.

стрелка синий правый пузырь Преобразование текстовых строк в формулы с помощью функции, определяемой пользователем

Следующий короткий код VBA может помочь вам справиться с проблемой преобразования текста в формулу с помощью следующих шагов:

1. Удерживайте ALT + F11 ключи, и он открывает Окно Microsoft Visual Basic для приложений.

2. Нажмите Вставить > Модулии вставьте следующий код в Окно модуля.

Код VBA: преобразование текстовых строк в формулы

Function Eval(Ref As String)
Application.Volatile
Eval = Evaluate(Ref)
End Function

3. Сохраните этот код и вернитесь на свой рабочий лист, введите эту формулу = Оценка (C1) в пустую ячейку (C1 содержит ячейку текстовой строки, которую вы хотите преобразовать в формулу), см. снимок экрана:

документ конвертировать текст - в формулу1

4, Затем нажмите Enter и выберите ячейку D1, перетащите маркер заполнения в диапазон, к которому вы хотите применить эту формулу. Смотрите скриншот:

документ конвертировать текст - в формулу1


стрелка синий правый пузырь Преобразование текстовых строк в формулы с помощью Kutools for Excel

Если вам не нравится использовать приведенный выше код, вы можете применить Kutools for ExcelАвтора Преобразовать текст в формулу функция, с ее помощью вы также можете сразу преобразовать текстовые строки в формулы.

Kutools for Excel включает более 300 удобных инструментов Excel. Бесплатная пробная версия без ограничений в течение 30 дней. Получить сейчас.

После установки Kutools for Excel, сделайте следующее:

1. Выделите текстовые строки, которые вы хотите преобразовать.

2. Нажмите Кутулс > Конвертер контента > Преобразовать текст в формулу, см. снимок экрана:

документ конвертировать текст - в формулу1

3. И все выбранные вами текстовые строки были преобразованы в настоящие формулы и также получили свои значения. Смотрите скриншоты:

документ конвертировать текст - в формулу4 -2 документ конвертировать текст - в формулу5

Чтобы узнать больше об этой функции преобразования текста в формулу.


Связанная статья:

Как преобразовать формулу в текстовую строку в Excel?


Лучшие инструменты для работы в офисе

Kutools for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма ...
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы... Предотвращение дублирования ячеек; Сравнить диапазоны...
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии...
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом ...
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
вкладка kte 201905

Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
офисный дно
Сортировать комментарии по
Комментарии (16)
Оценок пока нет. Оцените первым!
Этот комментарий был сведен к минимуму модератором на сайте
у меня есть вопрос, как я могу сделать этот текст формулой?
Этот комментарий был сведен к минимуму модератором на сайте
Я применил макрос, как описано, но на выходе получаю "#ЗНАЧ". Есть идеи, что могло пойти не так? Помощь будет высоко оценена! Спасибо.
Этот комментарий был сведен к минимуму модератором на сайте
Привет, ваш макрос работает, хотя я использую его для извлечения значения из другого листа, который я указываю в книге. Проблема в том, что я бы хотел, чтобы он читал это значение, даже когда эта внешняя книга закрыта, однако, если она закрывается, eval возвращает ошибку REF. Есть ли способ изменить eval для открытия/отображения значений файлов, которые не открыты? Спасибо:)
Этот комментарий был сведен к минимуму модератором на сайте
Чтобы всегда иметь доступные значения, извлеченные из других книг, даже когда они закрыты, вы должны реализовать некоторый мощный запрос. Я столкнулся с этой проблемой некоторое время назад, и теперь она отлично работает для меня. Проблема, с которой я столкнулся сейчас, заключается в том, что я хочу обновить несколько формул в «дочерних» книгах, ссылаясь на источник в моей «материнской» книге, и с помощью запроса мощности мне удалось добраться до точки, чтобы все формулы были обновлены в строке формат в дочерних листах, однако, даже при использовании функции Evaluate, кажется, что он не работает со списками, условным форматированием или более сложными формулами, которые используют множество функций или матричных ссылок... :( Мне очень трудно пытаться чтобы найти способ сделать эту работу сейчас и вперед ...
Этот комментарий был сведен к минимуму модератором на сайте
Спасибо. Хорошо работает с определяемой пользователем функцией... Я мог делать то, что не мог, используя стандартные функции ДВССЫЛ, АДРЕС и т. д. Это потерпело неудачу, когда у меня был диапазон для ввода.
Этот комментарий был сведен к минимуму модератором на сайте
Я не знаю, всегда ли это будет работать, но у меня было несколько ячеек, в которых формулы хранились в виде текстовых строк. Я выполнил полную замену символа «=» на рабочем листе, и все мои строки были преобразованы в формулы с помощью этого единственного действия.
Этот комментарий был сведен к минимуму модератором на сайте
Чтобы прояснить мой другой комментарий, я массово заменил символ «=» тем же символом «=», и это заставило строки превратиться в формулы.
Этот комментарий был сведен к минимуму модератором на сайте
Привет Рич,
Я просто читаю ваш комментарий о превращении текста в формулу. Кажется, что функция, упомянутая выше, не работает. Я на самом деле не программист, но я преобразовал формулу в текст, и в тексте мне нужно заменить несколько значений и снова объединить их в один текст, но теперь мне нужно преобразовать его обратно в формулу. Не могли бы вы дать мне совет.
С уважением
Frans
Этот комментарий был сведен к минимуму модератором на сайте
Замена = на = работает, так что с облегчением. Спасибо всем, кто обнаружил и поделился этим самородком золота Excel.
Этот комментарий был сведен к минимуму модератором на сайте
Приветствую, приведенный выше код отлично работает внутри одной и той же книги на разных листах, но если у меня есть ссылка на ячейку внешней книги, он возвращает #ЗНАЧ!. формулы раньше рассчитывались нормально.
Пример формулы не может быть оценен правильно: ЕСЛИОШИБКА(ИНДЕКС('[Tracking-OSP Outside Riyadh-07-09-2017.xlsx]Tracking WO'!$U$3:$U$19000,MATCH(A3&"",' [Отслеживание-OSP за пределами Эр-Рияда-07-09-2017.xlsx]Отслеживание WO'!$B$3:$B$19000,0)),INDEX('[Отслеживание-OSP за пределами Эр-Рияда-07-09-2017.xlsx]Отслеживание WO'!$U$3:$U$19000,MATCH(значение(A3),'[Отслеживание-OSP за пределами Эр-Рияда-07-09-2017.xlsx]Отслеживание WO'!$B$3:$B$19000,0))) .
Этот комментарий был сведен к минимуму модератором на сайте
Привет Хусейн,

Просто используйте функцию ДВССЫЛ в Excel. Делает то же самое.
Этот комментарий был сведен к минимуму модератором на сайте
Привет, Джонни
о проблеме Хусейна, если внешняя рабочая книга закрыта, НЕПРЯМО дает #REF! ошибка. У вас есть другое решение?
Этот комментарий был сведен к минимуму модератором на сайте
использование косвенного работает только с открытыми книгами.


решение состоит в том, чтобы использовать косвенный.ext от morefunc.


С уважением,
Хасан Насралла
Этот комментарий был сведен к минимуму модератором на сайте
Здравствуйте
Для первого определенного функционального пути у меня есть проблема.
когда ресурсы для функции конкатенации находятся на другом рабочем листе, функция Eval работает правильно, когда этот рабочий лист ресурсов открыт, но сразу же, когда я закрываю этот рабочий лист ресурсов, функция Eval не работает. Как я могу изменить коды для функции eval, чтобы использовать листы с закрытыми ресурсами?
Этот комментарий был сведен к минимуму модератором на сайте
Большое тебе спасибо!!! ОТЛИЧНАЯ ИДЕЯ!!!
Этот комментарий был сведен к минимуму модератором на сайте
Я считаю, что это не работает должным образом. Как уже говорили все остальные (и я не нашел удовлетворительного решения), это не работает, когда вы пытаетесь извлечь материал из других листов в той же книге. Это расстраивает, и мне приходится отказаться от этого и найти другое решение. Итак, поиск в Google продолжается!
Здесь еще нет комментариев
Оставляйте свои комментарии
Публикация как гость
×
Оценить этот пост:
0   Характеристики
Предлагаемые места

Подписывайтесь на Нас

Copyright © 2009 - www.extendoffice.ком. | Все права защищены. Питаться от ExtendOffice, | Карта сайта
Microsoft и логотип Office являются товарными знаками или зарегистрированными товарными знаками Microsoft Corporation в США и / или других странах.
Защищено Sectigo SSL