Insertar datos en varias hojas de Excel a la vez

Partners oficiales

Si en alguna ocasión te has encontrado con que tienes que insertar los mismos datos en varias hojas de Excel, sabrás que esta tarea puede consumir mucho tiempo. En este artículo te enseñaremos algunos métodos que te ayudarán a insertar datos en varias hojas de manera simultánea:

  1. Agrupando hojas de Excel, de manera que los datos insertados en una de ellas sean replicados a las demás hojas del grupo. Este método es muy sencillo de implementar y requiere de pocos pasos para hacerlo funcionar correctamente.
  2. Utilizando código VBA para ayudarnos a automatizar un poco esta tarea. Estos métodos son más avanzados, ya que configuraremos macros, pero nos permitirán hasta insertar los datos en ubicaciones diferentes para cada hoja.

Agrupando hojas de Excel

Para agrupar hojas contiguas debemos hacer clic sobre el nombre de la primera hoja, mantener pulsada la tecla Mayús (Shift) y finalmente hacer clic en el nombre de la última hoja que formará parte del grupo.

Por ejemplo, la siguiente imagen muestra el resultado de activar la Hoja1, mantener pulsada la tecla Mayús y hacer clic en la Hoja5.

 

ingresar-datos-en-varias-hojas-simultaneamente

 

Para agrupar hojas que no son contiguas debemos hacer clic en la primera hoja, pulsar la tecla CTRL, y, sin soltarla, hacer clic sobre cada hoja que queremos incluir en el grupo.

En ambos métodos, se mostrará en la barra de título de Excel la palabra Grupo encerrada por corchetes al terminar la agrupación.

 

ingresar-datos-en-varias-hojas-simultaneamente

 

Una vez que hayas agrupado las hojas, podrás insertar datos en cualquiera de ellas y se replicará dicho cambio automáticamente en todas las hojas del grupo. De esta manera podrás insertar datos en varias hojas de Excel simultáneamente.

Ejemplo

Utilizaremos el libro anterior donde previamente hemos agrupado las primeras 5 hojas. En la Hoja1 insertaremos el texto Nombre en la celda A1 y el texto Apellido en la celda B1.

 

ingresar-datos-en-varias-hojas-simultaneamente

 

Al activar cualquiera de las hojas del grupo tendremos el mismo texto en las celdas A1 y B1. Pero eso no es todo, cuando las hojas estén agrupadas, cualquier cambio en el formato de las celdas también será replicado en el grupo.

Para probar este comportamiento, aplicaremos un fondo oscuro a las celdas A1 y B1, cambiaremos el color de la fuente, centraremos el texto y aplicaremos un formato de negrita. Podrás comprobar que al visitar cualquiera de las hojas del grupo tendremos el mismo formato sobre las celdas A1 y B1.

 

ingresar-datos-en-varias-hojas-simultaneamente

 

Esto es una gran ventaja, ya que, no solamente verás replicados los datos en todas las hojas, sino que también se aplicarán los cambios en el formato de las celdas.

Cómo desagrupar las hojas de Excel de un libro

Para desagrupar las hojas puedes hacer clic en el nombre de cualquier otra hoja que no pertenezca al grupo. También puedes desagrupar las hojas haciendo clic derecho sobre el nombre de una hoja del grupo y seleccionando la opción Desagrupar hojas.

 

ingresar-datos-en-varias-hojas-simultaneamente

 

Desventaja de la agrupación manual de hojas en Excel

Si, debido al trabajo que realizas en el libro, continuamente seleccionas hojas que están fuera del grupo, entonces se perderá continuamente la selección de hojas e inevitablemente tendrás que hacer la agrupación una y otra vez, lo cual podría significar un tiempo considerable.

En ese caso, la mejor opción será recurrir a la automatización con algunas líneas de código VBA (aplicando macros) las cuales revisaremos a continuación.

Insertar datos en varias hojas excel con VBA

