Конвертер формул Excel в JavaScript

Вставьте формулу из таблицы и получите понятный JavaScript: функцию с именованными параметрами, правильным порядком операций и небольшими вспомогательными функциями для того, чего нет в JavaScript, например SUMIFS и VLOOKUP.

Обновлено

Можно вставлять формулу с ведущим знаком = или без него. Запятые и точки с запятой работают как разделители аргументов.

Результат

Ссылки на ячейки

Ссылки появятся здесь после ввода формулы.

Дайте ссылкам понятные имена (B2 → price). Диапазоны становятся списками, многостолбцовые диапазоны — списками строк.

Ваши данные никогда не покидают ваш компьютер. Вся обработка выполняется на 100% локально в вашем браузере.

Был ли этот инструмент полезен?0.0 Оценок: 0
Конвертируйте формулы Excel в код Python онлайнФормула Excel в Python →

Как пользоваться: Формула Excel в JavaScript

  1. Вставьте формулу Excel или Google Sheets или выберите готовую в разделе Примеры.
  2. Выберите целевой язык. Страница открывается с JavaScript, but вы можете переключить язык в любой момент.
  3. Переименуйте найденные ссылки на ячейки в понятные имена переменных, например B2 → price.
  4. Выберите полную функцию или только выражение, затем скопируйте или скачайте код. Вспомогательные функции добавляются автоматически, если формула в них нуждается.

Зачем переводить формулы Excel в JavaScript?

Бизнес-логика часто начинается в таблице: модель ценообразования, таблица комиссий, проверка права на услугу. Когда эта логика переходит в веб-приложение, API на Node.js или Google Apps Script, каждую формулу приходится переписывать вручную, а тонкие различия между Excel и JavaScript приводят к ошибкам, которые проявляются только на реальных данных. Этот конвертер разбирает формулу так же, как Excel, и пишет эквивалентный JavaScript.

=IF(AND(B2>=18, C2="yes"), "Eligible", "Not eligible")

function calculate(B2, C2) {
  return B2 >= 18 && C2 === 'yes' ? 'Eligible' : 'Not eligible';
}

Как функции Excel соответствуют JavaScript

ExcelJavaScript
IF(c, a, b)c ? a : b
IFS / SWITCHвложенные тернарные операторы
AND, OR, NOT&&, ||, !
= и <>=== и !==
a & bString(a) + b
a ^ ba ** b
SUM(A2:A10)A2_A10.reduce(…)
ROUND(x, 2)помощник round() (половины от нуля)
MOD(a, b)помощник mod()
SUMIFS / COUNTIF…помощники sumIfs(), countIf()
VLOOKUP / XLOOKUPпомощники vlookup(), xlookup()
IFERROR(x, y)ifError(() => x, y)
LEFT / MID / LEN.slice(), .substr(), .length
TODAY() / NOW()new Date()

Различия, из-за которых появляются ошибки

  • Порядок операций. В Excel =-2^2 равно 4, потому что унарный минус действует раньше ^. В JavaScript даже -2 ** 2 не допускается. Конвертер всегда добавляет скобки, которые подразумевает Excel: (-2) ** 2.
  • Округление. Excel округляет половины от нуля; Math.round(-2.5) возвращает −2, а (1.005).toFixed(2) даёт «1.00». Сгенерированная функция round() работает как в Excel.
  • Остаток от деления. MOD(-7, 3) в Excel равно 2, а -7 % 3 в JavaScript равно −1, поэтому используется помощник mod().
  • Сравнение текста. Оператор = в Excel не учитывает регистр для текста, а === учитывает. Помощники поиска и критериев сравнивают без учёта регистра, как Excel.
  • Конкатенация. & всегда даёт текст, а + складывает числа. Конвертер оборачивает первый операнд в String(), поэтому A1 & B1 никогда не превратится в сумму.
  • Ошибки. Деление на ноль возвращает Infinity вместо исключения, поэтому ifError() проверяет и нечисловые результаты, и исключения.

Диапазоны, поиск и критерии

Диапазон из одного столбца или одной строки, например A2:A100, становится параметром-массивом; диапазон из нескольких столбцов, например A2:C500, становится массивом строк, именно такой формат ожидает vlookup(). Строки критериев работают как в Excel: ">=1000", "<>closed" и подстановочные знаки, например "*@example.com".

