Mostrando las entradas con la etiqueta Hoja de Cálculo de Google. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Hoja de Cálculo de Google. Mostrar todas las entradas

viernes, 10 de marzo de 2023

¿Existe un "Excel de Google"? ¿Google Drive trabaja con Excel?

¿Existe un "Excel de Google"? ¿Google Drive trabaja con Excel?. ¡No dejes de verlo!

¡Saludos!

Abraham Valencia
Lima, Perú

sábado, 15 de agosto de 2020

Datos masivos desde Excel (VBA) hacia una Hoja de Cálculo de Google: El dilema de las tildes y eñes

Hace algunas semanas aprendimos cómo enviar datos masivos desde Excel, usando VBA, hacia una Hoja de Cálculo de Google como si fuese nuestra base datos en línea (Enlace). ¿Cuál fue el problema que encontramos? Al enviar vocales con tilde o letras eñe, sean mayúsculas o minúsculas, la Hoja de Cálculo no las reconocía y no las consideraba, es decir, hacía como que no existían pues ni siquiera dejaba espacios en blanco en su reemplazo.

El problema era la codificación que usa Google para los caracteres Ascii extendidos. Como no es difícil identificarlos, en este caso vamos a resolverlo con una Función Definida por el Usuario (UDF por sus siglas en inglés) que convierte los caracteres que nos interesan en esta ocasión, en códigos que Google pueda identificar. Entonces, copien y peguen la siguiente UDF en un módulo del archivo:

Function Cambiacodificacion(Textoinicial) As String 

Dim Base(1 To 12) As String, CodigoG(1 To 12) As String 
Dim TextoFinal$, Codificado$ 
Dim x As Integer, y As Integer 

Base(1) = "Á": CodigoG(1) = "%C3%81" 
Base(2) = "É": CodigoG(2) = "%C3%89" 
Base(3) = "Í": CodigoG(3) = "%C3%8D" 
Base(4) = "Ó": CodigoG(4) = "%C3%93" 
Base(5) = "Ú": CodigoG(5) = "%C3%9A" 
Base(6) = "á": CodigoG(6) = "%C3%A1" 
Base(7) = "é": CodigoG(7) = "%C3%A9" 
Base(8) = "í": CodigoG(8) = "%C3%AD" 
Base(9) = "ó": CodigoG(9) = "%C3%B3" 
Base(10) = "ú": CodigoG(10) = "%C3%BA" 
Base(11) = "Ñ": CodigoG(11) = "%C3%91" 
Base(12) = "ñ": CodigoG(12) = "%C3%B1" 

For x = 1 To Len(Textoinicial)
     Codificado = Mid$(Textoinicial, x, 1)
         For y = 1 To 12
             If Codificado = Base(y) Then Codificado = CodigoG(y): Exit For
         Next y
     TextoFinal = TextoFinal + Codificado
 Next x

Cambiacodificacion = TextoFinal 

End Function 
Una vez hecho eso y como se supone vieron el artículo anterior, debemos cambiar la línea respectiva de este modo:
misDatos = "entry.734588322=" & Range("A" & x) & "&entry.1744113014=" & Cambiacodificacion (Range("B" & x)) & "&entry.283729869=" & Range("C" & x) & "&entry.1406906612=" & Range("D" & x)            

¿Notaron el cambio? Una vez hecho eso, podemos usar vocales con tilde, en nuestros datos de Excel, o la letra eñe ya sean mayúsculas o minúsculas y al enviar todo a Google, no tendremos dilema alguna y las veremos tal cual lo enviado. Todo se vería así:

Y listo amigos/as, resuleto el problema ya si desean usar más caracteres queda como tarea de todos/as agregarlos, no es difícil esa parte. ¡Hasta la próxima!

Abraham Valencia
Lima, Perú

viernes, 9 de agosto de 2019

Datos de encuestas en línea a través de Excel y Power Query (I): Formularios Google, Hoja de Cálculo de Google y Google Drive

