Поиск…


Вступление

Пользовательская функция в документах google привязана к определенному документу (и, следовательно, может использоваться только в этом документе).

Поэтому он должен быть создан с помощью редактирования этого документа (Инструменты -> Редактор сценариев). После сохранения его можно использовать как любую другую формулу регулярных таблиц.

Стандартная гравитационная настраиваемая постоянная

Эта функция возвращает стандартную константу силы тяжести в указанных единицах ускорения (1 для см / с², 2 для ft / s², 3 для м / с²)

/**
 * Returns the standard gravity constant in the specified acceleration units
 * Values taken from https://en.wikipedia.org/wiki/Standard_gravity on July 24, 2016.
 *
 * @param  {number}  input  1 for cm/s², 2 for ft/s², 3 for m/s²
 *
 * @customfunction
 */
function sg(units_key) {
  var value;
  switch(units_key) {
    case 1:
      value = 980.665;
      break;
    case 2:
      value = 32.1740;
      break;
    case 3:
      value = 9.80665;
      break;
    default:
      throw new Error('Must to specify 1, 2 or 3');
  }
  return value;
}

Чтобы использовать эту функцию, ее необходимо привязать к электронной таблице с помощью редактора сценариев (Tools -> Script editor ...). Как только функция добавлена, ее можно использовать как любую другую функцию профайла google, вызывая функцию в формуле ячейки.

Обратите внимание, как функция отображается в автозаполнении при вводе в формулу. Это связано с многострочным комментарием над объявлением функции, которое используется для описания функции, аналогичной JSDoc и Javadoc. Чтобы формула отображалась в автозаполнении, тег @customfunction должен быть указан в комментарии.

Основной пример

Чтобы избежать неприглядных ошибок #DIV/0 в электронной таблице, можно использовать настраиваемую функцию.

/**
 * Divides n by d unless d is zero, in which case, it returns
 * the given symbol.
 *
 * @param  {n}  number The numerator
 * @param  {d}  number The divisor
 * @param  {symbol}  string The symbol to display if `d == 0`
 * @return {number or string} The result of division or the given symbol
 *
 * @customfunction
 */
function zeroSafeDivide(n, d, symbol) {  
  if (d == 0)
    return symbol;
  else
    return n / d;
}

Чтобы использовать эту функцию, ее необходимо привязать к электронной таблице с помощью редактора сценариев ( Tools -> Script editor ... ). Как только функция добавлена, ее можно использовать как любую другую функцию профайла google, вызывая функцию в формуле ячейки.

введите описание изображения здесь

Обратите внимание, как функция отображается в автозаполнении при вводе в формулу. Это связано с многострочным комментарием над объявлением функции, которое используется для описания функции, аналогичной JSDoc и Javadoc. Чтобы формула отображалась в автозаполнении, тег @customfunction должен быть указан в комментарии.



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow