Tiempo en Ajustar Ancho de Columnas

Hola Dam espero que estés bien, estoy utilizando la siguiente macro pero esta se ejecuta muy lentamente (tarda de 2 a 3 min ), que me podrías sugerir para que se ejecute mas rapido.

Sub Ajustar_Superior()
Sheets("DatosA").Select
Columns("A:A").ColumnWidth = 61
Columns("B:B").ColumnWidth = 45
Columns("C:C").ColumnWidth = 1
Columns("D:D").ColumnWidth = 57
Columns("E:E").ColumnWidth = 47
Columns("F:F").ColumnWidth = 47
Columns("G:G").ColumnWidth = 47
Columns("H:H").ColumnWidth = 53
Columns("I:I").ColumnWidth = 57
Columns("J:J").ColumnWidth = 47
Columns("K:K").ColumnWidth = 47
Columns("L:L").ColumnWidth = 47
Columns("M:M").ColumnWidth = 53
Columns("N:N").ColumnWidth = 1
Columns("O:O").ColumnWidth = 35
Columns("P:P").ColumnWidth = 35
Columns("Q:Q").ColumnWidth = 35
Columns("R:R").ColumnWidth = 42
Columns("S:S").ColumnWidth = 35
Columns("T:T").ColumnWidth = 35
Columns("U:U").ColumnWidth = 35
Columns("V:V").ColumnWidth = 35
Columns("W:W").ColumnWidth = 35
Columns("X:X").ColumnWidth = 35
Columns("Y:Y").ColumnWidth = 1
Columns("Z:Z").ColumnWidth = 40
Columns("AA:AA").ColumnWidth = 40
Columns("AB:AB").ColumnWidth = 25
Columns("AC:AC").ColumnWidth = 25
Columns("AD:AD").ColumnWidth = 25
Columns("AE:AE").ColumnWidth = 25
Columns("AF:AF").ColumnWidth = 25
Columns("AG:AG").ColumnWidth = 25
Columns("AH:AH").ColumnWidth = 25
Columns("AI:AI").ColumnWidth = 25
Columns("AJ:AJ").ColumnWidth = 1
ActiveSheet.PageSetup.PrintArea = "$A$1:$AJ$21"
End Sub

AW

1 respuesta

Respuesta
1

Intenta con lo siguiente, si te das cuenta hice agrupaciones por columnas que miden lo mismo, revisa cuáles otras puedes agrupar con la misma longitud y verificar si es más rápido.

Sub Ajustar_Superior()
'ajustar columnas con union
'Por.Dam
Sheets("DatosA").Select
Columns("A:A").ColumnWidth = 61
Columns("B:B").ColumnWidth = 45
Columns("C:C").ColumnWidth = 1
Columns("D:D").ColumnWidth = 57
Set e = Columns("E:E")
Set f = Columns("F:F")
Set g = Columns("G:G")
Set i = Columns("I:I")
Set j = Columns("J:J")
Set k = Columns("K:K")
Set l = Columns("L:L")
Union(e, f, g, i, j, k, l).ColumnWidth = 47
Columns("H:H").ColumnWidth = 53
Columns("M:M").ColumnWidth = 53
Columns("N:N").ColumnWidth = 1
Set o = Columns("O:O")
Set p = Columns("P:P")
Set q = Columns("Q:Q")
Set s = Columns("S:S")
Set t = Columns("T:T")
Set u = Columns("U:U")
Set v = Columns("V:V")
Set w = Columns("W:W")
Set x = Columns("X:X")
Union(o, p, q, s, t, u, v, w, x).ColumnWidth = 47
Columns("R:R").ColumnWidth = 42
Columns("Y:Y").ColumnWidth = 1
Columns("Z:Z").ColumnWidth = 40
Columns("AA:AA").ColumnWidth = 40
Set ab = Columns("AB:AB")
Set ac = Columns("AC:AC")
Set ad = Columns("AD:AD")
Set ae = Columns("AE:AE")
Set af = Columns("AF:AF")
Set ag = Columns("AG:AG")
Set ah = Columns("AH:AH")
Set ai = Columns("AI:AI")
Union(ab, ac, ad, ae, af, ag, ah, ai).ColumnWidth = 25
Columns("AJ:AJ").ColumnWidth = 1
ActiveSheet.PageSetup.PrintArea = "$A$1:$AJ$21"
End Sub

Saludos.Dam
Si es lo que necesitas, podrías de favor, finalizar la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas