Función IMPORTRANGE en hojas de cálculo de Google

Català (Catalán) English (Inglés)

Este blog es un poco cajón de sastre de cosas TIC y hoy quiero hablar de hojas de cálculo, que aún no he hecho ningún artículo hablando de fórmulas. Y concretamente, de una función que tienen las hojas de cálculo de Google. La función IMPORTRANGE.

Para mí, las hojas de cálculo son una de las herramientas básicas que un profesor debe dominar. Y no tanto para hacer cálculos de notas, sino para ordenar listas, agrupar alumnos, poner en común datos que se recogen …

Y en este último aspecto, la función IMPORTRANGE es muy útil y funciona muy bien. La idea es muy sencilla y su nombre lo indica muy bien. Sirve para importar un rango de celdas de un libro de cálculo a otro libro.

Hasta hace un año, la función estaba limitada y daba errores a menudo. Pero actualmente funciona bien y rápido.

La nomenclatura es muy sencilla:

IMPORTRANGE(clave_de_la_hoja_de_cálculo;cadena_intervalo)
La clave de la hoja de cálculo es sencilla de localizar. En Google Drive, cada archivo tiene un código que lo identifica. Basta con abrir el documento, en este caso un libro de cálculo, y se localiza en la dirección URL (después de /d/ y antes de /edit …):
importrange1
Un ejemplo sería el siguiente
IMPORTRANGE(«1DX_etZFib8YV1Ycvd-ZUoHzCJcth09MrmWONayiLsh8»;«‘Hoja 1’!A1:A8»)

En nuestra hoja de cálculo aparecen los valores que hubiera en la Hoja 1, rango A1: A8, del libro que tiene por clave 1DX_etZFib8YV1Ycvd-ZUoHzCJcth09MrmWONayiLsh8.

Con una gran ventaja, si en la hoja original cambian estas celdas, en la hoja donde estamos insertando las celdas también cambian automáticamente.

Además, como en todas las fórmulas de hojas de cálculo, se pueden combinar. Así, podríamos escribir la clave de la hoja de donde queremos importar en una celda (por ejemplo la B2) y en la fórmula, indicar la celda:

IMPORTRANGE(B2;«‘Hoja 1’!A1:A8»)

Así tenemos más juego para cambiar de hoja de cálculo.

Eso sí, la primera vez que utilizamos esta función nos pide permiso. De hecho, aparece el error #REF, y al poner el ratón encima, pide el permiso:

Screenshot 2016-05-27 at 20.50.16

Si se permite el acceso, ya se importa sin problemas.

¿Qué aplicaciones tiene esto en un centro? Yo lo utilizo básicamente en dos ámbitos.

Con alumnos: cuando los alumnos realizan tareas de búsqueda de datos (encuestas, medidas…), cada alumno puede anotar los datos en su propio libro de cálculo. Como profesor tengo permiso en todos sus libors y puedo crear un nuevo libro que recoge los datos de todos. Doy permiso de lectura a todos los alumnos y de forma rápida y ágil todos pueden ver los datos que han recogido sus compañeros, pero no pueden modificarlos ni borrarlos. Eso sí, he tenido que copiar y pegar todas las claves de las hojas de cálculo de los alumnos.

Con profesores: de forma muy similar a la anterior, se pueden compartir datos que los profesores recogen.
Además, nosotros también lo utilizan mucho para hacer informes de proyectos. Cuando se trabaja con proyectos, se deben evaluar muchos aspectos. Algunos se evalúan con rúbricas, otros los corrigen los profesores, otros salen de la observación… En nuestro caso, cada una termina en un libro de cálculo diferente. Para hacer los informes finales, necesitamos tenerlo todo reunido en un solo libro. Y aquí entra la función importrange. De forma sencilla, en un solo libro recogemos la evaluación final de cada uno de los aspectos.

De hecho, pensando un rato veo que se me ocurren algunos ejemplos más donde utilizamos esta función. Pero que cada uno valore qué jugo le puede sacar 🙂

AMPLIACIÓN (junio 2017)

He ido recibiendo bastantes consultas de cómo combinar la función importrange con otras funciones. Expongo aquí un ejemplo con la función vlookup.

En el seguiente libro (origen), se puede ver una mini base de datos con productos: A, B, C y D.

Supongamos que en  otro libro (destino) queremos capturar algunos de estos datos, según una celda. O sea, que en otro libro podamos indicar un artículo (ejemplo A) y automáticamente nos aparezcan el precio y el color.

¿Qué fórmula tenemos que poner en la celda C2? ¿Y en la D2?

