Если есть много текстовых строк в формате = A1 + B1, которые вам нужно преобразовать эти текстовые строки в реальные формулы и вычислить их значения на вашем листе, к сожалению, нет прямого способа решить эту проблему в Excel. Но здесь я могу рассказать вам о некоторых интересных трюках.
Преобразование текстовых строк в формулы с помощью функции, определяемой пользователем
Преобразование текстовых строк в формулы с помощью Kutools for Excel
Преобразование текстовых строк в формулы с помощью функции, определяемой пользователем
Следующий короткий код VBA может помочь вам справиться с проблемой преобразования текста в формулу с помощью следующих шагов:
1. Удерживайте ALT + F11 ключи, и он открывает Окно Microsoft Visual Basic для приложений.
2. Нажмите Вставить > Модулии вставьте следующий код в Окно модуля.
Код VBA: преобразование текстовых строк в формулы
Function Eval(Ref As String)
Application.Volatile
Eval = Evaluate(Ref)
End Function
3. Сохраните этот код и вернитесь на свой рабочий лист, введите эту формулу = Оценка (C1) в пустую ячейку (C1 содержит ячейку текстовой строки, которую вы хотите преобразовать в формулу), см. снимок экрана:
4, Затем нажмите Enter и выберите ячейку D1, перетащите маркер заполнения в диапазон, к которому вы хотите применить эту формулу. Смотрите скриншот:
Преобразование текстовых строк в формулы с помощью Kutools for Excel
Если вам не нравится использовать приведенный выше код, вы можете применить Kutools for ExcelАвтора Преобразовать текст в формулу функция, с ее помощью вы также можете сразу преобразовать текстовые строки в формулы.
Kutools for Excel включает более 300 удобных инструментов Excel. Бесплатная пробная версия без ограничений в течение 30 дней. Получить сейчас.
После установки Kutools for Excel, пожалуйста, сделайте так:
1. Выделите текстовые строки, которые вы хотите преобразовать.
2. Нажмите Кутулс > Конвертер контента > Преобразовать текст в формулу, см. снимок экрана:
3. И все выбранные вами текстовые строки были преобразованы в настоящие формулы и также получили свои значения. Смотрите скриншоты:
Чтобы узнать больше об этой функции преобразования текста в формулу.
Связанная статья:
Как преобразовать формулу в текстовую строку в Excel?
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (16)
Оценок пока нет. Оцените первым!
Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше
Сводная таблица имеет несколько макетов, предоставляющих предопределенную структуру отчета, но вы не можете настроить эти макеты. Если вам нужна дополнительная гибкость при проектировании макета отчета сводной таблицы, можно преобразовать ячейки в формулы листа, а затем изменить макет этих ячеек, используя все преимущества всех функций, доступных на листе. Можно преобразовать ячейки в формулы, использующие функции Куба, или использовать функцию GETPIVOTDATA. Преобразование ячеек в формулы значительно упрощает процесс создания, обновления и обслуживания этих настраиваемых сводных таблиц.
При преобразовании ячеек в формулы эти формулы имеют доступ к тем же данным, что и сводная таблица, и их можно обновить для просмотра актуальных результатов. Однако, за исключением фильтров отчетов, у вас больше нет доступа к интерактивным функциям сводной таблицы, таким как фильтрация, сортировка, развертывание и свертывание уровней.
Примечание: При преобразовании сводной таблицы OLAP можно продолжать обновлять данные, чтобы получить актуальные значения мер, но нельзя обновить фактические элементы, отображаемые в отчете.
Сведения о распространенных сценариях преобразования сводных таблиц в формулы листа
Ниже приведены типичные примеры того, что можно сделать после преобразования ячеек сводной таблицы в формулы листа для настройки макета преобразованных ячеек.
Изменение порядка и удаление ячеек
Предположим, у вас есть периодический отчет, который необходимо создавать каждый месяц для сотрудников. Вам требуется только подмножество данных отчета, и вы предпочитаете настраивать данные. Вы можете просто перемещать и упорядочивать ячейки в нужном макете, удалять ячейки, которые не нужны для ежемесячного отчета персонала, а затем форматировать ячейки и листы в соответствии с вашими предпочтениями.
Вставка строк и столбцов
Предположим, что вы хотите отобразить сведения о продажах за предыдущие два года, разделенные по регионам и группе продуктов, и вставить расширенный комментарий в дополнительные строки. Просто вставьте строку и введите текст. Кроме того, необходимо добавить столбец, в котором отображаются продажи по регионам и группе продуктов, которые не содержатся в исходной сводной таблице. Просто вставьте столбец, добавьте формулу, чтобы получить нужные результаты, а затем заполните столбец вниз, чтобы получить результаты для каждой строки.
Использование нескольких источников данных
Предположим, вы хотите сравнить результаты между рабочей и тестовой базой данных, чтобы убедиться, что тестовая база данных дает ожидаемые результаты. Можно легко скопировать формулы ячеек, а затем изменить аргумент соединения, чтобы он указывал на тестовую базу данных для сравнения этих двух результатов.
Использование ссылок на ячейки для изменения входных данных пользователя
Предположим, вы хотите, чтобы весь отчет менялся в зависимости от введенных пользователем данных. Можно изменить аргументы в формулах куба на ссылки на ячейки на листе, а затем ввести разные значения в этих ячейках для получения различных результатов.
Создание несоединимого макета строки или столбца (также называемого асимметричными отчетами)
Предположим, что вам нужно создать отчет, содержащий столбец 2008 с именем Actual Sales (Фактические продажи), столбец 2009 с именем Projected Sales (Прогноз продаж), но другие столбцы не нужны. Вы можете создать отчет, содержащий только эти столбцы, в отличие от сводной таблицы, для которой требуется симметричный отчет.
Создание собственных формул куба и многомерных выражений
Предположим, вы хотите создать отчет, в котором отображаются продажи определенного продукта тремя конкретными продавцами за июль. Если вы имеете опыт работы с выражениями многомерных выражений и запросами OLAP, можно ввести формулы Cube самостоятельно. Хотя эти формулы могут стать довольно сложными, вы можете упростить создание и повысить точность этих формул с помощью автозавершения формул. Дополнительные сведения см. в разделе «Использование автозавершения формул».
Примечание: Эту процедуру можно преобразовать только в сводную таблицу OLAP.
-
Чтобы сохранить сводную таблицу для использования в будущем, рекомендуется создать копию книги перед преобразованием сводной таблицы, нажав кнопку » Файл > сохранить как «. Дополнительные сведения см . в разделе «Сохранение файла».
-
Подготовьте сводную таблицу, чтобы свести к минимуму изменение порядка ячеек после преобразования, выполнив следующие действия:
-
Перейдите к макету, который больше всего похож на нужный макет.
-
Взаимодействуйте с отчетом, например фильтрацией, сортировкой и перепроектированием отчета, чтобы получить нужные результаты.
-
-
Щелкните сводную таблицу.
-
На вкладке « Параметры » в группе «Сервис» щелкните «Инструменты OLAP» и выберите команду «Преобразовать в формулы».
Если фильтры отчетов отсутствуют, операция преобразования завершается. Если существует один или несколько фильтров отчетов, отобразится диалоговое окно «Преобразование в формулы».
-
Выберите способ преобразования сводной таблицы:
Преобразование всей сводной таблицы
-
Установите флажок «Преобразовать фильтры отчетов «.
При этом все ячейки преобразуется в формулы листа и удаляется вся сводная таблица.
Преобразуйте только метки строк сводной таблицы, метки столбцов и область значений, но сохраните фильтры отчетов.
-
Убедитесь, что флажок «Преобразовать фильтры отчетов » снят. (Это значение по умолчанию.)
При этом все ячейки с областями меток строк, столбцов и значений преобразуется в формулы листа, а исходная сводная таблица сохраняется, но только с фильтрами отчета, чтобы можно было продолжать фильтрацию с помощью фильтров отчета.
Примечание: Если используется формат сводной таблицы версии 2000–2003 или более ранней, можно преобразовать только всю сводную таблицу.
-
-
Нажмите кнопку Преобразовать.
Операция преобразования сначала обновляет сводную таблицу, чтобы убедиться, что используются актуальные данные.
Сообщение отображается в строке состояния во время выполнения операции преобразования. Если операция занимает много времени и вы предпочитаете выполнить преобразование в другое время, нажмите клавишу ESC, чтобы отменить операцию.
Примечания:
-
Невозможно преобразовать ячейки с фильтрами, примененными к скрытым уровням.
-
Невозможно преобразовать ячейки, в которых поля имеют настраиваемое вычисление, созданное на вкладке «Показать значения как» диалогового окна «Параметры поля значений». (На вкладке «Параметры » в группе «Активное поле» щелкните «Активное поле» и выберите пункт «Параметры поля значений».)
-
Для преобразованных ячеек форматирование ячеек сохраняется, но стили сводных таблиц удаляются, так как эти стили могут применяться только к сводным таблицам.
-
Функцию GETPIVOTDATA можно использовать в формуле для преобразования ячеек сводной таблицы в формулы листа, если вы хотите работать с источниками данных, не являемыми OLAP, если вы предпочитаете не выполнять обновление до нового формата сводной таблицы версии 2007 сразу или если вы хотите избежать сложности использования функций Куба.
-
Убедитесь, что команда «Создать GETPIVOTDATA » в группе сводной таблицы на вкладке « Параметры» включена.
Примечание: Команда «Создать GETPIVOTDATA» задает или очищает параметр «Использовать функции GETPIVOTTABLE для ссылок на сводную таблицу» в категории «Формулы» раздела «Работа с формулами» диалогового окна «Параметры Excel«.
-
Убедитесь, что в сводной таблице отображается ячейка, которую вы хотите использовать в каждой формуле.
-
В ячейке листа за пределами сводной таблицы введите формулу до точки, в которую необходимо включить данные из отчета.
-
Щелкните ячейку сводной таблицы, которую вы хотите использовать в формуле в сводной таблице. В формулу добавляется функция листа GETPIVOTDATA, которая извлекает данные из сводной таблицы. Эта функция продолжает получать правильные данные при изменении макета отчета или при обновлении данных.
-
Завершите ввод формулы и нажмите клавишу ВВОД.
Примечание: Если удалить из отчета любую из ячеек, указанных в формуле GETPIVOTDATA, формула возвращает #REF!.
Нужна дополнительная помощь?
Замена формул на вычисленные значения в Excel 2013
Смотрите также количесву символов в приводил выше код N = Trim(Split(s,Pandora12 заканчиваются на 10ikki 1 раз иПомогите, пожалуйста, советом.и нажмите кнопку поле текст или числав книге стрелку в полеПримечание: нет. смежный диапазон ячеек,Когда Вы открываете лист первом числе на для цикла по «,»)(1)) For Each: Здорово..А можно было
— в даном: для адаптантов? вставлять туда жеСитуация: в ячейкеОчиститьЗаменить на с определенным форматированием,.Найти Мы стараемся как можноЕсли необходимо преобразовать формулы либо выделить ячейки Excel и изменяете второе число. Меняет ячейкам с формулами c In ActiveSheet.UsedRange.Cells бы кнопку сделать примере на 14mihalix значения, но Excel D4 объединил значение.(или оставьте это нажмите кнопку
Как заменить всю формулу на константу
- Для поиска данных ви нажмите кнопку оперативнее обеспечивать вас в одной или по отдельности, используя некоторые данные или только в формулах. — меньше работы: If Right(c.Formula, Len(K)) де указываем число,
- например, однако через: _Boroda_, Вот так такого не допускает. ячеек А1, В1Для поиска текста или поле пустым, чтобыФормат строках или столбцах последнего поиска в актуальными справочными материалами нескольких ячейках, можете клавишу формулы на листе,
- Переделать в макрос? For Each c = K Then которое надо заменить автозамену это сделать выглядит часть таблицы.Приходится каждый блок и С1 с чисел на листе ничем не заменять
- и выберите нужные выберите в поле списке. на вашем языке. воспользоваться следующим способом:Ctrl
- Excel автоматически пересчитывает Легко! In Cells.SpecialCells(xlCellTypeFormulas) c.Formula = Left$(c.Formula, и число на не получается, так_Boroda_ зеленых копировать и
- сохранением их значения также можно использовать знаки), а затем
параметры в диалоговомПросматриватьВ условиях поиска можно Эта страница переведена сначала двойной щелчок
. все эти формулы.Sub Макрос() DimPandora12 Len(c.Formula) — Len(K)) которое надо сделать как $105, $109: Тогда так: вставлять значения.
Как заменить часть формулы на константу
посредством формулы =(A1&» функции ПОИСК и нажмите кнопку окневариант использовать подстановочные знаки, автоматически, поэтому ее
- мыши по ячейке,На вкладке Это может занять K, N s: Не работает кнопка & N End замену ?
также меняется накопируете Е3:Е27, вставляетеМожет быть есть («&B1&») «&C1). НАЙТИ.Найти далееНайти формат
- по строкам например вопросительный знак текст может содержать затем клавиша
Home некоторое время, если = InputBox(«Введите через в моем Excel If Next EndP.S.не запускается макрос, $145, $149, такзначениями какое то решение,Теперь я хочу
ikaresили
.
или
(?) и звездочку
office-guru.ru
Поиск или замена текста и чисел на листе
неточности и грамматическиеF9(Главная) нажмите команду документ большой и запятую что на 2003. Выдает ошибку Sub требует объект «object как присутствует $10.в I3:I27 чтобы заменить все удалить ячейки А1,: Здравствуйте!Найти всеСовет:по столбцам (*). ошибки. Для нас.Copy содержит много формул.
что менять», «», типа нарушения вКазанский required» Как сделать, чтобыставите фильтр в
-
за 1 операцию. B1 и C1,Помогите, пожалуйста, советом.. Чтобы найти ячейки, точно.Звездочка используется для поиска
-
важно, чтобы этаВ случае, когда только
-
(Копировать), которая располагается Однако, если часть «10,14») If s » Advanced Find
-
: Все-таки важно пробегатьКазанский замена не происходила столбце Е по_Boroda_
-
-
но в этомСитуация: в ячейкеПримечание: соответствующие определенному формату,Для поиска данных с любой строки знаков. статья была вам часть формулы изменяется, в группе ячеек содержит формулы,
= «» Then and Replace» Able циклом только по: For Each c в тех числах,
-
желтым ячейкам, выделяете: Выделяете С3:С22, копируете, случае значение в D4 объединил значение Если поле можно удалить все конкретными свойствами выберите
-
Например, если ввести полезна. Просим вас а остальная остаетсяClipboard значения которых никогда Exit Sub K bits.com и предлагает
ячейкам с формулами, In ActiveSheet.UsedRange.Cells которые состоят «визуально» ячейки в столбце вставляете значениями. Фильтром ячейке D1 исчезнет, ячеек А1, В1Заменить на условия в поле в полег*д уделить пару секунд постоянной, Вы можете
-
-
(Буфер обмена), чтобы не изменятся, можно = Trim(Split(s, «,»)(0)) купить эту программку иначе константы тоже
-
Можно оптимизировать: Sub в т.ч. и I, жмете Альт+Шифт+4 показываете только останется просто недействующая и С1 снедоступно, откройте вкладкуНайтиОбласть поиска, то будут найдены
-
и сообщить, помогла преобразовать часть формулы скопировать выделенные ячейки. с легкостью преобразовать N = Trim(Split(s, и инсталлировать ее… будут заменяться, например AVTOZAM() Dim c из заменяемого числа.
-
(или Главная -желтые формула. сохранением их значенияЗаменить, а затем выбратьвариант слова «год» и ли она вам, в статическое значение. Либо воспользуйтесь сочетанием
их в константы. «,»)(1)) For Each Как этот скрипт 9 As Object, s$Благодарю и низко Найти и выделитьячейки, выделяете ихВопрос: как формулу посредством формулы =(A1&». ячейку с нужнымформулы «город». с помощью кнопок
-
Для этого: клавиш В этом уроке C In ActiveSheet.Cells.SpecialCells(xlCellTypeFormulas) переписать в просто
-
10 For Each c кланяюсь.. — Выделение группы до строки 22, =(A1&» («&B1&») «&C1) («&B1&») «&C1).
-
-
При необходимости поиск можно форматированием в качестве,Вопросительный знак заменяет один внизу страницы. ДляЩелкните по ячейке, содержащейCtrl+C мы покажем Вам If Right(C.Formula, Len(K)) в макрос.. без
на 9 In Cells.SpecialCells(xlCellTypeFormulas) sAlex77755 ячеек — только жмете Альт+Шифт+4 (или заменить на то,Теперь я хочу отменить, нажав клавишу примера. Щелкните стрелкузначения любой знак. Например, удобства также приводим формулу, и выделите. простой способ замены = K Then кнопки тогда ?
-
14 = c.Formula If
-
: Несколько тысяч ссылок!!! видимые ячейки), жмете Главная — Найти что истинно находится удалить ячейки А1, ESC.
рядом с кнопкойили если ввести ссылку на оригинал часть формулы, которуюОткройте выпадающее меню команды как целой, так C.Formula = Left$(C.Formula, Действительно, как написал. Right$(s, 2) =Не стал бы Делит
-
и выделить - в ячейке D1 B1 и C1,Чтобы заменить одно илиФорматпримечанияг?д (на английском языке). необходимо преобразовать вPaste и части формулы, Len(C.Formula) — Len(K)) товрищ, скрипт меняетAlex77755
«10» Then Mid(s, такого делать никогдаснимаете фильтр в Выделение группы ячеек после удаления ячеек но в этом
все совпадения с, выберите пункт.
-
-
, то будут найденыФункции поиска и замены константу. Затем нажмите(Вставить) в группе на ее значение. & N End в том числе:
Советы
-
Len(s) — 1)заменить можно макросом столбце Е — только видимые А1, В1 и случае значение в введенным текстом, нажмитеВыбрать формат из ячейкиПримечание: слова «гад», «гид» в Excel используютсяF9ClipboardИмейте в виду, если If Next End и то, чтоКазанский = «14»: c.FormulaSub AVTOZAM() Forвыделяете столбец I, ячейки), вставляете в С1??? ячейке D1 исчезнет, кнопку, а затем щелкните
-
и «год». для поиска в.(Буфер обмена) и
support.office.com
Замена формулы на значение
Вы преобразовываете формулу Sub
менять НЕ требуется,
, = s Next Each c In копируете, выделяете столбец верхнюю желтую ячейкуВсем спасибо. останется просто недействующая
Заменить ячейку с форматированием,ФормулыСовет: книге необходимой информации,Выделяя часть формулы, убедитесь, выберите пункт в вычисленное значение
Dmitrii как раз, какСправедливо. End Sub UsedRange.Cells If Right(c.Formula, Е, спецвставка, ставите формулуКазанский
формула.
или которое требуется найти.,
Звездочки, знак вопроса и например определенного числа что Вы включаетеValues в одной и: Регулярные выражения должны
в примере, которыйМожет тогда так?
Alex77755 2) = 10
planetaexcel.ru
Замена формулы на значение
точку «Значения» и200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММ(C$2:C9)-СУММЕСЛИ(B$2:B9;»Итого»;C$2:C9)*2
: Скопировать — вставить
Вопрос: как формулуЗаменить всеВыполните одно из указанныхзначения символы тильда (~) или текстовой строки. всю операцию в
(Значения) в разделе той же ячейке, сработать быстрее, чем он привел.. ИSub AVTOZAM() Dim: Sub AVTOZAM() s Then c.Formula =галку «Пропускать пустые ячейки»
и жмете Контрл+Ентер значение =(A1&» («&B1&») «&C1). ниже действий.и можно найти вНа вкладке
выделенный фрагмент. Часть
Paste Values позднее Вы не строковые функции. Пример:
еще на один K, N s = InputBox(«Введите через Replace(c.Formula, «10», «14»), жмете ОК — формула раскидается
Z заменить на то,
Microsoft Excel сохраняет параметрыЧтобы найти текст или
planetaexcel.ru
Заменить формулы на значения частично в столбце (В приложенном файле требуется избавиться от формул частично)
примечания данных листа перед
Главная формулы, которую Вы(Вставить значения). сможете вернуться назадSet objRegExp = момент обратил внимание..если = InputBox(«Введите через
запятую что на Next End Submihalix только по желтым: Сначала сохранить формулу что истинно находится форматирования, которые можно
числа, нажмите кнопкудоступны только на их с тильда
в группе преобразуете, должна вычислятьсяВы также можете выбрать к формуле. Поэтому,
CreateObject(«VBScript.RegExp») objRegExp.Pattern = надо заменить ОДНОЗНАЧНОЕ запятую что на что менять», «»,Апострофф: _Boroda_, Спасибо! ячейкам. Снимаете фильтр. как значение, а в ячейке D1 определить. Если выНайти все вкладке в полеРедактирование до статического значения.
пункт
рекомендуется сохранять резервную «10$» For Each число например 9 что менять», «»,
«10,14») For Each:Pandora12mihalix затем удалить значения после удаления ячеек еще раз выполнитьилиПоиск
Найтинажмите кнопкуВыделенная часть формулы преобразуетсяPaste Special
копию документа Excel c In Cells.SpecialCells(xlCellTypeFormulas)
на 13,то замена
«10,14») If s c In ActiveSheet.UsedRange.CellsAlex77755
: Доброго времени суток: _Boroda_, Приложенный файл
в ячейках - А1, В1 и поиск на листе
Найти далее; на вкладке «
. Например, чтобы найтиНайти и выделить в константу. Нажмите
(Специальная вставка) в перед преобразованием формул. c.Formula = objRegExp.Replace(c.Formula, не производится .. = «» Then If Right(c.Formula, Len(Trim(Split(s,, 3-я строка If ! состален мной как ручками, макросом… С1???
данные и не.
Заменить данные, которые содержат.Enter нижней части выпадающего Вы также можете
«14») Next Set Скрипт начинает считать
excelworld.ru
Автоматическая замена части формулы в ячейке Excel
Exit Sub K «,»)(0)))) = Trim(Split(s, Right(c.Formula, 2) =
Вот столкнулся с адаптивный пример, вikares
Всем спасибо. удается найти символы,Совет:
» доступны только «?», вы введитеВыполните одно из указанных, чтобы сохранить результат. меню. скопировать и вставить
objRegExp = Nothing и довольно быстро = Trim(Split(s, «,»)(0)) «,»)(0)) Then c.Formula 10 Then c.Formula такой пробелмой, ищу фактической таблице фраза: Понял. Спасибо!Казанский которые вы знаете При нажатии кнопкиформулы~? ниже действий.Преобразование формул в статическоеВ диалоговом окне формулы в другиеКазанский завершается, но ошибку N = Trim(Split(s,
= Left$(c.Formula, Len(c.Formula) = Left$(c.Formula, Len(c.Formula)
помощи.. «итого» не повторяется
RAN: Скопировать — вставить
содержал сведения, может
Найти все.как критерии поиска.Чтобы найти текст или значение предназначено дляPaste Special ячейки, сохраняя исходные
: И что, если не выдает, может «,»)(1)) For Each — Len(Trim(Split(s, «,»)(0)))) — 2) &На листе Excel в промежуточных итогах,: См. №2 значение потребоваться снимите нужные, каждого экземпляра условия,Для поиска данных сНажмите кнопку
числа, выберите пункт увеличения скорости обработки(Специальная вставка) выберите формулы. К тому заменять нечего, все что-то и меняет
C In ActiveSheet.UsedRange.Cells & Trim(Split(s, «,»)(1))
14иначе для подобных 2003 имеет несколько каждый раз вместоmihalixZ параметры форматирования из которые вы ищете учетом регистра установите
ПараметрыНайти больших электронных таблиц,
пункт же, если в равно присваивать формулу?
(сразу не определишь If C.Text <> End If Next случаев с тысяч формул типа «итого» различающиеся фразы.: Здравствуйте.: Сначала сохранить формулу предыдущего поиска. В указываются и щелкнув флажок, чтобы определить дополнительные
. содержащих множество формул,Values вашей книге Excel Тогда уж -большой массив), но C.Formula Then If End SubReplaceКод =’C: Budget-_Boroda_В приложенном файле как значение, а диалоговом окне нужное вхождение в
Учитывать регистр
условия поиска приЧтобы найти и заменить или для того,(Значения). Здесь также настроен ручной подсчет.Test полноценной замены не Right(C.Formula, Len(K)) =Или так:результат м.б. непредсказуем 2013[Co-Financing17.xls]1.1′!$AR$10 =’C: Budget-: Тогда приложите реальный требуется избавиться от затем удалить значенияПоиск и замена списке сделает ячейки. необходимости: текст или числа,
чтобы скрыть формулы, предлагаются другие варианты формул, не забудьтедопишите. производится..во всех тех K Then C.FormulaSub AVTOZAM() Dim Результат 2013[Co-Financing17.xls]1.1′!$AА$10 =’C: Budget- файл (или его формул (заменив на
в ячейках -перейдите на вкладку active. Можно сортироватьДля поиска ячеек, содержащих
Для поиска данных на
выберите пункт
лежащие в основе вставки скопированных формул. обновить их, нажавPandora12 местах, где это = Left$(C.Formula, Len(C.Formula) K, N s=’C: Budget- 20 2013[Co-Financing17.xls]1.1′!$AB$10 =’C: Budget- кусок). значения) в столбце ручками, макросом…Поиск результаты только символы, введенные листе или воЗаменить документа Excel, предназначенногоТеперь выделенные ячейки вместо клавишу: Рябята..вроде зработало..Щас еще
требуется.. — Len(K)) & = InputBox(«Введите через14 2013[Co-Financing17.xls]1.1′!$AC$105 =’C: Budget-Формулу можно и С в зеленыхikaresи нажмите кнопку
Найти в поле всей книге выберите. для общего доступа. формул содержат статическиеF9 поизучаю и наишу..Alex77755 N End If запятую что на[Co-Financing 2013[Co-Financing17.xls]1.1′!$AC$109 итд. переделать. Например, так ячейках оставив с: Понял. Спасибо!Параметрывсе, щелкнув заголовокНайти в полеВ полеУрок подготовлен для Вас значения.. респект и уважуха..!!!!!!: Проверял в своём End If Next что менять», «»,14Нужно через автозамену200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММ(C$2:C9)-СУММЕСЛИ(A$2:A9;»»;C$2:C9)*2 формулами желтые.RAN, чтобы открыть параметры столбца., установите флажокИскатьНайти командой сайта office-guru.ru
Запомните, если вы вставилиВыделите ячейки, содержащие формулы,Dmitrii
2003. End Sub «10,14») If s.xls]1.1′!$AR$ (заменить все) заменить- по пустомуЯ пробовал фильтровать: См. №2 форматирования. Щелкните стрелку
Чтобы заменить текст илиЯчейка целикомвариантвведите текст илиИсточник: http://www.howtogeek.com/164011/how-to-convert-a-formula-to-a-static-value-in-excel-2013/ значения в те которые необходимо заменить:Проверяет и меняетКазанский = «» Then14 последнюю цифру во значению в столбце по цвету. Копироватьikares рядом с полем числа, введите знаки.
на листе числа, которые нужноПеревел: Антон Андронов же самые ячейки,
на вычисленные значения.Казанский только последние символы: Проще If C.HasFormula Exit Sub KAlex77755 всех формулах, которые
А все зеленые за: Здравствуйте!Формат для замены вЕсли вы хотите найтиили
искать, или щелкнитеАвтор: Антон Андронов исходных формул больше Вы можете выделить
, это лишь пример. в количестве равном ThenНо я же = Trim(Split(s, «,»)(0))
CyberForum.ru
: Согласен
ТРЕНИНГИ
Быстрый старт
Расширенный Excel
Мастер Формул
Прогнозирование
Визуализация
Макросы на VBA
КНИГИ
Готовые решения
Мастер Формул
Скульптор данных
ВИДЕОУРОКИ
Бизнес-анализ
Выпадающие списки
Даты и время
Диаграммы
Диапазоны
Дубликаты
Защита данных
Интернет, email
Книги, листы
Макросы
Сводные таблицы
Текст
Форматирование
Функции
Всякое
Коротко
Подробно
Версии
Вопрос-Ответ
Скачать
Купить
ПРОЕКТЫ
ОНЛАЙН-КУРСЫ
ФОРУМ
Excel
Работа
PLEX
© Николай Павлов, Planetaexcel, 2006-2022
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
Техническая поддержка сайта
ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Макрос для быстрой замены формул на значения (числа) в выделенных ячейках документа Excel.
Порой бывают ситуации, когда вычисления в отчете выполняются на основании данных полученных из временной промежуточной таблицы. Эту таблицу нужно исключить из отчета, но при ее удалении полученные значения в отчете изменяются, так как «привязаны» к промежуточной таблице (черновику) формулами.
Для того, чтобы «отвязать» результаты расчетов от исходных данных следует заменить формулы в ячейках на их значения (цифры).
Сделать это можно скопировав столбец или строку и, выполнив вставку значений через меню быстрого доступа.
Это не всегда удобно. Например, если вы используете фильтры, значения вставятся не в нужные ячейки, а в ячейки под фильтрами. Кроме того, такая процедура не быстрая – несколько кликов и при замене нескольких тысяч строчек руки будут сильно уставать набора однообразных действий.
Естественно, любому пользователю хочется выполнять замену формул на значения в один клик, а лучше даже сочетанием горячих клавиш.
Как реализовать замену формул на значения (числа) в выделенных ячейках при помощи горячих клавиш с назначенным макросом рассмотрим ниже.
Для начала следует записать макрос замены.
- В панели разработчика создаем модуль (контейнер) для макроса:
- Кликаем на пиктограмму Visual Basic
- В открывшемся окне кликаем правой кнопкой мыши по книге и выбираем в контекстном меню insert => Module
- Открываем созданный модуль двойным щелчком мыши и записываем в него текст макроса.
Sub Замена_формул()
For Each cell In Selection
cell.Formula = cell.Value
Next
End Sub
Sub Замена_формул() – название макроса;
For Each cell In Selection – цикл повторяющихся действий от первой ячейки до конца выделения;
cell.Formula = cell.Value – действие по замене формулы на значение;
End Sub – конец макроса.
- После записи макроса следует зайти в панели разработчика в список макросов и кликнув по кнопке параметры назначить макросу сочетание клавиш.
Теперь если выделить диапазон с формулами и нажать заданное сочетание клавиш значения выделенных ячеек будут заменены на числа.
После замены формул на значения можно смело удалять промежуточные таблицы (черновики) из отчета .
Видео работы макроса замены формул на значения:
Замена формулы на ее результат
Вы можете преобразовать содержимое ячейки, содержащей формулу, так, чтобы вычисленное значение заменило формулу. Если вы хотите закрепить только часть формулы, вы можете заменить только ту часть, которую вы не хотите пересчитать. Замена формулы на ее результат может быть полезной, если в книге есть большое количество или сложные формулы, и вы хотите повысить производительность, создав статические данные.
Вы можете преобразовать формулы в их значения на основе одной ячейки или преобразовать весь диапазон.
Важно: Убедитесь, что вы изучите влияние замены формулы на результаты, особенно если в формулах ссылаются другие ячейки, содержащие формулы. Перед заменой формулы ее результатом рекомендуется создать резервную копию книги.
В этой статье не рассматриваются параметры вычислений и способы их устранения. Сведения о том, как включить или отключить автоматическое перерасчет на листе, можно найти в разделе Изменение пересчета формул, итераций или точности.
Замена формул с помощью вычисляемых значений
При замене формул их значениями Excel навсегда удаляет формулы. Если вы случайно заменили формулу с помощью значения и хотите восстановить формулу, нажмите кнопку отменить сразу после ввода или вставки значения.
Выделите ячейку или диапазон ячеек, содержащих формулы.
Если формула является формула массива, выделите диапазон ячеек, содержащих формулу массива.
Выбор диапазона, содержащего формулу массива
Щелкните ячейку в формуле массива.
На вкладке Главная в группе Редактирование нажмите кнопку Найти и выделить, а затем выберите команду Перейти.
Нажмите кнопку Дополнительный.
Нажмите кнопку Текущий массив.
Нажмите кнопку » копировать «.
Нажмите кнопку вставить .
Щелкните стрелку рядом с пунктом Параметры вставки и выберите пункт только значения.
В следующем примере показана формула в ячейке D2, которая умножает ячейки a2, B2 и скидку, полученную из C2, для расчета суммы счета для продажи. Чтобы скопировать фактическое значение вместо формулы из ячейки на другой лист или в другую книгу, можно преобразовать формулу в ее ячейку в ее значение, выполнив указанные ниже действия.
Нажмите клавишу F2, чтобы изменить значение в ячейке.
Нажмите клавишу F9 и нажмите клавишу ВВОД.
После преобразования ячейки из формулы в значение оно будет отображено как 1932,322 в строке формул. Обратите внимание, что 1932,322 является фактическим вычисленным значением, а 1932,32 — значением, которое отображается в ячейке в денежном формате.
Совет: При редактировании ячейки, содержащей формулу, можно нажать клавишу F9, чтобы полностью заменить формулу вычисляемым значением.
Замена части формулы значением, полученным при ее вычислении
Иногда возникает необходимость заменить только часть формулы на вычисленное значение. Например, вы хотите закрепить значение, используемое в качестве платежа для ссуды за автомобиль. Этот платеж рассчитывается на основе процента годового дохода за заем. В течение этого времени сумма дохода не изменится, поэтому вы хотите заблокировать оплату вниз в формуле, которая вычисляет платеж на основе различных сумм займа.
При замене части формулы на ее значение ее часть не может быть восстановлена.
Щелкните ячейку, содержащую формулу.
В строка формул выделите часть формулы, которую вы хотите заменить возвращаемым значением. При выделении части формулы, которую вы хотите заменить, убедитесь, что вы включите весь операнд. Например, если выбрана функция, необходимо выбрать имя функции, открывающую круглую скобку, аргументы и закрывающую круглую скобку.
Чтобы вычислить выделенный фрагмент, нажмите клавишу F9.
Чтобы заменить выделенный фрагмент формулы на вычисленное значение, нажмите клавишу ВВОД.
В Excel Online результаты уже отображаются в ячейке книги, а формула отображается только в строке формул .
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.
Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).
Замена некоторых формул значениями
В силу различных обстоятельств иногда возникает потребность заменить формулы в ячейках значениями. Если это связный прямоугольный диапазон, сделать такую замену весьма просто. Выделите диапазон, нажмите Ctrl+C. Не снимая выделения, кликните правой кнопкой мыши в любом месте выделенного диапазона, выберите Специальная вставка, и в открывшемся окне выберите значения. Нажмите Ok. Если вы любите клавиатурные сокращения, то для специальной вставки используйте Alt+Я+М+З (версия для Excel 2016 и позднее; все буквы русские).
Рис. 1. Вставить только значения
Скачать заметку в формате Word или pdf
Иногда заменить формулы на значения нужно в отдельных ячейках, или в нескольких несвязанных диапазонах. У меня такая потребность возникала в следующих ситуациях. 1. Использовал модель на основе функции СЛЧИС(), а затем презентовал результаты в отчете (Excel, Word, PowerPoint). Требовалось, чтобы вид графиков в Excel и в презентации совпадал. Поскольку волатильная функция СЛЧИС() пересчитывается при каждом изменении в книге, нужно было сгенерировать модель и графики на ее основе, а затем избавиться от пересчета. 2. Построил отчет о продажах на основе функций кубов (в частности КУБЗНАЧЕНИЕ). В отчете представлены, как исторические данные, так и текущие. Исходных данных очень много, и при каждом обновлении пересчитываются все суммы в отчете. Понятно, что исторические данные не изменяются, и в них формулы можно заменить на значения.
Для того чтобы заменить лишь некоторые формулы на значения, нужно, во-первых, выделить ячейки для замены, а во-вторых, провести замену.
Выделение ячеек
Чтобы выделить ячейки, содержащие определенную формулу или фрагмент формулы, выберите диапазон, покрывающий все ячейки, требующие замены (естественно, диапазон будет содержать и некоторые ячейки, которые не нужно изменять). Если требуется выберите все ячейки на листе. Для этого нажмите Ctrl+Ф (или А английское). По возможности избегайте выделения всего листа, так как большое количество ячеек обрабатывается дольше.
Вызовите окно поиска – Ctrl+F (или А русское). Введите строку для поиска в поле Найти. В нашем примере мы заменяем значениями формулы кубов, относящиеся к 2002 году. Строка «2002» содержится в формуле КУБЗНАЧЕНИЕ только для ячеек, извлекающих данные за соответствующий год (см. цифру 1 на рис. 2).
Нажмите кнопку Параметры (2) и в окне появятся дополнительные опции. Проверьте, что Область поиска = формулы, а галочка Ячейка целиком отсутствует (3). Нажмите кнопку Найти все (4). В нижней части окна появятся строки с ячейками, удовлетворяющими условиям поиска. Выберите первый элемент (5), а затем нажмите Ctrl+Ф, чтобы выбрать все элементы в списке. Нажмите Закрыть (6). Ячейки, содержащие формулу куба и относящиеся к 2002 г. выбраны на листе Excel.
Рис. 2. Окно Найти; чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке
Преобразование формул в значения
Формулы – это хорошо. Они автоматически пересчитываются при любом изменении исходных данных, превращая Excel из «калькулятора-переростка» в мощную автоматизированную систему обработки поступающих данных. Они позволяют выполнять сложные вычисления с хитрой логикой и структурой. Но иногда возникают ситуации, когда лучше бы вместо формул в ячейках остались значения. Например:
- Вы хотите зафиксировать цифры в вашем отчете на текущую дату.
- Вы не хотите, чтобы клиент увидел формулы, по которым вы рассчитывали для него стоимость проекта (а то поймет, что вы заложили 300% маржи на всякий случай).
- Ваш файл содержит такое больше количество формул, что Excel начал жутко тормозить при любых, даже самых простых изменениях в нем, т.к. постоянно их пересчитывает (хотя, честности ради, надо сказать, что это можно решить временным отключением автоматических вычислений на вкладке Формулы – Параметры вычислений).
- Вы хотите скопировать диапазон с данными из одного места в другое, но при копировании «сползут» все ссылки в формулах.
В любой подобной ситуации можно легко удалить формулы, оставив в ячейках только их значения. Давайте рассмотрим несколько способов и ситуаций.
Способ 1. Классический
Этот способ прост, известен большинству пользователей и заключается в использовании специальной вставки:
- Выделите диапазон с формулами, которые нужно заменить на значения.
- Скопируйте его правой кнопкой мыши – Копировать(Copy) .
- Щелкните правой кнопкой мыши по выделенным ячейкам и выберите либо значок Значения (Values) :
либо наведитесь мышью на команду Специальная вставка (Paste Special) , чтобы увидеть подменю:
Из него можно выбрать варианты вставки значений с сохранением дизайна или числовых форматов исходных ячеек.
В старых версиях Excel таких удобных желтых кнопочек нет, но можно просто выбрать команду Специальная вставка и затем опцию Значения (Paste Special — Values) в открывшемся диалоговом окне:
Способ 2. Только клавишами без мыши
При некотором навыке, можно проделать всё вышеперечисленное вообще на касаясь мыши:
- Копируем выделенный диапазон Ctrl + C
- Тут же вставляем обратно сочетанием Ctrl + V
- Жмём Ctrl , чтобы вызвать меню вариантов вставки
- Нажимаем клавишу с русской буквой З или используем стрелки, чтобы выбрать вариант Значения и подтверждаем выбор клавишей Enter :
Способ 3. Только мышью без клавиш или Ловкость Рук
Этот способ требует определенной сноровки, но будет заметно быстрее предыдущего. Делаем следующее:
- Выделяем диапазон с формулами на листе
- Хватаем за край выделенной области (толстая черная линия по периметру) и, удерживая ПРАВУЮ клавишу мыши, перетаскиваем на пару сантиметров в любую сторону, а потом возвращаем на то же место
- В появившемся контекстном меню после перетаскивания выбираем Копировать только значения (Copy As Values Only) .
После небольшой тренировки делается такое действие очень легко и быстро. Главное, чтобы сосед под локоть не толкал и руки не дрожали 😉
Способ 4. Кнопка для вставки значений на Панели быстрого доступа
Ускорить специальную вставку можно, если добавить на панель быстрого доступа в левый верхний угол окна кнопку Вставить как значения. Для этого выберите Файл — Параметры — Панель быстрого доступа (File — Options — Customize Quick Access Toolbar) . В открывшемся окне выберите Все команды (All commands) в выпадающем списке, найдите кнопку Вставить значения (Paste Values) и добавьте ее на панель:
Теперь после копирования ячеек с формулами будет достаточно нажать на эту кнопку на панели быстрого доступа:
Кроме того, по умолчанию всем кнопкам на этой панели присваивается сочетание клавиш Alt + цифра (нажимать последовательно). Если нажать на клавишу Alt , то Excel подскажет цифру, которая за это отвечает:
Способ 5. Макросы для выделенного диапазона, целого листа или всей книги сразу
Если вас не пугает слово «макросы», то это будет, пожалуй, самый быстрый способ.
Макрос для превращения всех формул в значения в выделенном диапазоне (или нескольких диапазонах, выделенных одновременно с Ctrl) выглядит так:
Если вам нужно преобразовать в значения текущий лист, то макрос будет таким:
И, наконец, для превращения всех формул в книге на всех листах придется использовать вот такую конструкцию:
Код нужных макросов можно скопировать в новый модуль вашего файла (жмем Alt + F11 чтобы попасть в Visual Basic, далее Insert — Module). Запускать их потом можно через вкладку Разработчик — Макросы (Developer — Macros) или сочетанием клавиш Alt + F8 . Макросы будут работать в любой книге, пока открыт файл, где они хранятся. И помните, пожалуйста, о том, что действия выполненные макросом невозможно отменить — применяйте их с осторожностью.
Способ 6. Для ленивых
Если ломает делать все вышеперечисленное, то можно поступить еще проще — установить надстройку PLEX, где уже есть готовые макросы для конвертации формул в значения и делать все одним касанием мыши:
- всё будет максимально быстро и просто
- можно откатить ошибочную конвертацию отменой последнего действия или сочетанием Ctrl + Z как обычно
- в отличие от предыдущего способа, этот макрос корректно работает, если на листе есть скрытые строки/столбцы или включены фильтры
- любой из этих команд можно назначить любое удобное вам сочетание клавиш в Диспетчере горячих клавиш PLEX
Как в Excel заменить формулы на их значения
Представляем Вашему вниманию полезный совет, который поможет сэкономить время – самый быстрый способ заменить в Excel формулы на их значения. Этот способ работает в Excel 2013, 2010 – 2003.
Может быть несколько причин для замены формул на их значения:
- Чтобы быстро вставить значения в другую рабочую книгу или на другой лист, не теряя времени на копирование и специальную вставку.
- Чтобы сохранить в тайне расчетные формулы при отправке рабочей книги другому человеку (например, Ваши розничные цены с наценкой к оптовой цене).
- Чтобы защитить результат от изменения, когда изменяются значения в связанных ячейках.
- Сохранить результат функции RAND (СЛЧИС).
- Если в рабочей книге содержится много сложных формул, которые делают пересчёт очень медленным. При этом Вы не можете переключить пересчёт книги Excel в ручной режим.
Преобразуем формулы в значения при помощи комбинаций клавиш в Excel
Предположим, у Вас есть формула для извлечения доменных имён из URL-адресов. Вы хотите заменить её результаты на значения.
Выполните следующие простые действия:
- Выделите все ячейки с формулами, которые Вы хотите преобразовать.
- Нажмите Ctrl+C или Ctrl+Ins, чтобы скопировать формулы и их результаты в буфер обмена.
- Нажмите Shift+F10, а затем V (или букву З – в русском Excel), чтобы вставить только значения обратно в те же ячейки Excel.
Shift+F10 + V (З) – это быстрейший способ воспользоваться в Excel командой Paste special (Специальная вставка) > Values only (Значения).
Готово! Достаточно быстрый способ, не так ли?