Unos minutos hacen la diferencia entre entregar un reporte a tiempo o salir tarde de la oficina. Por eso hoy te regalo dos macros en Excel: una para convertir todas las hojas a Tabla y otra para volver todo a Rango. Directo, práctico y sin rodeos.
Así Convierto TODAS mis Hojas en Tablas de Excel (y viceversa)
Suscríbete para más tutoriales
🎁 Descarga el archivo para practicar
Escribe tu correo electrónico para recibir gratis el archivo para practicar.
*Al enviar mi correo electrónico, acepto recibir noticias y ofertas. Puedo darme de baja en cualquier momento.
¿Por qué importa esto?
Porque ir hoja por hoja es perder tiempo. Con estas macros en Excel:
- Formateas todo como Tabla en un clic (ideal para APILARV y Power Query).
- Quitas diseño y vuelves a Rango cuando necesitas mover/copiar varias hojas a otro archivo (limitación típica si son Tablas).
- Evitas errores tontos y ganas velocidad.
Macro 1 — Convertir todas las hojas a Tabla
¿Cuándo usarla?
- Tienes varias hojas con rangos normales y quieres automatizar el formato Tabla.
- Planeas acumular datos con APILARV (VSTACK) o consumir con Power Query para refrescar reportes.
¿Qué hace la macro? (en cristiano)
- Recorre las hojas (por ejemplo, desde la hoja 3 en adelante).
- Toma el rango con datos (UsedRange) de cada hoja.
- Lo convierte a Tabla y (opcional) nombra la Tabla como
Tabla_[NombreHoja]. - Si una hoja no tiene datos o ya es Tabla, la salta.
Pasos rápidos para habilitar y ejecutar
- Desarrollador: Archivo → Opciones → Personalizar cinta → activa Programador.
- Visual Basic: Programador → Visual Basic → inserta Módulo y pega la macro.
- Ejecutar: presiona F5 (o F8 si quieres ver paso a paso).
- (Opcional) Acceso rápido: Archivo → Opciones → Barra de herramientas de acceso rápido → agrega tu macro y ponle un ícono.
Tip: Si la primera fila no es encabezado, cambia el parámetro a
xlNo.
'Aprende Macros en excel desde cero: https://www.deztaca.com/macros
Sub Convertir_a_Tabla()
'Convertir todas las hojas a Tabla
Dim i As Long
Dim Hoja As Worksheet
For i = 3 To ThisWorkbook.Worksheets.Count
Set Hoja = ThisWorkbook.Worksheets(i)
' Si la hoja no tiene datos, sigue
If Application.WorksheetFunction.CountA(Hoja.Cells) = 0 Then GoTo Siguiente
' Convierte el UsedRange en tabla (asumiendo encabezados en la primera fila)
On Error Resume Next ' Por si ya existe una tabla en la hoja
Hoja.ListObjects.Add SourceType:=xlSrcRange, _
Source:=Hoja.UsedRange, _
XlListObjectHasHeaders:=xlYes
On Error GoTo 0
' (Opcional) Renombrar la primera tabla con el nombre de la hoja
On Error Resume Next
Hoja.ListObjects(1).Name = "Tabla_" & Hoja.Name
On Error GoTo 0
Siguiente:
Next i
MsgBox "Listo: se convirtieron los rangos en tablas.", vbInformation
End Sub
Macro 2 — Quitar diseño y convertir todas las Tablas a Rango
¿Cuándo usarla?
- Quieres mover/copiar varias hojas a un libro nuevo (si están en formato Tabla, Excel limita el multi-movimiento).
- Necesitas “resetear” un archivo: dejar rangos limpios, sin colores, sin estilos de Tabla.
¿Qué hace la macro?
- Hoja por hoja, detecta todas las Tablas.
- Les quita el estilo (sin colores) y luego las convierte a Rango.
- Recorre de atrás hacia adelante para no romper la colección de Tablas.
'Aprende Macros en excel desde cero: https://www.deztaca.com/macros
Sub Convertir_a_Rango()
'Convertir todas la Tablas a Rango
Dim i As Long, j As Long
Dim Hoja As Worksheet
Dim Tabla As ListObject
For i = 3 To ThisWorkbook.Worksheets.Count
Set Hoja = ThisWorkbook.Worksheets(i)
If Hoja.ListObjects.Count > 0 Then
' Recorremos de atrás hacia adelante porque Unlist reduce la colección
For j = Hoja.ListObjects.Count To 1 Step -1
Set Tabla = Hoja.ListObjects(j)
'Quitar diseño (sin colores)
Tabla.TableStyle = ""
'Convertir a rango normal
Tabla.Unlist
Next j
End If
Next i
MsgBox "Se quitaron estilos y se convirtieron todas las tablas a rango.", vbInformation
End Sub
Ejemplo práctico (tal como en el video)
- Tienes 5 hojas (Mayo, Junio, Julio, Agosto, Septiembre) con rangos.
- Con la Macro 1 las vuelves Tablas en segundos.
- Ahora puedes acumular en una hoja “Concentrado” usando APILARV y cada vez que agregues filas a las Tablas, el concentrado crece.
- ¿Necesitas mover varias hojas a otro libro? Primero corre la Macro 2 (quita estilo + vuelve a Rango) y listo: ya puedes mover dos o más hojas a la vez.
Preguntas rápidas (FAQ)
¿Desde qué hoja empieza?
Como en el demo, desde la hoja 3, pero puedes ajustarlo en el código.
¿Tengo que activar cada hoja?
No. La macro trabaja sin activar hojas; activarlas solo fue para mostrar el cambio.
¿Y si una hoja está vacía?
La macro la salta automáticamente.
Certifícate en Excel
Tienes experiencia en Excel y quieres mejorar tus oportunidades laborales? Obtén la Certificación Excel Expert avalada por Microsoft.
