Применить к
- Pro
- Business
- Enterprise
Часто задаваемые вопросы об использовании формул
Формулы в Smartsheet позволяют сэкономить время за счёт автоматических вычислений, возможности объединения содержимого ячеек в одной таблице, отслеживания дат и т. д.
В этой статье содержатся ответы на основные вопросы, которые часто задают пользователи.
Остались вопросы?
Используйте шаблон Руководство по работе с формулами, чтобы просмотреть дополнительные ресурсы и изучить более 100 формул. Руководство содержит глоссарий, описывающий каждую функцию, обращение с которой вы сможете отработать на практике, и примеры как часто используемых, так и более сложных функций.
Изучить примеры того, как эту функцию применяют другие пользователи Smartsheet, или задать интересующий вас вопрос можно в Сообществе Smartsheet.
Ответы на вопросы о формулах в Smartsheet
Может ли формула ссылаться на ячейку в другой таблице?
Да. Формула может содержать ссылку на одну ячейку, диапазон ячеек или целые столбцы в другой таблице. Такие формулы называются межтабличными.
Поддерживается ли в Smartsheet функция VLOOKUP?
Да! Однако Smartsheet имеет более универсальное сочетание функций INDEX и MATCH. Такое сочетание позволяет сократить количество межтабличных ссылок на ячейки за счёт рассмотрения столбцов по отдельности вместо использования одного большого диапазона.
Пример представлен в статье, посвящённой сочетаниям формул для межтабличных ссылок.
Узнать о функции Smartsheet VLOOKUP можно в этой статье VLOOKUP. Кроме того, вы можете найти примеры использования другими клиентами Smartsheet формул для сбора данных в интернет-сообществе Smartsheet.
Как получить формулу, в которую будут включаться новые добавленные строки?
Если вставить новую строку выше или ниже строки с формулой либо между двумя строками с одной и той же формулой, то формула будет добавлена автоматически.
Вы можете создать формулу, использующую все значения в столбце, исключив ссылки на строки и используя только имя столбца при указании диапазона (например, =SUM([Всего часов]:[Всего часов]). В этом случае все добавляемые строки будут автоматически включаться в вычисления.
Если вы настроили формулу в столбце, она автоматически будет применяться ко всем новым ячейкам в нём.
Можно ли управлять символьными столбцами с помощью формул?
Да. Символ, добавленный в формулу, зависит от того, какие символы вы используете. Вот список элементов, которые можно добавлять в формулы:
- Символы звезды, флага и флажка: для этих символов используйте 1 для состояния "включён" и 0 для состояния "выключен"
- Пример: = IF([Статус]@row = "Завершено",1,0)
- Символы светофора: используйте значения литералов Красный, Жёлтый и Зелёный
- Пример: =IF([Статус]@строка = "Есть риск", “Красный”, "Зелёный")
- Символы приоритета: используйте Высокий или Низкий
- Пример: =IF([Статус]@строка = "Просрочено", "Высокий", "Низкий"))
- Диаграммы выполнения: используйте диаграммы Четверть, Половина, Три четверти, Полная и Пустая
- Пример: =IF([% выполнения]@строка = 1, "Полная", "Пустая"))
Формула введена правильно, но отображается в ячейке как текст. В чём проблема?
Ниже приведены три наиболее вероятные причины появления в ячейке текста вместо формулы.
- Отсутствует знак равенства (=). Формулы должны начинаться со знака равенства (=).
- В таблице включены зависимости. Когда в таблице включены зависимости, не разрешено вводить формулы в столбцах с поддержкой зависимостей.
- Начало
- Длительность
- Готово
- Предшественники
- Процент выполнения или Процент выделения. Значения в этих столбцах генерируются автоматически с учётом параметров зависимостей и имеют приоритет перед формулами. Если в один из таких столбцов ввести формулу, она будет отображаться как простой текст, а вычисления выполняться не будут.
- При создании формулы использовался отчёт или мобильное устройство. В настоящее время создание формул не поддерживается из приложений для Android и iOS, а также из отчётов. Формула, созданная из отчёта или с мобильного устройства, будет отображаться как текст, а поиск значений или вычисления выполняться не будут.
Почему не работает формула, ссылающаяся на ячейку в столбце "% выполнения"?
Ячейки в таблицах или отчётах используют десятичное значение, а не формат процента. Это касается даже столбцов, использующих значения в формате процентов.
Для сравнения значений процентов или создания ссылки на столбец, содержащий проценты, обращайтесь к следующей таблице.
Вместо этого (было) | Сделайте следующее (стало) |
---|---|
=IF([% выполнения]@строка < 25%, "Есть риск", " ") | =IF([% выполнения]@строка < .25, "Есть риск", " ") |
Можно ли создавать формулы в столбцах таблицы проекта?
Когда зависимости включены, в таких столбцах, как "Дата начала", "Дата окончания", "Длительность" и "Процент выполнения", используются встроенные формулы, обеспечивающие функциональность проекта. В этих столбцах не разрешено использовать формулы, так как они могут быть переопределены.
Чтобы выполнить необходимые вычисления, вы можете отключить зависимости в таблице или создать новые столбцы.
Формула, ссылающаяся на столбец даты начала или окончания, не работает. Как это исправить?
Если для таблицы включены зависимости, то в столбцах дат начала и окончания содержится скрытый компонент времени. Хотя время и не отображается в столбце, оно влияет на результаты вычислений.
Например, в таблице есть формула, вычитающая TODAY() из значения ячейки даты начала, а дата начала — сегодня. Результат этой формулы должен равняться нулю, однако на самом деле отобразится десятичное значение, так как Smartsheet производит вычитание с учётом скрытой метки времени. Чтобы исправить это, воспользуйтесь функцией DATEONLY.
Например, формулу =[Дата начала]2 - TODAY() необходимо переписать таким образом: =DATEONLY([Дата начала]2) - TODAY().
Тогда при расчёте Smartsheet будет учитывать только дату, опуская значение времени.
При вычислении разницы между столбцами "Дата создания" и "Дата изменения" получаются неточные результаты. Как это исправить?
Воспользуйтесь функцией DATEONLY. Даты в системных столбцах предназначены только для отображения и фактически значениями не являются. Системные столбцы записывают даты UTC, однако отображаются в них местные дата и время на основе даты UTC. Если вы не используете функцию DATEONLY, то можете столкнуться с неожиданными результатами.
Когда вы используете функцию DATEONLY, она извлекает данные из системного столбца. Вот пример формулы: =NETWORKDAYS(DATEONLY(Создано@строка), TODAY()).
Why isn't my formula with TODAY() updating to today's date?
Opening reports and dashboards that reference a sheet with a formula using the TODAY function will not update the TODAY function to the current date. There must be an update to the underlying sheet itself.
You can see a list of actions that will update the formula in the TODAY Function article.
To automatically update your underlying sheet without opening it, take a look at the Automatically update the TODAY function in formulas article or use Bridge to Schedule Daily Sheet Save.
Что происходит с формулами при использовании команд "Перенести в другую таблицу" и "Копировать в другую таблицу" для перемещения или копирования в другую таблицу строки с формулами?
При использовании этих команд для перемещения или копирования строк формулы не сохраняются. Однако для копирования и вставки формул можно использовать сочетания клавиш.
Почему числовые значения вычисляются неправильно? Например, при сложении 1 и 12 получается 112, а не 13.
Часто такая ошибка в вычислениях связана с тем, что одно из значений, на которые ссылается формула, воспринимается как текст.
Чтобы исправить эту ошибку, проверьте, нет ли в соответствующем значении символа, который преобразует число в текст. Например, такое происходит, если перед числом 12 вставить апостроф (‘).
Быстрый способ обнаружить ячейки с такими значениями — проверить выравнивание содержимого в ячейках. Часто значения, которые воспринимаются как текст, отображаются с выравниванием по левому краю, а числовые значения — по правому.
Числовые значения отображаются с выравниванием по левому краю в следующих случаях:
- когда они выданы формулами;
- в основном столбце.
Однако они будут восприниматься как числа, если иное не обусловлено самой формулой.
Я использую функцию SUMIFS, которая должна возвращать значение, но получаю 0.
При оценке одного и того же диапазона данных на соответствие различным критериям для получения корректных результатов рекомендуется использовать функцию OR и параметр @cell.
Элемент |
Количество |
Цена |
Склад |
---|---|---|---|
Рубашка |
26 |
20,00 |
A |
Брюки |
24 |
50,00 |
A |
Носки |
10 |
10,00 |
A |
Рубашка |
18 |
25,00 |
B |
Брюки |
16 |
75,00 |
B |
Носки |
46 |
15,00 |
B |
Формула | Описание | Результат |
---|---|---|
=SUMIFS(Цена:Цена, Количество:Количество, >15, Склад:Склад, "A", Элемент:Элемент, OR(@cell = "Рубашка", @cell = "Носки")) |
Эта формула суммирует цены всех элементов типа Рубашка или Носки, количество которых на складе A превышает 15. |
20,00 |
Я использую функцию COUNTIFS, которая должна возвращать значение, но получаю 0.
При оценке одного и того же диапазона данных на соответствие различным критериям для получения корректных результатов рекомендуется использовать функцию OR и параметр @cell.
Элемент |
Количество |
Цена |
Склад |
---|---|---|---|
Рубашка |
26 |
20,00 |
A |
Брюки |
24 |
50,00 |
A |
Носки |
10 |
10,00 |
A |
Рубашка |
18 |
25,00 |
B |
Брюки |
16 |
75,00 |
B |
Носки |
46 |
15,00 |
B |
Формула | Описание | Результат |
---|---|---|
=COUNTIFS(Количество:Количество, >15, Склад:Склад, "A", Элемент:Элемент, OR(@cell = "Рубашка", @cell = "Носки")) |
Эта формула подсчитывает элементы типа Рубашка или Носки, количество которых на складе A превышает 15. |
1 |
Будут ли формулы, выдающие текстовое значение, возвращать текстовое значение в ячейке контакта?
Да. Если ячейки, на которые ссылается формула, содержат текст, из которого невозможно создать адрес электронной почты, полученный результат будет представлять собой просто текст.
Какие функции работают в столбце контактов?
В столбцах контактов работают функции, которые могут возвращать контакт. Вот примеры таких функций:
- Знак равенства и ячейка с контактом: =[Исполнитель]1
- VLOOKUP: =VLOOKUP([Исполнитель]1; {Отделы}; 2; ложь)
- PARENT: =PARENT()
- INDEX(MATCH()): =INDEX({Отделы}; MATCH([Исполнитель]1; {Имена}; 0))
- IF: =IF(Срочность1="Высокая"; [Срочность по требованию]1; [Исполнитель]1)
Ниже приведены примеры использования таких формул.
Образец таблицы с данными:
Строка | Название проекта | Исполнитель | Дата | Процент выполнения | Статус |
---|---|---|---|---|---|
1 | Проект — E | С. Петрова | 25.03.2020 | 30 % | Красный |
2 | Работа с клиентами | don.t@domain.com | 18.10.2020 | 60 % | Жёлтый |
3 | Smartsheet PM | Андрей Денисов | 06.01.2020 | 100 % | Зелёный |
4 | Сбор INT | Константин Семёнов, С. Петрова | 12.02.2020 | 20 % | Красный |
Вот несколько примеров использования функций для работы с контактами с данными из таблицы выше.
Формула |
Описание |
Результат |
---|---|---|
=INDEX([Название проекта]:[Название проекта]; MATCH("Андрей Денисов"; [Исполнитель]:[Исполнитель])) |
Возвращает значение в столбце Название проекта для строки со значением Андрей Денисов в столбце Исполнитель. |
Smartsheet PM |
=COUNTIF([Исполнитель]:[Исполнитель]; HAS(@cell, "С. Петрова")) |
Подсчитывает число строк со значением С. Петрова в столбце Исполнитель. |
2 |
=VLOOKUP("don.t@domain.com"; [Исполнитель]:[Дата]; 2; ложь) |
Возвращает дату. Если в столбце Исполнитель содержится адрес электронной почты don.t@domain.com, формула ищет и выдаёт значение в столбце Дата в этой же строке. |
18.10.2020 |
Как создать контакт с помощью формулы?
В настоящее время создавать контакты напрямую с помощью формул невозможно. Вы можете создавать контакты с помощью нескольких столбцов, если адреса электронной почты в организации соответствуют определённому шаблону. Например, имя.фамилия@domain.com.
Для этого можно создать один столбец для имя.фамилия и ещё один для @domain.com. С помощью функции JOIN можно соединить эти два поля и сохранить результат в той же ячейке контакта.
Можно ли использовать в столбце контактов формулы, которые выдают результат в другом формате?
Формулы, которые выдают любой тип данных, кроме контактов или текста (например, даты, числа, логические значения и т. д.), не поддерживаются и будут возвращать следующую ошибку: #CONTACT EXPECTED. То же самое происходит со столбцами дат: если результат имеет любой тип, кроме даты или текста, формула выдаст ошибку #DATE EXPECTED. Столбцы с флажками в таких случаях выдают аналогичную ошибку: #BOOLEAN EXPECTED.