❗️Вкладка Formulas

Вкладка Formulas.js

С версии 309, формулы вынесены в отдельную вкладку, для оптимизации обновления версий. Добавив формулу в объект formulas, в дальнейшем не надо будет менять ваши формулы в основном коде.

Один раз нужно создать вкладку, далее работать с формулами на ней. Все функции, которые принимают или будут принимать с 309 версии, формулы включены formulas.

Подробнее о формулах: Ваши формулы.

Создать вкладку:

  • Выбрать в меню таблицы: Расширения > Apps Script;

  • Файлы > нажать ➕ > тип Скрипт;

  • Ввести название: Formulas;

  • Копировать код ниже (нажать справа вверху блока с кодом Copy), вставить на лист и сохранить 💾.

const formulas = {
  fboPostingList: (msk) => [
    `={"Дата UTC+${msk ? "0" : "3"}"; ARRAYFORMULA(IF(INDIRECT("C2:C")="";;
      IF('⚙️ Поддержка'!H7=TRUE;FLOOR(INDIRECT("C2:C"));1*TEXT(INDIRECT("C2:C") + TIME(3;0;0); "DD.MM.YYYY"))))}`
  ],

  fbsPostingList: (msk) => [
    `={"Дата UTC+${msk ? "0" : "3"}"; ARRAYFORMULA(IF(INDIRECT("C2:C")="";;
      IF('⚙️ Поддержка'!H8=TRUE;FLOOR(INDIRECT("C2:C"));1*TEXT(INDIRECT("C2:C") + TIME(3;0;0); "DD.MM.YYYY"))))}`
  ],

  fboFbsReturnsList: [],
  stocksAll: [],
  prices: [],

  analyticsDataReport: {
    premiumNosales: (sheet) => {
      sheet.getRange("T:T").setNumberFormat("@");
      sheet.getRange("T1")
        .setFormula(`={"Артикул продавца";ArrayFormula(IF(INDIRECT("C2:C")="";;
        IFNA(IFNA(VLOOKUP(INDIRECT("C2:C");{'Отчёт по товарам'!\$C:\$C\\'Отчёт по товарам'!\$A:\$A};2;0);
        VLOOKUP(INDIRECT("C2:C");{'Отчёт по товарам'!\$D:\$D\\'Отчёт по товарам'!\$A:\$A};2;0));"!!! Удаленный товар")))}`);
    },
    sales: (sheet) => {
      sheet.getRange("I:I").setNumberFormat("@");
      sheet.getRange("I1")
        .setFormula(`={"Артикул";ArrayFormula(IF(INDIRECT("B2:B")="";;
        IFNA(IFNA(VLOOKUP(INDIRECT("B2:B");{'Отчёт по товарам'!\$C:\$C\\'Отчёт по товарам'!\$A:\$A};2;0);
        VLOOKUP(INDIRECT("B2:B");{'Отчёт по товарам'!\$D:\$D\\'Отчёт по товарам'!\$A:\$A};2;0));"!!! Удаленный товар")))}`);
    },
    other: (sheet) => {
      sheet.getRange("F:F").setNumberFormat("@");
      sheet.getRange("F1")
        .setFormula(`={"Артикул";ArrayFormula(IF(INDIRECT("A2:A")="";;
        IFNA(IFNA(VLOOKUP(INDIRECT("A2:A");{'Отчёт по товарам'!\$C:\$C\\'Отчёт по товарам'!\$A:\$A};2;0);
        VLOOKUP(INDIRECT("A2:A");{'Отчёт по товарам'!\$D:\$D\\'Отчёт по товарам'!\$A:\$A};2;0));"!!! Удаленный товар")))}`);
    }
  }
}

Last updated