Ya hace varias semanas escribí sobre cómo conectar Excel con un archivo de la Hoja de Cálculo de Google (Enlace) y con un archivo de Excel que se encuentra en OneDrive Personal (Enlace). A raíz de esos artículos algunas personas me preguntaron que si era posible hace encuestas y, tal cuál como los ejemplos citados, conectarlas con un archivo de Excel en nuestra PC. Probablemente lo primero que uno dirá es que casi todas las encuetas en línea tienen la herramienta para exportar a Excel, pero la idea es no tener que estar entrando a la encuesta sino hacerlo todo desde nuestra PC. Pues bueno, eso es lo que haremos hoy.

Comenzaremos con los Formularios de Google (Personal). Crearemos una encuesta para el ejemplo con solo cuatro preguntas.

Para poder probar formatos, como ven, una es de texto, otra de fecha, una con opción de elección y una última numérica. Luego en la parte superior de la encuesta vamos a elegir la opción “Respuestas” y en ella veremos un botón verde (“Crear hoja de cálculo) al que le daremos clic.

En las opciones que salen elijan la que mejor les convenga; yo pondré “Crear una hoja de cálculo”.

Si hicimos todo bien tendremos algo como esto en nuestra pantalla:

Supongamos que ya difundieron el enlace de la encuesta y en ella ya hay varios datos que queremos ir viendo/analizando en nuestro Excel, entonces lo que haremos ahora es ir al menú “Archivo” en nuestra hoja de cálculo de Google y elegir la opción “Publicar en la Web” (a partir de aquí casirepetiré pasos de un artículo anterior, pero realmente creo que vale la pena).

En el cuadro de dialogo que sale vamos a elegir, en la primera lista, el nombre de la encuesta (en mi caso “Respuestas de formulario 1”) y en la segunda lista vamos a elegir la opción “Valores separados por tabuladores (.tsv)”. En la parte inferior verificar que el check de “Volver a publicar automáticamente cuando se hagan cambios” esté activado. Ahora démosle clic al botón “Publicar”.

Luego de ello, Google nos brindará un enlace que debemos copiar. No olvidar eso o no podremos realizar la conexión.

Luego de todo eso, vamos Excel. En el libro y hoja en donde queremos los datos vamos a la pestaña “Datos” y en el grupo “Obtener y transforma datos” vamos a darle clic al botón “Desde el texto/CSV” y en el cuadro de dialogo que se abrirá, pegaremos el enlace de Google en la parte de “Nombre de archivo:”

Veremos cómo se abre el editor de Power Query y ahí le daremos doble clic a la imagen en donde dice “docs.google.com”.

El resultado, si hicimos todo bien, debe ser similar a este:

Si lo notaron, es como que todos los datos están en una sola columna, pero no se preocupen, ya lo arreglaremos. Además, si al igual que en mi caso hay tildes en las respuestas y algunos datos se ven con caracteres raros como en la imagen anterior, no se preocupen, hay una forma de arreglarlo. En el editor de Power Query vamos a la pestaña “Inicio” y en el grupo “Consulta” elige el botón “Editor avanzado” y al abrirse buscaremos los siguiente:

¿Ven el número 1252? Pues reemplácenlo por el 65001, que es el correspondiente al formato UTF-8, denle clic al botón “Listo” y ahora los datos se verán así:

Ahora elijan la pestaña “Transformar” y en el grupo “Tabla” elige “Usar la primera fila como encabezado” y en la lista que se despliega elige la opción del mismo nombre. En el grupo “Columna de texto” elige “Dividir columna” y ahí “Por delimitador”, en el cuadro que tendrán a la vista, verifiquen que estas opciones estén activadas y denle click a “Aceptar”:

Nuestros datos se verán, ahora, algo así:

Si se dan cuenta los encabezados están precedidos de las palabras “Marca temporal”, no se preocupen, denles doble clic y edítenlos. No olviden que, si bien la encuesta tiene cuatro preguntas, Google adiciona una (la del extremo izquierdo) en donde guarda la fecha y hora en que se ingresaron los datos respectivos.

En la pestaña “Archivo” elijan “Cerrar y cargar” para enviar los datos a nuestra hoja de Excel.

Ahora en la pestaña “Datos” de la Cinta de Opciones, vayan al grupo “Consultas y conexiones”, denle clic al botón “Actualizar todo” y en la lista respectiva elijan “Propiedades de conexión…” y en la pestaña “Uso” activen, si lo desean, “Actualizar cada” y coloquen la cantidad de minutos deseados, activen la opción “Actualizar al abrir el archivo” y verifiquen que la opción “Actualizar esta conexión en Actualizar Todo” esté activada; por último, activar “Habilitar la carga de datos”.

