Формулы в Airtable: руководство для начинающих

Airtable сочетает в себе гибкость таблицы и мощь базы данных. Формулы — один из ключевых инструментов для анализа данных в базе. Это руководство объясняет, как добавить поле «Формула», как ссылаться на другие поля и какие базовые функции использовать. Также вы найдёте чеклисты, примеры, часто встречающиеся ошибки и варианты альтернативных подходов.
Что делает поле «Формула» и когда его использовать
Поле «Формула» вычисляет выражение для каждой записи таблицы. Оно полезно, когда нужно:
- вычислить итоговую цену, налоги или скидки;
- автоматически формировать метки и статусы на основе условий;
- вычислять сроки и напоминания на основе дат;
- объединять текстовые поля для удобного отображения.
Важно: формула одинакова для всех записей. Нельзя задать разные формулы для отдельных клеток в одной колонке.
Как добавить поле «Формула» в таблицу
- Откройте представление Grid в таблице.
- Нажмите кнопку с плюсиком (+) в конце строки заголовков полей. При большом числе полей прокрутите вправо.
- В списке типов полей выберите Формула.
- В меню «Редактировать поле» введите выражение и при необходимости настройте формат через вкладку Форматирование.
- Нажмите Создать поле.

Примечание: Airtable автоматически распознаёт числа, проценты и даты. Измените отображение через Formatting, если нужно, например, показать валюту или формат даты.
Как ссылаться на другие поля в формуле
В Airtable нет адресов вроде A1 или C5. Ссылки делают по имени поля.
- Если имя поля — одно слово, можно писать его прямо, например:
Price- Если имя содержит пробелы или спецсимволы, берите его в фигурные скобки:
{Order quantity}Фигурные скобки работают и для однословных имён. Это похоже на именованные диапазоны в Excel, но настройка уже сделана за вас.
Операторы: быстрое введение
Airtable поддерживает арифметические, текстовые и логические операторы:
- Сложение: +
- Вычитание: -
- Умножение: *
- Деление: /
- Скобки: ( ) для группировки выражений
- Объединение текста: & или функция CONCATENATE()
- Логика: >, <, >=, <=, =, != (вернёт TRUE или FALSE)
Если вы добавляете в формулу строковый литерал, берите его в двойные кавычки: “текст”. Чтобы вставить кавычки в результат, используйте экранирование: “\”” внутри строки.
Быстрый справочник по часто используемым функциям
Ниже — краткие описания функций, которые чаще всего применяют в Airtable.
IF
Синтаксис:
IF(expression, value_if_true, value_if_false)Функция возвращает value_if_true, если условие истинно, иначе value_if_false. Можно вкладывать IF в IF для нескольких ветвей. Для пустых значений используйте BLANK(): проверка на BLANK() заменяет ISBLANK.
Пример:
IF({Order quantity} > 0, "Есть в заказе", "Нет в заказе")SUM
Синтаксис:
SUM(number1, [number2, ...])Складывает перечисленные значения или поля.
DATEADD
Добавляет интервал к дате/времени.
DATEADD([date or date and time], [#], 'units')Где ‘units’ — одна из строк: ‘milliseconds’, ‘seconds’, ‘minutes’, ‘hours’, ‘days’, ‘weeks’, ‘months’, ‘quarters’, ‘years’. Вместо поля можно использовать TODAY() или NOW(). NOW() обновляется примерно каждые 15 минут и при пересчёте базы.
Пример (локализованное представление даты):
DATEADD("2023-07-18 14:55:29", 760, "minutes")Важно: DATEADD требует даты. Попытка использовать только время приведёт к ошибке.
Примеры практических формул
- Итог с учётом скидки и налога:
ROUND(({Price} * {Quantity}) * (1 - {Discount}), 2)- Человеко-читаемый статус доставки:
IF({Shipped}, "Отгружено", IF({Delivery date} <= TODAY(), "Должно быть доставлено", "В ожидании"))- Автоматическое напоминание за 3 дня до срока:
IF(DATEADD({Due date}, -3, "days") <= TODAY(), "Напомнить", "Ожидать")- Объединить имя и фамилию в одно поле:
{First name} & " " & {Last name}Советы по разработке и отладке формул
- Используйте многостровый редактор формул, чтобы выровнять вложенные IF и видеть структуру.
- Добавляйте временные поля с промежуточными вычислениями при дебаге.
- Проверяйте типы данных: числовые операции вернут ошибку на текстовых полях.
- Применяйте ROUND для финансовых расчётов.
Важно: изменение имени поля ломает формулы, которые на него ссылались. Перед массовыми переименованиями экспортируйте базу или сохраните резервную копию структуры.
Когда формулы не подходят — альтернативы
- Автоматизации (Automations): если нужно выполнять действия при изменении записи (например, отправлять почту), используйте Automations.
- Сценарии (Scripting): для сложной логики, циклов и интеграций с внешними API пишите скрипты на JavaScript.
- Связанные таблицы и lookups: если формула должна зависеть от множества связанных записей, лучше объединить данные через связь и lookup-поля.
Пример решения: если нужно разнести расчёт по разным правилам для отдельных записей — рассмотрите создание вспомогательных полей с типом Single select и применение одного общего правила через SWITCH() или выполнение расчётов скриптом.
Частые ошибки и когда формулы «ломаются» (Counterexamples)
- Ожидание поведения Excel: в Excel есть ряд специализированных функций (финансовые, инженерные), которых нет в Airtable.
- Неявные типы: попытка сложить текст и число приведёт к ошибке.
- Зависимости между полями: циклические ссылки невозможны. Формула не может ссылаться на поле, которое зависит от её результата.
- Производительность: очень длинные формулы и большое число вычисляемых полей могут замедлить работу базы на больших объёмах.
Примеры провальных случаев:
- Попытка посчитать среднее по связанным записям без использования rollup-поля.
- Использование NOW() в критических SLA-расчётах: значение обновляется периодически, а не в реальном времени.
Шаблоны и сниппеты (Cheat sheet)
- Сравнение дат:
IF({Start} <= TODAY() AND {End} >= TODAY(), "В процессе", "Не активен")- Безопасная проверка пустого поля:
IF({Field} = BLANK(), "—", {Field})- SWITCH вместо множества вложенных IF:
SWITCH({Status}, "new", "Новый", "in_progress", "В работе", "done", "Завершён", "Неизвестно")Роли и чек-листы перед выпуском формул в продакшен
Product manager:
- Утвердить бизнес-логику формулы.
- Проверить кейсы на пограничные значения.
Аналитик:
- Протестировать формулы на репрезентативной выборке данных.
- Сравнить с расчётами в таблицах/скриптах.
Разработчик/Администратор базы:
- Сделать бэкап структуры.
- Применить изменение на тестовой таблице.
- Документировать новые поля.
Критерии приёмки
- Формула возвращает ожидаемые значения для наборов тестовых записей (позитивные и негативные кейсы).
- Нет ошибок типов (ошибки вычислений, деление на ноль).
- Формат вывода соответствует требованиям (количество знаков после запятой, формат даты).
- Изменение имени полей корректно отражено в документации.
Модель мышления: «таблица как база данных, не как электронная таблица»
Мышление: рассматривайте таблицу как коллекцию записей, у каждой записи есть набор полей. Формула — это правило, применяемое ко всем записям одновременно. Если нужно специфическое значение для одной строки — храните его в поле ввода, а не в формуле.
Качество и зрелость использования формул (Maturity levels)
- Начальный: простые арифметические выражения и объединение текста.
- Средний: использование IF, DATEADD, SWITCH, rollup/lookup для агрегатов.
- Продвинутый: сочетание формул с автоматизациями и скриптами для сложной логики.
Рекомендация: переходите на следующий уровень только после формализации требований и написания тест-кейсов.
Decision flowchart для выбора способа решения
flowchart TD
A[Нужно вычисление?] --> B{Зависит ли логика только от полей одной записи?}
B -- Да --> C[Использовать поле Формула]
B -- Нет --> D{Зависит ли от связанных записей или агрегатов?}
D -- Да --> E[Использовать rollup/lookup или формулу в связанной таблице]
D -- Нет --> F{Нужно ли действие 'уведомление, API'?}
F -- Да --> G[Automations]
F -- Нет --> H[Scripting / внешний процесс]
C --> I[Тестирование на выборке]
E --> I
G --> I
H --> IТестовые случаи и приёмка (Test cases)
- Пустые поля: формула корректно обрабатывает BLANK().
- Граничные значения: большие числа, ноль, отрицательные.
- Даты: DATEADD корректно добавляет месяцы/годы через переходы года.
- Локализация: формат даты/валюты отображается как ожидается в Formatting.
Критерии приёмки перечислены выше.
Безопасность и приватность данных
Формулы выполняются внутри базы Airtable; они не отправляют данные внешним сервисам сами по себе. Если вы используете Automations или Scripting, проверьте, не передаёте ли персональные данные в незащищённые сервисы. Для данных персонального характера применяйте минимизацию и доступ по ролям.
Краткий глоссарий (1 строка на термин)
- Поле (field): колонка в таблице, содержащая единый тип данных.
- Запись (record): строка таблицы, экземпляр данных.
- Формула (formula): выражение, вычисляемое для каждой записи.
- BLANK(): функция, обозначающая пустое значение.
- NOW()/TODAY(): функции для текущей даты/времени.
Краткое резюме
- Формулы в Airtable дают мощные возможности для автоматических расчётов.
- Используйте фигурные скобки для полей с пробелами в имени.
- Для сложных или разрозненных по записям сценариев рассмотрите automations или scripting.
Экспериментируйте в тестовой таблице, документируйте формулы и поддерживайте простоту: проще читать — проще исправлять.
Похожие материалы
Как показывать слайдшоу в Adobe Bridge
Steam Points — как получать и тратить
Создание ярлыков программ в Windows
Изображения не загружаются в Сообщениях на iPhone
Очистка iTunes: 7 шагов для скорости