В F1 введите значение параметра threshold, с которым поток запускает скрипт.
Теория урока
Скрипт становится универсальным, если значения не зашиты в код, а приходят параметрами: после workbook в
main можно объявить свои аргументы с типами string, number, boolean.
Параметр со знаком ? необязательный. При запуске из Power Automate для каждого параметра в действии «Запуск скрипта»
(Run script) появляется своё поле.
Скрипт может и вернуть результат через return — число, текст, массив или объект. Поток получает его
как выходное значение и может, например, вставить в письмо.
function main(workbook: ExcelScript.Workbook, threshold: number, label: string): number {
const sheet = workbook.getWorksheet("Клиенты");
const values = sheet.getRange("B2:B7").getValues();
let count = 0;
const marks = values.map(r => {
const hit = (r[0] as number) >= threshold;
if (hit) count++;
return [hit ? label : "—"];
});
sheet.getRange("C2:C7").setValues(marks);
return count; // вернётся в поток Power Automate
}Поток запускает скрипт с параметрами threshold = 50000 и label = VIP. Повторите это на листе: параметры положите в ячейки, а формула пусть ссылается на них — это тот же принцип, что «не зашивать числа в формулу».
При запуске из потока у файла нет «активного» пользователя, поэтому обращайтесь к листам по имени (getWorksheet),
а не к выделению или активному листу.
Тренажёр не выполняет макросы и скрипты. Код из урока запускайте в настольном Excel (VBA) или в Excel для Интернета (Office Scripts). Здесь вы учитесь читать код и проверяете себя формулами и тестом.
Проверьте себя
Практика — в Pro
Живая таблица, проверка заданий и файлы .xlsx во всех 170 уроках. Прогресс хранится в этом браузере; синхронизация между устройствами появится позже.