En una hoja con varias tablas esta macro agrega las columnas necesarias para que todas ellas tengan el mismo número de columnas que la tabla más ancha.
Agregar columnas a varias tablas hasta la más ancha
Categoría
Descripción
Esta macro llamada ColumnasMaximas
recorre todas las tablas de una hoja de Excel y ajusta el número de columnas para que todas las tablas tengan el mismo número de columnas que la tabla más ancha. El proceso es el siguiente:
- Se define una variable que almacena el número máximo de columnas encontradas en las tablas de la hoja.
- Se recorren todas las tablas de la hoja y se verifica cuántas columnas tiene cada una.
- Se determina cuál es la tabla con el mayor número de columnas.
- Luego, se vuelven a recorrer todas las tablas y, si alguna tiene menos columnas que la tabla más ancha, se agregan columnas hasta que todas tengan el mismo número.
Código
Sub ColumnasMaximas()
‘ Se definen las variables
Dim tbl As ListObject
Dim Columnatabla As Integer
Dim MaxColumna As Integer
Dim nuevacol As Integer
‘ Se recorren todas las tablas de la hoja
For Each tbl In ActiveSheet.ListObjects
Columnatabla = tbl.ListColumns.Count ‘ Se guarda el número de columnas de la tabla
‘ Si el número de columnas de la tabla actual es mayor que el máximo de columnas, se actualiza MaxColumna
If Columnatabla > MaxColumna Then MaxColumna = Columnatabla
Next tbl
‘ En este punto, MaxColumna guarda el número de columnas de la tabla más ancha
‘ Se vuelven a recorrer todas las tablas
For Each tbl In ActiveSheet.ListObjects
If tbl.ListColumns.Count < MaxColumna Then
‘ Si el número de columnas de la tabla es menor que el máximo, se agregan las columnas necesarias
For nuevacol = tbl.ListColumns.Count To MaxColumna – 1
tbl.ListColumns.Add
Next nuevacol
End If
Next tbl
End Sub
Otras funciones de la categoría
- Importar un archivo de texto con 250.000 filas
- Ordenar líneas
- Determinar la fecha más alta en una fila e insertar.
- No permitir entradas duplicadas
- Descargar y abrir un libro de Excel
- Insertar datos del formulario de inscripción en la tabla mensual
- Buscar la fecha y la salida de la dirección de la celda de encontrar
- Determinar la suma de un rango de valores de celda
- Mostrar criterios de filtro automático después de filtrar
- Ordenar RecordSets que se establecen en bloques de cuatro datos