Поддерживаемые функции: IF, IFS, SWITCH, AND, OR, NOT, XOR, IFERROR, IFNA, ISBLANK, ISNUMBER, ISTEXT, SUM, AVERAGE, MIN, MAX, COUNT, COUNTA, COUNTBLANK, PRODUCT, MEDIAN, ROUND, ROUNDUP, ROUNDDOWN, INT, TRUNC, ABS, SIGN, MOD, POWER, SQRT, EXP, LN, LOG, LOG10, PI, CEILING, FLOOR, RAND, RANDBETWEEN, SUMIF, SUMIFS, COUNTIF, COUNTIFS, AVERAGEIF, AVERAGEIFS, SUMPRODUCT, VLOOKUP, XLOOKUP, MATCH, INDEX, CONCAT, CONCATENATE, TEXTJOIN, LEFT, RIGHT, MID, LEN, UPPER, LOWER, PROPER, TRIM, SUBSTITUTE, REPLACE, FIND, SEARCH, REPT, VALUE, EXACT, TEXT (форматы чисел), TODAY, NOW, DATE, YEAR, MONTH, DAY. Остальные функции сохраняются как вызовы и перечисляются, чтобы вы могли их реализовать. Нужны и данные? Превратите таблицу в массив с помощью Excel в массив JavaScript.

Также ищут как: формула excel в js, формулы google sheets в javascript, конвертер формул excel, формула excel в код, формула excel в node, перевод формул excel в код.

Инструменты, которые хорошо сочетаются с Формула Excel в JavaScript

  • Формула Excel в Python — Вставьте формулу Excel или Google Sheets и получите функцию Python с понятными именами переменных, нужными импортами и вспомогательными функциями для SUMIFS, VLOOKUP и округления в стиле Excel.
  • Формула Excel в PHP — Вставьте формулу из таблицы и получите функцию на PHP 8: тернарные операторы в скобках, строковые функции mb_* и вспомогательные функции для поиска, условных сумм и MOD в стиле Excel.
  • Формула Excel в SQL — Вставьте формулу Excel и получите эквивалентное SQL-выражение или запрос SELECT: IF и IFS как CASE WHEN, SUMIFS и COUNTIFS как условные агрегаты, а также подходящие строковые и датные функции для вашей базы данных.
  • JavaScript форматтер — Распакуйте и отформатируйте JavaScript, JSON или JSX с нужными отступами и стилем скобок.

Часто задаваемые вопросы

Дает ли сгенерированный JavaScript те же результаты, что и Excel?
Для поддерживаемых функций — да, включая округление как в Excel, знаки результата MOD и поиск без учёта регистра. Даты в JavaScript — это объекты Date, а не серийные номера Excel, поэтому арифметику с датами, например A2 + 30, нужно адаптировать.
Можно ли использовать конвертер для формул Google Sheets или Apps Script?
Да. Google Sheets использует тот же синтаксис формул для поддерживаемых функций, а результат работает без изменений в Google Apps Script, браузерах и Node.js.
Что происходит с функциями, которые конвертер не знает?
Они сохраняются как вызовы функций с тем же именем (например, networkdays(…)) и перечисляются над результатом, чтобы вы могли их реализовать или заменить.
Отправляется ли моя формула на сервер?
Нет. Разбор формулы и генерация кода полностью выполняются в вашем браузере.
Как называются ссылки на ячейки?
По умолчанию B2 остаётся B2, а A2:A10 становится A2_A10. Введите имя рядом с любой ссылкой, чтобы переименовать её во всём результате.
Можно ли установить Формула Excel в JavaScript как веб-приложение и пользоваться им офлайн?
Да. Формула Excel в JavaScript — это веб-приложение (PWA), которое можно установить из браузера, без скачивания из магазина приложений. В Chrome или Edge (Windows, macOS, Linux, ChromeOS) или на Android нажмите вверху этой страницы «Установить приложение»; на iPhone и iPad используйте «Поделиться → На экран «Домой»», а в Safari 17+ на Mac — «Файл → Добавить в Dock». После этого приложение откроется в отдельном окне со своим значком, и так как оно полностью работает в браузере, оно продолжит работать офлайн. Firefox на компьютере не умеет устанавливать веб-приложения. Как работает установка.

Похожие инструменты

localФормула Excel в PythonВставьте формулу Excel или Google Sheets и получите функцию Python с понятными именами переменных, нужными…localФормула Excel в PHPВставьте формулу из таблицы и получите функцию на PHP 8: тернарные операторы в скобках, строковые функции…localФормула Excel в SQLВставьте формулу Excel и получите эквивалентное SQL-выражение или запрос SELECT: IF и IFS как CASE WHEN,…localExcel, CSV и JSON в массив JavaScriptВставьте строки таблицы или JSON и получите аккуратный литерал массива или объекта JavaScript для вашего…localJavaScript форматтерРаспакуйте и отформатируйте JavaScript, JSON или JSX с нужными отступами и стилем скобок. Или удалите…localExcel в JSONОткройте книгу .xlsx или вставьте ячейки прямо из Excel или Google Sheets и получите чистый JSON. Числа,…