Lo que automatizaremos con código VBA será la agrupación de las hojas de manera que no tengas que agruparlas cada vez que necesites insertar datos en varias hojas. La línea de código que nos ayudará a agrupar las hojas será la siguiente:

Sheets(Array("Hoja1", "Hoja2", "Hoja3", "Hoja4", "Hoja5")).Select

El método Select es el encargado de agrupar las hojas cuyos nombres están entre comillas dobles. Lo único que debemos decidir es el lugar donde colocar esta instrucción, y nuestra sugerencia es elegir la hoja que aparece al inicio del listado, ya que será la hoja que permanecerá activa después de realizar la agrupación.

Ejemplo

Colocaremos el código en la Hoja1 haciendo clic derecho sobre su nombre y seleccionando la opción Ver código.

 

 

Se abrirá la ventana del Editor de Visual Basic para Aplicaciones y en el panel derecho colocaremos el siguiente código:

1
2
3
4
5
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
   Sheets(Array("Hoja1", "Hoja2", "Hoja3", "Hoja4", "Hoja5")).Select
End Sub

 

Este conjunto de instrucciones utiliza el evento Worksheet_SelectionChange que es llamado cada vez que existe un cambio en la selección de la hoja. Al detectarse el cambio de selección se agruparán automáticamente las hojas y, por lo tanto, podremos insertar datos simultáneamente en las hojas seleccionadas.

 

 

Podrás desagrupar las hojas de la misma manera que en el ejemplo anterior, haciendo clic en alguna hoja que no pertenezca al grupo o haciendo clic derecho sobre alguna hoja del grupo y seleccionando la opción Desagrupar hojas.

Insertar datos en varias hojas de Excel, en ubicaciones diferentes

Hay ocasiones en las que necesitamos insertar los mismos datos en posiciones diferentes dentro de cada hoja. En los ejemplos anteriores al insertar un dato en la celda A1, todas las hojas del grupo insertarán el mismo dato en la celda A1.

Ejemplo

Supondremos que los datos ingresados en la Hoja1, en el rango A1:B5, deberían ser ingresados en la Hoja2 en el rango C1:D5 y en la Hoja3 en el rango E6:F10.

Con los métodos anteriores no podríamos realizar esta tarea, ya que utilizan la agrupación de hojas y no permite colocar los datos en diferentes celdas. Por lo tanto, es necesario utilizar el código que mostramos a continuación:

 

1
2
3
4
5
6
7
8
9
10
11
12
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Range("A1:B5"), Target) Is Nothing Then
        With Range("A1:B5")
            .Copy Destination:=Sheets("Hoja2").Range("C1")
            .Copy Destination:=Sheets("Hoja3").Range("E6")
        End With
    Else
        Me.Select
    End If
End Sub

 

Colocamos este código en la Hoja1 , ya que es la hoja donde insertaremos los datos. El método Intersect ayuda a detectar un cambio en el rango A1:B5 y posteriormente hace una copia hacia la Hoja2 y Hoja3 indicando la celda en donde colocar los datos.

ATENCIÓN: Con este método solo se copiará los valores sin replicar el formato, al contrario que con el método de agrupación de hojas, el cual también replicaba el formato de las celdas.

Cuando dominas las posibilidades de Excel, es mucho más fácil y rápido hacer tu trabajo

Si te habías encontrado copiando y pegando el mismo contenido en varias hojas de Excel, seguramente hayas visto que te podrías haber ahorrado mucho tiempo aplicando estos métodos. Si quieres conocer y dominar todo el potencial que nos ofrece Excel para ser más eficiente en tu trabajo, infórmate de nuestro curso de Macros Excel y Formularios.

¿No conoces Aglaia? Somos tus consultores especializados en herramientas Microsoft. Te acompañamos en cada paso de tu formación para garantizar que sacas el máximo provecho de tus datos.

Compartir esta publicación
Recursos

Recursos a tu alcance

Descubre entre nuestra biblioteca de recursos una amplia gama de
medios para potenciar tus conocimientos.