Tabla de contenido:
- Paso 1: ¿Qué son las funciones?
- Paso 2: ¿Cómo escribir una función personalizada?
- Paso 3: Limitaciones de funciones y autocompletar
- Paso 4: llamar a servicios externos
- Paso 5: Pasos siguientes
Video: Agregar función personalizada en Google Sheets: 5 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
Estoy seguro de que en algún momento de tu vida tuviste que usar un software de hoja de cálculo como Microsoft Excel o Google Sheets.
Son relativamente simples y fáciles de usar, pero también muy potentes y fácilmente ampliables.
Hoy, analizaremos Google Sheets y su capacidad para agregar código y funciones personalizadas para que podamos extenderlo.
Paso 1: ¿Qué son las funciones?
Una función es un fragmento de código que manipula datos de la hoja de cálculo para calcular un nuevo valor automáticamente para nosotros. Un ejemplo muy común de esta función es SUM, que calcula la suma de una columna o grupo de celdas.
Todo el software de hoja de cálculo admite muchas de estas funciones que están integradas previamente, pero también admiten la capacidad de ampliarlas y escribir las nuestras.
Paso 2: ¿Cómo escribir una función personalizada?
Para escribir una función personalizada en Google Sheets usamos una función llamada Apps Script, que es una plataforma de desarrollo rápido de aplicaciones donde podemos escribir código en JavaScript directamente en el navegador que luego se ejecutará en nuestra hoja de cálculo.
Para comenzar a escribir podemos ir a Herramientas> Editor de scripts en el menú superior y eso abrirá el editor de código en línea.
En él, al abrirlo por primera vez, tendremos un archivo llamado Code.gs junto con una función de inicio en blanco, llamada myFunction.
Como ejemplo inicial, cambiaremos el nombre de esta función a DOBLE y agregaremos un parámetro de entrada en su declaración. Dentro del cuerpo de la función, necesitamos devolver un valor y para este ejemplo, simplemente multiplicaremos el valor de entrada por 2.
Ahora podemos guardar el script y si volvemos a la hoja de cálculo y le agregamos algunos datos, ahora podemos hacer referencia a esta función en cualquier celda y enviar la referencia de la celda de datos como entrada para el valor.
Al ejecutar esta función, Google Sheets mostrará en breve un mensaje Cargando en la celda, pero luego mostrará el valor devuelto por la función.
Paso 3: Limitaciones de funciones y autocompletar
Estas funciones pueden hacer lo que queramos, pero hay algunas limitaciones que debemos seguir como:
Los nombres deben ser únicos y diferentes a los utilizados por las funciones integradas. El nombre no debe terminar con _, y los nombres de las funciones se escriben normalmente con letras mayúsculas, aunque esto no es obligatorio.
Cada función puede devolver un solo valor como en nuestro ejemplo, pero también puede devolver una matriz de valores. Esta matriz luego se expandirá a celdas adyacentes siempre que estén vacías. Si no lo son, se mostrará un error.
La función que escribimos es utilizable, pero cualquier otra persona que pueda venir a editar el documento será desconocida y el usuario necesitará saber que existe para usarla. Podemos solucionar esto agregando la función a la lista de autocompletar, al igual que todas las funciones integradas.
Para hacer esto, necesitamos agregar una etiqueta JsDoc @customfunction delante de la función como un comentario donde en este comentario podemos escribir una breve explicación de lo que hace nuestra función.
Ahora con el comentario agregado, cuando comencemos a escribir el nombre de la función, la función será ofrecida por autocompletar, junto con la descripción de la función.
Paso 4: llamar a servicios externos
El gran poder que tienen estas funciones, proviene de la capacidad de llamar e interactuar con otras herramientas y servicios de Google como Translate, Maps, conectarse a una base de datos externa, trabajar con XML y otros. De lejos, la característica más poderosa para mí es la capacidad de realizar una solicitud HTTP externa a cualquier API o página web y obtener datos de ella mediante el servicio UrlFetch.
Para demostrar esto, pegaré una función que convertirá dólares estadounidenses a francos suizos, pero no asumirá el tipo de cambio, sino que lo recuperará de una API externa.
La función también usa el servicio de caché incorporado, donde no llamará a la API para todos los cálculos, pero lo llamará una vez para el primer cálculo y luego almacenará ese valor en el caché.
Luego, todos los demás cálculos se realizarán con el valor almacenado en caché, por lo que el rendimiento de ellos mejorará enormemente y no llegaremos al servidor tan a menudo, ya que las tasas no cambian tan rápido.
Dado que la API devuelve JSON, una vez que obtenemos la respuesta del servidor, necesitamos analizar el JSON en un objeto y luego podemos obtener la tasa, multiplicarlo por el valor de entrada y devolver el nuevo valor calculado a la celda.
Paso 5: Pasos siguientes
Si encuentra esto interesante y desea obtener más información, a continuación dejaré enlaces a recursos adicionales.
developers.google.com/apps-script/guides/s…
developers.google.com/apps-script
Si te gustó el Instructable, asegúrate de suscribirte a mi canal de YouTube si aún no lo has hecho y echa un vistazo a algunos de mis otros Instructables.
Saludos y gracias por leer.
Recomendado:
Cree un rastreador de movimiento portátil (BLE de Arduino a una aplicación personalizada de Android Studio): 4 pasos
Cree un rastreador de movimiento portátil (BLE de Arduino a una aplicación personalizada de Android Studio): Bluetooth Low Energy (BLE) es una forma de comunicación Bluetooth de baja potencia. Los dispositivos portátiles, como las prendas inteligentes que ayudo a diseñar en Predictive Wear, deben limitar el consumo de energía siempre que sea posible para prolongar la vida útil de la batería y utilizar BLE con frecuencia
Agregar una función de carga rápida a una batería externa: 5 pasos (con imágenes)
Agregar una función de carga rápida a un banco de energía: en este proyecto, le mostraré cómo modifiqué un banco de energía común para reducir su tiempo de carga ridículamente largo. En el camino, hablaré sobre el circuito del banco de energía y por qué el paquete de batería de mi banco de energía es un poco especial. Vamos a
Agregar una función de límite de corriente a un convertidor Buck / Boost: 4 pasos (con imágenes)
Agregar una función de límite de corriente a un convertidor reductor / impulsor: en este proyecto veremos más de cerca un convertidor reductor / impulsor común y crearemos un pequeño circuito adicional que le agrega una función de límite de corriente. Con él, el convertidor reductor / elevador se puede usar como una fuente de alimentación de banco de laboratorio variable. Le
Agregar la función de conexión automática WiFi a un boceto existente: 3 pasos
Agregar la función de conexión automática WiFi a un boceto existente: en una publicación reciente, aprendimos sobre la función de conexión automática para las placas ESP32 / ESP8266 y una de las preguntas que se hicieron fue sobre agregarla a los bocetos existentes. En esta publicación, aprenderemos cómo hacer precisamente eso y usaremos el proyecto de tiempo de red
Datos meteorológicos con Google Sheets y Google Script: 7 pasos
Datos meteorológicos usando Google Sheets y Google Script: En este Blogtut, vamos a enviar las lecturas del sensor SHT25 a Google Sheets usando Adafruit huzzah ESP8266 que ayuda a enviar los datos a Internet. Enviar datos a la celda de la hoja de Google es muy útil y forma básica que guarda los datos en