La fórmula en C2 seria la seguiente:

=VLOOKUP(A2;IMPORTRANGE(«https://docs.google.com/spreadsheets/d/1w6lOFDFS3NjwxmagMA57RR6GOY_k0Fz85Cum_krkrmg/»;«‘Full 1’!A1:C6»);2;FALSE)

La fórmula en D2 seria la siguiente:

=VLOOKUP(A2;IMPORTRANGE(«https://docs.google.com/spreadsheets/d/1w6lOFDFS3NjwxmagMA57RR6GOY_k0Fz85Cum_krkrmg/»;«‘Full 1’!A1:C6»);3;FALSE)

O sea, que la función vlookup busca los datos a partir de la función importrange. Pero, cuidado, ¡hay un problema!

Cuando se utiliza la función importrange sola, aparece un mensaje de error por falta de permisos y la posibilidad de conectar los hoja para solucionarlo.

Screenshot 2016-05-27 at 20.50.16

Cuando la función importrange se utiliza en combinación con otras funciones, aparece el error, pero no la posibilidad de conectar las hojas. Desconozco el motivo, pero sí la solución.

Simplemente, hay que utilizar primero la función importrange sola, dar permiso, y luego usarla combinada. En el ejemplo que ponía, habría primero, en alguna parte del libro destino, que indicar la siguiente fórmula:

=IMPORTRANGE(«https://docs.google.com/spreadsheets/d/1w6lOFDFS3NjwxmagMA57RR6GOY_k0Fz85Cum_krkrmg/»;«‘Full 1’!A1:C6»)

Cuando aparezca el error, conectar las hojas permitiendo el acceso.

Ahora ya están las hojas conectados, así que las fórmulas de las celdas C2 y D2 ya funcionan correctamente. La fórmula que hemos puesto con importrange sola, si queremos, ya la podemos borrar.

Català (Catalán) English (Inglés)

9 comentarios en «Función IMPORTRANGE en hojas de cálculo de Google»

  1. A mi NO me funciono la sintaxis de esta manera:

    =IMPORTRANGE(«https://docs.google.com/a/ino.com/spreadsheets/d/1-uFA3UHJ8KqEurxVSjpYI8SuS0yruzzFmSyy0_B4/EDIT»,»B3:B6″)

    pero SI funciono de esta:

    =ImportRange( «1kCh9AXE5KD-oSs_-7h1d_Y7wDaxZslB6Cw3BGeO8» ; «b6» )

  2. hola, hemos notado que hay un retraso entre las actualizaciones. Si os ha pasado, ¿teneis identificado los factores, cuánto tarda o si se puede hacer algo para agilizar la actualización?

    Gracias.

  3. Buenos días, al parecer al cambiar la localización de la celda origen, esto no se refresca en la celda en la cual la referenciamos, haciendo una comparación, esto si sucede en word

    1. Efectivamente, si se cambia la ubicación de la celda o el rango origen, hay que cambiarlo manualmente en la fórmula del libro destino.

  4. Señores en unas hoja de calculo que yo uso para trabajar mis bases de datos de compras para reventa de los vendedores, me fallaba el comando buscarV con el importRange. , me arrjaba este error: error en los limites de referencia de Vlookup.

    La solución es buscar en alguna parte o otra solapa o hoja, colocar el comando de importrange solo y luego cuando vuelve a tu hoja donde importaste los datos combinado con buscarV y alli están los datos nuevamente.

    Si funciona. gracias a los otros colaboradores.

    Éxitos en su bases de datos

  5. Hola! llevo un par de días intentando hacer funcionar esto, sin éxito. No recibo el cartel #REF sino uno de #ERROR

    Probe hacer esto con otra cuenta (básica, a diferencia de la otra q es GSuite) y funcionó sin problemas… En la otra cuenta comparto archivos de trabajo pero soy propietario de ambos archivos que estoy intentando conectar

    ideas?

    1. Pues no tengo muchas ideas para darte. Yo uso importrange en cuentas de un dominio G Suite. En algunas ocasiones con dos hojas en las que spy el propietario, pero en muchas otras no lo soy.

  6. Tengo que importar una hoja de google sheets que solo contiene un gráfico. Cuando intento usar IMPORTRANGE el problema es que me pide un rango específico. ¿Cómo podría hacer eso?

  7. Buenos días
    Quisiera saber si se puede usar esta función para importar una tabla dinámica.
    La idea es q esa tabla q contiene desplegables, se puedan seguir usando por un lado y por otro que al usar la función, desaparezca el editor de la tabla dinámica
    Saludos

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.