google-apps-script
Crear una función personalizada para las hojas de Google
Buscar..
Introducción
Una función personalizada en google docs está vinculada a un documento específico (y, por lo tanto, solo se puede utilizar en ese documento).
Por lo tanto, debe crearse con la edición de secuencias de comandos de ese documento (Herramientas -> Editor de secuencias de comandos). Una vez guardado, se puede usar como cualquier otra fórmula de hoja de cálculo regular.
Gravedad estándar personalizada constante
Esta función devuelve la constante de gravedad estándar en las unidades de aceleración especificadas (1 para cm / s², 2 para ft / s², 3 para m / s²)
/** * 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; }
Para usar la función, debe estar vinculada a una hoja de cálculo utilizando el editor de secuencias de comandos (Herramientas -> Editor de secuencias de comandos ...). Una vez que se agrega la función, se puede usar como cualquier otra función de las hojas de Google llamando a la función en la fórmula de una celda.
Observe cómo se muestra la función en autocompletar cuando se escribe en una fórmula. Esto se debe al comentario de varias líneas sobre la declaración de la función que se utiliza para describir qué hace la función similar a JSDoc y Javadoc. Para que la fórmula aparezca en autocompletar, la etiqueta @customfunction debe especificarse en el comentario.
Ejemplo básico
Para evitar errores antiestéticos #DIV/0
en una hoja de cálculo, se puede usar una función personalizada.
/**
* 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;
}
Para usar la función, debe estar vinculada a una hoja de cálculo utilizando el editor de secuencias de comandos ( Herramientas -> Editor de secuencias de comandos ... ). Una vez que se agrega la función, se puede usar como cualquier otra función de las hojas de Google llamando a la función en la fórmula de una celda.
Observe cómo se muestra la función en autocompletar cuando se escribe en una fórmula. Esto se debe al comentario de varias líneas sobre la declaración de la función que se utiliza para describir qué hace la función similar a JSDoc y Javadoc. Para que la fórmula aparezca en autocompletar, la etiqueta @customfunction
debe especificarse en el comentario.