Listo, ahora nuestra hoja de Excel se actualizará con los datos que se cambien/agreguen/eliminen en nuestra encuesta, ah, y lo bueno es que se respetarán los encabezados que editamos, así como las tildes. Espero les sea útil. Hasta la próxima.

Abraham Valencia

domingo, 5 de mayo de 2019

Conectar Excel con una Hoja de Cálculo de Google a través de Power Query

Hoy en día en que el trabajo compartido a través de internet se masifica más y más, no es raro que compartamos y/o se trabaje en archivos “on line”. Una de las aplicaciones cuyo uso se está difundiendo mucho es la “Hoja de Cálculo de Google” e incluso muchas personas creen que es lo mismo que Excel. No es extraño que mientras en nuestra portátil o nuestra PC de escritorio usamos Excel, nosotros mismos y/o nuestros compañeros/as estén trabajando en la aplicación de Google y que necesitamos usar esos mismos datos. Por supuesto que una alternativa es entrar a la hoja de Google en internet y descargar en formato Excel, pero habría que hacer eso cada vez, lo que puede resultar algo tedioso. Entonces ¿qué otra alternativa tenemos?

En esta ocasión vamos a conectar una hoja de cálculo de Google con un libro de Excel. Para eso vamos a comenzar suponiendo que tenemos datos dispuesto, por ejemplo, así:

Ahora, lo primero que haremos es ir al menú “Archivo” y elegir la opción “Publicar en la Web…”

En el cuadro de dialogo que saldrá, vamos a elegir, en la primera lista, el nombre de la hoja cuyos datos vamos a compartir y en la segunda lista vamos a elegir la opción “Valores separados por tabuladores (.tsv)”.

Luego de ello, Google nos brindará un enlace que debemos copiar. No olvidar eso o no podremos realizar la conexión.

Ahora sí, vamos a nuestro querido Excel. En el libro y hoja en donde queramos los datos vamos a la pestaña “Datos” y en el grupo “Obtener y transforma datos” vamos a darle click al botón “Desde el texto/CSV” y en el cuadro de dialogo que se abrirá, pegaremos el enlace de Google en la parte de “Nombre de archivo:”

Veremos cómo se abre el editor de Power Query y ahí le daremos doble click a la imagen en donde dice “docs.google.com”.

El resultado debe ser similar a esto:

Si al igual que yo usan tildes y algunos datos se ven como en la imagen anterior, no se preocupen, hay formas de arreglarlo. En el editor de Power Query vamos a la pestaña “Inicio” y en el grupo “Consulta” elige el botón “Editor avanzado” y al abrirse buscaremos los siguiente:

¿Ven el número 1252? Pues reemplácenlo por el 65001 que es el correspondiente al formato UTF-8, denle click al botón “Listo” y ahora los datos se verán así:

Ahora elijan la pestaña “Transformar” y en el grupo “Tabla” elige “Usar la primera fila como encabezado” y en la lista que se despliega elige la opción del mismo nombre. En el grupo “Columna de texto” elige “Dividir columna” y ahí “Por delimitador”, en el cuadro que tendrán a la vista, verifiquen que estas opciones estén activadas y denle click a “Aceptar”:

Ahora sí tendremos los datos casi listos:

En la pestaña “Archivo” elijan “Cerrar y cargar” para enviar los datos a nuestra hoja de Excel. En la pestaña “Datos” de la hoja, vayan al grupo “Consultas y conexiones” y ahí en “Actualizar todo” elijan “Propiedades de conexión…” y activen, si lo desean, “Actualizar cada” y coloquen la cantidad de minutos deseados, activen la opción “Actualizar al abrir el archivo” y verifiquen que la opción “Actualizar esta conexión en Actualizar Todo” esté activada. Por último, activar “Habilitar la carga de datos”. Listo, ahora nuestra hoja de Excel se actualizará con los datos que se cambien/agreguen/eliminen en la Hoja de Cálculo de Google. Espero les sea útil. Hasta la próxima.

Abraham Valencia