¿Macros en Google Docs?
Por el momento las macros no están ni implementadas por Google y Google Docs, sin un futuro desarrollo de estas.
El foro de ayuda Google Docs lo aclara en el siguiente enlace:
Si desea utilizar algo similar en hojas de cálculo de Google, hay una buena noticia: Google script Aplicaciones ya está disponible para todos los usuarios de Google Docs.
Eso significa que usted puede escribir scripts para realizar acciones repetitivas, la creación de funciones personalizadas, o incluso la adición de características avanzadas de Google Spreadsheets.
Usted puede tratar de uno de los guiones aparece al abrir una hoja de cálculo, haga clic en el menú "Insertar" y seleccionar "Script". Por desgracia, los scripts de Google muestra que aun no son muy útiles .
Macros en Calc.
Veamos un sencillo ejemplo como muestra: necesitamos una función que
calcule la raiz (cuadrada, triple, cuarta...) de un valor. Por supuesto
que se puede realizar con una sencilla fórmula (por ejemplo, calcular en
la celda B3 la raiz cuarta del valor contenido en la celda A3 es tan sencillo como escribir en B3 la fórmula =A3^(1/4)),
pero en este post sólo pretendemos ilustrar cómo crear una función; la
complejidad de ésta depende de las necesidades del usuario.
Paso 1: Activar el editor de macros
Abre un nuevo documento Calc, y guárdalo con un nombre, por ejemplo Mi_Función.ods. Activar el editor de macros desde el menú Herramientas > Macros > Organizar macros > OpenOffice.org Basic....
OOo mostrará el diálogo Macros básicas de OpenOffice.org; haz clic
sobre el signo + que se muestra delante del nombre de tu archivo (en
nuestro ejemplo, Mi_Funicón.ods), y selecciona la carpeta Standard; a
continuación, haz clic sobre el botón Nuevo. OOo creará un nuevo módulo
dentro de tu documento, y solicitará la confirmación del nombre de éste;
dado que para nosotros es intrascendente, aceptaremos sin más.
Paso 2: Escribir la función en el editor de macros
La función que vamos a crear es sencilla; la llamaremos RaizX (sin
acento), y precisará que le indiquemos el número y qué raiz deseamos que
calcule; al primer valor lo llamaremos Numero, sin acento, y al
segundo, Raiz, tambien sin acento.
En el editor Basic teclearemos el siguiente código justo debajo de la instrucción Sub Main / End Sub:
Function RaizX( Numero, Raiz )
Ten en cuenta que escribimos sin utilizar acentos, y que ponemos Function,
en inglés, no Funcion, en castellano. Además, a diferencia de las
funciones que utiliza Calc en la que los argumentos se separan por
puntos y coma (;) en Basic los argumentos de la función se separan por comas (,).
Con esta instrucción declaramos la función RaizX, que necesitará dos parámetros (argumentos), a los que llamaremos Numero y Raiz.
A diferencia de las subrutinas, identificadas como Sub en Basic, las funciones devuelven un valor, por lo que serán perfectas para utilizarlas en Calc.
A continuación, escribiremos una nota aclaratoria, para que cualquier
usuario que lo precise, o nosotros mismos, dentro de varios meses, nos
describa qué hace esta función. La nota aclaratoria es una línea que
empieza por una comilla sencilla (').
' Devuelve la raíz X de un número; por ejemplo, RaizX( 125, 3) devuelve la raiz cúbica de 125
Tecleamos una tercera línea, que realmente es el corazón de esta
sencilla función. Para calcular la raiz X de un número, debemos elevar
este número a 1/X. Matemáticamente es sencillo.
Para que la función devuelva el valor calculado, debemos asignarlo al
nombre de la función; es tan sencillo como escribir el nombre de la
función, un signo igual, y la operación matemática. Teclea la tercera
línea.
RaizX = Numero^(1/Raiz)
Recuerda que no estamos utilizando acentos. Y observa que utilizamos
las mismas combinaciones de letras mayúsculas y minúsculas en todo
momento. Quizás prefieras escribir todo en minúsculas, o todo en
mayúsculas. Eso, a tu gusto.
Para finalizar, le indicaremos a Basic que hemos terminado con nuestra función. Tan sólo necesitamos una línea más:
End Function
El código debe de quedar tal como muestra la imagen; las líneas adicionales son para mejorar la lectura del código.
Guardamos el código ( desde el editor Basic, selecciona desde el menú Archivo > Guardar, o haz clic sobre el botón con forma de disquete, o pulsa Ctrl + G) y cierra el editor Basic.
Paso 3: Probar el funcionamiento
En nuestra hoja de cálculo vamos a teclear unos datos (imagen a la izquierda): En la celda B2 tecleamos el número 125; en las celdas C2 a C5 tecleamos 2,3,4 y 5; en la celda D2 escribimos la siguiente fórmula: =RaizX(B2;C2) y pulsamos Intro. Debe de mostrar como resultado 11,18.
Observa que desde Calc SI que utilizamos ; en lugar de comas para separar los argumentos.
Corregimos la fórmula para convertir la celda B2 en referencia absoluta (imagen a la derecha), por lo que en la celda D2 tendremos la siguiente fórmula: =RaizX( $B$2;C2) y pulsamos Intro. Ahora extendemos la fórmula al rango D3:D5 y comprobamos que todo ha ido perfectamente.
¿Dónde almacenar la macro creada?
A la hora de escribir una macro podemos almacenarla en una de estas dos áreas: Mis Macros o en el documento actual.
Almacenarla en Mis Macros supone que estará
disponible para todas las aplicaciones de OOo, y por lo tanto, para
todos los documentos Calc que utilicemos. Pero tiene un inconveniente:
esta área tan sólo está disponible en nuestro equipo; si enviamos por
correo un documento utilizando la función, el receptor del documento no
tendrá acceso ésta, y por lo tanto, no la podrá utilizar.
Al mismo tiempo, si almacenamos la macro en el documento actual no
será accesible para el resto de aplicaciones OOo, ni siquiera para otros
documentos creados con Calc. En esta caso, en cambio, al mandar el
documento por correo, dado que incorpora la función creada, sí que podrá
ser ejecutada por el receptor del documento.
Podemos almacenar la macro creada en un documento, y guardar éste
como plantilla. Cualquier documento creado a partir de ésta tendrá
acceso a la macro, pero seguirá siendo invisible para otros documentos.
Lo ideal, por tanto, será generar la macro en el documento, y si
deseamos utilizarla en otros documentos dentro de nuestro equipo,
copiarla al área Mis Macros. Para el caso que deseamos utilizar la macro
en otro documento, y enviarlo por correo a un tercero, deberemos
almacenar una copia del código macro en el documento.
Copiar la macro desde el documento a Mis Macros, y viceversa.
Realmente es sencillo; sigue estos sencillos pasos:
Paso 1: Copiar la macro del documento al portapapeles
Abrimos de nuevo el editor de macros: desde el menú Herramientas > Macros > Organizar macros > OpenOffice.org Basic... accedemos a la macro creada en el documento desde Mi_Función.ods > Standard > Module1 seleccionamos RaizX y pulsamos el botón Editar.
Ya en el editor Basic, seleccionamos todo el código de la función, lo copiamos al portapapeles (desde el menú Editar > Copiar o pulsando la combinación de teclas Ctrl + C).
Paso 2: Pegar la macro del portapapeles al área Mis Macros
Desde el editor de Basic, hacemos clic sobre el botón
Seleccionar Módulo. Seleccionamos el módulo Mis Macros > Standard > Module1, y hacemos clic sobre el botón Editar.
Justo debajo de la sentencia Sub Main / End Sub hacemos clic, y pegamos (desde el menú Editar > Pegar o pulsando la combinación de teclas Ctrl + V).
Guardamos los cambios en el editor y cerramos éste.
No hay comentarios:
Publicar un comentario